Commit graph

3472 commits

Author SHA1 Message Date
Sebastian Dröge
d10a7224e1 Update to quick-xml 0.36
Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-rs/-/merge_requests/1885>
2024-10-28 09:33:11 +02:00
Sebastian Dröge
07f7730632 aws: Allow a deprecated BehaviourVersion for now
Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-rs/-/merge_requests/1873>
2024-10-22 20:21:55 +00:00
Sebastian Dröge
347b5987bd Fix a couple of type hierarchy bugs
Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-rs/-/merge_requests/1873>
2024-10-22 20:21:55 +00:00
Sebastian Dröge
2805215d3f togglerecord: Remove obsolete comment
Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-rs/-/merge_requests/1873>
2024-10-22 20:21:55 +00:00
Sebastian Dröge
6c0bfd3ffc webrtc: Silence two new Rust 1.82 clippy warnings
Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-rs/-/merge_requests/1874>
2024-10-22 19:29:28 +00:00
Jordan Petridis
1cf4419c08 ci: Specify the number of build jobs on windows
Followup to b5e0e071

Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-rs/-/merge_requests/1874>
2024-10-22 19:29:28 +00:00
Jordan Petridis
56bc1e06f5 ci: Use cargo nextest as the test runner and export junit reports
Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-rs/-/merge_requests/1874>
2024-10-22 19:29:28 +00:00
Sanchayan Maity
9c640c8bc3 net/quinn: Fix panic due to unset default crypto provider
Fix CI failure that we see after the upgrade of rustls from
0.23.13 to 0.23.15.

Related docs/PR
https://docs.rs/rustls/latest/rustls/crypto/struct.CryptoProvider.html#using-the-per-process-default-cryptoprovider
https://github.com/quinn-rs/quinn/pull/1882

Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-rs/-/merge_requests/1866>
2024-10-21 10:31:36 +00:00
Sebastian Dröge
e824ac31f4 reqwesthttpsrc: Allow a server error after a seek
There might be a server error because a seek would immediately close the
old connection without allowing for clean shutdown.

Fixes https://gitlab.freedesktop.org/gstreamer/gst-plugins-rs/-/issues/527

Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-rs/-/merge_requests/1863>
2024-10-18 17:48:42 +00:00
Mathieu Duponchelle
2790fb41b2 webrtcsink: fix session not in place errors
The InPlace/Taken logic was introduced to avoid using an extra lock
around the session, but it places expectations that are not always
obvious to meet around when a session is expected to be taken or not.

Any code that expects to have access to the sessions at all times thus
needs either extra logic in the session wrapper, or to maintain the
state of the session outside of the session (eg mids).

This commit removes the logic, and wraps sessions in Arc<Mutex>>.

Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-rs/-/merge_requests/1859>
2024-10-18 10:53:16 +00:00
Chris Bainbridge
f5b90ba261 custom-signaller: add missing manual-sdp-munging property
All signallers must now implement this property

Fixes #611

Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-rs/-/merge_requests/1858>
2024-10-18 09:33:42 +00:00
Mathieu Duponchelle
5501eacb6c transcriberbin: fix linking of user-provided transcriber
Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-rs/-/merge_requests/1836>
2024-10-15 15:58:57 +00:00
Mathieu Duponchelle
ed32f96fa3 transcriberbin: support both latency and transcribe-latency properties
Also don't set translate-latency property if not present

Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-rs/-/merge_requests/1836>
2024-10-15 15:58:57 +00:00
Mathieu Duponchelle
36f6097e62 transcriberbin: add debug
Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-rs/-/merge_requests/1836>
2024-10-15 15:58:57 +00:00
Guillaume Desmottes
57234522ec webrtc: janus: add 'janus-state' property to the sink
This property can be used by applications to track the state of the
signaller, especially to know when the stream is up.

Fix #510

Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-rs/-/merge_requests/1849>
2024-10-10 16:56:25 -04:00
Guillaume Desmottes
6cc9945d4e webrtc: janus: fix typo in doc
Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-rs/-/merge_requests/1849>
2024-10-10 16:43:23 -04:00
Mathieu Duponchelle
5958e342c7 webrtcsink: fix naming of error dot files for discovery pipelines
Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-rs/-/merge_requests/1844>
2024-10-03 16:45:42 +01:00
Guillaume Desmottes
dc9c286933 togglerecord: provide details when RT assertion fails
We hit this assertion once during our tests but it's unclear why.
This change will hopefully help us understanding what's going on next
time.

Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-rs/-/merge_requests/1841>
2024-10-03 11:38:56 +01:00
Sebastian Dröge
dfb871eb5d gtk4paintablesink: Deprecate wayland feature and add waylandegl feature
It's clearer that this is for GL support only.

