Commit graph

4556 commits

Author SHA1 Message Date
Julian Bouzas
841448cd94 lcevcdec: Check for errors after receiving all enhanced and base pictures
The LCEVC_ReceiveDecoderBase() and LCEVC_ReceiveDecoderPicture() APIs from the
LCEVCdec SDK can return LCEVC_Error if the enhancement data is wrong. This
change improves the lcevcdec element to check for those errors and stop the
pipeline when that happens.

Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/9057>
2025-06-04 15:53:03 -04:00
Seungha Yang
4d2869d4a3 d3d11decoder: Use interlace info in input caps
... instead of relying on only parsed values from bitstream.

Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/9170>
2025-06-04 16:07:24 +00:00
Seungha Yang
4735e765a3 d3d12decoder: Use interlace info in input caps
... instead of relying on only parsed values from bitstream.

Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/9170>
2025-06-04 16:07:24 +00:00
Seungha Yang
712203163e nvdec: Use interlace info in input caps
... instead of relying on only parsed values from bitstream.
Also parses HEVC specific interlace information

Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/9170>
2025-06-04 16:07:24 +00:00
raghu447
251d74ca69 tensordecoder: add facedetector tensor decoding support
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/8600>
2025-06-03 18:48:36 -04:00
Seungha Yang
6efe987d5c d3d11compositor: Fix negative position handling
Negative positions should be cropped out

Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/9158>
2025-06-01 18:21:28 +00:00
Seungha Yang
aa0c257d4c d3d12compositor: Fix negative position handling
Negative positions should be cropped out

Fixes: https://gitlab.freedesktop.org/gstreamer/gstreamer/-/issues/4249
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/9158>
2025-06-01 18:21:28 +00:00
Seungha Yang
343cde7f87 d3d12compositor: Fix critical warnings
compositor will record rendering commands using multiple threads
(i.e., blending commands are recoded using thread pool, and
background one is recorded on aggregate thread).
And there can be temporary refcount increase (so not writable).
Updates fence once all rendering commands have been submitted.

Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/9157>
2025-06-01 23:02:33 +09:00
Seungha Yang
b6628e5b92 d3d12converter: Fix fallback upload process
Fixing typo

Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/9157>
2025-06-01 23:00:50 +09:00
Sebastian Dröge
0855e4b948 rgb2bayer: Use gst_structure_has_name() instead of g_str_equal() for simplicity
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/9146>
2025-05-30 20:06:30 +00:00
Sebastian Dröge
77a486191c bayer2rgb: Use gst_structure_has_name() instead of strcmp() for clarity
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/9146>
2025-05-30 20:06:30 +00:00
Sebastian Dröge
da892230d8 bayer2rgb: Fix RGB stride calculation
This fixes a regression introduced in 4c92d4096e.

Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/9146>
2025-05-30 20:06:30 +00:00
Thibault Saunier
313435f6cb general: Stop checking G_HAVE_GNUC_VARARGS now that we depend on c99
Cleaning up a bit the code now that we can rely on C99 which specifies
varargs for macros.

Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/8990>
2025-05-30 15:30:36 +00:00
Víctor Manuel Jáquez Leal
72b7410511 vulkan: add best practices validation feature
It can be disabled in run-time via the environment variable
VK_KHRONOS_VALIDATION_VALIDATE_BEST_PRACTICES=false

Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/9119>
2025-05-30 00:36:40 +00:00
Víctor Manuel Jáquez Leal
b463d2b1da vulkan: remove vkDebugReportMessage() loading
Since it's not used.

Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/9119>
2025-05-30 00:36:40 +00:00
Víctor Manuel Jáquez Leal
8eae5e95b7 vulkan: use VK_EXT_debug_utils if available
Nowadays VK_EXT_debug_report is considered deprecated and it's recommended to
replace it it VK_EXT_debug_utils, which offer a way to ignore messages
considered false positives.

