Was ist WebRTC?

WebRTC (Web Real Time Communications) ist ein Standard, der Echtzeit-Peer-to-Peer-Kommunikation und den Austausch von Mediendaten in Browsern ermöglicht, ohne zusätzliche Anwendungen oder Add-ons herunterladen und installieren zu müssen. Dank WebRTC kann jeder Browser als Videokonferenz-Endpunkt fungieren: Sie müssen nur Ihre Meeting-Webseite öffnen, um mit der Videokonferenz zu beginnen. Dieser Artikel beschreibt WebRTC, seine beliebten Anwendungsfälle sowie die Vorteile und Nachteile dieser Technologie.

In diesem Artikel werden wir einige der Merkmale der Nutzung von WebRTC aufdecken und die Vor- und Nachteile dieser Technologie betrachten.

Inhalt

Wie WebRTC funktioniert

Lassen Sie uns sehen, wie die WebRTC-Technologie funktioniert, indem wir einen browserbasierten Peer-to-Peer-Anruf als Beispiel verwenden:

Wie WebRTC funktioniertWie WebRTC funktioniertWie WebRTC funktioniert

Vorteile

  • Keine Softwareinstallation erforderlich.
  • Hochwertige Kommunikation dank:
    • Moderne Video- und Audio-Codecs
    • Automatische Qualitätsanpassung
    • Eingebettete Echo- und Rauschunterdrückung
    • Automatische Verstärkungsregelung (AGC).
  • Starker Sicherheitsfokus: Alle Verbindungen sind gemäß den DTLS- und SRTP-Protokollen geschützt und verschlüsselt. Gleichzeitig arbeitet WebRTC nur über das HTTPS-Protokoll, während eine Website, die diese Technologie verwendet, ein signiertes Zertifikat haben sollte.
  • SVC-Unterstützung wurde im Rahmen der VP9- und AV1-Codec-Implementierung hinzugefügt. Obwohl Browser SVC noch nicht unterstützen, aktiviert TrueConf SVC in Browser-Clients.
  • Funktion für natives Desktop-Sharing.
  • Steuerungsschnittstellen basierend auf HTML5 und JavaScript.
  • Open-Source-Projekt, das in Ihr Produkt oder Ihre Dienstleistung eingebettet werden kann.
  • Plattformübergreifend: Die WebRTC-Anwendung funktioniert gleichermaßen gut mit jedem Betriebssystem—ob Desktop oder mobil—wenn ein Browser WebRTC unterstützt. Dies spart erheblich Ressourcen bei der Softwareentwicklung.

Nachteile

  • WebRTC-Lösungen sind nicht miteinander kompatibel, da der Standard nur die Methoden zur Übertragung von Video- und Audiodaten beschreibt und es den Entwicklern ermöglicht, über Adressierungsmethoden, Statusverfolgungsoptionen, Nachrichten- und Dateiaustausch, Planung usw. zu entscheiden. Mit anderen Worten, man kann keine Anrufe von einer WebRTC-Anwendung zu einer anderen tätigen.
  • Sicherheitsbewusste Nutzer werden enttäuscht sein zu erfahren, dass WebRTC ihre echten IP-Adressen erkennt. Gleichzeitig werden weder ein Proxy noch das Tor-Netzwerk helfen, anonym zu bleiben. Sie können Ihre IP-Adresse mit verschiedenen VPN-Diensten und dem TURN-Server verbergen. Falls erforderlich, kann WebRTC deaktiviert werden.
  • WebRTC unterstützt keine Fernsteuerung des Desktops. Natürlich können Sie das, was auf dem Bildschirm Ihres Geräts passiert, streamen, aber es handelt sich um einen einseitigen Videostream wie ein von einer Kamera übertragenes Bild, während es keine Möglichkeit gibt, mit der Streamquelle zu interagieren. Dies geschieht aus Sicherheitsgründen: Javascript-Code kann nichts außerhalb seines aktuellen Browserfensters steuern. Sie können mehr Funktionen einschließlich der Fernsteuerung des Desktops erhalten, indem Sie von Videokonferenz-Anbietern angepasste Client-Anwendungen verwenden.

WebRTC auf Mobilgeräten

WebRTC auf Mobilgeräten

WebRTC-Codecs

WebRTC-Codecs können in obligatorische (es ist erforderlich, dass die Browser, die diese Technologie implementieren, diese Codecs unterstützen) und optionale (nicht standardisierte, obwohl einige Browser sie unterstützen) unterteilt werden.

Audio-Codecs

Um Audioverkehr zu komprimieren, verwendet WebRTC obligatorische (Opus und G.711) und optionale Codecs (G.722, iLBC, iSAC).

