Commit graph

4085 commits

Author SHA1 Message Date
Ruben Gonzalez
da5a4f7820 videoparsers: Fix indentation
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/8281>
2025-01-12 22:51:44 +00:00
Sebastian Dröge
10f870ac5c decklinkaudiosink: Don't crash if started without corresponding video sink
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/8253>
2025-01-12 18:48:36 +00:00
Colin Kinloch
4a56c82f0c wayland: Print table split when DMABuf format changes
The `zwp_linux_dmabuf_v1` doesn't specify an order for modifier events
to be sent.

In my case the linear format was sent last resulting in the first item
in each row being the previous format.

Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/8272>
2025-01-09 18:34:51 +00:00
Philippe Normand
14f6d9a53f wpevideosrc: Clear cached SHM buffers after caps re-negotiation
Otherwise buffers not corresponding to the negotiated caps might be pushed
downstream.

Fixes #4094

Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/8212>
2025-01-09 10:37:49 +00:00
Philippe Normand
0f667d140d wpevideosrc: Post progress messages on the bus
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/8217>
2025-01-09 07:49:51 +00:00
Philippe Normand
e908d22c44 wpevideosrc: Handle latency queries
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/8217>
2025-01-09 07:49:51 +00:00
Seungha Yang
f7e70e5261 d3d12mipmapping: Add mip-levels property
Generating full levels would result in waste of GPU resource
depending on rendering usecase. Adding a property to make it
controllable

Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/8255>
2025-01-08 22:46:14 +00:00
Seungha Yang
ca82e717c6 d3d12mipmapping: Add YUV and 64bits output formats
Add support for YUV and 64bits output formats to avoid
colorspace conversion and bitdepth loss

Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/8255>
2025-01-08 22:46:13 +00:00
Olivier Crête
33259e7ea4 analytics: Tensor dimensions are always row-major or col-major
Simplify by removing the extra fields, as this is what all
frameworks give us.

Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/8250>
2025-01-08 21:47:52 +00:00
Tim-Philipp Müller
0cb829c589 svtjpegxsenc: add support for interlaced video
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/8219>
2025-01-08 19:48:31 +00:00
Tim-Philipp Müller
661c31f0bf svtjpegxsenc: factor out encoding of codestream into separate function
Prepare for interlacing support where an interlaced image
is coded as two codestreams each representing a field.

Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/8219>
2025-01-08 19:48:31 +00:00
Tim-Philipp Müller
ef57213426 mpegtsmux: add support for interlaced JPEG XS
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/8219>
2025-01-08 19:48:31 +00:00
Tim-Philipp Müller
306200e10e svtjpegxsdec: add support for interlaced video
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/8219>
2025-01-08 19:48:31 +00:00
Tim-Philipp Müller
71aacec532 svtjpegxsdec: drop frames that had decoding errors
Follow-up to !8163

Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/8219>
2025-01-08 19:48:30 +00:00
Tim-Philipp Müller
a589575bd8 svtjpegxsdec: factor out decoding of codestream into separate function
Prepare for interlacing support where an interlaced image
is coded as two codestreams each representing a field.

Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/8219>
2025-01-08 19:48:30 +00:00
Tim-Philipp Müller
23ffffe57b tsdemux: handle interlaced JPEG XS
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/8219>
2025-01-08 19:48:30 +00:00
Stéphane Cerveau
570c086254 vkh265dec: update only vps/sps on demand and pass pps always
As PPS can change over the stream, the pps should be always
updated to avoid missing picture parameters sets.

Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/8124>
2025-01-08 18:50:33 +00:00
Stéphane Cerveau
73c4eb3001 vkh264dec: update only sps on demand and pass pps always
As PPS can change over the stream, the pps should be always
updated to avoid missing picture parameters sets.

See CABA3_TOSHIBA_E.264 in fluster resources.

Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/8124>
2025-01-08 18:50:33 +00:00
Samuel Thibault
727424452a meson: Fix build with gtk3 but not wayland
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/8222>
2025-01-08 07:53:36 +00:00
Sam James
775a2bd26f codec2json: move option to right section
It has an external dependency (json-glib) so should be under
that heading.

