Sebastian Dröge
d98df47e53
qtdemux: Add qtdemux_tree_get_child_by_index_full() helper function
...
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/8929 >
2025-05-17 07:59:46 +00:00
Sebastian Dröge
2b18846e39
qtdemux: Fix endianness/alignment problems with parsing omwa sample description entries
...
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/8929 >
2025-05-17 07:59:46 +00:00
Sebastian Dröge
f575fe763c
qtdemux: Handle stsd entry offset correctly for audio in qtdemux_parse_node()
...
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/8929 >
2025-05-17 07:59:46 +00:00
Sebastian Dröge
ae4d505fe0
qtdemux: Pass stsd entry node to caps creation functions
...
Also fix lpcm to only read its additional fields from sound sample description v2.
Previously it would read random data if a different stsd entry was used.
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/8929 >
2025-05-17 07:59:46 +00:00
Sebastian Dröge
3ecb07c674
qtdemux: Don't parse invalid data from ISOBMFF AudioSampleEntryV1
...
The additional fields only exist in sound sample description v1, which
is only defined for MOV.
ISOBMFF has AudioSampleEntryV1 but it has the exact same layout as
AudioSampleEntry.
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/8929 >
2025-05-17 07:59:46 +00:00
Sebastian Dröge
fec61cc546
qtdemux: Don't retrieve video stsd entry multiple times
...
And remove various duplicated checks.
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/8929 >
2025-05-17 07:59:46 +00:00
Sebastian Dröge
af5cce9968
qtdemux: Parse uncompressed video uncC / cmpd boxes from already parsed stsd entry
...
Also simplifies code and error checking considerably.
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/8929 >
2025-05-17 07:59:46 +00:00
Sebastian Dröge
a6e58f7331
qtdemux: Don't retrieve enca/encv boxes a second time, wrongly
...
They need to be retrieved by index and they were already correctly retrieved
just above so let's just use that.
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/8929 >
2025-05-17 07:59:46 +00:00
Sebastian Dröge
bb50741b73
qtdemux: Use already parsed stsd entries instead of parsing them again
...
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/8929 >
2025-05-17 07:59:46 +00:00
Sebastian Dröge
cf2b1909ec
qtdemux: Fix typo in debug message
...
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/8929 >
2025-05-17 07:59:46 +00:00
Matthew Waters
ea577da12e
examples/webrtc/signalling: fix compatibility with python 3.13
...
Fixes:
Traceback (most recent call last):
File "/usr/lib64/python3.13/site-packages/websockets/asyncio/server.py", line 373, in conn_handler
await self.handler(connection)
~~~~~~~~~~~~^^^^^^^^^^^^
TypeError: WebRTCSimpleServer.run.<locals>.handler() missing 1 required positional argument: 'path'
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/8992 >
2025-05-16 18:33:09 +00:00
Sebastian Dröge
08c56f3e2d
element: ref-sink the correct pad template when replacing an existing one
...
templ is the new one that is being stored and that needs to be ref-sinked,
padtempl is the old one that just needs to be unreffed.
Fixes leaking the old template, and also makes sure that the new template is not
floating which can cause use-after-frees with bindings as they might wrongly
take ownership of a still floating template.
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/8988 >
2025-05-16 17:47:47 +00:00
Adrian Perez de Castro
6432f6a1f2
alsa: Avoid infinite loop in DSD rate detection
...
Stop testing DSD rates in gst_alsa_detect_dsd_rates() if the rate becomes zero
or negative. This avoids an infinite loop if gst_alsa_probe_supported_formats()
is used on a PCM sink defined like the following in the ALSA configuration file:
pcm.buggy {
type plug
slave.pcm "buggy_volume"
hint.description "Causes an infinite loop in GStreamer"
}
pcm.buggy_volume {
type softvol
slave.pcm "buggy_dmix"
control.name "buggy_volume"
}
pcm.buggy_dmix {
type dmix
ipc_key 12345
slave {
pcm "hw:0,0"
period_size 1024
buffer_size 4096
}
}
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/8985 >
2025-05-16 17:09:05 +00:00
Robert Mader
c03a5b0c1b
glupload: Only add texture-target field to GL caps
...
So far we simply ignored it for MEMORY_DMABUF passthrough caps
without known negative cosequences, but with upcoming more complicated
caps negotiations it's becoming an issue, thus fix it.
Fixes: 7e71d4f753 ("gl: upload: Add DMA_DRM passthrough upload")
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/8964 >
2025-05-16 13:40:43 +00:00
Jordan Petridis
818feea0b5
bad: Add more variants for an srt suppression
...
Followup to 087cb87d27e268d55a8d152690870ac4a2b3e166
These are some more variants of the same issue we
already suppressed in the commit above.
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/8979 >
2025-05-15 15:21:20 +00:00
Jordan Petridis
17d271057a
core: suppress glib_init_ctor as well
...
We already suppress gobject_init_ctor and this
is the same.
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/8979 >
2025-05-15 15:21:20 +00:00
Jordan Petridis
9dc21492a3
opencv: import as system dep
...
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/8979 >
2025-05-15 15:21:20 +00:00
Jordan Petridis
d68f472683
bad: Avoid gcc false positive about variable initialization
...
In gstbayer2rgb the dtmp always gets initialized when
we check for bayersrc16.
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/8979 >
2025-05-15 15:21:20 +00:00
Sebastian Dröge
faa912a31d
wavparse: Error out correctly if no data tag is found until EOS in pull mode
...
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/8956 >
2025-05-15 10:24:37 +00:00
Sebastian Dröge
ba8fd35e72
wavparse: Ignore EOS when parsing the headers
...
The file might be truncated or contain < 8 bytes of remaining data after the
last chunk.
Fixes https://gitlab.freedesktop.org/gstreamer/gstreamer/-/issues/4426
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/8956 >
2025-05-15 10:24:37 +00:00
Doug Nazar
a332a411b7
tests: Switch to GST_AUDIO_NE()
...
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/8984 >
2025-05-14 14:45:55 -04:00
Doug Nazar
a8e11cec9a
spectrum: Switch to GST_AUDIO_NE()
...
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/8984 >
2025-05-14 14:45:55 -04:00
Doug Nazar
ebaf87cd17
law: Switch to GST_AUDIO_NE()
...
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/8984 >
2025-05-14 14:45:55 -04:00
Doug Nazar
39cb7b38e7
flac: Switch to GST_AUDIO_NE()
...
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/8984 >
2025-05-14 14:45:55 -04:00
Doug Nazar
11dccf43e0
volume: Switch to GST_AUDIO_NE()
...
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/8984 >
2025-05-14 14:45:55 -04:00
Doug Nazar
bf05a050e9
audiomixer: Switch to GST_AUDIO_NE()
...
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/8984 >
2025-05-14 14:45:55 -04:00
Doug Nazar
af2b6b4c38
adder: Switch to GST_AUDIO_NE()
...
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/8984 >
2025-05-14 14:45:55 -04:00
Doug Nazar
17474ebbb2
videoframe-audiolevel: Switch to GST_AUDIO_NE()
...
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/8984 >
2025-05-14 14:45:55 -04:00
Doug Nazar
a9f5362ff7
musepack: Switch to GST_AUDIO_NE()
...
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/8984 >
2025-05-14 14:45:55 -04:00
Doug Nazar
19e35473f0
ges-audio-track: Switch to GST_AUDIO_NE()
...
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/8984 >
2025-05-14 14:45:55 -04:00
Doug Nazar
d3658eef72
controller: Free various props before being set
...
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/8978 >
2025-05-13 19:47:37 -04:00
Doug Nazar
80072383c5
directcontrolbinding: Free various props before being set
...
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/8978 >
2025-05-13 19:46:34 -04:00
Doug Nazar
42741ce897
rtspclientsink: Free various props before being set
...
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/8978 >
2025-05-13 19:45:12 -04:00
Doug Nazar
0c0b4ad6d0
gstrtspsrc: Free various props before being set
...
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/8978 >
2025-05-13 19:44:21 -04:00
Doug Nazar
e4f60e44ee
gstglfiltershader: Free various props before set & during cleanup
...
gst_object_replace() takes a reference so no need to dup object.
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/8978 >
2025-05-13 19:42:37 -04:00
Doug Nazar
4fb0a06271
uritranscodebin: Free various props before being set
...
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/8978 >
2025-05-13 19:37:59 -04:00
Doug Nazar
38ca8ae156
transcodebin: Free various props before being set
...
Also disable setting filters more than once.
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/8978 >
2025-05-13 19:35:58 -04:00
Doug Nazar
9d91e4cfc2
vulkan: Free various props before being set
...
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/8978 >
2025-05-13 19:34:59 -04:00
Doug Nazar
e81d0124da
transcoder: Free various props before during cleanup
...
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/8978 >
2025-05-13 19:23:53 -04:00
Doug Nazar
5867c7900a
all: Annotate *_set_property() contructor only props without free
...
Properties that are marked constructor only aren't required to be freed
before g_value_dup_*() as they can only be called once during construction.
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/8978 >
2025-05-13 19:15:21 -04:00
Seungha Yang
4d87ffb8f3
d3d12decoder: Workaround for NVIDIA crash on resolution change
...
Recent NVIDIA driver seems to crash on resolution change
if ID3D12VideoDecoder and ID3D12VideoDecodeCommandList are reused.
Fixes: https://gitlab.freedesktop.org/gstreamer/gstreamer/-/issues/4415
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/8968 >
2025-05-12 23:40:13 +00:00
Olivier Crête
111c0a4186
h264parse test: Ensure avc3 caps include a codec_data
...
The avc3 caps without a codec_data are just totally invalid
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/8955 >
2025-05-12 18:31:46 -04:00
Olivier Crête
f13c757696
h264parse: Require codec_data when receiving stream-format=avc or avc3
...
It's not really possible to safely interpret the content afterwards if
it's missing.
Even for AVC3, the codec_data doesn't need to contain a SPS/PPS, but
it still needs to be present to tell downstream elements about the size
of the nal unit length field.
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/8955 >
2025-05-12 18:31:46 -04:00
Olivier Crête
ffed473992
h264parse: Never output stream-format=avc/avc3 caps without codec_data
...
It's not possible to interpret further buffers without knowing the nal_length_size
field, so avc1/avc3 caps without the codec_data aren't valid, don't push them out.
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/8955 >
2025-05-12 18:31:46 -04:00
Olivier Crête
38499c949d
h264parse test: Send PPS in SPS parsing test
...
Without the PPS, the codec_data can not be created
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/8955 >
2025-05-12 18:31:46 -04:00
Seungha Yang
bef18d47cf
nvjpegenc: Add autogpu mode element
...
Similar to nvautogpu{h264,h265,av1}enc, adding auto gpu select mode
element
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/8555 >
2025-05-11 00:01:28 +00:00
Seungha Yang
7d45eca2ce
nvjpegenc: Use stream-ordered alloc if requested
...
If user requested stream-ordered allocation, use async alloc/free
methods
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/8555 >
2025-05-11 00:01:28 +00:00
Xavier Claessens
0172e47a79
python: Add Gst.Float wrapper
...
When the float python type is used inside a GstValueArray, it is
converted to a G_TYPE_DOUBLE GValue. Sometimes it is important to be
able to force G_TYPE_FLOAT GValue, for instance to set the the
"mix-matrix" property on audioconvert.
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/8957 >
2025-05-10 23:23:14 +00:00
Xavier Claessens
cff1d1962b
gstmessage: Debug error message is nullable
...
When debug is NULL, gst-launch-1.0 won't print
"Additional debug info:" line.
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/8943 >
2025-05-10 22:13:22 +00:00
Xavier Claessens
d5995b9302
python: Fix usage of our overrides from devenv
...
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/8952 >
2025-05-10 21:38:06 +00:00