Commit graph

4228 commits

Author SHA1 Message Date
dukesook
6b54566a85 mp4mux: add extra brands
Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-rs/-/merge_requests/2245>
2025-05-23 17:47:42 +03:00
Sebastian Dröge
befe818a3f gtk4: Use window.present() instead of window.show()
Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-rs/-/merge_requests/2252>
2025-05-22 17:44:29 +03:00
Sebastian Dröge
bb8393a5a3 ci: Update fdo ci templates version
Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-rs/-/merge_requests/2252>
2025-05-22 17:12:53 +03:00
Sebastian Dröge
8a0b255504 ci: Update base image from Debian bookworm to trixie
Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-rs/-/merge_requests/2252>
2025-05-22 17:12:53 +03:00
Sebastian Dröge
b511beaf2c gtk4: Update default GTK4 target version to 4.10
If necessary, support for older versions can still be enabled by
disabling the default but like this it will at least work correctly
(even if less efficient as it could) with newer GTK versions.

Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-rs/-/merge_requests/2252>
2025-05-22 17:12:53 +03:00
L. E. Segovia
3df88075f5 Update Cargo.lock to fix duplicated target-lexicon
Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-rs/-/merge_requests/2254>
2025-05-22 07:53:38 +00:00
Sebastian Dröge
860bebcdef Fix or silence various new clippy warnings
Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-rs/-/merge_requests/2253>
2025-05-22 10:02:21 +03:00
Robert Mader
6450381017 video/gtk4: Initial colorimetry support
Similar to GtkGstSink.

Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-rs/-/merge_requests/2022>
2025-05-20 15:35:00 +02:00
Robert Mader
85455c937f Cargo.lock: Update GTK4
In order to pull in an API fix before we start using said API.

Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-rs/-/merge_requests/2022>
2025-05-20 13:46:24 +02:00
Robert Mader
7db44376db gtk4: Update and adapt to texture builder API changes
See https://github.com/gtk-rs/gtk4-rs/pull/2046

Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-rs/-/merge_requests/2247>
2025-05-20 11:18:11 +00:00
Alicia Boya García
c29841dc1e cea608tott: make test less shocking by having more cues as context
The contents of the current test for cea608tott can be a bit shocking
without context about the source.

This patch adds more cues to the test so that a reader just trying to
understand the elements has more context that this is a news program.

Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-rs/-/merge_requests/2249>
2025-05-18 13:07:36 +02:00
Sebastian Dröge
236608f48e webrtc: Stop using deprecated API and require GStreamer 1.22 or newer
Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-rs/-/merge_requests/2243>
2025-05-14 08:40:39 +03:00
Sebastian Dröge
d8d988427f Update plugins docs cache
Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-rs/-/merge_requests/2243>
2025-05-13 20:14:33 +03:00
Sebastian Dröge
8366311a42 Update Cargo.lock
Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-rs/-/merge_requests/2243>
2025-05-13 20:03:56 +03:00
Sebastian Dröge
6db8c1806c deny: Update
Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-rs/-/merge_requests/2241>
2025-05-13 14:49:19 +03:00
Sebastian Dröge
8df3fbe4ed Update Cargo.lock
Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-rs/-/merge_requests/2241>
2025-05-13 14:47:45 +03:00
Christoph Reiter
2079f23dde aws-lc-rs: Update to 1.13.1
This is required to fix the build with clang+mingw on Windows,
see https://github.com/aws/aws-lc/pull/2381

Updated via "cargo update -p aws-lc-rs --precise 1.13.1"

Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-rs/-/merge_requests/2237>
2025-05-12 07:30:09 +00:00
Mathieu Duponchelle
d99e8a7e7f awstranslate: output buffer lists
This means we can still output sentences as a single unit, even when
using span-based mode.

