Mathieu Duponchelle
1a8abde884
webrtcsink: fix panic on pre-bwe request error
...
We dispose of consumer pipelines asynchronously, potentially after the
session objects have been disposed of.
As session objects are the owner of the cc element, it is entirely
possible for the bwe-request signal to get emitted after cc has been
disposed of, as the closure only takes a weak reference to it.
Fix by simply checking if cc is None
Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-rs/-/merge_requests/1044 >
2023-01-11 15:09:45 +00:00
Sebastian Dröge
be72fefb18
reqwest: Update for API changes
2023-01-06 12:52:30 +02:00
Sebastian Dröge
781fd1df9a
aws: Update to test-with 0.9
...
Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-rs/-/merge_requests/1035 >
2023-01-05 12:35:42 +02:00
Sebastian Dröge
27435ad82e
Update for API changes
2023-01-05 12:33:54 +02:00
rajneeshksoni
d846f527af
awss3hlssink: Add stats property.
...
application can monitor the progress of hls segment generation
and upload progress.
Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-rs/-/merge_requests/1022 >
2023-01-04 12:36:13 +00:00
Philippe Normand
0fd63ece7d
rtpav1depay: Implement srcpad set_caps
...
Without this auto-pluggers such as decodebin or parsebin will be unable to
process AV1 RTP payloads.
Tested with: `videotestsrc num-buffers=50 ! videoconvert ! av1enc ! av1parse ! rtpav1pay ! queue ! decodebin3 ! videoconvert ! queue ! autovideosink`
Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-rs/-/merge_requests/1034 >
2023-01-03 19:35:45 +02:00
Zhao, Gang
9fa838e366
webrtc: Fix rustfmt errors
...
Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-rs/-/merge_requests/1019 >
2022-12-27 11:12:54 +02:00
Zhao, Gang
877a9bd7f3
webrtc: Share runtime between webrtcsink and signaller crates
...
Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-rs/-/merge_requests/1019 >
2022-12-26 23:10:40 +00:00
Zhao, Gang
1ffeb4d44d
webrtc: Move from async-std to tokio
...
Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-rs/-/merge_requests/1019 >
2022-12-26 23:10:40 +00:00
Zhao, Gang
2bc29c1fd3
webrtc: examples: Update package-lock.json
...
Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-rs/-/merge_requests/1019 >
2022-12-26 23:10:40 +00:00
Sebastian Dröge
4e444a066c
aws: Update to AWS SDK 0.52/0.22
...
Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-rs/-/merge_requests/1020 >
2022-12-18 07:54:30 +00:00
Mathieu Duponchelle
e5360ff431
webrtc/README: update command to run the signalling server
...
Fixes https://gitlab.freedesktop.org/gstreamer/gst-plugins-rs/-/issues/277
Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-rs/-/merge_requests/1012 >
2022-12-13 12:47:26 +01:00
Sebastian Dröge
3f904553ea
Fix various new clippy warnings
...
Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-rs/-/merge_requests/1011 >
2022-12-13 11:43:16 +02:00
Sebastian Dröge
289e8a08c3
webrtchttp: Remove unnecessary clippy warning override
...
Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-rs/-/merge_requests/1009 >
2022-12-12 14:32:12 +02:00
Sebastian Dröge
fb42cd8a0f
net: Update to async-tungstenite 0.19
...
Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-rs/-/merge_requests/1005 >
2022-12-11 12:54:24 +02:00
Sebastian Dröge
9b964db4c9
whipsink: Handle offer creation errors more gracefully
...
Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-rs/-/merge_requests/949 >
2022-12-05 12:15:55 +02:00
Sebastian Dröge
8452cd9efa
webrtchttp: Fix missing import for docs build
...
Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-rs/-/merge_requests/949 >
2022-12-05 12:10:53 +02:00
Sebastian Dröge
9c31344bbc
webrtchttp: Don't use let-else for now
...
We still support Rust 1.63.
Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-rs/-/merge_requests/949 >
2022-12-05 12:08:57 +02:00
Sebastian Dröge
5dc52975ff
webrtchttp: Fix formatting
...
Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-rs/-/merge_requests/949 >
2022-12-05 12:07:09 +02:00
Sanchayan Maity
40680a47ab
webrtchttp: Use tokio runtime for spawning thread used for candidate offer
...
While at it, we had a bug in whepsrc where for redirect we were
incorrectly calling initial_post_request instead of do_post. Fix
that.
Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-rs/-/merge_requests/949 >
2022-12-05 12:27:07 +05:30
Sanchayan Maity
d18761892e
webrtchttp: Use a proper Rust type name for ICE transport policy
...
We don't need to namespace here but can just use the Rust namespaces.
Only the GType name has to stay like it is.
Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-rs/-/merge_requests/949 >
2022-12-05 11:04:45 +05:30
Sanchayan Maity
2eba3b321e
webrtchttp: Do not import element_imp_error
...
element_imp_error and such macros should not be imported but rather
only be accessed via gst namespace.
Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-rs/-/merge_requests/949 >
2022-12-05 11:04:45 +05:30
Sanchayan Maity
0b1b8b91b9
webrtchttp: Do not block webrtcbin signal handlers for sending candidates
...
While at it, drop the OPTIONS request in WHIP sink. This was not really
required. See section 4.4 of the spec
https://www.ietf.org/archive/id/draft-ietf-wish-whip-01.html#name-stun-turn-server-configurat
Also introduce a new error type and distinguish between a future being
aborted or returning an error.
We call abort only during shutdown and hence except for the DELETE
resource request being aborted, other waits on future should not
be fatal.
Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-rs/-/merge_requests/949 >
2022-12-05 11:04:45 +05:30
Alba Mendez
db39370701
webrtchttp: whipsink: construct TURN URL correctly
...
Right now the code manually pieces together the components
in a String for efficiency. When credentials contain special
characters this can result in invalid URLs, so do it the proper
way (with Url::parse + format) to make sure components are escaped
as needed.
Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-rs/-/merge_requests/949 >
2022-12-05 11:04:45 +05:30
Sanchayan Maity
9fb058d5bc
webrtchttp: Drop unused dependencies
...
Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-rs/-/merge_requests/949 >
2022-12-05 11:04:45 +05:30
Sanchayan Maity
b5daa92c9d
webrtchttp: Implement timeout for waiting on futures
...
Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-rs/-/merge_requests/949 >
2022-12-05 11:04:45 +05:30
Sanchayan Maity
cc7419308b
webrtchttp: whipsink: Add candidates when sending the offer
...
WHIP endpoint providers like Cloudflare do not support Trickle ICE
and need candidates to be send along with the initial offer. Instead
of sending the offer in create-offer promise, send it once the ICE
candidates have been gathered.
While at it add properties to set STUN and TURN server along with the
ICE transport policy as at least when testing the Cloudflare WHIP
endpoint seems unreachable without it. This has also been observed
with Cloudflare provided demos.
Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-rs/-/merge_requests/949 >
2022-12-05 11:04:45 +05:30
Sanchayan Maity
b992596236
webrtchttp: whipsink: Miscellaneous clean up
...
Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-rs/-/merge_requests/949 >
2022-12-05 11:04:45 +05:30
Sanchayan Maity
b427cb6a3d
webrtchttp: Factor out the common bits for WHIP and WHEP
...
Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-rs/-/merge_requests/949 >
2022-12-05 11:04:45 +05:30
Sanchayan Maity
6be5796888
Add a WebRTC WHEP source element
...
This implements WHEP specification based on
https://datatracker.ietf.org/doc/html/draft-murillo-whep-00
and has been tested with Cloudflare.
Server offers are likely to be removed from the WHEP specification
in upcoming revisions, to avoid compatibility issues. None of the
commercial services implementing WHEP support server initiated offers.
So we only support client side initiated offers.
Follows session setup and tear down as covered in Figure 1, Section 3
of the specification.
Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-rs/-/merge_requests/949 >
2022-12-05 11:04:45 +05:30
Raphael Dürscheid
aa2abc50bf
webrtcsink: Support nvv4l2vp9enc
...
Naive support for nvv4l2vp9enc by assuming configuration is equivalent
to existing nvv4l2vp8enc. Validated to have relevant properties.
Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-rs/-/merge_requests/983 >
2022-12-02 10:18:27 +00:00
Jordan Petridis
821c23e202
net/ndi: fix build with --no-default-features
...
doc_show_default() is only available with gst/v1_18
Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-rs/-/merge_requests/588 >
2022-11-29 21:06:12 +02:00
Vivia Nikolaidou
5bbe0eab25
ndisrc: Use actual number of channels in positions_from_mask
...
Otherwise it fails for mono and stereo
Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-rs/-/merge_requests/991 >
2022-11-29 12:19:45 +02:00
Vivia Nikolaidou
73ce616bd9
ndisrc: Use default channel mask for audio output
...
Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-rs/-/merge_requests/988 >
2022-11-28 17:06:07 +02:00
Sebastian Dröge
fceacf7081
Update for gst::Array / gst::List API improvements
...
Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-rs/-/merge_requests/985 >
2022-11-27 01:12:46 +02:00
Sebastian Dröge
0e2a00cbc8
aws: Update to env_logger 0.10 for the tests
...
Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-rs/-/merge_requests/984 >
2022-11-25 11:08:19 +02:00
Sebastian Dröge
456fb276d6
Revert "Update for pango API changes"
...
This reverts commit 6e54d3cea9
.
The change was wrong and the pango bindings work the same as before
again.
2022-11-18 10:58:41 +02:00
Sebastian Dröge
6e54d3cea9
Update for pango API changes
...
pango::Language::from_string() can fail and also can accept None as
argument.
2022-11-18 09:46:50 +02:00
Thibault Saunier
6b11284e8a
webrtcsink: Make the turn-server prop a turn-servers
list
...
So that we can simply specify several turn servers at once
Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-rs/-/merge_requests/973 >
2022-11-16 14:48:16 +00:00
Arun Raghavan
3abd13e57b
aws: s3sink: Treat stopping without EOS as an error for multipart upload
...
This allows us to try to clean up based on configuration (abort /
complete / do nothing) if the pipeline is shut down without an EOS.
Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-rs/-/merge_requests/970 >
2022-11-15 02:28:35 +00:00
Guillaume Desmottes
37cb636140
webrtc: README: fix couple of links
...
Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-rs/-/merge_requests/975 >
2022-11-11 14:51:46 +01:00
Mathieu Duponchelle
66e7b314f7
webrtcsink: improve debug
...
Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-rs/-/merge_requests/972 >
2022-11-10 15:00:19 +00:00
Sebastian Dröge
a5f3197651
Add missing doc
features to WebRTC plugins
2022-11-07 18:06:29 +00:00
Jan Beich
9aeaac5a96
ndi: provide Unix fallback after 3fe9e4a207
...
error[E0425]: cannot find value `LIBRARY_NAME` in this scope
--> net/ndi/src/ndisys.rs:336:23
|
336 | path.push(LIBRARY_NAME);
| ^^^^^^^^^^^^ not found in this scope
error[E0425]: cannot find value `LIBRARY_NAME` in this scope
--> net/ndi/src/ndisys.rs:339:33
|
339 | path::PathBuf::from(LIBRARY_NAME)
| ^^^^^^^^^^^^ not found in this scope
2022-11-05 02:51:28 +00:00
Arun Raghavan
54c84a7211
aws: Skip s3 test on Windows until we figure out why it times out
2022-11-02 13:14:08 -04:00
Sebastian Dröge
a8250abbf1
Fix various new clippy warnings
2022-11-01 10:27:48 +02:00
Sebastian Dröge
976ae5707e
webrtc: Update to human_bytes 0.4
2022-10-31 14:11:29 +02:00
Sebastian Dröge
6ceeadc0f0
aws: Update to aws 0.21/0.51
2022-10-31 14:11:29 +02:00
Sebastian Dröge
ce166b4d8f
whipsink: Add object to debug logs
2022-10-26 16:20:26 +03:00
Guillaume Desmottes
d46857d3b1
aws: fix title in README
...
The title was not matching the actual plugin name which was confusing.
2022-10-26 11:13:47 +02:00