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