Update `awspolly` to concatenate buffer lists together before sending
them out for synthesis, and remove the now-useless textwrap element from
transcriberbin's synthesis channels.

Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-rs/-/merge_requests/2235>
2025-05-06 13:35:32 +02:00
L. E. Segovia
4ee38b6cf9 deny: Allow webpki-root-certs license
Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-rs/-/merge_requests/2233>
2025-05-05 16:15:41 +00:00
Mathieu Duponchelle
2e03d4f693 awstranslate: expose new accumulator-lateness property
Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-rs/-/merge_requests/2221>
2025-05-05 15:41:09 +00:00
Mathieu Duponchelle
9a784d5979 awstranslate: fix docstring
Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-rs/-/merge_requests/2221>
2025-05-05 15:41:09 +00:00
Mathieu Duponchelle
492ef81010 awstranslate: unit test accumulator logic
Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-rs/-/merge_requests/2221>
2025-05-05 15:41:09 +00:00
Sebastian Dröge
144aeb615a fmp4mux: Fix handling of negative DTS in composition time offset
Actually negative DTS (i.e. < 0) was handled correctly before when
queueing buffers, but this didn't handle the case correctly where the
very same stream has DTS/PTS shifted to be positive (i.e. start DTS is
before earliest PTS).

To solve this, pass through all DTS as signed values and at the very end
for every fragment calculate the offset between the two in addition to
the PTS/DTS offset of each buffer, and adjust the composition time
offsets accordingly.

This way the final PTS of each buffer after demuxing is equal to the
actual running time of the very same buffer before muxing. Previously
all PTS would've been shifted forwards by a couple of frames, which then
broke A/V synchronization.

Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-rs/-/merge_requests/2232>
2025-05-05 16:47:34 +03:00
Sebastian Dröge
8f8a663555 fmp4mux: Add explanatory comment why tfdt is mapped to the earliest PTS
Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-rs/-/merge_requests/2232>
2025-05-05 16:46:51 +03:00
Sebastian Dröge
a9a3a7a435 dav1ddec: Implement hack to finish output buffer with a reference count of 1
Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-rs/-/merge_requests/2190>
2025-05-03 15:36:53 +00:00
Sebastian Dröge
2166befce7 dav1ddec: Set output frame duration via the codec frame
Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-rs/-/merge_requests/2190>
2025-05-03 15:36:53 +00:00
Sebastian Dröge
9012099e62 dav1ddec: Directly decode into downstream allocated buffers if possible
Fixes https://gitlab.freedesktop.org/gstreamer/gst-plugins-rs/-/issues/670

Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-rs/-/merge_requests/2190>
2025-05-03 15:36:53 +00:00
Sebastian Dröge
0afd415bcb dav1ddec: Simplify LATENCY query handling
And don't keep state locked while querying upstream.

Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-rs/-/merge_requests/2190>
2025-05-03 15:36:53 +00:00
Sebastian Dröge
6ee63a465d dav1ddec: Allocate output buffers from an internal buffer pool
In the best case we can directly output them without copying now.

Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-rs/-/merge_requests/2190>
2025-05-03 15:36:52 +00:00
Sebastian Dröge
ebaf8ce8a5 dav1ddec: Move more video format mapping logic into functions
Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-rs/-/merge_requests/2190>
2025-05-03 15:36:52 +00:00
Sebastian Dröge
6ae34b751a dav1ddec: Keep state unlocked while calling into the decoder
This is a preparation for handling allocations ourselves from the
element as that would call back from the decoder into the element.

Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-rs/-/merge_requests/2190>
2025-05-03 15:36:52 +00:00
Sebastian Dröge
52037c8aca dav1ddec: Store the output state instead of just the video info in the decoder state
Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-rs/-/merge_requests/2190>
2025-05-03 15:36:52 +00:00
Sebastian Dröge
6df4adac31 fmp4mux: Use earliest PTS for the base media decode time (tfdt)
While this is supposed to be a decode time, this doesn't really match
the description in the specification. It starts at 0 and increases by
the duration of each fragment, i.e. is the sum of all previous sample
durations.

Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-rs/-/merge_requests/2223>
2025-05-02 21:03:19 +03:00
Sebastian Dröge
3012dac758 fmp4mux: Remove redundant if
Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-rs/-/merge_requests/2223>
2025-05-02 19:05:12 +03:00
Sebastian Dröge
86d2f2ce1f fmp4mux: Write lmsg as compatible brand into the last fragment
While this is only defined as such in DASH, it's used more widely and
shouldn't hurt to always have it there.

Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-rs/-/merge_requests/2222>
2025-05-02 15:45:25 +03:00
Piotr Brzeziński
d10993e15e gstwebrtc-api: Support starting a producer session for a given consumer
Updates the API with necessary plumbing to allow to track consumers
being added/removed, as well as starting a producer session targeted at
a consumer peer waiting for one.