The approach is to try the extension first, if available at compilation time, if
not or if it fails to load, VK_EXT_debug_report fallbacks.

Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/9119>
2025-05-30 00:36:40 +00:00
Seungha Yang
d5dfa3ef5e d3d12screencapturesrc: Fix desktop handle leak
Calling CloseDesktop() on a handle that is currently in use will fail.
Close the handle after current desktop handle change

Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/9136>
2025-05-29 17:19:33 +00:00
Sebastian Dröge
65f9e0e985 dvbsuboverlay: Actually make use of subtitle running time instead of using PTS
Fixes https://gitlab.freedesktop.org/gstreamer/gstreamer/-/issues/4446

Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/9123>
2025-05-29 12:32:15 +00:00
Daniel Morin
e72e9a95d8 rtpsender: fix 'priority' GValue get/set
- 'priority' is declared as enum, we need to use g_value_[get|set]_enum()

Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/9105>
2025-05-28 07:28:16 +00:00
Doug Nazar
7fe08e057c tsdemux: Ensure AC3 descriptor is long enough before accessing
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/9044>
2025-05-27 10:44:37 +00:00
Doug Nazar
99aba78c88 gstreamer: Ensure we free the template
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/9044>
2025-05-27 10:44:37 +00:00
Sebastian Dröge
68815a3a15 play: Improve stream selection
- Unset stream ids if a collection does not contain them
  - Automatically select a default stream of a type if the stream type is
    enabled but no stream is selected yet when receiving the stream collection
  - Warn if there's a collection update via streams-selected and if there are
    unexpected streams being selected, or actually selected streams not being
    found
  - Improve debug output a bit

Among other things this also makes sure that we don't forget a selected stream
id when disabling a track so that when enabling it again later the same one can
be enabled again.

See https://gitlab.freedesktop.org/gstreamer/gstreamer/-/issues/4344

Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/9081>
2025-05-27 09:31:52 +00:00
Seungha Yang
8ff0a1c132 nvencoder: Fix GstNvEncTask leak on non-flow-ok return
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/9078>
2025-05-27 00:05:37 +09:00
Seungha Yang
1fb633368e nvencoder: Fix GstVideoCodecFrame leak on non-flow-ok return
... and use gst_video_encoder_release_frame() to drop frame
instead of gst_video_encoder_finish_frame()

Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/9078>
2025-05-26 23:39:21 +09:00
Nicolas Dufresne
500f9b60af alphacombine: Fix seeking after EOS
The alpha_eos state was not being reset on flush-stop, as a side effect
flushing seek after EOS did not work.

Fixes #4442

Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/9069>
2025-05-26 12:13:40 +00:00
Seungha Yang
5521af04f8 d3d12memory: Allow set_fence() only against writable memory
Setting a fence to memory should only be allowed on the side
that modified that memory or has the right to modify it

Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/9075>
2025-05-26 11:34:29 +00:00
Seungha Yang
2a44248bcd d3d12: Enable GIR for MSVC build as well
cerbero issue should be fixed by
https://gitlab.freedesktop.org/gstreamer/cerbero/-/merge_requests/1824

Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/9076>
2025-05-26 18:29:53 +09:00
Seungha Yang
66b35a984d d3d12memory: Make D3D12 map flags inspectable
GIR scanner does not seem to be able to infer integer value

Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/9076>
2025-05-26 18:29:47 +09:00
L. E. Segovia
7b8d4c0974 orc: Update pregenerated files
Fixes -Wtype-limits on gstbayer.orc when emulating convuuslw.

Regenerated Orc files use OrcOnce, which increases the minimum version to 0.4.34.

See https://gitlab.freedesktop.org/gstreamer/orc/-/merge_requests/212 (ORC_MIN)

See https://gitlab.freedesktop.org/gstreamer/orc/-/merge_requests/238 (AVX2 convussql)