Also remove the wayland feature dependency from the dmabuf one. While
dmabufs are only supported on wayland, it has no relation to the EGL
support.

Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-rs/-/merge_requests/1839>
2024-10-03 11:48:37 +03:00
Sebastian Dröge
b6c172c9a2 gtk4paintablesink: Don't check for a GL context when filtering dmabuf caps
There's no connection between the two and dmabuf can also not be
supported if GL is also unsupported.

Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-rs/-/merge_requests/1839>
2024-10-03 11:41:11 +03:00
Guillaume Desmottes
87697609a2 webrtc: allow PAR change in webrtcsink input caps
We are already allowing resolution changes which can lead to change in
pixel-aspect-ratio.

Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-rs/-/merge_requests/1833>
2024-10-01 17:42:21 +01:00
Sebastian Dröge
f0f33692ac Update CHANGELOG.md for 0.13.2
Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-rs/-/merge_requests/1826>
2024-09-28 18:48:45 +00:00
Sebastian Dröge
98951e6a00 Update versions to 0.13.2
Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-rs/-/merge_requests/1826>
2024-09-28 18:48:45 +00:00
Sebastian Dröge
6454504449 Update Cargo.lock
Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-rs/-/merge_requests/1826>
2024-09-28 18:48:45 +00:00
Sebastian Dröge
cfdea1dc68 Fix new Rust 1.81 clippy warnings
Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-rs/-/merge_requests/1827>
2024-09-28 19:57:11 +03:00
Sebastian Dröge
0d308ed4af uriplaylistbin: Properly check for stream-collection/streams-selected events
There is only a new stream-collection event if the media has actually
changed, and that's also the only time in these tests when a
streams-selected event is sent as the default stream selection is always
used and never changed.

Fixes https://gitlab.freedesktop.org/gstreamer/gst-plugins-rs/-/issues/597

Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-rs/-/merge_requests/1827>
2024-09-28 14:34:58 +01:00
Sebastian Dröge
9b10aec090 uriplaylistbin: Track actual caller in test assertion functions
Makes it easier to figure out from where it is actually called when the
assertion is failing.

Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-rs/-/merge_requests/1827>
2024-09-28 14:34:58 +01:00
Sebastian Dröge
2bf8409565 uriplaylistbin: Properly clean up the pipeline on panics/assertions too
Reduces log noise.

Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-rs/-/merge_requests/1827>
2024-09-28 14:34:58 +01:00
Sebastian Dröge
7b4a2daed0 rtpav1depay: Add wait-for-keyframe and request-keyframe properties
These behave the same as the properties in other depayloaders. Keyframe
detection is based on the N flag in the aggregation header.