The example page has also been updated to demonstrate this
functionality.

Can be tested by launching a webrtcsrc without a peer-id specified.

Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-rs/-/merge_requests/2206>
2025-05-01 13:14:55 +00:00
Piotr Brzeziński
abf97ba2a9 webrtc: Allow producers to start a session for a chosen consumer
Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-rs/-/merge_requests/2206>
2025-05-01 13:14:55 +00:00
Sebastian Dröge
0afe3e1846 Update everything else to bitstream-io 4.0
Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-rs/-/merge_requests/2219>
2025-04-30 13:01:22 +00:00
Sebastian Dröge
cb1a04465e rtp: Update to bitstream-io 4.0
Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-rs/-/merge_requests/2219>
2025-04-30 13:01:22 +00:00
Sebastian Dröge
9d1de72aa8 Update dependencies
Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-rs/-/merge_requests/2220>
2025-04-29 08:30:44 +03:00
Sebastian Dröge
79a93999c0 tracers: Update to etherparse 0.18
Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-rs/-/merge_requests/2220>
2025-04-29 08:27:32 +03:00
Sebastian Dröge
5eee9e9eee skia: Update to 0.84
Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-rs/-/merge_requests/2220>
2025-04-29 08:25:39 +03:00
Thibault Saunier
1181dea306 ci: Add test-static-link-all meson logs as artifacts
Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-rs/-/merge_requests/1847>
2025-04-28 21:26:02 +03:00
Thibault Saunier
5a4e536d6a skia: Implement a video compositor using skia
Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-rs/-/merge_requests/1847>
2025-04-28 21:26:02 +03:00
Mathieu Duponchelle
ec79102ec5 aws: pin aws-smithy-runtime-api to a compatible version
We pin `aws-smithy-runtime` to 1.7.8 since
https://gitlab.freedesktop.org/gstreamer/gst-plugins-rs/-/merge_requests/2214,
we need to prevent `aws-smithy-runtime-api` from updating to `1.8.0` in
order for the build to pass after `cargo update`.

Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-rs/-/merge_requests/2218>
2025-04-28 16:43:14 +02:00
Sebastian Dröge
8596d34f19 ci: Remove typos CI job
It's not really scalable in a repository with lots of different pieces
of code. What is an intentional typo (`fiel`) in one directory might be
an actual typo (`field`) elsewhere, and unfortunately this can't be
configured in a useful way on a per-directory basis.

Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-rs/-/merge_requests/2208>
2025-04-28 08:13:36 +00:00
Sebastian Dröge
322fc4b400 mp4mux: Fix typo
Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-rs/-/merge_requests/2208>
2025-04-28 08:13:36 +00:00
Sebastian Dröge
b06ae44ed4 fmp4mux: Set fragment header buffer offset to the fragment's sequence number
Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-rs/-/merge_requests/2208>
2025-04-28 08:13:36 +00:00
Sebastian Dröge
1a381de8aa fmp4mux: Remove obsolete TODO comment
Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-rs/-/merge_requests/2208>
2025-04-28 08:13:36 +00:00
Sebastian Dröge
3ae7913ef2 fmp4mux: Fix typo
Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-rs/-/merge_requests/2208>
2025-04-28 08:13:36 +00:00