In den Code von OBS Studio, einem Paket für Streaming, Compositing und Videoaufzeichnung, wurden Änderungen zur Implementierung von WebRTC-Support aufgenommen. Diese Technologie kann anstelle des RTMP-Protokolls für das Streaming von Video ohne einen Zwischenserver verwendet werden, bei dem der Inhalt im P2P-Modus direkt an den Browser des Benutzers übertragen wird.
Die Implementierung von WebRTC basiert auf der Verwendung der Bibliothek libdatachannel, die in C++ geschrieben ist. Derzeit wird nur das Broadcasting (Videoausgabe) über WebRTC unterstützt, und es wird ein Dienst bereitgestellt, der den WHIP-Prozess unterstützt, der für die Herstellung von Sitzungen zwischen dem WebRTC-Server und dem -Client verwendet wird. Der Code zur Unterstützung von WebRTC als Quelle befindet sich derzeit noch in der Evaluierungsphase.
WebRTC ermöglicht es, die Verzögerung bei der Videolieferung auf Bruchteile von Sekunden zu reduzieren, was die Erstellung interaktiver Inhalte und die Echtzeit-Interaktion mit dem Publikum, wie beispielsweise bei Talkshows, erlaubt. Mit WebRTC kann man nahtlos zwischen Netzwerken wechseln, ohne die Übertragung zu unterbrechen (zum Beispiel von WLAN auf das Mobilfunknetz wechseln) und mehrere Video-Streams innerhalb einer Sitzung übertragen, etwa um aus verschiedenen Perspektiven zu filmen oder interaktive Videos zu organisieren.
WebRTC erlaubt auch das Hochladen mehrerer Versionen von bereits kodierten Streams mit unterschiedlichen Qualitätsstufen für Nutzer mit verschiedenen Bandbreiten, um das Re-Encoding auf der Client-Seite zu vermeiden. ServerEs können verschiedene Video-Codec verwendet werden, wie H.265 und AV1, um die Anforderungen an die Bandbreite zu senken. Als Referenzimplementierung für Server-basierte Übertragungen mit WebRTC wird die Broadcast Box vorgeschlagen, jedoch kann man für die Übertragung an ein kleines Publikum auch ohne Server auskommen, indem man den P2P-Modus einrichtet.
Quelle: opennet.ru
