122734 Commits

Author SHA1 Message Date
Mathieu Duponchelle
17f9d8a18e rtsp-stream-transport: expose new timed-out property
Upon RTCP timeout, rtpsession emits a signal that we catch to set a
timed_out private field, this also exposes it as a property of the
transport in order for users (such as rtspclientsink) to get notified
about it.

Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/9124>
2025-07-23 19:20:02 +02:00
Seungha Yang
338d5501d0 nvdsdewarp: Disallow resizing in case of passthrough
It's not supported yet

Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/8558>
2025-07-23 12:37:43 +00:00
Seungha Yang
608e57e542 nvdsdewarp: Avoid synchronization if possible
If input/output memory objects have the same cuda stream,
don't need to synchronize stream

Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/8558>
2025-07-23 12:37:43 +00:00
Seungha Yang
6d2530fb37 nvdsdewarp: Cache texture object
... instead of creating texture for every frame

Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/8558>
2025-07-23 12:37:43 +00:00
Seungha Yang
f93e200bfe nvdsdewarp: Add support for output resizing
... and adding "add-borders" property

Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/8558>
2025-07-23 12:37:43 +00:00
Stéphane Cerveau
7320acdaca vkdownload: implement decide_allocation virtual method
In the case of caps change such as frame size, a new buffer pool should be
created according to this new caps via the decide_allocation() vmethod.

Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/8931>
2025-07-23 09:45:20 +00:00
Olivier Crête
9fb3df1422 analyticsoverlay: Add expire-overlay property
If there has been no new data for this amount of time, just
expire the overlay and don't send one. Otherwise, it keeps sending
the old one for the following frames.

Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/9409>
2025-07-22 23:31:23 +00:00
Seungha Yang
5325ec41e4 nvencoder: Always allow interlaced stream
... even if hardware does not support interlaced encoding at bitstream level.
Although interlacing information is not written in the bitstream,
that information can be signalled via container, thus allow interlaced
stream.

Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/9328>
2025-07-22 15:49:04 +00:00
Seungha Yang
4f932ee081 d3d12swapchainsink: Add last-rendered-sample action signal
Add a new action signal to allow applications to capture
the most recently rendered frame directly from the swapchain
back buffer.

Unlike the existing "last-sample" property, which exposes
the raw input sample before any sink-side processing, this
signal captures the final displayed image after any internal
image processing (e.g., UV remap, color balance, overlay) has been
applied.

Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/9423>
2025-07-22 12:02:15 +00:00
Stéphane Cerveau
559dbdecf1 tests: vkh26xenc: use vkvideoencodebase
To avoid duplicating code, use vkvideoencodebase.c

Code cleanup and function clarifications.
Fix leaks in case of multiple device.

Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/9077>
2025-07-22 10:35:16 +00:00
Xavier Claessens
6122c8070f svtjpegxs: Update wrap file
It fixes build with older GCC version.

Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/9426>
2025-07-21 22:43:55 +00:00
Olivier Crête
69e91b78a7 tflite: Add support for VSI delegate
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/9410>
2025-07-21 17:40:04 -04:00
Olivier Crête
d1b00839c3 classifiertensordecoder: Use utility functions to get tensors
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/9419>
2025-07-21 14:49:42 +00:00
Olivier Crête
d1483d6c55 classifiertensordecoder: Handle error cases better with labels file
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/9419>
2025-07-21 14:49:42 +00:00
Olivier Crête
fe0d7f249d ssdobjectdetector: Validate tensor type and dimensions
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/9419>
2025-07-21 14:49:42 +00:00
Olivier Crête
561e2b28af tensor: Print tensor name in debug name
It makes it easier to understand which one is rejected.

Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/9419>
2025-07-21 14:49:42 +00:00
Tim-Philipp Müller
15c9bc4d2a unixfd: fix and improve the example pipelines in the documentation
- Add a videoconvert element before the videosink so that the output
  works no matter what format gets negotiated (A444_16LE for me)

- Specify a reasonable video format and size with a capsfilter, so
  we don't default to something silly like A444_16LE @ 240p.