Fixes: fd588a50e4
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/8238>
2025-01-04 20:30:07 +00:00
Sam James
fd54c57260 analyticsoverlay: move option to right section
It has an external dependency (pango/cairo) so should be under
that heading. Also, fix an inconsistency with the ':' style.

Fixes: 95464c8977
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/8238>
2025-01-04 19:53:00 +00:00
Daniel Morin
0a343fa738 analytics: remove batch-size
- Batch-size will be the outer-most dimension. Presence of batch dimension can
  be identified using `dims` and `id`.

Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/8191>
2025-01-03 23:14:39 +00:00
Seungha Yang
126d6f0815 d3d12screencapturesrc: Add support for HDR capture in DDA mode
Use IDXGIOutput5::DuplicateOutput1() if HDR is enabled.
Note that scRGB color space is not defined in GStreamer,
this element will output SDR tonemapped frame
with linear or reinhard filtering.

Fixes: https://gitlab.freedesktop.org/gstreamer/gstreamer/-/issues/3834
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/8227>
2025-01-02 06:55:33 +09:00
Seungha Yang
2ff7b5a5ab d3dshader: Add sampling pixel shader for scRGB SRV
Shaders required for HDR capturing

Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/8227>
2025-01-02 05:57:38 +09:00
Albert Sjolund
97a3bba629 webrtc: add new post-rtp-aux-sender signal
Adds a new signal to webrtcbin, to allow for placement
of an object after rtp, before sendbin. This is usable for
objects such as congestion control elements, that don't want
to be burdened by the synchronization requirements of rtpsession.

Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/7940>
2025-01-01 19:34:55 +00:00
Tim-Philipp Müller
9aab2ddd13 tsdemux: fix JPEG XS framerate handling for 29.97fps
.. and other framerate values with a 1.001 denominator.

The coded framerate denominator value is a code that maps to
either 1 (for 1) or 1.001 (for 2) not a direct value.

Before, 29.97fps would be announced as 15fps because it
would calculate 30/2 instead of 30/1.001.

Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/8226>
2024-12-31 16:19:16 +00:00
Samuel Thibault
faa4d572c4 meson: Also disable drm on GNU/Hurd
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/8223>
2024-12-30 22:53:02 +01:00
Seungha Yang
f1f5d6002e docs: Update qsv plugin docs
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/8220>
2024-12-29 14:24:55 +00:00
Seungha Yang
21606dac35 docs: Update d3d11 plugin docs
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/8220>
2024-12-29 14:24:55 +00:00
Seungha Yang
9444a90bc9 docs: Update d3d12 plugin docs
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/8220>
2024-12-29 14:24:55 +00:00
Seungha Yang
ca56fd285a d3d12: Add "Since" markers
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/8220>
2024-12-29 14:24:55 +00:00
Seungha Yang
6f5d58da11 docs: Add asio plugin docs
Fixes: https://gitlab.freedesktop.org/gstreamer/gstreamer/-/issues/3745
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/8220>
2024-12-29 14:24:55 +00:00
Seungha Yang
256005be13 asio: Add "Since" markers and fix typos in property description
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/8220>
2024-12-29 14:24:55 +00:00
Seungha Yang
9ed220bafb docs: Add webview2 plugin docs
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/8220>
2024-12-29 14:24:55 +00:00
Sebastian Dröge
9909654a9a play: Fix stream id leaks on initial stream selection
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/7650>
2024-12-28 13:51:50 +02:00
Sebastian Dröge
13ed55f0ee play: Actually check for valgrind for the tests
Other tests in gst-plugins-bad also assumed it to be checked.

Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/7650>
2024-12-28 13:51:50 +02:00
Sebastian Dröge
0464076b26 play: Fix tests after the switch to playbin3
And also fix various memory leaks and other issues that always existed
in the tests.

Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/7650>
2024-12-28 13:51:50 +02:00
Sebastian Dröge
1414b754c9 play: Port tests to libsoup 3
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/7650>
2024-12-28 11:49:42 +02:00
Sebastian Dröge
0b00cb04b3 play: Add stream-id based selection of streams to match better playbin3's API
As part of this

  - Add accessors for the stream ID and selection API based on the
    stream ID
  - Deprecate the old index-based APIs
  - Remove playbin support
  - Implement the track enable API based on stream selection

Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/7648>
2024-12-27 19:00:18 +00:00
Tim-Philipp Müller
a3cdfc06b5 srtpdec: fix build when libsrtp1 is being used
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/8204>
2024-12-23 21:38:35 +00:00
Philippe Normand
d4bfbdcfb4 wpe: Fix build for version 2.44
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/8203>
2024-12-23 18:54:28 +01:00
Philippe Normand
7152d5c07a srtpdec: Fix a use-after-free buffer issue
The gst_srtp_dec_decode_buffer() function modifies the input buffer after making
it writable, so the pointer might change as well, depending on the refcount of
the buffer.

