Carlos Bentzen
b848c91dec
mpegtsmux: add support for VVC/H.266 video
...
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/8435 >
2025-02-10 20:57:40 +00:00
Edward Hervey
63a03b167a
mpegts: Take into account adaptation field discont
...
If the flag is set, there is an *expected* discontinuity:
* For CC, we ignore the fact it's not contiguous
* For PCR, we acknowledge the values aren't contiguous
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/8420 >
2025-02-10 19:41:21 +00:00
Daniel Morin
0a562a92d7
srtsink: filter stream-config already sent
...
- Only sent buffer with GST_BUFFER_FLAG_HEADER if this buffer is not present in
the streamheader
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/8373 >
2025-02-10 18:45:01 +00:00
Alexander Slobodeniuk
986d651fba
kms: fix chaining up GObject's constructed virtual method
...
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/8416 >
2025-02-10 17:49:29 +00:00
Alexander Slobodeniuk
5b0934fa7f
msesrc: fix chaining up GObject's constructed virtual method
...
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/8416 >
2025-02-10 17:49:29 +00:00
Alexander Slobodeniuk
5a14de805e
vkphysicaldevice: fix chaining up GObject's constructed virtual method
...
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/8416 >
2025-02-10 17:49:29 +00:00
Alexander Slobodeniuk
b22c1da0d3
basetsmux: fix chaining up GObject's constructed virtual method
...
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/8416 >
2025-02-10 17:49:29 +00:00
Alexander Slobodeniuk
9f5c08931d
rtpsrc: fix chaining up GObject's constructed virtual method
...
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/8416 >
2025-02-10 17:49:29 +00:00
Stéphane Cerveau
178f05aac7
vkutils: update gst_vulkan_handle_set_context doc
...
device is a GstVulkanDevice
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/7011 >
2025-02-10 16:13:20 +00:00
Stéphane Cerveau
6989938dd8
vksink: allow multiple device registration
...
As for decoders, the plugin can register multiple
device present on the system.
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/7011 >
2025-02-10 16:13:20 +00:00
Stéphane Cerveau
3e62435755
vkh26xdec: register multiple elements
...
Register the multiple devices available on the system in
separate features in the registry for the vulkan decoders.
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/7011 >
2025-02-10 16:13:20 +00:00
Benjamin Gaignard
7fb19b37d8
v4l2codecs: av1: Allow inter-frames resolution change
...
When the stream resolution change it is needed to negotiate
a new pools and to update the caps.
Resolution change could occurs on a new sequence or a new
picture so move resolution change detection code in a common
function.
Only call streamoff if the resolution occur while decoding a key frame.
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/8064 >
2025-02-10 13:36:57 +00:00
Benjamin Gaignard
88e0b6ba2d
codecs: av1 decoder: Drain output buffers resolution change
...
We must drain the pending output picture so that subclass can renegotiate
the caps. Not doing so while still renegotiating would mean that the
subclass would have to do an allocation query before pushing the caps.
Pushing the caps now without this would also not work since these caps
won't match the pending buffers format.
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/8064 >
2025-02-10 13:36:57 +00:00
Glyn Davies
f32402e9b4
h264parse: Force full timestamp on all timecode updates. Was invalid between midnight and 1am
...
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/8401 >
2025-02-10 11:50:23 +00:00
Tim-Philipp Müller
bf5f642841
Back to development after 1.25.50
2025-02-09 17:47:32 +00:00
Tim-Philipp Müller
3e8f88d756
Release 1.25.50
2025-02-09 17:35:17 +00:00
Nirbheek Chauhan
50680fe32f
opencv: Fix pkgconfig dependency name and gstopencv_dep
...
Broke in bbdf8f5996
Also print the prefix inside which we try to detect opencv's data dir.
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/8403 >
2025-02-09 14:25:32 +00:00
Nirbheek Chauhan
73da2edbba
opencv: Fix hand detect profile paths
...
This is the same mechanism used by facedetect
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/8403 >
2025-02-09 14:25:32 +00:00
Cheung Yik Pang
5e086ea3f5
va: Add VP8 alpha decode bin
...
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/8180 >
2025-02-08 22:43:00 +00:00
Cheung Yik Pang
59104fb3a3
va: Add VP9 alpha decode bin
...
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/8180 >
2025-02-08 22:43:00 +00:00
Cheung Yik Pang
fd22a9c090
va: Add codec alpha decode bin base class
...
A VA-API decoder bin base class for codecs with alpha channel support.
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/8180 >
2025-02-08 22:43:00 +00:00
wbartel
8135a6689b
webrtc: fix pkg-config missing sdp dependency
...
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/8433 >
2025-02-08 02:48:28 +00:00
Guillaume Desmottes
b5fdb5aec5
codecs: include gsth266decoder.h when building gir
...
Will hopefully fix cerbero ci job.
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/8430 >
2025-02-07 23:04:16 +00:00
Nicolas Dufresne
8d1060f205
v4l2codecs: Add NV12_10LE40 / NV15 support
...
NV15 is common format on RK platform and is that only uncompressed 10bit
format the display controller on RK3588 supports.
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/8426 >
2025-02-07 22:17:17 +00:00
Kévin Commaille
9aeaea29f5
zbar: allow to get symbol as bytes
...
It would be possible to get some binary symbols with a string, but if
they contain NUL bytes, the string will be cut off. To fix this,
provide the decoded symbol as a GBytes too.
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/4688 >
2025-02-07 20:53:50 +00:00
Kévin Commaille
fcd2e61330
zbar: allow to enable binary mode
...
Added in zbar 0.23.1, it is a mode that prevents zbar from trying to
convert the binary data of QR codes to text by guessing the encoding.
Add a property that changes the configuration of the zbar image scanner
accordingly.
<https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/4688 >
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/4688 >
2025-02-07 20:53:50 +00:00
He Junyan
f63a70966e
av1parse: Handle the padding OBU correctly
...
The current av1parse can not find the edge of frame correctly if there
is padding OBUs inside the stream. We now use a flag seen_non_padding to
check whether we see some valid data after a data push. Then the padding
OBUs will be the part of the new frame.
We also refine the code logic to make the code more readable.
Fixes: https://gitlab.freedesktop.org/gstreamer/gstreamer/-/issues/4044
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/8269 >
2025-02-07 16:56:53 +00:00
Carlos Bentzen
bb74aceb5d
h266parse: clean up unused APS fields
...
Since APS is always carried in-band, we don't need to keep the APS
NALs around in the parser anymore.
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/8359 >
2025-02-07 08:25:17 +00:00
Carlos Bentzen
be98ba00d7
h266parser: do not fail when extension flags are set
...
For VPS, PPS, APS, OPI and DCI, the extension flags are the last syntax
in the structures, and according to the spec, should be ignored if set to 1.
Therefore, we can just ignore them rather than failing.
This fixes a few failures in fluster, like in the PSEXT_A_Nokia_2 stream.
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/8359 >
2025-02-07 08:25:17 +00:00
Carlos Bentzen
3a12b0beaa
h266parse: add tests for vvc1 and vvi1
...
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/8359 >
2025-02-07 08:25:17 +00:00
Carlos Bentzen
5fad23d26b
h266parse: enable vvc1 and vvi1 stream formats
...
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/8359 >
2025-02-07 08:25:17 +00:00
Carlos Bentzen
05d4a2022e
h266parse: handle packetized frames
...
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/8359 >
2025-02-07 08:25:17 +00:00
Carlos Bentzen
551782b32b
h266parse: don't prepend APS NALs on IDR frames
...
Instead, APS NALs can just be pushed an in-band NALs like PH and SEI.
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/8359 >
2025-02-07 08:25:17 +00:00
Carlos Bentzen
c7e9aba025
h266parse: negotiate before handling codec_data NALs
...
If we find VPS/SPS/PPS in codec_data and call gst_h266_parse_process_nal
with them, we need to have negotiated before in order to correctly
process them with flags like h266parse->transform set or not depending
on the negotiation. This is important because in certain vvc1/vvi1 streams we
may have correct codec_data but faulty parameter sets in the stream and
we would want to push the parameter sets from codec_data first.
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/8359 >
2025-02-07 08:25:17 +00:00
Carlos Bentzen
f4f7e99e05
h266parse: parse codec_data
...
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/8359 >
2025-02-07 08:25:17 +00:00
Carlos Bentzen
8607ccdf2c
h266parse: update IDR position in more cases
...
The IDR position should be updated if we're processing an
IDR frame or pushing codec NALs. Not only when picture_header_in_slice_header_flag
is set.
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/8359 >
2025-02-07 08:25:17 +00:00
Carlos Bentzen
7c29249ca5
h266parse: fix typos
...
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/8359 >
2025-02-07 08:25:17 +00:00
Carlos Bentzen
fe61b43814
h266parse: implement make_codec_data
...
implement serialization of codec_data containing VvcDecoderConfigurationRecord
as defined in ISO/IEC 14996-15.
The VPS/SPS/PPS NALs are added to the codec_data. APS NALs could be
optionally included as well but will be pushed in-band instead, because:
1. Logic is easier that way. We'd have to filter out for PREFIX_APS only
(SUFFIX_APS aren't allowed in codec_data).
2. APS NALs can also be sent for every non-keyframe slice, and often are, so just pushing
them in-band makes more sense to have less to keep track and avoid possible
duplicates.
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/8359 >
2025-02-07 08:25:17 +00:00
Carlos Bentzen
4545d199c3
h266parser: add API to parse VVCDecoderConfigurationRecord
...
VVCDecoderConfigurationRecord is present in ISOBMFF files carrying
VVC/H.266 streams via the vvcC box, as defined in ISO/IEC 14496-15.
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/8359 >
2025-02-07 08:25:16 +00:00
Nirbheek Chauhan
0aacc1a6a9
opencv: imgcodecs.hpp is also needed to build the plugin
...
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/8418 >
2025-02-07 02:32:03 +00:00
Nirbheek Chauhan
bbdf8f5996
meson: Modernize opencv build definitions
...
Use the fs module instead of using `run_command('test')`, simplify
some indentation, fix dependency management
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/8418 >
2025-02-07 02:32:03 +00:00
Sebastian Dröge
7346764b8e
play: Distinguish missing plugin errors and include more details in error/warning messages
...
Include the URI (and if possible) stream-id in the messages. These are provided
by uridecodebin3 / decodebin3 in most cases but there is fallback code to guess
them otherwise.
For missing plugin errors also the installer details are included.
The URI is included in all message types.
Fixes https://gitlab.freedesktop.org/gstreamer/gstreamer/-/issues/3547
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/8236 >
2025-02-07 01:02:01 +00:00
Seungha Yang
5dd695f81f
docs: Add nvdswrapper docs
...
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/8425 >
2025-02-06 17:48:47 +00:00
Philippe Normand
1baa10ed07
wpe: Reduce gpointer usage in ThreadedView
...
Those gpointers were introduced when we had to support some old WPE API, no need
for them anymore.
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/8413 >
2025-02-06 17:00:39 +00:00
Nicolas Dufresne
6fe6811eb7
docs: v4l2codecs: Add plugin index documentation
...
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/5555 >
2025-02-06 00:58:01 +00:00
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