François Laignel
2b6a908911
net/webrtc: sink: add signal "request-encoded-filter"
...
The new "request-encoded-filter" signal is emitted when the encoder and related
elements are added to the pipeline. When defined, the element returned by the
signal is inserted between the encoder and the payloader.
The transformation can be reverted using the [insertable streams API] on the
receiver side.
[insertable streams API]: https://developer.mozilla.org/en-US/docs/Web/API/Insertable_Streams_for_MediaStreamTrack_API
Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-rs/-/merge_requests/1176 >
2023-05-02 15:22:43 +02:00
François Laignel
0e6b9df932
net/webrtc: sink: abort stats collection before stopping the Signaller
...
In some rare cases, the webrtc-test entered a deadlock while executing
`WebRTCSink::unprepare`. Attaching gdb to a blocked instance showed:
* `gstrswebrtc::signaller:👿 :Signaller::stop()` parked, waiting for a
`Condvar` in `Signaller::stop()`. This was most likely awaiting for the
receive task to complete while it was locked in `element.end_session()`.
This code path is triggered from `unprepare` with the `State` `Mutex` locked.
* `webrtcsink:👿 :WebRtcSink::process_stats` waiting for a contended `Mutex`,
which is also the `State` `Mutex`. This prevented completion of the signal
`gst_webrtc_bin_get_stats`.
This commit aborts the task in charge of periodically collecting stats and
ensures any remaining iteration completes before requesting the Signaller to
stop.
Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-rs/-/merge_requests/1176 >
2023-05-02 15:22:43 +02:00
François Laignel
2cb1fd7fc1
net/webrtc: src: don't set stun-server on webrtcbin when our property is None
...
... otherwise an error occurs about the stun-server address being an empty
string which doesn't comply with the expected address format.
Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-rs/-/merge_requests/1176 >
2023-04-30 13:04:26 +02:00
Sebastian Dröge
b27d4c2550
ci: Follow 0.20 branch of the gstreamer-rs repo for the CI template
...
Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-rs/-/merge_requests/1189 >
2023-04-22 12:31:24 +03:00
Sebastian Dröge
96f355ba96
Update Cargo.lock
...
Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-rs/-/merge_requests/1189 >
2023-04-22 12:18:44 +03:00
Lily Foster
7a0f6272ce
meson: support rust cross-compiling with cargo wrapper
...
Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-rs/-/merge_requests/1189 >
2023-04-22 12:18:44 +03:00
Sebastian Dröge
d7ec86defe
deny: Update
...
Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-rs/-/merge_requests/1189 >
2023-04-22 12:18:44 +03:00
Sebastian Dröge
a29769789f
Update async-tungstenite and AWS SDK dependencies
...
Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-rs/-/merge_requests/1189 >
2023-04-22 12:18:44 +03:00
Sebastian Dröge
1db07fe451
aws: Update to AWS SDK 0.55/0.25
...
Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-rs/-/merge_requests/1189 >
2023-04-22 12:18:44 +03:00
John King
0c83f82b7f
spotify: fix credentials cache
...
Cache Spotify response instead of username and password.
This should resolve frequent "New login to Spotify" emails.
Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-rs/-/merge_requests/1189 >
2023-04-22 12:18:44 +03:00
Guillaume Desmottes
1daac1e301
spotify: move Settings to common module
...
Will be used to implement the lyrics source element.
Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-rs/-/merge_requests/1189 >
2023-04-22 12:18:44 +03:00
Guillaume Desmottes
60e89fd46d
spotifyaudiosrc: use Settings Default to define default props
...
Makes it easier to change one property's default value.
Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-rs/-/merge_requests/1189 >
2023-04-22 12:18:44 +03:00
Sebastian Dröge
5c580709ee
Fix a couple of new Rust 1.69 clippy warnings
...
Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-rs/-/merge_requests/1189 >
2023-04-22 12:18:44 +03:00
Lily Foster
b98aa4e17c
meson: avoid passing the --features flag to wrapper when empty
...
Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-rs/-/merge_requests/1189 >
2023-04-22 11:56:44 +03:00
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