Opus ist ein Audio-Codec mit niedriger Latenz (2,5 ms bis 60 ms), unterstützt variable Bitraten und hohe Kompression, was ihn ideal für das Streaming von Audio in Netzwerken mit variabler Bandbreite macht. Opus ist der primäre Audio-Codec für WebRTC. Es ist eine hybride Lösung, die die besten Eigenschaften der SILK- (Sprachkompression und Verbesserung der menschlichen Sprache) und CELT- (Audiocodierung) Codecs kombiniert. Der Codec ist offen und völlig lizenzfrei. Zweifellos übertrifft Opus andere Audio-Codecs in vielerlei Hinsicht. In Bezug auf die Anzahl der Parameter übertrifft er recht populäre Codecs mit niedriger Bitrate, wie MP3, Vorbis und AAC LC. Im Vergleich zu AMR-WB und Speex stellt Opus die Audio-Struktur wieder her, die der Originalstruktur am nächsten kommt.

G.711 ist ein traditioneller Sprachcodec mit hoher Bitrate (64 kbps), der für den Einsatz in herkömmlichen VoIP-Systemen entwickelt wurde. Der Hauptvorteil ist die minimale Rechnerbelastung dank der leichten Kompressionsalgorithmen. Der Codec hat ein niedriges Kompressionsniveau für Audiosignale und erhöht die Audioverzögerung in der Kommunikation zwischen Benutzern nicht.

G.711 wird von vielen Geräten unterstützt. Systeme, die diesen Codec nutzen, sind einfacher zu bedienen als solche, die auf anderen Audiocodecs basieren, wie G.723, G.726, G.728 usw. In Bezug auf die Qualität erzielte G.711 in MOS-Tests eine Bewertung von 4,2 (eine Bewertung von 4–5 ist die höchste und bedeutet gute Qualität, ähnlich der Sprachverkehrsqualität in ISDN und sogar höher).

Da es lizenzfrei ist, ist G.722 ein ITU-T-Standard, der 1988 angenommen wurde. Es kann bei 48, 56 und 64 kbps betrieben werden und bietet eine Audioqualität, die der von G.711 entspricht. Ähnlich wie G.711 ist es veraltet, wird aber immer noch von Chrome, Safari und Firefox unterstützt.

iLBC (internet Low Bitrate Codec) ist ein quelloffener Schmalband-Sprachcodec, der von Chrome und Safari unterstützt wird. Aufgrund der hohen Stream-Komprimierung erhöht dieser Codec die CPU-Auslastung.

iSAC (internet Speech Audio Codec) ist ein ehemals proprietärer Breitband-Sprachcodec, der jetzt Teil des WebRTC-Projekts ist. Er ist jedoch nicht verpflichtend, wird aber von Chrome und Safari unterstützt. Im Fall von WebRTC verwendet er eine adaptive Bitrate von 10 bis 52 kbps mit einer Abtastrate von 32 kHz.

Audio- und Videocodecs

Videocodecs

Welchen Videocodec soll man für WebRTC wählen? Entwickler mussten mehrere Jahre darüber nachdenken, und die Antwort lautet VP8 und H.264. Es gibt auch optionale Videocodecs (H.265, VP9 und AV1).

VP8 ist ein gebührenfreier offener Videocodec mit hoher Videodekodierungsgeschwindigkeit und verbesserter Bildverlustresistenz. Der Codec ist multifunktional: Er lässt sich leicht in Hardwareplattformen integrieren, weshalb Videokonferenzanbieter ihn oft in ihren Produkten verwenden. Er ist kompatibel mit Chrome, Edge, Firefox und Safari (12.1+).

Der kostenpflichtige Videocodec H.264 wurde viel früher bekannt als sein Gegenstück. Dieser Codec bietet ein hohes Kompressionsverhältnis für Videostreams bei gleichzeitiger Beibehaltung hoher Videoqualität. Weit verbreitet in Hardware-Videokonferenzsystemen, ist er perfekt für WebRTC. Er ist kompatibel mit Chrome (52+), Edge, Firefox (wird in Versionen 68+ für Android nicht mehr unterstützt) und Safari.

VP9 ist ein offener und lizenzfreier Videokompressionsstandard, der 2012 von Google entwickelt wurde. Innerhalb von AV1It weiterentwickelt, basiert er auf den Ideen von VP8. Dieser Codec ist mit Chrome (48+) und Firefox kompatibel.

H.265 ist ein kostenpflichtiger Videocodec, der als Nachfolger von H.264 angesehen wird und die gleiche visuelle Qualität bei halber Bitrate bietet. Dies ist dank effizienterer Kompressionsalgorithmen möglich. Dieser Codec konkurriert derzeit mit dem lizenzfreien AV1.

AV1 ist ein Open-Source-Videokompressionscodec, der speziell für die Videoübertragung über das Internet entwickelt wurde. Er wird von Chrome (70+) und Firefox (67+) unterstützt.

WebRTC-Aspekte

WebRTC-Verbindung

Je nach Ihrer WebRTC-Implementierung kann es bestimmte Unterschiede in den kompatiblen Browserversionen geben. Erfahren Sie mehr über die von TrueConf unterstützten Desktop- und mobilen Browser hier.