See 8a86d51753 (OrcOnce)

Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/9067>
2025-05-25 14:36:17 +00:00
L. E. Segovia
00dfff821a orc: Remove references to gst-indent-1.0
These are automatically handled by pre-commit now.

Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/9067>
2025-05-25 14:36:17 +00:00
Doug Nazar
635e0ad5c1 dash: mpdclient: Re-enable test now that mpdclient is fixed
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/8734>
2025-05-24 12:10:59 +00:00
Doug Nazar
9a04896293 dash: mpdclient: Don't pass terminating NUL to adapter
libxml2 will complain if it detects any characters after the valid
XML, including a NUL byte.

Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/8734>
2025-05-24 12:10:59 +00:00
Jan Schmidt
8eb5e3771b vtenc: Use strlcpy instead of strncpy
Silences a compiler warning, and there's no cross-platform
consideration as this plugin is apple-only

Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/9058>
2025-05-23 19:00:32 +00:00
Nirbheek Chauhan
e4d5cece28 meson: Add a monorepo-wide qt-method option and yield to it
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/9046>
2025-05-23 09:43:17 +00:00
Nirbheek Chauhan
331a381c66 meson: Fix qt detection for qt6d3d11 plugin
This now matches the code for the qml6gl plugin.

Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/9046>
2025-05-23 09:43:17 +00:00
Seungha Yang
099b8825a7 d3d12: Generate gir file
Prerequisite for rust binding

Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/9053>
2025-05-23 06:45:37 +00:00
Seungha Yang
ac49baabb6 d3d12: Fix docs annotations
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/9053>
2025-05-23 06:45:37 +00:00
Robert Mader
47308092dd wayland: Remove custom format mapping
As of Gst >= 1.24 we can just use GstVideoInfoDmaDrm APIs. Note
that SHM formats match DRM ones with only two exceptions.

No functional changes intended (for backporting) apart from
supporting a few more formats - those present in video-info-dma.c
but missing in the removed mapping.

Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/8983>
2025-05-21 18:11:12 +00:00
Olivier Crête
9e3d251c23 tflite: Also look for C symbols in libtensorflow-lite
For some builds, there isn't a separate C library such as
some Yocto builds of tflite.

Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/8523>
2025-05-20 16:05:51 +00:00
Olivier Crête
25cf5262dd tflite: Make VSI header build in C code
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/8523>
2025-05-20 16:05:51 +00:00
Olivier Crête
c941ded4ba tflite: Add Coral EdgeTPU inference element
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/8523>
2025-05-20 16:05:51 +00:00
Denis Shimizu
05782229ee tflite: Add TensorFlow Lite element
A new element wrapping the LiteRT (aka TensorFlow Lite) inference engine.
It currently supports only CPU.

Co-authored-by: Daniel Morin <daniel.morin@collabora.com>
Co-authored-by: Denis Shimizu <denis.shimizu@collabora.com>
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/8523>
2025-05-20 16:05:51 +00:00
Olivier Crête
5c188d90c0 tensor: Add helper function to stringify a tensor data type
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/8523>
2025-05-20 16:05:51 +00:00
Seungha Yang
1688d2c410 d3d12: Fix gstreamer-full subproject build with gcc
Since default option "cpp_std=c++14" is not applied automatically
in case that gstreamer is used as a meson subproject, specify
cpp_std option explicitly

Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/9030>
2025-05-20 11:12:20 +00:00
Doug Nazar
d33107226c audiovisualizer: Change test to use native endian audio format
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/8975>
2025-05-18 11:03:59 +00:00
Jordan Petridis
818feea0b5 bad: Add more variants for an srt suppression
Followup to 087cb87d27

These are some more variants of the same issue we
already suppressed in the commit above.

Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/8979>
2025-05-15 15:21:20 +00:00
Jordan Petridis
9dc21492a3 opencv: import as system dep
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/8979>
2025-05-15 15:21:20 +00:00
Jordan Petridis
d68f472683 bad: Avoid gcc false positive about variable initialization
In gstbayer2rgb the dtmp always gets initialized when
we check for bayersrc16.

Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/8979>
2025-05-15 15:21:20 +00:00
Doug Nazar
17474ebbb2 videoframe-audiolevel: Switch to GST_AUDIO_NE()
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/8984>
2025-05-14 14:45:55 -04:00
Doug Nazar
a9f5362ff7 musepack: Switch to GST_AUDIO_NE()
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/8984>
2025-05-14 14:45:55 -04:00