Commit graph

3746 commits

Author SHA1 Message Date
Sanchayan Maity
a02296eb95 net/quinn: Support stream multiplexing in quinnwtserversink
Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-rs/-/merge_requests/1966>
2024-12-30 09:40:43 +05:30
Sebastian Dröge
53160cb6ab Update CHANGELOG.md for 0.13.4 2024-12-24 15:59:23 +02:00
Sebastian Dröge
aa31640e8b ci: Move cargo invocations to shell scripts
And pass RUST_VERSION to the scripts too.

Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-rs/-/merge_requests/2006>
2024-12-23 13:59:54 +02:00
Mathieu Duponchelle
35a621a53b transcriberbin: fix deadlock on taking settings lock
This fixes both a double lock in a case, and in all cases an
out-of-order lock (element settings must always be locked before
pad settings).

Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-rs/-/merge_requests/2004>
2024-12-20 17:13:08 +00:00
Ruben Gonzalez
ebfa0fb890 deps: update itertools to 0.13
same used in gstreamer-rs

Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-rs/-/merge_requests/2002>
2024-12-20 16:23:52 +00:00
Sebastian Dröge
0d8dc1c156 cea608tott: Fix expected test output with cea608-types 0.1.4
Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-rs/-/merge_requests/2001>
2024-12-20 16:57:07 +02:00
Sebastian Dröge
1b1a7d2c96 Update Cargo.lock
Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-rs/-/merge_requests/2001>
2024-12-20 16:15:11 +02:00
Sanchayan Maity
e21e07c46a net/quinn: Fix ChildProxy implementation for muxer & demuxer
The demuxer did not need the ChildProxy implementation while
the muxer was missing the call to child_added, child_removed
and the interface entry in ObjectSubclass.

Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-rs/-/merge_requests/1998>
2024-12-20 17:45:50 +05:30
Thibault Saunier
82b98f7a9f docs: Allow updating the plugins_cache.json files without generating documentation
There is no dependencies between the 2 things, and it is often useful to be able
to update the cache even if we are not generating the documentation

Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-rs/-/merge_requests/1996>
2024-12-19 14:32:16 +00:00
Thibault Saunier
1e3eef253b webrtcsrc: Add a 'connect-to-first-producer' property
This is an helper property which allows to avoid requiring to know
peer IDs, which is very useful during development.

