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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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