Doug Nazar
feb6e1602a
validate: Escape '%' in Valgrind log filenames
...
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/9042 >
2025-05-28 16:01:44 +00:00
Doug Nazar
822bef51f0
validate: Fix marking actions done
...
Don't take extra ref during calling done() from 'stream-selection'
Mark as done actions that are completed immediately
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/9042 >
2025-05-28 16:01:44 +00:00
Doug Nazar
5c4bf60c94
validate: Free log files
...
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/9042 >
2025-05-28 16:01:44 +00:00
Doug Nazar
09cf44aa13
validate: Various minor cleanups for lost memory or use after free
...
Includes several missing unref(), clear() or free() calls.
Reset current_seek since we just cleared all the seeks.
Reset all_configs to NULL to prevent double clearing.
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/9042 >
2025-05-28 16:01:44 +00:00
Tim-Philipp Müller
d273b790e1
textoverlay: fix shading for RGBx/RGBA pixel format variants
...
... for cases where there's padding at the end of each row.
Fixes #4414 .
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/9106 >
2025-05-28 08:45:03 +00:00
Daniel Morin
e72e9a95d8
rtpsender: fix 'priority' GValue get/set
...
- 'priority' is declared as enum, we need to use g_value_[get|set]_enum()
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/9105 >
2025-05-28 07:28:16 +00:00
Aleix Pol
e627d02171
qml6glitem,qtitem: Allow configuring if the item will consume input events
...
At the moment we are always accepting the input events to forward into
GStreamer infrastructure. This works but we might have other uses for
such events elsewhere in the QtQuick scene so allow opting out to this
behaviour.
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/9085 >
2025-05-28 01:13:21 +00:00
Doug Nazar
c5f9d4073f
adaptivedemux2: Fix race for expected error in test
...
After gst-validate-1.0 notices the first expected error on the bus, it will
queue the completion of that action while the pipeline is still processing the
error and getting to the basesrc for the second error.
Mark the second error as 'sometimes=true', as it's not critical to the test.
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/9060 >
2025-05-27 20:35:41 +00:00
Doug Nazar
c14b135861
adaptivedemux2: Ensure all download tasks call g_task_return_*()
...
There is a small window during stopping when tasks have been add
to the transfer_requests queue, but never transfered to the
active_transfers array and causes the fallowing error:
GTask 0x7f2c4400e930 (source object: (nil), source tag: (nil)) finalized
without ever returning (using g_task_return_*()).
This potentially indicates a bug in the program.
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/9060 >
2025-05-27 20:35:41 +00:00
Xavier Claessens
cedeef3cb1
pre-commit: Workaround broken shebang on Windows
...
Using "python" in the shebang breaks those scripts when ran outside of
pre-commit venv.
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/9080 >
2025-05-27 12:00:28 +00:00
Doug Nazar
7fe08e057c
tsdemux: Ensure AC3 descriptor is long enough before accessing
...
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/9044 >
2025-05-27 10:44:37 +00:00
Doug Nazar
3df63a079c
glcontext/egl: Free dma_formats if someone else already initialized
...
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/9044 >
2025-05-27 10:44:37 +00:00
Doug Nazar
99aba78c88
gstreamer: Ensure we free the template
...
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/9044 >
2025-05-27 10:44:37 +00:00
Doug Nazar
75cf21d834
gstreamer: A few small memory cleanups
...
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/9044 >
2025-05-27 10:44:37 +00:00
Sebastian Dröge
68815a3a15
play: Improve stream selection
...
- Unset stream ids if a collection does not contain them
- Automatically select a default stream of a type if the stream type is
enabled but no stream is selected yet when receiving the stream collection
- Warn if there's a collection update via streams-selected and if there are
unexpected streams being selected, or actually selected streams not being
found
- Improve debug output a bit
Among other things this also makes sure that we don't forget a selected stream
id when disabling a track so that when enabling it again later the same one can
be enabled again.
See https://gitlab.freedesktop.org/gstreamer/gstreamer/-/issues/4344
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/9081 >
2025-05-27 09:31:52 +00:00
Doug Nazar
50cad4a7fa
libav: Only allocate extradata while decoding
...
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/9056 >
2025-05-27 08:28:11 +00:00
Thibault Saunier
d0b2e6cb68
validate: scenario: Fix race condition when ignoring EOS
...
The part of the code that is commented with:
```
/* gst_validate_action_set_done() does not finish the action
* immediately. Instead, it posts a task to the main thread to do most
* of the work in _action_set_done().
*
* While the EOS handling lock guarantees that if an action had to call
* gst_validate_action_set_done() it has done so, it does not guarantee
* that _action_set_done() has been called.
*
* Is it possible that this handler is run before _action_set_done(), so
* we check at this point for actions that have a pending_set_done and
* call it before continuing. */
```
was not being executed in the case where the scenario was 'ignoring EOS'
while it was also required.
Also fix potential use after free in that specific code path.
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/9014 >
2025-05-27 06:59:36 +00:00
Seungha Yang
8ff0a1c132
nvencoder: Fix GstNvEncTask leak on non-flow-ok return
...
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/9078 >
2025-05-27 00:05:37 +09:00
Seungha Yang
1fb633368e
nvencoder: Fix GstVideoCodecFrame leak on non-flow-ok return
...
... and use gst_video_encoder_release_frame() to drop frame
instead of gst_video_encoder_finish_frame()
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/9078 >
2025-05-26 23:39:21 +09:00
Nicolas Dufresne
500f9b60af
alphacombine: Fix seeking after EOS
...
The alpha_eos state was not being reset on flush-stop, as a side effect
flushing seek after EOS did not work.
Fixes #4442
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/9069 >
2025-05-26 12:13:40 +00:00
Seungha Yang
5521af04f8
d3d12memory: Allow set_fence() only against writable memory
...
Setting a fence to memory should only be allowed on the side
that modified that memory or has the right to modify it
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/9075 >
2025-05-26 11:34:29 +00:00
Seungha Yang
2a44248bcd
d3d12: Enable GIR for MSVC build as well
...
cerbero issue should be fixed by
https://gitlab.freedesktop.org/gstreamer/cerbero/-/merge_requests/1824
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/9076 >
2025-05-26 18:29:53 +09:00
Seungha Yang
66b35a984d
d3d12memory: Make D3D12 map flags inspectable
...
GIR scanner does not seem to be able to infer integer value
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/9076 >
2025-05-26 18:29:47 +09:00
L. E. Segovia
7b8d4c0974
orc: Update pregenerated files
...
Fixes -Wtype-limits on gstbayer.orc when emulating convuuslw.
Regenerated Orc files use OrcOnce, which increases the minimum version to 0.4.34.
See https://gitlab.freedesktop.org/gstreamer/orc/-/merge_requests/212 (ORC_MIN)
See https://gitlab.freedesktop.org/gstreamer/orc/-/merge_requests/238 (AVX2 convussql)
See 8a86d51753
(OrcOnce)
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/9067 >
2025-05-25 14:36:17 +00:00
L. E. Segovia
00dfff821a
orc: Remove references to gst-indent-1.0
...
These are automatically handled by pre-commit now.
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/9067 >
2025-05-25 14:36:17 +00:00
Thibault Saunier
515bf888a9
python: Make use of the new structure.is_writable method
...
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/9027 >
2025-05-25 15:16:37 +02:00
Thibault Saunier
78a44afc22
gst: Add a gst_structure_is_writable method
...
There are cases (in the gst-python bindings for example) where
it is interesting to know that the structure is not writable
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/9027 >
2025-05-25 15:16:37 +02:00
Thibault Saunier
f0e1591111
python: Add overrides for Buffer/Query/Event/Context to handle writability
...
And make them look more like proper MiniObject
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/9027 >
2025-05-25 15:16:37 +02:00
Thibault Saunier
0201423142
python: Factor out a MiniObject class that all mini object will be based on
...
Making the API closer to what it should be as Caps are MiniObject
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/9027 >
2025-05-25 15:16:37 +02:00
Thibault Saunier
da9365176b
python: Add a Caps.get_value variant that does not copy the structures
...
Keeping the __getitem__ implementation the same way
This also now make structure.set_value() raise an exception if the structure
was not writable
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/9027 >
2025-05-25 15:16:37 +02:00
Thibault Saunier
c3d2209c1f
python: Add overrides to be able to write into the GstStructure inside GstCaps
...
Add Python bindings for allowing to modify GstCaps structures with proper
writability checks.
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/9027 >
2025-05-25 15:16:37 +02:00
Thibault Saunier
9754f31fdb
meson: Do no run python-full test when GStreamer-full is not built
...
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/9027 >
2025-05-25 15:16:36 +02:00
Seungha Yang
e10b460ed4
rtputils: Add debug category
...
Use rtputils specific debug category instead of "default"
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/9070 >
2025-05-25 19:32:34 +09:00
Sebastian Dröge
60d9ad038c
meta: Add g_return_val_if_fail() for NULL valid_tags in gst_meta_api_type_tags_contain_only()
...
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/9054 >
2025-05-25 06:45:27 +00:00
Robert Mader
31660c3ad2
glupload: Promote fixate caps results print to info
...
And include the input caps. The idea is that this info is
often among the most relevant and having it on INFO level
thus allows to avoid the more noisy DEBUG one.
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/8981 >
2025-05-25 00:23:44 +00:00
Doug Nazar
635e0ad5c1
dash: mpdclient: Re-enable test now that mpdclient is fixed
...
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/8734 >
2025-05-24 12:10:59 +00:00
Doug Nazar
9a04896293
dash: mpdclient: Don't pass terminating NUL to adapter
...
libxml2 will complain if it detects any characters after the valid
XML, including a NUL byte.
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/8734 >
2025-05-24 12:10:59 +00:00
Jan Schmidt
8eb5e3771b
vtenc: Use strlcpy instead of strncpy
...
Silences a compiler warning, and there's no cross-platform
consideration as this plugin is apple-only
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/9058 >
2025-05-23 19:00:32 +00:00
Jordan Petridis
a61ce97e48
ci: Use the existing checkout to create the subproject cache
...
Now that we have the monorepo, we always have a checkout
of gstreamer and we don't need to explicitly clone it again.
cbuild in ci-templates will always clone the repository in
/tmp/clone and we can use that to initialize the cache.
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/8994 >
2025-05-23 14:29:52 +00:00
Jordan Petridis
a74bda813b
ci: Always create the subproject cache from the upstream repo
...
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/8994 >
2025-05-23 14:29:52 +00:00
Branko Subasic
73ef16864e
matroskamux: Write stream headers before finishing file
...
In the rare case when we get EOS on all pads before we get any buffer we
would finish the file without writing headers, i.e. the file would be
corrupt. This patch makes sure that a header is always written.
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/9061 >
2025-05-23 13:37:17 +00:00
Jordan Petridis
98e8d3a127
gsttracerutils: Fix leak in gst_tracer_utils_create_tracer()
...
Co-authored-by: Alicia Boya García <aboya@igalia.com>
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/9028 >
2025-05-23 12:37:15 +00:00
Jan Schmidt
4c6a0b655d
meson: Add build_rpath for qt6 plugin on macOS
...
This is the same fix for qt6 that was done for the qt5 plugin
in gstreamer/gstreamer!3708
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/9059 >
2025-05-23 11:16:18 +00:00
Nirbheek Chauhan
e4d5cece28
meson: Add a monorepo-wide qt-method option and yield to it
...
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/9046 >
2025-05-23 09:43:17 +00:00
Nirbheek Chauhan
32eaa0ae35
meson: Rework build files for qt examples in -base
...
The build files had quite a few things wrong:
* Not using the method: kwarg, which can cause the wrong Qt to be
used for building
* There was no way to enable the build for them
* Qt was being detected multiple times, differently
* Unnecessary check for libGL
* have_cxx was being used incorrectly
* Qt tool detection was outdated
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/9046 >
2025-05-23 09:43:17 +00:00
Nirbheek Chauhan
0ba85c84a1
meson: Make qml/qml6 plugins use the right qt detection method
...
Otherwise they can pick up the wrong qt and cause two different Qt
instances to be used in the same program.
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/9046 >
2025-05-23 09:43:17 +00:00
Nirbheek Chauhan
331a381c66
meson: Fix qt detection for qt6d3d11 plugin
...
This now matches the code for the qml6gl plugin.
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/9046 >
2025-05-23 09:43:17 +00:00
Seungha Yang
099b8825a7
d3d12: Generate gir file
...
Prerequisite for rust binding
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/9053 >
2025-05-23 06:45:37 +00:00
Seungha Yang
ac49baabb6
d3d12: Fix docs annotations
...
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/9053 >
2025-05-23 06:45:37 +00:00
Doug Nazar
2dc485823c
rtsp-server: A few small memory cleanups
...
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/9052 >
2025-05-22 10:53:33 +00:00