Fixes: https://gitlab.freedesktop.org/gstreamer/gst-plugins-rs/-/issues/386
Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-rs/-/merge_requests/1996>
2024-12-19 14:32:16 +00:00
Mathieu Duponchelle
026a2a11eb transcriberbin: improve usage of framerate field
Use the framerate from our video caps as early as possible in the
pipeline, that is just downstream of the tttoceax08 elements.

Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-rs/-/merge_requests/1997>
2024-12-19 13:55:20 +01:00
Mathieu Duponchelle
666aba0a58 transcriberbin: query latency of synthesis elements ..
instead of expecting that they expose a "latency" property.

Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-rs/-/merge_requests/1993>
2024-12-18 18:04:53 +00:00
Matthew Waters
497b1e58bd cea708overlay: support changing the safe title area
By default it is 80% of the output size as recommended by CEA-708/608.

Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-rs/-/merge_requests/1985>
2024-12-18 12:57:49 +00:00
Matthew Waters
b367b38633 cea608overlay: fix rendering when roll up base row is at the top
We were ensuring that the base row was one too large for the number of roll up
rows and causing the first row to unable to be written to.

Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-rs/-/merge_requests/1985>
2024-12-18 12:57:48 +00:00
Sebastian Dröge
7d4ddc7eb9 webrtc: Specify to use playbin3 instead of playbin
Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-rs/-/merge_requests/1995>
2024-12-18 07:31:17 +00:00
Sebastian Dröge
248b7ac059 webrtcsink: Configure custom host/port on the signaller when running signalling server internally
Otherwise it just tries connecting to the default URL, which doesn't
work if either the host or the port are changed.

Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-rs/-/merge_requests/1994>
2024-12-17 16:22:41 +02:00
Edward Hervey
73663d7352 cea708mux: Don't push empty services into packets
This is invalid. Only "padding" service 0 can be empty.

Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-rs/-/merge_requests/1987>
2024-12-16 05:00:30 +01:00
Sebastian Dröge
6a8f1bdc61 mpegtslivesrc: Parse PES packets and check for reasonable PTS/DTS
Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-rs/-/merge_requests/1977>
2024-12-13 13:11:16 +00:00
Sebastian Dröge
44978159a3 mpegtslivesrc: Refactor section parser
Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-rs/-/merge_requests/1977>
2024-12-13 13:11:16 +00:00
Matthew Waters
a2279bc253 cea708mux: make sure to empty the stored pending codes
Fixes some captions being truncated if multiple of the same service is
received in the same input buffer.

Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-rs/-/merge_requests/1984>
2024-12-13 00:06:11 +00:00
Matthew Waters
db8e1da65d cea708overlay: clear more things on caption timeout
Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-rs/-/merge_requests/1983>
2024-12-12 23:11:00 +00:00
Mathieu Duponchelle
ae90dd4afe transcriberbin: expose language-filters property
When set, the bin will lookup the structure for either a bin description
or an element to link in when linking the transcriber to a language
tee.

Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-rs/-/merge_requests/1979>
2024-12-12 14:19:41 +01:00
Nirbheek Chauhan
5e4d5a3dc6 meson: Enable crate features based on available gstreamer version
We shouldn't only enable the gstreamer features based on the available
gstreamer version (such as gst-base/v1_26), but also the plugin
features (such as v1_26).

This should help with situations like
https://gitlab.freedesktop.org/gstreamer/gst-plugins-rs/-/issues/634

Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-rs/-/merge_requests/1943>
2024-12-11 11:56:08 +00:00
Mathieu Duponchelle
8886cceaf0 webrtcsink: add nvh265enc support
Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-rs/-/merge_requests/1980>
2024-12-11 08:07:15 +00:00
Sebastian Dröge
b44174b180 deny: Add override for duplicated aws-smithy-json dependency
Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-rs/-/merge_requests/1978>
2024-12-10 15:59:24 +00:00
Sebastian Dröge
738fce5932 Update Cargo.lock
Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-rs/-/merge_requests/1978>
2024-12-10 15:59:24 +00:00
Mathieu Duponchelle
be00ae7999 aws/polly: expose property for overflow control
Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-rs/-/merge_requests/1965>
2024-12-10 14:19:30 +00:00
Mathieu Duponchelle
4852a4a5e6 gst_plugins_cache.json: generate tracer objects documentation
Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-rs/-/merge_requests/1965>
2024-12-10 14:19:29 +00:00
Mathieu Duponchelle
e88db4e35d cea608tott: output generated text on carriage return
We would never output any text in roll-up mode otherwise

Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-rs/-/merge_requests/1973>
2024-12-09 18:25:06 +00:00
Mathieu Duponchelle
0376cd2752 speechmatics: expose properties for controlling punctuation joining
By default the transcriber will attempt to join punctuation with the
preceding word, expose a property to control that.

As speechmatics sometimes outputs punctuation for a sentence in the
next transcript, it will sometimes arrive too late for joining. In
order to work around this behavior, a lower max-delay is used by
default, that may not always be desirable, especially if low latency is
a concern.