- Add a timeoverlay element, so it's obvious when stoppping/restarting
  the pipeline that the input stream is just picked up again from the
  moment the consumer pipeline is restarted.

Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/9422>
2025-07-18 17:52:42 +01:00
Philippe Normand
990c8b91a9 transcoder: Fix warning/error APIs
The GError pointers were actually not out-parameters. :(

Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/9407>
2025-07-18 08:02:50 +00:00
Philippe Normand
a03d5bedd3 transcoder: Remove unused priv->bus variable
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/9407>
2025-07-18 08:02:50 +00:00
Philippe Normand
9babc9a9e5 transcoder: signal-adapter: Fix error/warning details access
The field names were missing in the gst_structure_get() calls...

Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/9407>
2025-07-18 08:02:50 +00:00
Philippe Normand
e31b1d8859 check: Silence some OpenSSL memory leaks
The OpenSSL version shipping in Fedora 40 leaks memory, the issue is fixed in
F42.

Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/9323>
2025-07-18 00:57:40 +00:00
Philippe Normand
6db20592ef dtls: Use ECDSA private key for default certificate
ECDSA is widely used in browsers and SFUs, some servers such as the ones using
BouncyCastle only accept certificates signed with ECDSA.

Based on closed MR https://gitlab.freedesktop.org/gstreamer/gst-plugins-bad/-/merge_requests/2458

Fixes #4516

Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/9323>
2025-07-18 00:57:40 +00:00
Jordan Petridis
8ab5e5b7cb ci: Update the kernel version we use with fluster
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/9401>
2025-07-17 22:30:37 +00:00
Olivier Crête
2c3f2747d6 tensormeta: Check dimensions when retrieving tensor
Modify the API to retrieve the tensor meta to check for the dimensions
as well.

Also fix an API mistake, the buffer whose dimensions should be checheck
is the one inside the GstTensor, not another buffer some outside.

Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/9411>
2025-07-17 17:43:32 +00:00
Olivier Crête
5f52eaae83 tensormeta: Don't crash on invalid tensor name
It's a valid case to check for an existing tensor.

Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/9411>
2025-07-17 17:43:32 +00:00
Stéphane Cerveau
d1022fb469 vkupload: fix the refactored frame copy
When refactoring the code in 743c425f64,
the wrong GstBuffer has been used to copy to,
leading to a failing frame copy.

The bug has been discovered running
elements_vkcolorconvert.

Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/9373>
2025-07-17 15:30:25 +00:00
Seungha Yang
0d1cd40097 d3d12swapchainsink: Update uv-remap signal to support background color
Allow per viewport background color setting

Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/9393>
2025-07-17 12:55:11 +00:00
Sebastian Dröge
d255ed96f0 tensor: Clarify meaning of the dimensions array in the docs
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/9325>
2025-07-17 11:25:59 +00:00
Jordan Petridis
f91b272f20 ci: Unpin the python version we install on windows
Originally pinned due to [1] but it has been fixed
for a while now.

[1] https://gitlab.freedesktop.org/gstreamer/cerbero/-/issues/427

Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/8717>
2025-07-17 04:52:33 +00:00
L. E. Segovia
2c86dbddee ci: Work around PowerShell broken argument parsing
iex aka Invoke-Expression is also trying to pass (break) arguments
of the form -Dlibfoo:yadda=true as -Dlibfoo yadda=true.

See https://github.com/PowerShell/PowerShell/issues/19451

Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/8717>
2025-07-17 04:52:33 +00:00
L. E. Segovia
ec75dd5c1c pycairo: update to 1.28.0
Fixes Python 2 buffer API causing the build to fail.

Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/8717>
2025-07-17 04:52:33 +00:00
L. E. Segovia
d993c82ea8 pygobject: update to 3.50.0
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/8717>
2025-07-17 04:52:33 +00:00
L. E. Segovia
b6d006f89c gobject-introspection: Update to 1.84.0
Fixes "ModuleNotFoundError: No module named 'distutils.msvccompiler'" when updating Python version

See https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/8878

Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/8717>
2025-07-17 04:52:33 +00:00
Olivier Crête
b11ccc5cdf analyticsmeta: Remove incorrect check
The value can be NULL which is the wildcard

Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/9413>
2025-07-16 18:55:55 -04:00
raghu447
d868357270 tensordecoder: rename facedetector element
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/9344>
2025-07-16 20:35:04 +00:00
Julian Bouzas
36bb470d1d h266parse: Parse and attach LCEVC metadata to buffers if present
Similar to h264parse and h265parse, this patch enhances the element to parse
LCEVC enhancement data from SEI, and attach it to output buffers as GstLcevcMeta.
The 'lcevc' field in the output caps is also set to TRUE or FALSE depending on
whether LCEVC data is present or not.

Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/9365>
2025-07-15 19:23:41 -04:00
Julian Bouzas
e44bab9fe9 h266parse: Parse and process SEI registered user data
Similar to h264parse and h265parse, this patch improves the element to parse
the SEI registered user data from NAL units. The core structure of H266 SEI for
ITU-T T.35 is the same as the other parsers, so we can re-use the same logic.

Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/9365>
2025-07-15 19:23:39 -04:00
Olivier Crête
65c88ff18f abi-check: Rebuild image
This should result in the same content, but use the fixed scripts.

Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/9382>
2025-07-15 22:05:48 +00:00
Olivier Crête
1358e00083 ci: Save ABI needs to run as root
It's modifying the base image

Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/9382>
2025-07-15 22:05:48 +00:00
Olivier Crête
911fb66ce0 ci: chown the builddir
Even if it's not the project dir, this is needed when
building inside the image building stage

Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/9382>
2025-07-15 22:05:48 +00:00
Olivier Crête
f6052f204f ci: Reference SUBPROJECT_CACHE_DIR to build abi-check image too
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/9382>
2025-07-15 22:05:48 +00:00
Olivier Crête
f3f00c9bc4 ci: Update ci-template
The includes a new fix to the cbuild tool to forward the environment
to the FDO_DISTRIBUTION_EXEC script.

Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/9382>
2025-07-15 22:05:48 +00:00
Sebastian Dröge
0aa11dc93c examples: Update Rust dependencies
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/9397>
2025-07-15 14:15:17 +00:00
Sebastian Dröge
c61039e95a dots-viewer: Update Rust dependencies
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/9397>
2025-07-15 14:15:17 +00:00
Daniel Morin
a97757d6a9 caps: fix nested caps
- Fixes #4534
- Fix gst_caps_is_fixed(), fix gst_caps_fixate () for caps-in-caps

Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/9378>
2025-07-14 15:06:08 -04:00
Seungha Yang
66880012c5 examples: d3d12swapchainsink: Add support for force-aspect-ratio change
Adding keyboard control for "force-aspect-ratio" property change

Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/9392>
2025-07-14 17:07:35 +00:00
Seungha Yang
fc73216671 d3d12swapchainsink: Fix force-aspect-ratio change in playing state
Set output updated flag so that viewport can be calculated again

Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/9392>
2025-07-14 17:07:35 +00:00
Sebastian Dröge
6ce4637aab analytics: Include new batch meta in the single-include header
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/9391>
2025-07-14 15:07:37 +03:00
Sebastian Dröge
3a51f42ab0 analytics: Add GstAnalyticsBatchMeta for batches of buffers from one or more streams
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/9282>
2025-07-13 18:25:26 +02:00
Nirbheek Chauhan
9c2e20419b win-pkgconfig: Bump to 0.29.2
The older 0.28 version has a buggy --msvc-syntax option:
https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/8717#note_3001648

This 32-bit version was compiled from our meson port of pkg-config:
https://gitlab.freedesktop.org/gstreamer/meson-ports/pkg-config

The toolchain used was MSYS2's mingw32-gcc toolchain
`mingw-w64-i686-gcc` so that it uses 32-bit MSVCRT, which gives it
maximum compatibility with all Windows versions. UCRT DLLs are
specific to the VS version and Windows version.

This version will also not insert any system library or include paths,
like the previous 0.28 version. The build commands were:

```
meson setup --optimization=s --strip \
        --wrap-mode=forcefallback \
        -Dpc_path='' \
        -Dsystem_include_path='' \
        -Dsystem_library_path='' \
        _mingw32
meson install --destdir $PWD/install -C _mingw32
cp install/bin/pkg-config.exe .
zip pkg-config-$VERSION.zip pkg-config.exe
```

Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/9376>
2025-07-11 18:18:15 +00:00