Commit graph

2657 commits

Author SHA1 Message Date
Edward Hervey
a76330e76c rtpgccbwe: Don't process empty lists
The structure parsing could result in an empty vector. Don't do any processing
since the loss code assumes it's non-empty for average estimates which would
result in weird/invalid results.

Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-rs/-/merge_requests/1189>
2023-04-22 11:56:37 +03:00
Arun Raghavan
1f26b9e336 ffv1dec: Drop rank for now
We'll keep the rank lower than avdec_ffv1, at least until we're
comfortable with support for the entire range of possible inputs working
well.

Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-rs/-/merge_requests/1189>
2023-04-22 11:56:27 +03:00
Sebastian Dröge
33be56bd26 net: ndi: Update to libloading 0.8
Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-rs/-/merge_requests/1189>
2023-04-22 11:56:13 +03:00
Sebastian Dröge
7726008d52 deny: Update for miniz_oxide dependency duplication
Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-rs/-/merge_requests/1189>
2023-04-22 11:56:08 +03:00
Mathieu Duponchelle
8a72ec563e tttocea608: specify raw 608 field
The element can only output field=0 raw 608 data.

Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-rs/-/merge_requests/1189>
2023-04-22 11:55:46 +03:00
Mathieu Duponchelle
701f53b9fe textwrap: add some logs
Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-rs/-/merge_requests/1189>
2023-04-22 11:55:13 +03:00
François Laignel
d2db786136 net/webrtc: backport the serial-sorted WebRtcSink pad request
This is a partial backport of [#58439204] to get predictable track order.
With this commit, we are sure the `mid`s sequence in the Sdp offer will reflect
the order by which the `webrtcsink` pads were requested.

[#58439204]: 584392049c
2023-04-20 15:09:43 +02:00
Sebastian Dröge
88548f41b6 Update Cargo.lock 2023-04-06 11:24:25 +03:00
Sebastian Dröge
fdd9b3f638 Update CHANGELOG.md for 0.10.6 2023-04-06 11:24:25 +03:00
Sebastian Dröge
48ffd4eb49 Update versions to 0.10.6 2023-04-06 11:24:25 +03:00
Sebastian Dröge
df471188dc Update Cargo.lock
Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-rs/-/merge_requests/1160>
2023-04-05 15:12:40 +00:00
Sebastian Dröge
0d8a5245b0 ndisrc: Fix copying of raw video frames with different NDI/GStreamer strides
And also don't copy each line twice for single-plane formats.

Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-rs/-/merge_requests/1160>
2023-04-05 15:12:40 +00:00
Sebastian Dröge
2e2ec4efdc deny: Update for older versions of the windows bindings
Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-rs/-/merge_requests/1160>
2023-04-05 15:12:40 +00:00
Tim-Philipp Müller
198477e63b git: replace LICENSE file symlinks with copies
Git will de-duplicate the contents for us anyway, and
symlinks can cause problems with some versions of git
and also on Windows.

https://github.com/mesonbuild/meson/issues/11646
https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/4326

Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-rs/-/merge_requests/1160>
2023-04-05 15:12:40 +00:00
Sebastian Dröge
b2a0591676 fallbacksrc: Don't check caps when linking to the fallbackswitch
Downstream might have different caps requirements and linking might
fail. Instead of having linking fail, give upstream an opportunity to
reconfigure and otherwise have a normal negotiation error during data
flow.

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

Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-rs/-/merge_requests/1160>
2023-04-05 15:12:40 +00:00
Guillaume Desmottes
329956de87 uriplaylistbin: example: add queues
Prevent pipeline starvation with some media such as
https://assets.onestream.live/studio/Videos/1080p/osl-interval-1080p-8.mp4

Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-rs/-/merge_requests/1160>
2023-04-05 15:12:40 +00:00
Vivia Nikolaidou
edc366f612 livesync: Actually assume zero upstream latency when query fails
The code said "assuming zero" but left latency at None instead of
Some(0), failing to unwrap the value later.

Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-rs/-/merge_requests/1160>
2023-04-05 15:12:40 +00:00
Mathieu Duponchelle
525e3afe70 webrtcsink: fix calculation of fec_ratio with multiple encoders
In this context, the bitrate variable is for all encoders, but the
max_bitrate field is per encoder. To calculate a proper FEC ratio, we
need to scale max_bitrate to the number of encoders.

+ Also clamp the fec-percentage that we set on the transceiver for extra
  safety

Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-rs/-/merge_requests/1160>
2023-04-05 15:12:40 +00:00
Sebastian Dröge
6f63abe653 deny: Update for duplicated old dependencies in dependencies
Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-rs/-/merge_requests/1160>
2023-04-05 15:12:40 +00:00
David Revay
5bb65d3e33 chore(webrtcsink): fix max-bitrate blurb and nick
Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-rs/-/merge_requests/1160>
2023-04-05 15:12:39 +00:00
Vivia Nikolaidou
f15fd82f83 webrtcsink: Add ice-transport-policy option
Can be used to force relay ICE candidates, ensuring TURN server is used.
Proxy to the corresponding setting in webrtcbin,

Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-rs/-/merge_requests/1160>
2023-04-05 15:12:39 +00:00
Sebastian Dröge
73dc6a8ef9 deny: Update
Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-rs/-/merge_requests/1160>
2023-04-05 15:12:39 +00:00
Mathieu Duponchelle
ff85d27944 transcriberbin: fix initial transcription bin setup
When passthrough=false at construction and the transcription bin
is linked after receiving video caps (and not on state change),
there could be a race where transcription-bin was linked with
tee but state change of the transcription-bin was not finished.

If upstream pushed a buffer at that point, it got a flushing flow
return and stopped streaming.

This is the same issue and the same fix as 558656deb5
for the initial passthrough=false case.

Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-rs/-/merge_requests/1160>
2023-04-05 15:12:39 +00:00
Mathieu Duponchelle
97bcab5da0 transcriberbin: fix deadlock on construction error
Don't post an error message on the bus while holding the state lock

Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-rs/-/merge_requests/1160>
2023-04-05 15:12:39 +00:00
Mathieu Duponchelle
82bc045aba tttocea608: fix disappearing text after special character in non-popon
To avoid special characters getting de-duplicated by the decoder, we
insert no-op control commands after those. The no-op command must be
picked according to the mode we're in however, inserting
"resume_caption_loading" commands in roll-up mode caused obvious issues.

Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-rs/-/merge_requests/1160>
2023-04-05 15:12:39 +00:00
Mathieu Duponchelle
3b27132bca tttocea608: fix pushing unfixed caps downstream
Allowed downstream caps might hold multiple structures, simply fixating
the first structure is not enough, tttocea608 must also create caps with
a single structure from there (or remove the remaining structures, but
new caps seems cleaner)

Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-rs/-/merge_requests/1160>
2023-04-05 15:12:39 +00:00
Lily Foster
0ba8d8b856 update-version.sh: Also update versions in Cargo.lock
Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-rs/-/merge_requests/1160>
2023-04-05 15:12:39 +00:00
Sebastian Dröge
3cdaa881db Update Cargo.lock 2023-03-23 16:58:39 +02:00
Sebastian Dröge
67de191be2 Update versions to 0.10.5 2023-03-19 18:40:49 +02:00
Sebastian Dröge
70ed344348 Update CHANGELOG.md for 0.10.5 2023-03-19 18:40:33 +02:00
Sebastian Dröge
e2c64d667d deny: Update for new syn/bitflags versions 2023-03-19 18:39:17 +02:00
Sebastian Dröge
18c1587399 Update Cargo.lock
Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-rs/-/merge_requests/1139>
2023-03-19 17:41:10 +02:00
Carlo Cabrera
2b118c867f gtk4: Fix compilation on macOS
Fixes https://gitlab.freedesktop.org/gstreamer/gst-plugins-rs/-/issues/332

Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-rs/-/merge_requests/1139>
2023-03-19 17:38:57 +02:00
Sebastian Dröge
444146249f threadshare: jitterbuffer: Rename C symbols to avoid conflicts with the same symbols from the rtpmanager plugin
Fixes https://gitlab.freedesktop.org/gstreamer/gst-plugins-rs/-/issues/326

Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-rs/-/merge_requests/1139>
2023-03-19 17:38:56 +02:00
Sebastian Dröge
6b53562495 Update Cargo.lock 2023-03-14 14:05:03 +02:00
Sebastian Dröge
9fab2744ab Update CHANGELOG.md for 0.10.4 2023-03-14 14:04:08 +02:00
Sebastian Dröge
751a4c7597 Update versions to 0.10.4 2023-03-14 14:01:04 +02:00
Sebastian Dröge
821cccdb16 Update Cargo.lock
Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-rs/-/merge_requests/1129>
2023-03-14 13:36:15 +02:00
Josef Kolář
1015439b01 fmp4mux: fix hls_live example
Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-rs/-/merge_requests/1129>
2023-03-14 13:36:15 +02:00
Thibault Saunier
3c650a9544 meson: Handle features detection for gst version in a script
Instead of having a big list of features in the meson.build file, we
reuse the information from the Cargo.toml files

This refactors the dependencies to handle that new use case

There were issue in previous handling and only activating the `webrtc`
plugin was failing because the list of features incorrect.

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

Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-rs/-/merge_requests/1129>
2023-03-14 13:36:15 +02:00
Sebastian Dröge
76739f23c5 deny: Update
Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-rs/-/merge_requests/1129>
2023-03-14 13:36:15 +02:00
Arun Raghavan
fb79f30393 fmp4: Return a running time in get_next_time()
We were currently returning a value based on the next chunk PTS, but the
expectation in GstAggregator is that we return a running time. This
resulted in spurious wakeups and warnings like:

0:00:01.501685123 1552995 0x55899715c1e0 WARN                 fmp4mux mux/fmp4/src/fmp4mux/imp.rs:1818:gstfmp4::fmp4mux:👿:FMP4Mux::drain_buffers:<fmp4mux0:sink_1> Don't have a complete GOP for the first stream on timeout in a live pipeline

Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-rs/-/merge_requests/1129>
2023-03-14 13:36:15 +02:00
Sebastian Dröge
8c7fbdfb19 ci: Update to cargo-c 0.9.15
Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-rs/-/merge_requests/1129>
2023-03-10 17:31:56 +01:00
Sebastian Dröge
8eb5d9a441 ci: Update to dav1d 1.1
Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-rs/-/merge_requests/1129>
2023-03-10 17:31:56 +01:00
Jordan Petridis
5f3515232a ci: Update debian jobs to bookworm
Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-rs/-/merge_requests/1129>
2023-03-10 16:48:32 +01:00
Sebastian Dröge
48d908afc0 ci: Update image version
Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-rs/-/merge_requests/1129>
2023-03-10 16:48:32 +01:00
Sebastian Dröge
8eaa0c6ed1 Fix indentation broken by cargo clippy --fix
... and another clippy warning.

Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-rs/-/merge_requests/1129>
2023-03-10 16:48:32 +01:00
Sebastian Dröge
adfa99946e Fix a couple of new clippy warnings
Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-rs/-/merge_requests/1129>
2023-03-10 16:48:32 +01:00
Sebastian Dröge
3a394e0118 Fix a few new clippy warnings
Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-rs/-/merge_requests/1129>
2023-03-10 16:48:32 +01:00
Talha Khan
9a3f86f497 livesync: Support variable framerate in fallback buffer duration calc
Avoids a divide by zero error

Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-rs/-/merge_requests/1129>
2023-03-10 15:36:07 +01:00