Fixes https://gitlab.freedesktop.org/gstreamer/gst-plugins-rs/-/issues/598

Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-rs/-/merge_requests/1825>
2024-09-28 10:51:05 +01:00
Nick Steel
a19a68d157 spotify: add missing tokio crate feature rt-multi-thread
Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-rs/-/merge_requests/1822>
2024-09-26 17:59:24 +01:00
Nick Steel
be7ed6eb09 spotify: depend on librespot-core and librespot-playback only
Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-rs/-/merge_requests/1822>
2024-09-26 17:59:24 +01:00
Nick Steel
348618e48c spotify: avoid librespot::discovery dependency
Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-rs/-/merge_requests/1820>
2024-09-26 10:37:03 +01:00
Mathieu Duponchelle
8eedd0ac6d webrtcsrc: ensure source pad has msid when added
Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-rs/-/merge_requests/1812>
2024-09-26 06:33:44 +00:00
Mathieu Duponchelle
41f75378df webrtcsrc: fix default msid property value
Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-rs/-/merge_requests/1812>
2024-09-26 06:33:44 +00:00
Mathieu Duponchelle
bfa2fefa77 Cargo.toml: turn lto off for dev profile
Turning on opt-level=1 is necessary to make things reasonably fast, but
it also turns on lto which since thinlto became enabled by default slows
down compile times by a factor of 2 compared to lto off.

Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-rs/-/merge_requests/1816>
2024-09-26 01:23:49 +01:00
François Laignel
8f542f084c webrtcsink: fix RFC7273 attributes
RFC7273 related attributes are set in the SDP offer by passing them via the
transceiver `codec-preferences` signal. These attributes are intended to be set
at the media level so they must be prefixed by `a-` in the `Caps` argument to
the signal. Otherwise they end up under `a=fmtp`.

Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-rs/-/merge_requests/1811>
2024-09-25 11:25:51 +01:00
Guillaume Desmottes
27403129a5 fmp4: use the right DEFAULT constant
Does not really matter as both have the same value but best to have it
right.

Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-rs/-/merge_requests/1805>
2024-09-24 11:39:50 +00:00
Guillaume Desmottes
8e0a57237e fmp4: examples: hls_live: don't set header-update-mode=update
No need to update the header in live mode.

Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-rs/-/merge_requests/1804>
2024-09-24 11:34:22 +02:00
Jordan Petridis
b93dbbb0e7 ci: Set build jobs according to FDO_CI_CONCURRENT when available
The CI runners run multiple jobs concurrently, and as such we should
only be building with the number of jobs allocated to us when the
variable is set.

Related to https://gitlab.freedesktop.org/gstreamer/gstreamer-rs/-/merge_requests/1545

Also move the rest of the common flags we pass to cargo together so it's
a bit easier to read.

Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-rs/-/merge_requests/1797>
2024-09-20 23:59:52 +00:00
Mathieu Duponchelle
9331824479 webrtcsrc: expose MSID property on source pad
Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-rs/-/merge_requests/1796>
2024-09-21 00:27:57 +02:00
Sebastian Dröge
acd0a54b4a cea708mux: Fix off-by-one in deciding whether a buffer belongs to this or the next frame
Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-rs/-/merge_requests/1790>
2024-09-20 06:33:25 +00:00
Sebastian Dröge
585b6b53d4 cea708mux: Stop with EOS if all pads are EOS instead of continuing forever
Also don't drop buffers if multiple tries are needed for aggregating
because some pads are not ready yet.

Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-rs/-/merge_requests/1790>
2024-09-20 06:33:25 +00:00
Sebastian Dröge
a3c4ad7015 cea708mux: Don't create a separate source pad and actually push gap events downstream
The aggregator base class is already creating the source pad and the
source pad that was created here internally was never added to the
element at all. As such all gap events pushed on it never went anywhere.

Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-rs/-/merge_requests/1790>
2024-09-20 06:33:25 +00:00
Jan Schmidt
41cc7ee30b onvifmetadatapay: Set output caps earlier
As soon as input caps arrive, we can set output
caps. This means upstream can send gap events earlier,
before there is any actual metadata to send

Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-rs/-/merge_requests/1788>
2024-09-19 14:25:37 +02:00
Sebastian Dröge
b532fdbca0 closedcaption: cea608utils: Avoid overflow when deciding which lines to retain
Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-rs/-/merge_requests/1778>
2024-09-19 10:05:14 +02:00
Jerome Colle
18771be680 dav1ddec: add properties for film grain synthesis and in-loop filters
Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-rs/-/merge_requests/1771>
2024-09-09 18:29:31 +01:00
Sebastian Dröge
034742e4af mpegtslivesrc: Make sure to use the object as context for all debug logs
Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-rs/-/merge_requests/1770>
2024-09-09 15:49:08 +01:00
Sebastian Dröge
1a7cf29b04 mpegtslivesrc: Check if old compared to new PCR clock estimation is too far off
It the difference between the two estimations is more than 1s then
consider this a discontinuity too.

Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-rs/-/merge_requests/1770>
2024-09-09 15:49:08 +01:00
Sebastian Dröge
0758470e68 mpegtslivesrc: Fix order of parameters passed to add_observation()
The first one should be the internal time, i.e. the monotonic clock time
in our case, and the second one the external time.

Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-rs/-/merge_requests/1770>
2024-09-09 15:49:08 +01:00
Sebastian Dröge
34f85f8d9f mpegtslivesrc: Scale monotonic time on PCR disconts to allow for continuous clock times
Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-rs/-/merge_requests/1770>
2024-09-09 15:49:08 +01:00