Wenn Sie neugierig sind, wie sich die WebRTC-Technologie entwickeln wird, empfehlen wir Ihnen, die offizielle Webseite, die Webseite des WebRTC-Projekts und das Repository zu besuchen.

WebRTC- und Videokonferenzmarkt

Beliebtheit der Technologie

Heute ist WebRTC das zweitbeliebteste Video-Protokoll nach dem proprietären von Zoom. WebRTC überholt alle anderen Standard- (H.323 und SIP) und proprietären (Microsoft Teams und Cisco Webex) Protokolle.

Ein Anstieg bei Videokonferenz-Endpunkten

Die WebRTC-Technologie hat einen tiefgreifenden Einfluss auf den Markt für Videokonferenzen gehabt. Mit der Veröffentlichung der ersten Browser mit WebRTC im Jahr 2013 hat sich die potenzielle Anzahl der Videokonferenz-Endpunkte weltweit um 1 Milliarde Geräte erhöht. Tatsächlich ist jeder Browser jetzt ein Videokonferenz-Endpunkt mit grundlegenden Funktionen.

Maßgeschneiderte Lösungen

Verschiedene JavaScript-Bibliotheken und Cloud-APIs mit WebRTC-Unterstützung ermöglichen es Ihnen, Videounterstützung zu jedem Webprojekt hinzuzufügen. Früher erforderte die Übertragung von Daten in Echtzeit fortgeschrittene Programmierkenntnisse und zusätzliche Lizenzen, was zu höheren Kosten führte. Heute wird WebRTC häufig verwendet, um kontaktzentrierte Zentren mit Video zu organisieren, Webinare abzuhalten usw.

WebRTC vs Flash

WebRTC und HTML5 waren ein Todesstoß für Flash, das bereits schwere Zeiten durchmachte. Seit 2017 haben die führenden Browser die Unterstützung für Flash offiziell eingestellt, wodurch diese Technologie vollständig vom Markt verschwinden musste.

WebRTC-Anwendungsfälle

TrueConf Server

TrueConf Server ist ein selbstgehostetes, SVC-basiertes Videokonferenzsystem, das sowohl in LAN/VPN als auch über das Internet betrieben wird. Der Webinar-Server wird in den Räumlichkeiten Ihres Unternehmens bereitgestellt, wodurch der Zugriff Dritter auf Ihre persönlichen Daten eingeschränkt wird. TrueConf könnte eine gute Lösung für virtuelle Eventübertragungen, Fernunterricht und Remote-Arbeit sein, dank der 4K-Videoauflösung und einer Reihe von Kollaborationstools.

Google Meet

Google Meet ist ein Instant-Messaging-, Audio- und Video-Kommunikationsdienst, der 2017 von Google gestartet wurde. Auf Chromium basierende Browser (Google Chrome usw.) nutzen viele versteckte WebRTC-Funktionen, die in den technischen Spezifikationen nicht beschrieben sind. Neue WebRTC-Versionen werden in der Regel in Google Meet integriert (wie bei seinem Vorgänger, Google Hangouts), z.B. Bildschirmaufnahme, verschwommener Hintergrund und Hardware-Verschlüsselung für einige Plattformen.

Jitsi Meet

Jitsi Meet ist eine Open-Source-Anwendung, die von 8x8 veröffentlicht wurde. Die Jitsi-Technologie basiert auf der Simulcast-Architektur, was bedeutet, dass der Dienst bei niedriger Bandbreite möglicherweise instabil arbeitet und eine Hochgeschwindigkeits-Internetverbindung auf der Serverseite erfordert. Jitsi unterstützt nur browserbasierte Konferenzen und bietet keine vollwertigen Videokonferenzanwendungen. Mit Jitsi ist es möglich, bis zu 75 Teilnehmer in einem Meeting zu beherbergen (bis zu 35 für ein hochwertiges Erlebnis). Jitsi ist jedoch keine fertige Lösung, daher benötigen Sie fortgeschrittene Programmierkenntnisse, um Jitsi in einer Unternehmensumgebung voll nutzen zu können.

BigBlueButton

BigBlueButton ist eine kostenlos nutzbare Videokonferenzsoftware mit starkem Fokus auf Bildung. BigBlueButton unterstützt Videokonferenzen mit bis zu 100 Teilnehmern und bietet viele Funktionen, die für das Fernlernen unerlässlich sind, z. B. interaktives Whiteboard, Inhaltsfreigabe, Umfragen, Gruppenräume und mehr.

Was ist mit Zoom WebRTC?

Entgegen der landläufigen Meinung verwendet Zoom keine WebRTC-Technologie, um Mediendaten zu übertragen und zu dekodieren, um Serverressourcen zu sparen. Auf der Browserseite nutzt Zoom andere Webtechnologien wie WebAssembly und WebSocket. Nicht standardisierte Ansätze zur Übertragung von Videostreams können zu niedriger Audio- und Videoqualität sowie zu Verbindungsproblemen führen.

Stellen Sie Ihren eigenen Webinar-Server in 15 Minuten bereit!