This issue was detected using a netsim element upstream of the decoder in a
WebRTC pipeline.

Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/8198>
2024-12-22 15:00:07 +01:00
Hosang Lee
228dd25a0a mssdemux: Use gsturi structure to form fragment urls
We can use gst_uri_from_string_with_base () to join base url
and the fragment url path.
The previous method of forming base url in update_base_url(),
by looking for the string 'manifest' or 'Manifest' is insufficient.
A query may include these string in their paths and thus an invalid
base url string will be kept.

Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/8193>
2024-12-21 10:29:48 +00:00
Thibault Saunier
8be9074b0f doc: Handle gst_dep.get_variable('libexecdir') failure
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/8178>
2024-12-20 20:19:28 +00:00
Thibault Saunier
caa223baf4 doc: Allow updating the plugins cache for all modules even if hotdoc is not present
This was possible for some modules but not all, for no good reason.

Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/8178>
2024-12-20 20:19:28 +00:00
Robert Mader
6c29395ea4 v4l2codecs: decoder: Fix drm format query
A late change that slipped through as it mainly affects NC12
at the moment.

Fixes: 4b07d54931 ("v4l2codecs: decoder: Translate V4L2 formats into DRM fourcc/mod pairs")
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/8188>
2024-12-20 17:13:23 +00:00
Edward Hervey
19cea52dbd mpegts: Add provisional AV1 mapping
The main difference with the WIP av1-in-mpegts mapping is that the payload data
is not startcode-escaped. Most of the rest is sensible usage of it:

* Custom AV1G (AV1 Gstreamer) registration descriptor instead of AV01
* AV1CodecConfigurationRecord is stored in the same 0x80 custom descriptor and
  conforms fully to the isobmff spec (i.e. does not the HDR fields from the
  provisional mpegts specification which conflict with that one).
* Data is stored as OBU
* Access Unit is the frame level (same as provisional mpegts mapping)

Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/4442>
2024-12-20 14:19:00 +00:00
Stéphane Cerveau
2a19805f7d dash: handle 0 duration in gst_xml_helper_set_prop_duration
Add dash_mpdparser_check_mpd_client_set_period_to_0
unit test to demonstrate it.

Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/8114>
2024-12-20 12:55:51 +00:00
Nicolas Dufresne
988f806e7a av1parse: Fix some debug trace and comment typo
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/8026>
2024-12-20 01:26:12 +00:00
Nicolas Dufresne
98d40251d8 av1parse: Don't immediatly reset timestamp in presence of TD
When a TD is being processed, it is not always pushed immediatly. Resetting
the time information lead to lost of timestamp in TU to Frame conversion. The
TU would be formed by buffer of [TD][Frame], and the timestamp taken from
the TU buffer was lost then the TD was handled.

The handling of TS should be entirely done by the 3 functions:

- gst_av1_parse_handle_obu_to_obu() (direct input to output)
- gst_av1_parse_handle_to_big_align() Reset DTS on detected TU or TD
- gst_av1_parse_handle_to_small_and_equal_align() PTS on show frame, flat DTS

Fixes: 79312357a6
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/8026>
2024-12-20 01:26:12 +00:00