The adoption of WebRTC in the broadcasting/streaming industry has been hindered due to lack of standard signalling that can be a simple plug and play model. With introduction of WHIP and WHEP specifications that is changing and the acceptance of WHIP/WHEP is evident with all major multimedia open source software implementing them.
GStreamer already had the client side implementations WHIP/WHEP (whipsink and whepsrc) as of release 1.22 written in Rust. And the server side implementations are in progress.
With WebRTCSink and WebRTCSrc written to support any signalling protocol as an interface separating from the sink/src functionality, it has become easy to write all the client and server side implementations of WHIP/WHEP on top of WebRTCSink/Src. This also helps to leverage the support of both raw and encoded streams, the congestion control mechanism and every other new improvement that will be added in WebRTCSink/Src in the future.
My talk is going to be an introduction on WHIP/WHEP protocols and the initial version of elements implemented in GStreamer using Rust and how they are evolving using the Signaller based design in the GStreamer WebRTC Rust plugins.
|Speaker bio||Writing multimedia applications and low level software at Asymptotic Inc. Open source enthusiast. Loves traveling and food|