Nicolas Dufresne
ec8e2d6a31
doc: Push v4l2codecs documentation cache
...
These are normally autogenerated for the platform GStreamer runs on,
though it is convenient to have everything listed in the doc. This
was created with the new GST_V4L2_CODEC_GEN_DOC=1 environment.
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/5555 >
2025-02-06 00:58:01 +00:00
Nicolas Dufresne
bb37ea168d
doc: v4l2codecs: Document all decoders
...
Add the documentation blob and since marker for all decoders.
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/5555 >
2025-02-06 00:58:01 +00:00
Nicolas Dufresne
3645f050af
v4l2codecs: Remove uneeded per-codec abstract class
...
That subclass was not needed and was causing issues wit doc generation.
The only down side of removing it is that the decoder cast macro is no
longer type safe.
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/5555 >
2025-02-06 00:58:01 +00:00
Nicolas Dufresne
2197627336
v4l2codecs: Add Hardware class to alpha decoders
...
This was accidently omitted, this is needed wen filterting hardware
codecs.
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/5555 >
2025-02-06 00:58:01 +00:00
Nicolas Dufresne
3b9fc2a29e
v4l2codecs: Cleanup alpha decodebin class header
...
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/5555 >
2025-02-06 00:58:01 +00:00
Nicolas Dufresne
d13a414ddc
v4l2codecs: Don't needlessly expose decoder types
...
We have explicit register functions and have no use for these types in
other components.
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/5555 >
2025-02-06 00:58:01 +00:00
Nicolas Dufresne
76b36f1493
v4l2codecs: Use pragma once
...
This is a nice cleanup and removes comment referring to D3D notably.
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/5555 >
2025-02-06 00:58:01 +00:00
Nicolas Dufresne
5e6411e2f6
v4l2codecs: Enable AV1 kernel version check
...
The uAPI finally got merged into 6.5.
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/5555 >
2025-02-06 00:58:01 +00:00
Nicolas Dufresne
18f3ea41c0
v4l2codecs: Add a doc generation mode
...
This is enabled through an env, it allow exposing all elements without
the needed driver supports. This is useful to fill the documentation cache.
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/5555 >
2025-02-06 00:58:01 +00:00
Nicolas Dufresne
7edb6a5634
waylandsink: Prefer DMABuf over system memory
...
Swap the template and caps query around to that the sink can describe a
preference for DMAbuf over system memory.
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/8404 >
2025-02-05 18:57:29 -05:00
Nicolas Dufresne
e953693aff
v4l2: object: Use libgstvideo DMA DRM mapping
...
Complete the mapping by pulling GST/DRM mapping from libgstvideo. This removes
the duplication.
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/8404 >
2025-02-05 18:57:29 -05:00
Nicolas Dufresne
388f86131f
video: dma-drm: Extend the format mapping
...
These formats were mapped in video4linux2 plugin, but not here. Add them
so te video4linux2 plugin can use the global mapping.
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/8404 >
2025-02-05 18:56:15 -05:00
Nicolas Dufresne
9eec7ddf19
video: Add support for big endian DRM formats
...
When a format is big endian, the 8bith of the fourcc is set. Handle this by
using a "_BE" suffix in serialization. The patch also update the design document
and introduce a unit test.
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/8404 >
2025-02-05 18:56:15 -05:00
Stéphane Cerveau
a960985d18
vkvideoencodeh265: fix PicOrderCntVal usage
...
remove `pic_order_cnt` member variable of GstVulkanH265EncodeFrame and
use always `pic_num` instead.
Intialize first `pic_num` value in test_encoder_h265_i_p.
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/8408 >
2025-02-05 18:33:36 +00:00
Andoni Morales Alastruey
bc5e1eeb16
build: remove gst-indent as a subproject
...
gst-indent is now installable with pip. Remove it as
a subproject and update the documentation.
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/8402 >
2025-02-05 17:43:57 +00:00
Stéphane Cerveau
bd62300d22
vkvideoencodeh26x: tests: set constant qp
...
Set constant qp to 26 in between 0 and 51, the qp range
for h264 and h265.
minQp in case of ANV is 10 for h265
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/8407 >
2025-02-05 16:48:56 +00:00
Seungha Yang
fbf698cc0b
mediafoundation: Enable MinGW build
...
Update MinGW toolchain in cerbero can support MediaFoundation
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/8406 >
2025-02-05 16:03:10 +00:00
Seungha Yang
7108147d78
mediafoundation: Use DEFINE_GUID instead of DECLSPEC_UUID
...
MinGW will not define IID for custom COM object
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/8406 >
2025-02-05 16:03:10 +00:00
Seungha Yang
f57162deeb
mediafoundation: Fix GUID_NULL related MinGW build error
...
Include cguid.h for GUID_NULL
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/8406 >
2025-02-05 16:03:10 +00:00
Seungha Yang
66b92465cd
mediafoundation: Fix various GCC warnings
...
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/8406 >
2025-02-05 16:03:10 +00:00
Corentin Damman
0268ee9c52
pluginloader-win32: create no window
...
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/8387 >
2025-02-05 14:18:22 +00:00
Robert Mader
12d2a4e2a1
matroskademux: Implement rotation tag support
...
Similar to qtdemux.
Tested against other Gst elements and MPV. Note that the later
apparently does not show correct results for flipped values.
In particular the Yaw value seems to get ignored by many clients.
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/8319 >
2025-02-05 13:26:08 +01:00
Robert Mader
a7c2899990
matroskamux: Implement rotation tag support
...
Similar to qtmux, but for mkv and webm containers.
Tested against other Gst elements and MPV. Note that the later
apparently does not show correct results for flipped values.
In particular the Yaw value seems to get ignored by many clients.
Can be tested with:
```
gst-launch-1.0 \
videotestsrc num-buffers=90 ! \
taginject tags="image-orientation=rotate-270" ! \
capsfilter caps=video/x-raw,width=640,height=480,max-framerate=30/1 ! \
videoconvert ! \
queue ! \
vp8enc ! \
queue ! \
webmmux ! \
filesink location=./test.webm
```
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/8319 >
2025-02-05 12:03:26 +00:00
Robert Mader
b2702b6f10
matroska: Add projection IDs
...
These will allow us to support rotate methods with matroska v4 and
the corresponding webm.
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/8319 >
2025-02-05 12:03:26 +00:00
He Junyan
e25ca874e1
va: Implement the VA h266 decoder
...
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/5865 >
2025-02-05 18:57:06 +08:00
He Junyan
0ce5fe3cc9
codecs: Add the H266/VVC decoder base class
...
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/5865 >
2025-02-05 18:57:06 +08:00
Philippe Normand
5de3cfca31
oggdemux: Fix racy decode error
...
Sometimes the seek to the end of file to determine the duration would trigger a
reset of the source pads, that would confuse the decoder downstream and trigger
an error. So the proposed fix is to not reset pads when the segment event being
processed is the consequence of a seek performed to determine the duration.
Fixes #4212
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/937 >
2025-02-04 18:56:25 +00:00
Seungha Yang
bf98e200b2
mfdevice: Unregister device notification callback on stop
...
... as intended
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/8405 >
2025-02-03 22:34:27 +00:00
Seungha Yang
972da9cab9
mfvideoenc: Fix profile string check
...
profile_str is not std::string. Use strcmp instead
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/8405 >
2025-02-03 22:34:27 +00:00
Seungha Yang
73f8de3305
mfdevice: Fix memory leak
...
Release resources on dispose() as intended
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/8405 >
2025-02-03 22:34:27 +00:00
Seungha Yang
91def8d4ad
meson: Check d3d12video header for MinGW build
...
Old MinGW toolchain does not ship the header
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/8400 >
2025-02-03 21:24:47 +00:00
Michael Tretter
1a8143f721
videotestsrc: fix build if adder is disabled
...
The videotestsrc is not build if the adder plugin is disabled. This is a
copy/paste error introduced in Commit 3de86b2b97
("docs: port plugins to
explicit sources").
Fix the check to actually test the 'videotestsrc' option.
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/8399 >
2025-02-03 18:57:34 +00:00
Sebastian Dröge
97a6a8213c
avcodecmap: Use gst_value_list_append_and_take_value() in two places
...
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/8379 >
2025-02-03 16:07:37 +00:00
Sebastian Dröge
6d772f6ba3
avcodecmap: Use actually supported channel counts for S302M
...
Only 2/4/6/8 channels are supported. Also this makes sure that the correct
sample rate is enforced (48kHz) in the template caps instead of allow any sample
rate and failing at runtime.
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/8379 >
2025-02-03 16:07:31 +00:00
Sebastian Dröge
a1c123d342
cc708overlay: Deprecate element in favour of cea708overlay
...
Fixes https://gitlab.freedesktop.org/gstreamer/gstreamer/-/issues/3459
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/8397 >
2025-02-03 09:51:53 +00:00
Tomas Granath
fa9b630fc8
matroskademux: Mark streams as EOS when outside the requested segment
...
Ensure that streams with no (more) data are marked as EOS when
advancing past the requested segment. Without this change the
EOS would be postponed to the end of the file in that case.
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/8395 >
2025-02-03 09:06:28 +00:00
Seungha Yang
353d963c77
d3d12mipgen: Respect requested mip levels
...
Don't waste GPU power by generating more levels than requested
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/8394 >
2025-02-02 21:01:42 +09:00
Seungha Yang
1dc09d67fe
d3d12mipgen: Serialize root signature only once
...
... and reuse serialized blob
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/8394 >
2025-02-02 20:51:43 +09:00
Carlos Bentzen
4b0d555056
libav: add support for VVC/H.266 decoder
...
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/7637 >
2025-02-02 08:53:33 +00:00
Ruben Gonzalez
df7a8c8c40
meson: use nls option to ENABLE_NLS
...
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/7017 >
2025-02-01 12:27:01 +00:00
Andoni Morales Alastruey
44720cd2f4
pre-commit: add documentation on how to use it
...
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/5192 >
2025-01-31 19:15:26 -03:00
L. E. Segovia
2e11649264
docs: Move all references to gst-indent-1.0
...
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/5192 >
2025-01-31 19:15:26 -03:00
Andoni Morales Alastruey
4ad6d4f99d
csharp: do not format autogenerated code
...
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/5192 >
2025-01-31 19:14:43 -03:00
Tim-Philipp Müller
eaec7d9acb
bad: tools: update gst-{app,element,project}-maker for new gst-indent
...
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/5192 >
2025-01-31 19:14:43 -03:00
Tim-Philipp Müller
bc83c07727
scripts: update update-orc-dist-files.py scripts for new gst-indent
...
And fix python indentation with autopep8
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/5192 >
2025-01-31 19:14:43 -03:00
Tim-Philipp Müller
41c097ed6c
docs: update contributing + FAQ docs for gst-indent
...
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/5192 >
2025-01-31 19:14:43 -03:00
L. E. Segovia
fab3da528e
gst-indent: build our own indent tool and make it available in the devenv
...
No more formatting mismatches owing to different GNU indent
versions shipped by different distro versions.
See #340
Co-authored-by: L. E. Segovia <amy@centricular.com>
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/5192 >
2025-01-31 19:14:41 -03:00
Carlos Bentzen
8b464cd282
libav: map GST_VIDEO_FORMAT_GRAY10_LE16 to AV_PIX_FMT_GRAY10LE
...
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/8388 >
2025-01-31 14:17:05 +00:00
Seungha Yang
cc6941ed9a
d3d12converter: Fix SRV descriptor heap size
...
Converter was allocating smaller size of descriptor heap
than required size when auto-mipgen is enabled
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/8391 >
2025-01-31 13:16:50 +00:00
Seungha Yang
a91275a71e
examples: Add h264parser example
...
An example to show how to detect frame type using h264parser
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/8338 >
2025-01-31 10:53:19 +00:00
Jan Schmidt
31a3172bfe
v4l2vidoedec: Fix caps negotiation in non-DRM case
...
Append acquired_caps to the filter_caps being built,
instead of a 2nd copy of acquired_drm_caps.
Fix a regression introduced in
https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/7633
when downstream doesn't support DRM output.
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/8385 >
2025-01-30 12:33:07 +00:00
Piotr Brzeziński
a88eda66d2
osxaudio: Always expose max amount of channels with no positions
...
For outputs with a high number of channels, macOS has a bug where
initially CoreAudio will report incorrect positions for all channels,
but after you run Audio MIDI Setup and configure the speaker layout
there, macOS will always report those few as positioned, with no option
to revert that (other than deleting some internal files).
In such scenario our code would just ignore all the unpositioned
channels. Since you can only position max. 16 channels in macOS, if you
had more on your output device, those would be unusable.
This commit makes sure that in addition to the usual positioned layout
(if there is one), we will expose caps for a no-positions layout that
always has the maximum amount of channels available.
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/8311 >
2025-01-30 09:53:15 +00:00
Piotr Brzeziński
c5c5327df6
osxaudio: Work around invalid channel positions from CoreAudio
...
By default, for devices with larger amounts of outputs, CoreAudio can
provide invalid channel labels/positions, simply by starting at 0 and
incrementing forward. For example, values 19 through 32 are not valid
according to the CoreAudioBaseTypes.h header, but if your device has >19
output channels, you will find CoreAudio using those values.
This is most likely a bug in CoreAudio, since in that case it should use
unpositioned labels (e.g. _Discrete_X) instead.
This commit aims to work around this by overriding all channels to be
unpositioned if the case above is detected.
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/8311 >
2025-01-30 09:53:15 +00:00
Sebastian Dröge
83e95af6e3
mpegtsdescriptor: Add (transfer none) annotation to out parameter of parse_registration()
...
Out parameters are (transfer full) by default.
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/8380 >
2025-01-30 01:06:55 +00:00
Colin Kinloch
e0e7a11089
wayland: De-dupe filling caps format fields
...
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/8268 >
2025-01-29 21:04:16 +00:00
Nicolas Dufresne
d327b576fd
v4l2codecs: format: Fix tiled stride with modifiers
...
After a bit of back and forth, we figure-out that for backward
compatibility we need to set the tile stride the way GStreamer
defines it. Sinks such as glimagesink/waylandsink translate it
back to the number of bytes representation used by Linux.
The change in !7355 when the other way around, breaking tiled
playback through waylandsink and glimagesink.
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/7892 >
2025-01-29 17:20:33 +00:00
Nicolas Dufresne
902f0eb9ea
video: Add DMA_DRM mapping for NV12_16L32S / MT2110T / MT2110R
...
This is used on Meditek SoC and Mesa Panfrost [0] has enabled the 8bit variant
with a faster GL shader implementation then ours.
[0] https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/31899
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/7892 >
2025-01-29 17:20:33 +00:00
Nicolas Dufresne
2be6b66349
video: Import a verbatim copy of drm_fourcc.h
...
Imported from drm-tip [0] at commit 3ab334814dc7dff39075e055e12847d51878916e.
As the copied definition became bigger an bigger, it was quite apparent this
was more work then needed. Simply replace manual copies with a verbatim
official copy of it.
[0] https://gitlab.freedesktop.org/drm/tip/-/blob/drm-tip
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/7892 >
2025-01-29 17:20:33 +00:00
Robert Mader
1fc6f0d349
qtmux: Implement rotation tag support
...
Mirroring the demux element and isomp4mux from gst-plugins-rs.
Tested against other Gst elements and MPV. Note that the later
apparently does not show correct results for flipped values.
Can be tested with:
```
gst-launch-1.0 \
videotestsrc num-buffers=90 ! \
taginject tags="image-orientation=rotate-90" ! \
capsfilter caps=video/x-raw,width=640,height=480,max-framerate=30/1 ! \
videoconvert ! \
queue ! \
openh264enc ! \
queue ! \
h264parse ! \
mp4mux ! \
filesink location=./test.mp4
```
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/8371 >
2025-01-29 16:24:21 +00:00
Colin Kinloch
edf157beb5
wayland: Don't filter out unrecognised DRM formats
...
There is no requirement for a base DRM format to be supported by libgstvideo
in order to be uploaded to.
The linux-dmabuf-v1 format events are DRM_FORMAT codes and don't need to
be converted before use with `gst_video_dma_drm_fourcc_to_string`.
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/8279 >
2025-01-29 15:23:57 +00:00
Zhao, Gang
705b142134
fdsrc: Add property is-live
...
Fixed #4184
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/8372 >
2025-01-29 12:46:56 +00:00
Alexander Slobodeniuk
6376849396
qtmux: fix critical warnings on negotiation error
...
This pipeline fails to negotiate on my PC:
gst-launch-1.0 v4l2src ! h264parse ! qtmux ! filesink location=t.mp4
When it happens some critical glib warnings are emitted:
-------------------------------
GStreamer-CRITICAL **: 15:09:03.485: gst_mini_object_copy: assertion 'mini_object != NULL' failed
GStreamer-CRITICAL **: 15:09:03.485: gst_mini_object_unref: assertion 'mini_object != NULL' failed
GStreamer-CRITICAL **: 15:09:03.485: gst_caps_get_structure: assertion 'GST_IS_CAPS (caps)' failed
GStreamer-CRITICAL **: 15:09:03.485: gst_structure_set_value: assertion 'structure != NULL' failed
GStreamer-CRITICAL **: 15:09:03.485: gst_mini_object_unref: assertion 'mini_object != NULL' failed
--------------------------------
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/8374 >
2025-01-29 10:46:25 +00:00
L. E. Segovia
41b779e57c
meson: Add python-exe option to override target Python installation
...
Fixes #4185
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/8337 >
2025-01-28 17:31:12 +00:00
Jan Alexander Steffens (heftig)
7abece4416
cccombiner: Restore QoS messaging
...
Reimplement the QoS message generation that was lost together with the
caption frame counting.
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/7996 >
2025-01-28 14:51:19 +00:00
Jan Alexander Steffens (heftig)
3c5f03dce1
cccombiner: Clean up property mutability
...
Most settings are copied from properties on the READY → PAUSED state
change. The recently added properties violate this scheme, and are
probably unsafe to change.
Make these properties consistently MUTABLE_READY. Also remove the unused
`output_padding` field.
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/7996 >
2025-01-28 14:51:19 +00:00
Jan Alexander Steffens (heftig)
26c598dd1b
tests: cccombiner: Test rescheduling 50fps to 25fps w/o overflow
...
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/7996 >
2025-01-28 14:51:19 +00:00
Jan Alexander Steffens (heftig)
b29262e662
cccombiner: Replace caption frame counting with max_buffer_time
...
The counting is defective when we are combining with a stream that has a
higher max_cea608_count (such as 60p to 30i), as we produce less caption
frames than we consume, leading to periodic queue drops.
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/7996 >
2025-01-28 14:51:19 +00:00
Jordan Yelloz
2619a59f82
gstiterator: Added error handling to filtered iterators
...
Otherwise, if the underlying iterator returns GST_ITERATOR_ERROR, the filtered
iterator will crash.
With this change, the filtered iterator propagates the error back to the caller.
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/8367 >
2025-01-28 06:31:09 +00:00
Tomas Granath
49e4c0b451
oggdemux: Do not change total duration until new duration is found
...
After calculating a correct duration the oggdemux in some cases sets the duration to GST_CLOCK_TIME_NONE.
After that any seek will fail due to the oggdemux calculating a target time after the actual duration.
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/8296 >
2025-01-27 17:13:38 +00:00
Alicia Boya García
794ad2841a
docs: Fix log category names in the log tracer
...
The documentation was incorrectly referring to `GST_QUERY` and `GST_BIN`
as GstDebug category names. These two don't follow the pattern of the
rest, and instead are named `query` and `bin` respectively.
This can be verified from the source code of the _do_init macro in the
same gstlog.c file, and from gstbin.c and gstquery.c calls to
GST_DEBUG_CATEGORY_INIT().
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/8365 >
2025-01-27 15:24:29 +00:00
Alicia Boya García
a6dcbf9446
tracers: log: Fix wrong argument in do_chain_buffer_pre()
...
The third argument of the pad-chain-pre and pad-chain-post hooks are of type GstBuffer* and GstBufferList* respectively.
However, when I added do_chain_buffer_pre() and do_chain_buffer_post()
to gstlog.c I accidentally make them take GstFlowReturn -- almost
certainly as an artifact from duplicating the code of the _post()
variants, leading to erroneous log lines like this:
```
do_chain_buffer_pre:<vp9parse0:sink> 0:00:01.615378540, pad=<vp9parse0:sink>, res=-1073639680
```
This patch fixes that.
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/8366 >
2025-01-27 14:44:02 +01:00
Alicia Boya García
6d9552295f
tracing: add hooks for gst_pad_send_event_unchecked()
...
Similar to de30de865c
, this allows to follow the flow of events as they
arrive to a pad rather than only when they are pushed to a peer.
The hook is installed in gst_pad_send_event_unchecked() instead of
gst_pad_send_event() because the latter is often omitted: that is the
case especifically in gst_pad_push_event_unchecked(), where most event
propagation occurs.
This patch also makes use of the new hooks in the log tracer to log the
begining and end of the send_event processing.
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/8330 >
2025-01-27 11:08:52 +00:00
Alicia Boya García
a35bf1e384
tracers: signal pad-push-event when pushing sticky events
...
Previously, the tracer pad-push-event was only signalled on
gst_pad_push_event(). However, the sticky event handling code in
GStreamer uses gst_pad_push_event_unchecked() instead, which meant those
events were not logged.
This patch extends the definition of the pad-push-event tracer to cover
both calls to gst_pad_push_event() and any direct calls to
gst_pad_push_event_unchecked() that skip the former inside GstPad
private code.
gst_pad_push_event_unchecked() returns GstFlowReturn instead of
gboolean like gst_pad_push_event(). To maintain API compatibility, the
GstFlowReturn is converted to gboolean.
Fixes https://gitlab.freedesktop.org/gstreamer/gstreamer/-/issues/4182
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/8342 >
2025-01-27 08:56:03 +00:00
Sebastian Dröge
fb2337ea82
netclientclock: Don't stop searching the clock cache when the first corrupted clock is found
...
The clock we're looking for might be working fine and be available afterwards.
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/8334 >
2025-01-27 07:47:05 +00:00
Sebastian Dröge
dd58ae8cc8
netclientclock: Don't ever store failed internal clocks in the cache
...
If starting the internal clock fails we would still store a broken clock in the
cache despite it being unusable and never recovering.
Not storing it allows the application to simply create a new one at a later time
and have starting it retried.
Also signal to the application that such a clock is not synced.
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/8334 >
2025-01-27 07:47:05 +00:00
Brad Hards
154ea45111
taginject: typo fix in usage example
...
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/8362 >
2025-01-26 20:21:58 +00:00
Arun Raghavan
4cd63e09d9
webrtcdsp: Use C++20 with MSVC if needed
...
The subproject fails on vs2022 builds with:
[...]agc2/input_volume_stats_reporter.cc(89): error C7555: use of designated initializers requires at least '/std:c++20'
So let's force C++20 in this case.
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/8270 >
2025-01-26 12:30:01 -05:00
Arun Raghavan
9b647a0bbd
webrtcdsp: Bump to WebRTC AudioProcessing 2.1
...
Keep 1.0 support around so distros can manage this bump more easily.
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/8270 >
2025-01-24 15:53:36 -05:00
Andoni Morales Alastruey
432ada66f2
vtdec: fix seeks hangs due to a race condition draining
...
If the drain function of the decoder triggered by FLUSH_START
is run while the output loop is running, once the output loop
finished vtdec->downstream_ret will be GST_FLOW_FLUSHING instead
of GST_FLOW_OK, which must not be treated as an error since
the queue is cleaned correctly as well.
Fix #4179
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/8328 >
2025-01-24 17:36:17 +00:00
Thibault Saunier
26e6109b44
matroskademux: Add support to seek with stop in push mode
...
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/8340 >
2025-01-24 15:30:53 +00:00
Brad Hards
7f14c08918
x264enc: switch to GstByteWriter
...
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/8346 >
2025-01-24 11:38:43 +00:00
Jochen Henneberg
73c61784d4
audiorate: Account for in buffer samples if fill samples are added
...
If fill buffers are added to compensate for missing samples the input
buffer is pushed as well and has to be added to output samples count.
This ensure that add - drop == out - in.
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/8358 >
2025-01-24 09:12:50 +01:00
Rares Branici
345eae97d4
pluginloader-win32: create no window
...
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/8354 >
2025-01-23 19:48:28 +00:00
Silvio Lazzeretti
a6eb1de87d
gstpluginloader-win32: fix use after free in find_helper_bin_location
...
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/8352 >
2025-01-23 19:28:54 +00:00
Matthew Waters
0b92e04142
cudacompositor: pass correct variable to debug log functions
...
Fixes spew of:
gst_debug_log_full_valist: assertion 'id != NULL ||
object == NULL || G_IS_OBJECT (object)' failed
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/8345 >
2025-01-23 17:18:46 +00:00
Guillaume Desmottes
0e3d6f0606
wpe: remove glFlush() when filling buffer
...
According to https://gitlab.freedesktop.org/gstreamer/gstreamer/-/issues/4162#note_2739338
it was introduced as workaround for tearing issues.
I do not experience any tearing without flushing on both nvidia and AMD
GPU, so I suppose it's no longer needed.
Slightly improve CPU usage according to my tests.
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/8348 >
2025-01-23 14:45:57 +00:00
Thibault Saunier
d7274f574c
docs: rust: Fix link to rust documentation when in a rustdoc page
...
Current behavior is too weird as it points to the `libs.html` page
which is empty (as ?language=rust), instead we should stay on the
same page.
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/8350 >
2025-01-23 10:29:32 -03:00
Thibault Saunier
58939e10ee
docs: Embed the gstreamer-rs documentation into our documentation in CI
...
Downloading the latest build of GStreamer-rs from its CI job and running a
script to embed the rustoc generated documentation into hotdoc based one.
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/8317 >
2025-01-23 10:52:50 +00:00
Sebastian Dröge
55fa0a54a2
video-overlay-composition: Handle the SCALE meta transformation
...
Simply update the render rectangle according to the scale factor. As only the
render rectangle is changed, the seqnum of the rectangle stays intact and no
additional GPU uploads are necessary.
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/8288 >
2025-01-22 15:17:27 +00:00
Sebastian Dröge
8991140c5a
video-overlay-composition: Declare the video/size/orientation tags for the meta
...
If any of these change then the meta needs to be updated one way or another.
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/8288 >
2025-01-22 15:17:27 +00:00
Seungha Yang
dc81abe9ee
cudacompositor: Fix memory leak
...
gst_cuda_compositor_upload_frame() returns buffers with increased
refcount already
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/8335 >
2025-01-22 11:42:00 +00:00
Brad Hards
9b578abe15
h264parse: add conditional values to AVCConfigurationRecord
...
This adds the data required in AVCDecoderConfigurationRecord for
higher profile (High variants) configurations - everything in the if(...) {...} part
of ISO/IEC 14496-15:2024 Section 5.3.2.1.2. (or 5.3.3.1.2 in the 2019 version).
Resolves an error flagged by ComplianceWarden when muxing this into ISOBMFF.
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/8308 >
2025-01-22 15:58:21 +11:00
Brad Hards
105c3c7242
x264enc: add missing data to AvcDecoderConfigurationRecord
...
This adds the data required in AVCDecoderConfigurationRecord for
higher profile (High variants) configurations - everything in the if(...) {...} part
of ISO/IEC 14496-15:2024 Section 5.3.2.1.2. (or 5.3.3.1.2 in the 2019 version).
Resolves an error flagged by ComplianceWarden when muxing this into ISOBMFF.
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/8308 >
2025-01-22 14:03:55 +11:00
Alicia Boya García
e8ef562d01
tracers: log: Log buffer-chain
...
Commit de30de865c
added a hook for pad-chain-{pre,post} and
pad-chain-list-{pre,post}. As explained in that commit, hooking the
chain is helpful because it allows you to hook to buffer propagation in
both srcpads (pad-push) and sinkpads (pad-chain).
This patch uses the new hooks to log pad-chain in the log tracer.
Before, only pad-push was logged, so you could only follow the flow of
buffers through the srcpads.
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/8329 >
2025-01-21 08:45:25 +00:00
Tim-Philipp Müller
4bd7e194f6
gst-libav: tests: fix build with older glib versions
...
g_newa0() is only available since 2.72.
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/8333 >
2025-01-21 01:38:54 +00:00
Olivier Crête
86bac82c8e
python: Add __eq__ to Mtd classes
...
Also programatically iterate all of the base classes to register them.
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/8237 >
2025-01-20 21:16:32 +00:00
Daniel Morin
ad4fa052e5
gst-python: Test for GstAnalyticsRelationMeta iterator
...
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/8237 >
2025-01-20 21:16:32 +00:00
Daniel Morin
e294b1b773
analytics: Adding iterator for AnalyticsRelationMeta
...
Allow to create an iterator for Mtd's inside an AnalyticsRelationMeta
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/8237 >
2025-01-20 21:16:32 +00:00
Seungha Yang
d9510be7b1
docs: Update nvcodec plugin docs
...
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/8325 >
2025-01-20 19:31:36 +00:00
Seungha Yang
c01ef564d9
cudaipc: Use empty string for address property docs
...
Since Windows and Linux have different default values,
use empty string when generating plugin docs
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/8325 >
2025-01-20 19:31:36 +00:00
Seungha Yang
1f481fe1d5
nvcodec: Specify documentation caps
...
... since produced caps will be different depending on OS and GPU model.
Also adding Y444_16LE format to decoder's GL template caps
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/8325 >
2025-01-20 19:31:36 +00:00
Seungha Yang
06afe8aa8f
docs: Add nvcomp plugin docs
...
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/8325 >
2025-01-20 19:31:36 +00:00
Sebastian Dröge
03942ff5b4
tsdemux: Fix backwards PTS wraparound detection with ignore-pcr=true
...
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/8326 >
2025-01-20 17:57:31 +00:00
Thibault Saunier
2ff6a3ecb6
docs: doc-cache-generator: Pass the full os.environ so pkg-config
can be found
...
We want to pass the `PATH` from the current environment.
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/8327 >
2025-01-20 13:52:43 -03:00
Thibault Saunier
ed7b210ae7
docs: Make autopep8 happy for gst-plugins-doc-cache-generator.py
...
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/8327 >
2025-01-20 13:52:38 -03:00
Guillaume Desmottes
5b4eb339a3
sparsefile: ensure error is set when read_buffer() returns 0
...
gst_sparse_file_read() is supposed to set @error when returning 0 but
in some cases was not.
Hopefully fix a crash in gst_download_buffer_read_buffer() which is
checking error->code when 0 is returned.
I'm not totally sure when this happens as I debugged this from a post
mortem crash but returning a generic error here seems the safe thing to
do.
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/8321 >
2025-01-20 13:33:10 +00:00
Guillaume Desmottes
60f4cd77d5
sparsefile: fix typo in doc
...
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/8321 >
2025-01-20 13:33:10 +00:00
Mathieu Duponchelle
b26a5ee088
docs: explicitly list gir files as depends for generating configs
...
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/8324 >
2025-01-20 13:24:44 +01:00
Mathieu Duponchelle
45c4c6d7ed
docs: only add configuration files to sitemap once generated
...
The generation script can fail to generate a configuration for the four
libraries where the documentation is not generated from gir, as it needs
to run pkg-config.
Only add the path to the configuration file to the sitemap once it has
successfully been dumped.
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/8324 >
2025-01-20 13:24:44 +01:00
Nirbheek Chauhan
29098aeba8
gstdevice: Fetch device provider from message source
...
The GstDevice removed may not have a parent anymore when we check
whether the provider is hidden. Let's fetch the provider from the
message source, which is more reliable.
Fixes a racy nullptr deref on macOS when a device is unplugged:
```
libgstreamer-1.0.0.dylib!is_provider_hidden (gstreamer/subprojects/gstreamer/gst/gstdevicemonitor.c:240)
libgstreamer-1.0.0.dylib!bus_sync_message (gstreamer/subprojects/gstreamer/gst/gstdevicemonitor.c:286)
libgstreamer-1.0.0.dylib!gst_bus_post (gstreamer/subprojects/gstreamer/gst/gstbus.c:358)
libgstreamer-1.0.0.dylib!gst_device_provider_device_remove (gstreamer/subprojects/gstreamer/gst/gstdeviceprovider.c:685)
libgstosxaudio.dylib!gst_osx_audio_device_provider_update_devices ([...]/sys/osxaudio/gstosxaudiodeviceprovider.c:539)
libgstosxaudio.dylib!_audio_devices_changed_cb ([...]/sys/osxaudio/gstosxaudiodeviceprovider.c:313)
CoreAudio!HALObject::PropertiesChanged(unsigned int, AudioObjectPropertyAddress const*) (Unknown Source:0)
CoreAudio!HALSystem::PropertiesChanged(unsigned int, AudioObjectPropertyAddress const*) (Unknown Source:0)
CoreAudio!HALSystem::ObjectsPublishedAndDied(...) (Unknown Source:0)
CoreAudio!HALSystem::AudioObjectsPublishedAndDied(...) (Unknown Source:0)
CoreAudio!HALC_ShellPlugIn::ReconcileDeviceList(bool, bool) (Unknown Source:0)
CoreAudio!HALC_ShellPlugIn::CreateAggregateDevice(__CFDictionary const*, unsigned int&) (Unknown Source:0)
CoreAudio!AudioHardwareCreateAggregateDevice_mac_imp (Unknown Source:0)
AudioDSP!___lldb_unnamed_symbol15046 (Unknown Source:0)
AudioDSP!___lldb_unnamed_symbol15038 (Unknown Source:0)
AudioDSP!___lldb_unnamed_symbol33307 (Unknown Source:0)
AudioToolboxCore!APComponent::newInstance(...) (Unknown Source:0)
AudioToolboxCore!instantiate(...) (Unknown Source:0)
AudioToolboxCore!__AudioComponentInstanceNew_block_invoke (Unknown Source:0)
AudioToolboxCore!Synchronously (Unknown Source:0)
```
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/8320 >
2025-01-20 15:44:20 +05:30
Tim-Philipp Müller
f70e2f046c
avaudenc: add test for misaligned audio input buffers
...
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/8318 >
2025-01-20 08:58:01 +00:00
Tim-Philipp Müller
9b536630f1
avaudenc: fix crash in avenc_ac3 if input buffers are insufficiently aligned
...
Memcpy if needed to ensure sufficient alignment, as some
SIMD instructions might require more alignment than we provide
by default (e.g. vmovaps requires 32 bytes, but gstreamer uses
malloc alignment by default which is 16 bytes here on x86_64).
And in any case buffers might be trimmed, so the only alignment
we can expect is sample frame alignment which might be even
smaller than 16 bytes.
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/8318 >
2025-01-20 08:58:01 +00:00
Seungha Yang
289f63b6e7
nvcodec: Add cudacompositor element
...
Adding CUDA based compositor element
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/8170 >
2025-01-20 01:12:21 +09:00
Seungha Yang
875e137f4f
cudaconverter: Add support for alpha blending
...
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/8170 >
2025-01-20 01:12:21 +09:00
Seungha Yang
d761196bb7
cudaconverter: Add support for configuration update
...
Allow updating various configuration values via property
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/8170 >
2025-01-20 01:12:21 +09:00
Seungha Yang
1fa51046d1
cudaconverter: Pass constant values as kernel argument
...
Make conversion kernel more flexible and reusable
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/8170 >
2025-01-20 01:12:20 +09:00
Seungha Yang
1b6f66a840
cuda: Load 2D memset function symbols
...
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/8170 >
2025-01-20 01:12:20 +09:00
Mathieu Duponchelle
7983ecff1c
docs: generate hotdoc configs for libraries with our helper script
...
With this patch, configure time is identical no matter whether doc is
enabled or not.
The configuration files also now contain explicitly-listed sources with
no wildcards.
For the four libraries where hotdoc needs to use clang to generate the
documentation (as opposed to the rest of the libraries where hotdoc uses
the gir), the script will call pkg-config to determine the appropriate
C flags.
This means a side effect of this patch is that pkg-config files are now
generated for the gstadaptivedemux and gstopencv libraries.
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/8312 >
2025-01-17 20:36:06 +01:00
Mathieu Duponchelle
17e53f8c95
meson: bump minimum version to 1.4 in every subprojects
...
36c01d0579
bumped to 1.4 for gst-devtools
and the root project, but we usually keep those in sync everywhere.
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/8312 >
2025-01-17 20:22:34 +01:00
Mathieu Duponchelle
eeb3b7e683
docs: remove useless index.md in libs/ subdirectory
...
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/8312 >
2025-01-17 20:22:34 +01:00
Mathieu Duponchelle
dce50d3320
docs: remove unused index.md file
...
It is a bit hard to track its origin as `git log --follow` leads all the
way to a 2001 Wim commit of a TODO file, but it was not used in the
documentation and the contained information appears in other places.
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/8312 >
2025-01-17 20:22:33 +01:00
Thibault Saunier
aa78649635
videoconvertscale: Handle large pixel aspect ratios
...
Some pixel aspect ratios found in dash streams have very large numerators and
denominators (while being close to 1:1). These values can cause integer overflow
during multiplication, leading to negotiation failures.
Add fallback path using gdouble when integer multiplication would overflow,
trading some precision for reliability instead of failing outright.
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/8262 >
2025-01-17 15:13:14 +00:00
Thibault Saunier
e77a16b2e6
gst: utils: Add a multiply_int64 variant
...
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/8262 >
2025-01-17 15:13:14 +00:00
Sam James
c7a7eb1eb3
lc3: tweak meson style
...
While this might seem a bit silly, it aids some of our infra in
packaging. Tweak for consistency with other use.
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/8239 >
2025-01-16 20:09:06 +00:00
Stéphane Cerveau
ee7d41f76b
vkh264dec: enhance interlaced content support
...
- Use frame_num instead of pic_num to set the long_term_pic_num
fixing 10 interlaced tests in fluster test suite: JVT-AVC_V1
- Send the slice offset only once in case of interlaced content.
Fixing 5 interlaced tests in fluster test suite: JVT-AVC_V1.
- The default value for top and bottom field flag should be 0 in the
case of a progressive content.
- Use short and long term refs helper getter method to retrieve the
reference frames according its none existing and interlaced state
- Reorganize the find_next_slot_idx code to be easier to read.
Co-authored-by: Daniel Almeida <daniel.almeida@collabora.com>
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/7854 >
2025-01-16 19:18:22 +00:00
Víctor Manuel Jáquez Leal
3090cefbc5
vkh264dec: enable h264 interlaced decoding
...
First the slot_index shall have the same value for the first and second
fields.
Also, the reference frames are only those with both fields.
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/7854 >
2025-01-16 19:18:22 +00:00
Víctor Manuel Jáquez Leal
f5f20ce85e
vkh264dec: make GstVulkanH264Picture a reference count
...
Thus we could re-use the same structure for interlaced fields: a single bistream,
single output buffer and single vulkan structures.
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/7854 >
2025-01-16 19:18:21 +00:00
Stéphane Cerveau
c38a847fe1
vkh264dec: non existing picture are not refs
...
The non existing picture or gap picture should not be
considered as refs for vulkan decoder.
Fix fluster tests:
MR3_TANDBERG_B
MR4_TANDBERG_C
MR5_TANDBERG_C
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/7854 >
2025-01-16 19:18:21 +00:00
Stéphane Cerveau
538747907d
vkh264dec: support h264 extended profile
...
Extended is identical to main but allows FMO/ASO features to be used,
and prevent using CABAC.
Using similar logic to "baseline", assume that if we support main,
we can also do extended.
This fixes the following fluster vectors, which otherwise would fail when trying to link the parsebin pad.
BA3_SVA_C
MR6_BT_B
MR7_BT_B
MR8_BT_B
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/7854 >
2025-01-16 19:18:21 +00:00
Stéphane Cerveau
36c01d0579
meson: set minimum version to 1.4
...
Since !8273 which introduces the use file.full_path(),
the meson minimum version should be 1.4
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/8309 >
2025-01-16 13:39:40 +00:00
Mathieu Duponchelle
3ac589d308
scaletempo: expose alternative mode, fit-down
...
In fit-down mode only 1.0 rates are supported, and the element will fit
audio data in buffers to their advertised duration.
This is useful in speech synthesis cases, where elements such as
awspolly will generate audio data from text, and assign the duration of the
input text buffers to their output buffers
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/8149 >
2025-01-16 12:35:13 +00:00
Daniel Morin
5919b20e8b
gst-analytics: add missing mtd segmentation API
...
- add gst_analytics_segmentation_mtd_get_mtd_type() which is required to
retrieve the concrete type of a generic mtd (GstAnalyticsMtd).
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/8307 >
2025-01-15 17:27:15 -05:00
Sebastian Dröge
0476b9cd2c
decklinkvideosink: Fix handling of caps framerate in auto mode
...
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/8280 >
2025-01-15 14:24:34 +00:00
Carlos Bentzen
7405866c84
tsdemux: add support for VVC/H.266
...
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/4940 >
2025-01-15 13:55:25 +01:00
Tim-Philipp Müller
5c2c688c4c
webrtc-nice: fix compiler warning with older versions if libnice
...
warning: "HAVE_LIBNICE_CONSENT_FIX" is not defined, evaluates to 0 [-Wundef]
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/8305 >
2025-01-15 02:18:31 +00:00
Seungha Yang
ee0afa29d1
d3d12: Update docs for max-mip-levels property
...
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/8290 >
2025-01-15 03:03:52 +09:00
Seungha Yang
561714a454
d3d12convert: Add max-mip-levels property
...
Add support for automatic mipmap generation depending on viewport size
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/8290 >
2025-01-15 03:03:47 +09:00
Seungha Yang
caf6f36276
d3d12swapchainsink: Add max-mip-level property
...
Add support for automatic mipmap generation depending on viewport size
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/8290 >
2025-01-15 03:03:42 +09:00
Seungha Yang
11d4b59b73
d3d12videosink: Add max-mip-level property
...
Add support for automatic mipmap generation depending on viewport size
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/8290 >
2025-01-14 17:23:04 +00:00
Seungha Yang
826da1c960
d3d12converter: Add support for mipmap generation
...
Adding max-mip-levels property so that converter can generate
mipmap textures if render target size is smaller than
input texture resolution.
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/8290 >
2025-01-14 17:23:04 +00:00
Seungha Yang
2fc11cce84
d3d12converter: Refactor to support mipmap handling
...
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/8290 >
2025-01-14 17:23:04 +00:00
Seungha Yang
b14448dd37
d3d12mipmapping: Add support for GRAY output
...
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/8290 >
2025-01-14 17:23:04 +00:00
Seungha Yang
65c23885d4
d3d12mipmapping: Skip alpha sampling if possible
...
If input format has no alpha and output format has no alpha,
skip alpha sampling which can reduce the number of instruction slots
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/8290 >
2025-01-14 17:23:04 +00:00
Seungha Yang
1e243d0960
d3d12: Move mipgen to libs
...
converter object will use mipgen object
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/8290 >
2025-01-14 17:23:04 +00:00
Tim-Philipp Müller
a059536b58
Back to development after 1.25.1
2025-01-14 15:00:43 +00:00
Tim-Philipp Müller
ca9d85c3b7
Release 1.25.1
2025-01-14 14:57:58 +00:00
Sebastian Dröge
96a0c185dd
avcodecmap: Only use new channel positions when compiling against new enough ffmpeg
...
Fixes https://gitlab.freedesktop.org/gstreamer/gstreamer/-/issues/4163
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/8300 >
2025-01-14 08:04:01 +00:00
Jordan Yelloz
806bdc7c4b
decklink: Fixed caps-building for output devices
...
When iterating through output devices, video_input_caps was being
updated instead of video_output_caps.
As a result, video output devices were being created with an empty caps object
and `gst-device-monitor-1.0 Video/Sink` would produce no decklink devices.
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/8298 >
2025-01-14 06:19:54 +00:00
Ruben Gonzalez
c6ed0c33a0
h264parse: drop duplicated call
...
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/8299 >
2025-01-13 22:09:10 +01:00
Tim-Philipp Müller
22bb73b796
docs: update vampeg2dec docs with new rank
...
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/8295 >
2025-01-13 19:26:26 +00:00
Tim-Philipp Müller
79a04e936d
docs: add svtjpegxs plugin
...
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/8295 >
2025-01-13 19:26:26 +00:00
Tim-Philipp Müller
dba15a43c7
docs: add openaptx plugin
...
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/8295 >
2025-01-13 19:26:26 +00:00
Mathieu Duponchelle
3de86b2b97
docs: port plugins to explicit sources
...
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/8273 >
2025-01-13 19:17:13 +01:00
Xavier Claessens
f7ea1f84c9
magicleap: Drop MLSDK support
...
I was used by ML1 (first gen device) which is deprecated and not
supported anymore. ML2 uses standard Android JNI and NDK.
Note that mlaudiosink element remains in bad/sys/magiclea because it
allows 3d spatial audio and that API is still supported by Magicleap
SDK.
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/6108 >
2025-01-13 14:40:18 +00:00
Edward Hervey
eca10c0461
libav: Add more warning flags
...
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/8229 >
2025-01-13 12:51:46 +00:00
Edward Hervey
2cb0f6b265
editing-services: Add more warning flags
...
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/8229 >
2025-01-13 12:51:46 +00:00
Edward Hervey
ee722d0b16
ges: Fix old style function
...
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/8229 >
2025-01-13 12:51:46 +00:00
Edward Hervey
f20ecfa920
validate: Add more warning flags
...
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/8229 >
2025-01-13 12:51:46 +00:00
Edward Hervey
5c2c1bce6c
validate: Fix old style definition
...
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/8229 >
2025-01-13 12:51:46 +00:00
Edward Hervey
06748d155c
ugly: Add more warning flags
...
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/8229 >
2025-01-13 12:51:46 +00:00
Edward Hervey
4113101145
rtsp-server: Add more warning flags
...
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/8229 >
2025-01-13 12:51:46 +00:00
Edward Hervey
959d58fd98
libav/codecmap: Clarify fallthrough usages
...
And minor rewrite to avoid `return; break;` patterns
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/8229 >
2025-01-13 12:51:46 +00:00
Edward Hervey
eef680b441
bad: Add extra warning flags
...
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/8229 >
2025-01-13 12:51:46 +00:00
Edward Hervey
57196d634e
winscreencap: Don't use aggregate returns
...
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/8229 >
2025-01-13 12:51:46 +00:00
Edward Hervey
ca4df15d4c
decklink: Ignore undef warnings in decklink API
...
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/8229 >
2025-01-13 12:51:46 +00:00
Edward Hervey
29217ca3f7
openni2: Ignore undef in external header
...
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/8229 >
2025-01-13 12:51:46 +00:00
Edward Hervey
ad79fbd744
x265: Ignore undef in external headers
...
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/8229 >
2025-01-13 12:51:46 +00:00
Edward Hervey
c79164a02e
amf: Ignore undef warnings in external headers
...
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/8229 >
2025-01-13 12:51:46 +00:00
Edward Hervey
074aaafa33
spandsp: Ignore undef issue in external headers
...
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/8229 >
2025-01-13 12:51:46 +00:00
Edward Hervey
64e9142d75
uritranscodebin: Fix definition usage
...
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/8229 >
2025-01-13 12:51:46 +00:00
Edward Hervey
e68f99688f
sctp: Convert function to avoid aggregate return
...
It's only used locally and only to fill an existing variable
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/8229 >
2025-01-13 12:51:46 +00:00
Edward Hervey
7b17c198d7
applemedia: Fix usage of HAVE_IOS define
...
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/8229 >
2025-01-13 12:51:46 +00:00
Edward Hervey
1bbd586e9e
timecode: Fix definition
...
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/8229 >
2025-01-13 12:51:46 +00:00
Edward Hervey
4fd29bd8f3
resindvd: Fix definition
...
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/8229 >
2025-01-13 12:51:46 +00:00
Edward Hervey
6b102baaa3
curl: Fix definitions
...
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/8229 >
2025-01-13 12:51:46 +00:00
Edward Hervey
d63c965ec8
vulkan: Include api header
...
Needed for GST_VULKAN_HAVE_VIDEO_EXTENSIONS
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/8229 >
2025-01-13 12:51:46 +00:00
Edward Hervey
574dade434
mpeg2dec: Add missing fallthrough statements
...
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/8229 >
2025-01-13 12:51:46 +00:00
Edward Hervey
5bbb14ff7a
wpeaudiosink: Check error value explicitly
...
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/8229 >
2025-01-13 12:51:46 +00:00
Edward Hervey
72639bafb7
msdk: Ignore aggregate return warning
...
That's how their API is implemented
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/8229 >
2025-01-13 12:51:46 +00:00
Edward Hervey
b4b140440f
d3d11: Ignore undef issues with external headers
...
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/8229 >
2025-01-13 12:51:46 +00:00
Edward Hervey
67b5414c24
d3d12: Disable implicit fallthrough checks
...
There are some missing explicit fallthrough statements in the direct headers
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/8229 >
2025-01-13 12:51:46 +00:00
Edward Hervey
6f9f951e83
rtmp2: Explicitly define scheme error enum
...
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/8229 >
2025-01-13 12:51:46 +00:00
Edward Hervey
3d62f5b57b
dfbvideosink: Rework escape handling
...
Detected by a fallthrough.
* Just use if/else for clarity
* Remove 2002 fart joke
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/8229 >
2025-01-13 12:51:46 +00:00
Edward Hervey
45df33196f
mxfdemux: Fix segments iteration
...
`i >= 0` is always true since it's an unsigned integer ...
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/8229 >
2025-01-13 12:51:46 +00:00
Edward Hervey
37a8d49eaa
siren: Cast shift mask to unsigned value
...
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/8229 >
2025-01-13 12:51:45 +00:00
Edward Hervey
9b5ea24e2b
h265parser: Fix unsigned value reading
...
Unsigned values are always above 0, use MAX variant for reading
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/8229 >
2025-01-13 12:51:45 +00:00
Edward Hervey
7f697a7065
examples/ipcpipeline: Fix ESC handler
...
Same as for gst-play
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/8229 >
2025-01-13 12:51:45 +00:00
Edward Hervey
55319cbf32
tests/play: Fix debug statement
...
The interval is in milliseconds, convert to nanoseconds for debugging statement
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/8229 >
2025-01-13 12:51:45 +00:00
Edward Hervey
fc5b616fca
tests/webrtcbin: Remove useless checks with unsigned values
...
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/8229 >
2025-01-13 12:51:45 +00:00
Edward Hervey
1221a09a5d
closedcaption: Use proper type for storing result
...
drop_ccp_from_cc_data() will return a negative value if there was an
error. Storing that in an unsigned value will cause the checks for errors to
never happen.
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/8229 >
2025-01-13 12:51:45 +00:00
Edward Hervey
524bea241d
cea708decoder: Remove useless checks
...
No need to check for the type limits
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/8229 >
2025-01-13 12:51:45 +00:00
Edward Hervey
3e83d7d0bc
isacdec: Remove impossible check
...
WebRtcIsac_DecodePlc() never returns a negative value (confirmed by
documentation and current/historical code)
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/8229 >
2025-01-13 12:51:45 +00:00
Edward Hervey
d6eebeafbf
sctpdec: Remove useless check
...
A uint16 will always be below ... the maximum value
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/8229 >
2025-01-13 12:51:45 +00:00
Edward Hervey
8d0cd490f0
mpeg2decoder: Remove useless check
...
The enum is unsigned
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/8229 >
2025-01-13 12:51:45 +00:00
Edward Hervey
9b8ecba9a1
vkinstance: Remove useless check
...
priv->requested_api_major is unsigned
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/8229 >
2025-01-13 12:51:45 +00:00
Edward Hervey
7a2aef9fa2
basetsmux: Add explicit macro for GstClockTimeDiff handling
...
The checks in the other macro were useless for unsigned values
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/8229 >
2025-01-13 12:51:45 +00:00
Edward Hervey
67c4c35fb7
mxfdemux: Remove useless check
...
values will always be positive
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/8229 >
2025-01-13 12:51:45 +00:00
Edward Hervey
5bc4ebfe61
speed: Refactor event handler
...
To avoid fallthrough issues which were tricky to fix
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/8229 >
2025-01-13 12:51:45 +00:00
Edward Hervey
21d81d25ec
bad: Clearly specify fallthrough in switch/case
...
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/8229 >
2025-01-13 12:51:45 +00:00
Edward Hervey
a9984a0003
vorbisdec: Fix check for "-1" bitrate values
...
The check is exactly the same, but more explicit.
Original commit that introduced the check is
20fb58be19
:
---
vorbisdec: don't put invalid bitrate values into the taglist
Bitrates are stored as 32-bit signed integers in the vorbis
identification headers, but seem to be read incorrectly,
namely as unsigned 32-bit integers, into the vorbis structure
members which are of type long, which makes our check for
values <= 0 fail with files that put -1 in there for unset
values.
---
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/8229 >
2025-01-13 12:51:45 +00:00
Edward Hervey
8b9ac40710
good: Enable extra warning flags
...
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/8229 >
2025-01-13 12:51:45 +00:00
Edward Hervey
47b723c6e1
splitmuxsink: Fix GST_(S)TIME_{ARGS|FORMAT} usage
...
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/8229 >
2025-01-13 12:51:45 +00:00
Edward Hervey
8bc17b58a2
good: Clearly specify fallthrough in switch/case
...
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/8229 >
2025-01-13 12:51:45 +00:00
Edward Hervey
2a6c1bbb01
matroska: Reorder switch/case for parsing
...
Just makes it clearer
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/8229 >
2025-01-13 12:51:45 +00:00
Edward Hervey
5d69f2bc36
qtmux: Fix GST_STIME_ARGS usage
...
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/8229 >
2025-01-13 12:51:45 +00:00
Edward Hervey
b0f527a79e
adaptivedemux2: Fix CLAMP usage
...
It's a positive value
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/8229 >
2025-01-13 12:51:45 +00:00
Edward Hervey
02df2a5e9a
adaptivedemux2: Remove useless ABS
...
Just compare the difference (in the right order)
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/8229 >
2025-01-13 12:51:45 +00:00
Edward Hervey
9f4f500543
filesrc: Properly handle lseek return value
...
On windows we use _lseeki64 which returns a guint64.
The only error code lseek and _lseeki64 return is a casted -1, therefore just do
that to handle all platforms
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/8229 >
2025-01-13 12:51:45 +00:00
Edward Hervey
77ad891e68
test: Remove always-true assertion
...
The offset is not deterministic
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/8229 >
2025-01-13 12:51:45 +00:00
Edward Hervey
72df7ab3bd
test: Avoid type-limit issue
...
```
../subprojects/gstreamer/tests/check/elements/filesink.c: In function ‘test_seeking’:
../subprojects/gstreamer/tests/check/elements/filesink.c:92:23: warning: comparison of unsigned expression in ‘< 0’ is
always false [-Wtype-limits]
92 | for (i = 0; i < num_bytes; ++i) \
| ^
../subprojects/gstreamer/tests/check/elements/filesink.c:266:3: note: in expansion of macro ‘PUSH_BYTES’
266 | PUSH_BYTES (0);
| ^~~~~~~~~~
```
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/8229 >
2025-01-13 12:51:45 +00:00
Edward Hervey
a81371bf8b
base: Enable more warning flags
...
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/8229 >
2025-01-13 12:51:45 +00:00
Edward Hervey
568ae91a2a
compositor: Don't use CLAMP for unsigned values
...
Just use MIN, we already know it's above 0
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/8229 >
2025-01-13 12:51:45 +00:00
Edward Hervey
c0d35e14a5
gst-play: Move esc-handling to the right place
...
It's meant to fall through to the default handler of the switch (for
debugging). Some intermediary commits broke that.
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/8229 >
2025-01-13 12:51:45 +00:00
Edward Hervey
989539830d
libvisual: Fix for libvisual headers
...
They use old style definition
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/8229 >
2025-01-13 12:51:44 +00:00
Edward Hervey
9e58164cfb
base: Do not use old-style definition
...
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/8229 >
2025-01-13 12:51:44 +00:00
Edward Hervey
319ff17300
base: Fix fallthrough declarations
...
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/8229 >
2025-01-13 12:51:44 +00:00
Edward Hervey
0e8f8dfe15
gstreamer: Add more warning flags
...
See https://gitlab.freedesktop.org/gstreamer/gstreamer/-/issues/4123
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/8229 >
2025-01-13 12:51:44 +00:00
Edward Hervey
316722d7c9
gstptpclock: Fix GST_STIME_ARGS usage
...
It requires a signed value
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/8229 >
2025-01-13 12:51:44 +00:00
Edward Hervey
39a1b61469
gstreamer: Make switch passthrough as such
...
vasnprintf requires special handling since the following 'case' is #ifdef'ed
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/8229 >
2025-01-13 12:51:44 +00:00
Carlos Bentzen
b83b73841d
webrtc: fix duplicate payload types with RTX and multiple video codecs
...
Before this patch, there could be duplicate payload types in offers that
have, within a media section, multiple codecs and RTX enabled:
```
m=video 9 UDP/TLS/RTP/SAVPF 96 97 97 <-- HAS DUPLICATES
a=sendrecv
a=rtpmap:96 VP8/90000
a=rtcp-fb:96 nack
a=rtcp-fb:96 nack pli
a=rtcp-fb:96 ccm fir
a=rtcp-fb:96 transport-cc
a=rtpmap:97 H264/90000
a=rtcp-fb:97 nack
a=rtcp-fb:97 nack pli
a=rtcp-fb:97 ccm fir
a=rtcp-fb:97 transport-cc
a=rtpmap:97 rtx/90000 <--------- PT IS DUPLICATE
a=fmtp:97 apt=96
```
Fix this by populating the media_mapping array with all media formats
rather than only the first one. The added test case reproduces the issue,
which fails without this patch.
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/8259 >
2025-01-13 10:11:59 +00:00
Edward Hervey
0891a0e5eb
wasapi: Use signed value for can_frames
...
The can retrieval function can return negative values (which will be properly handled)
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/8286 >
2025-01-13 08:08:01 +00:00
Edward Hervey
aedb587616
amfcodec: Add missing break statement
...
Setting frame-sad would also set ltr
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/8286 >
2025-01-13 08:08:01 +00:00
Edward Hervey
8b62792e5c
d3d12: Add missing breaks to switch/case
...
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/8286 >
2025-01-13 08:08:01 +00:00
Edward Hervey
916774b4f0
h265bitwriter: Don't use type too small
...
The computed `coef_val` could exceed the maximum range of a gint8. Use a bigger
one, the checks after will ensure it's properly cropped/padded
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/8286 >
2025-01-13 08:08:01 +00:00
Edward Hervey
5bb22c24dc
mpegts: Add missing break
...
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/8286 >
2025-01-13 08:08:01 +00:00
Edward Hervey
b78c119a42
msemediabuffer: Fix ASCII character detection
...
Use glib function. The previous check was checking whether a signed int was
lower than its limit (which ... is always TRUE).
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/8286 >
2025-01-13 08:08:01 +00:00
Edward Hervey
efbe1e96ca
msesourcebuffer: Fix unsigned value handling
...
Use the explicit valid clocktime handler instead
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/8286 >
2025-01-13 08:08:01 +00:00
Edward Hervey
2f1f44cdc7
ristsink: Add missing break
...
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/8286 >
2025-01-13 08:08:01 +00:00
Edward Hervey
a0f50df7a0
splitmuxsink: Fix wrong usage of GstClockTime vs GstClockTimeDiff
...
This could potentially have caused issues (because of the rest of the code using
checks for signed invalid values on a unsigned value)
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/8286 >
2025-01-13 08:08:01 +00:00
Edward Hervey
2e6b98ad89
splitmuxsrc: Add missing break
...
This would cause the reconfigure path to be called
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/8286 >
2025-01-13 08:08:00 +00:00
Edward Hervey
0ee882cfb9
adaptivedemux2: Add missing break
...
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/8286 >
2025-01-13 08:08:00 +00:00
Edward Hervey
32ebee5594
adaptivedemux2: Fix usage of GstClockTime vs GstClockTimeDiff
...
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/8286 >
2025-01-13 08:08:00 +00:00
Edward Hervey
65b4d26db6
audiorate: Fix unsigned integer comparision
...
next_offset uses a magic "-1" value for unset values. Use that value and not
checking whether it's positive (it always is, it's unsigned)
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/8286 >
2025-01-13 08:08:00 +00:00
Edward Hervey
344ef36b5a
videorate: Avoid overflow in calculations
...
base_ts and next_end_ts are both guint64. Use explicit check to avoid "negative"
timestamps (which would overflow, not be negative).
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/8286 >
2025-01-13 08:08:00 +00:00
Edward Hervey
84f995dd90
test: Fix unsigned integer usage
...
num_queued is unsigned, it'll never be below 0.
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/8286 >
2025-01-13 08:08:00 +00:00
Edward Hervey
9656ae6c0b
decodebin3: Add missing break in switch
...
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/8286 >
2025-01-13 08:08:00 +00:00
Ruben Gonzalez
da5a4f7820
videoparsers: Fix indentation
...
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/8281 >
2025-01-12 22:51:44 +00:00
Sebastian Dröge
10f870ac5c
decklinkaudiosink: Don't crash if started without corresponding video sink
...
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/8253 >
2025-01-12 18:48:36 +00:00
Andrew Yooeun Chun
26e769589a
basetransform: fix incorrect logging inside gst_base_transform_query_caps
...
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/7381 >
2025-01-12 03:41:02 +00:00
Edward Hervey
6d30b82054
splitmuxsrc: Ensure only a single stream-start event is pushed
...
Since we are simulating a single output, we want to ensure only a single
stream-start is pushed downstream. We do *not* want to send a (potentially) new
stream start event after flushing (like after seeks).
Fixes https://gitlab.freedesktop.org/gstreamer/gstreamer/-/issues/4146
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/8252 >
2025-01-10 15:01:04 +00:00
Will Miller
05158769c3
rtpvp9pay: fix profile parsing
...
Incorrect parsing of these bits meant that we were incorrectly parsing
the VP9 uncompressed bitstream header for some profiles, as the header
is of variable length and format depending on the profile. Amongst
various unintended effects, this caused the width and height from the SS
to be incorrectly parsed and set in the caps.
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/8275 >
2025-01-10 11:19:52 +00:00
L. E. Segovia
bc285dbbbe
ges: Fix Xcode-provided Python library name fetching
...
Both INSTSONAME and LDLIBRARY point to the Python interpreter, not to
libpythonX.Y.dylib, unlike the pythonX.Y-embed module Xcode provides.
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/8199 >
2025-01-10 00:08:56 +00:00
L. E. Segovia
06192c125b
ges: Fix Python library name fetching on Windows
...
The fix in 753aeccde7
is also needed here.
See #3368
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/8199 >
2025-01-10 00:08:56 +00:00
Olivier Crête
1485a387a4
codec-utils: Add missing nullable annotation to new APIs
...
Those APIs are documented to sometimes return NULL.
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/8271 >
2025-01-09 22:43:54 +00:00
Colin Kinloch
4a56c82f0c
wayland: Print table split when DMABuf format changes
...
The `zwp_linux_dmabuf_v1` doesn't specify an order for modifier events
to be sent.
In my case the linear format was sent last resulting in the first item
in each row being the previous format.
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/8272 >
2025-01-09 18:34:51 +00:00
Mathieu Duponchelle
a15c786db5
docs: implement pre-commit hook to check cache updates and since tags
...
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/8231 >
2025-01-09 16:19:39 +00:00
Mathieu Duponchelle
c276f5daca
doc: store path to dynamic library in plugin configuration
...
This can then be used by the pre-commit hook to avoid rebuilding
complete plugin caches to check a change, thus minimizing the potential
diff and making analysis of completely-unrelated cache diffs much less
likely.
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/8231 >
2025-01-09 16:19:39 +00:00
Mathieu Duponchelle
7b4e6e67d3
docs: start using custom_target instead of run_command for sitemap
...
Intead of passing around the output of the config generator program,
which consists of paths joined by a separator we can have the generator
simply produce an extra file containing those paths.
This commit only implements the new approach for the core plugins, as
this was needed to avoid spurious meson rebuilds when the pre-commit
hook regenerates the core plugins_cache.
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/8231 >
2025-01-09 16:19:39 +00:00
Mathieu Duponchelle
506680c86c
docs: list doc sources explicitly for GStreamer core
...
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/8231 >
2025-01-09 16:19:39 +00:00
Mathieu Duponchelle
8fa87f45f9
docs: start listing sources explicitly in hotdoc configuration files
...
A JSON configuration file is generated for core plugins, which maps
plugin names with sources to parse for docstrings.
The file is then opened by the configuration generator script, which
will now favor explicitly listed files to (usually wildcarded) paths
passed on its command line.
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/8231 >
2025-01-09 16:19:39 +00:00