Expose a property to disable the hack.

Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-rs/-/merge_requests/1909>
2024-12-09 17:29:47 +00:00
Mathieu Duponchelle
e3e7f55a8d transcriberbin: expose mix-matrix property on audio sink pads
As the application expects to have the bin buffer the audio stream
internally and output it again unchanged, and transcribers might
expect a set number of channels, we need to expose a property to
let the user control how to downmix the audio stream teed through
the transcriber.

Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-rs/-/merge_requests/1969>
2024-12-09 16:26:47 +00:00
Andoni Morales Alastruey
1ba2468a05 quinn: fix clippy warnings
Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-rs/-/merge_requests/1867>
2024-12-09 12:26:48 +00:00
Andoni Morales Alastruey
b020ae6fc2 quinn: fix racy tests
Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-rs/-/merge_requests/1867>
2024-12-09 12:26:48 +00:00
Andoni Morales Alastruey
2d6f084596 quinn: ignore the test using the hostname
Ignore the test for now, since the CI runners only resolve to
an IPv6 address which are not handled correctly.

Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-rs/-/merge_requests/1867>
2024-12-09 12:26:48 +00:00
Andoni Morales Alastruey
fe8e9c2891 quinn: update documentation
Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-rs/-/merge_requests/1867>
2024-12-09 12:26:48 +00:00
Andoni Morales Alastruey
b9f7cbdb8c quinn: update Cargo.lock
Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-rs/-/merge_requests/1867>
2024-12-09 12:26:48 +00:00
Andoni Morales Alastruey
a791cfff2b quinn: allow unsecure connections in WebTransport elements
WebTransport requires a secure connection, but certificates
can have a validity of 2 weeks. For testing, a new property
is added to allow unsecure connections.

Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-rs/-/merge_requests/1867>
2024-12-09 12:26:48 +00:00
Sanchayan Maity
be02c0e388 net/quinn: Move quinnwtclientsrc to PushSrc
Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-rs/-/merge_requests/1867>
2024-12-09 12:26:48 +00:00
Sanchayan Maity
850331699a net/quinn: Use LazyLock instead of once_cell::Lazy
Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-rs/-/merge_requests/1867>
2024-12-09 12:26:48 +00:00
Andoni Morales Alastruey
d80c4c4351 quinn: add tests for WebTransport
Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-rs/-/merge_requests/1867>
2024-12-09 12:26:48 +00:00
Ruben González
6fed4acf53 quinn: add a new WebTransport server sink
Co-authored-by: Andoni Morales Alastruey <amorales@fluendo.com>
Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-rs/-/merge_requests/1867>
2024-12-09 12:26:48 +00:00
Andoni Morales Alastruey
ef21a6aa3b quinn: add a new WebTransport client element
Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-rs/-/merge_requests/1867>
2024-12-09 12:26:48 +00:00
Andoni Morales Alastruey
62e49b3ed5 quinn: add support for Sec1 keys
Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-rs/-/merge_requests/1867>
2024-12-09 12:26:48 +00:00
Andoni Morales Alastruey
cf8b49b257 quinn: make private key optional for clients
Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-rs/-/merge_requests/1867>
2024-12-09 12:26:48 +00:00
Andoni Morales Alastruey
4104ebca25 quinn: cleanup transport config creation
Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-rs/-/merge_requests/1867>
2024-12-09 12:26:48 +00:00
Matthew Waters
a3d114e18f cea708overlay: fix background/foreground type
Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-rs/-/merge_requests/1942>
2024-12-09 05:16:04 +00:00
Matthew Waters
01ef35eac8 cea708overlay: enable a black background by default
It is the recommended colour sceheme in CEA-608.

Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-rs/-/merge_requests/1942>
2024-12-09 05:16:04 +00:00
Matthew Waters
144a0e431c cea708overlay: produce a slightly more CEA-608 layout
Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-rs/-/merge_requests/1942>
2024-12-09 05:16:04 +00:00
Matthew Waters
9787b187de deps: update cea708-types to 0.3.5
Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-rs/-/merge_requests/1942>
2024-12-09 05:16:04 +00:00
Matthew Waters
34c928e9fe tttocea708: log the bytes and times generated
Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-rs/-/merge_requests/1942>
2024-12-09 05:16:04 +00:00