23 Punkte von GN⁺ 2024-09-05 | 2 Kommentare | Auf WhatsApp teilen
  • Broadcast Box ist ein Tool, das Broadcasting mit extrem niedriger Latenz ermöglicht
  • Es wurde so entwickelt, dass es einfach zu verwenden und leicht anzupassen ist. Es wurde entwickelt, um moderne Broadcasting-Technologien zu demonstrieren
  • Vorteile der Nutzung von WebRTC
    • Extrem niedrige Latenz: Statt RTMP und HLS wird WebRTC für Streaming und Wiedergabe verwendet
    • Moderne Video-Codecs können genutzt werden. Mit dem AV1-Codec lässt sich die gleiche Videoqualität mit 50 % weniger Bandbreite übertragen
    • Mehrere Videostreams können innerhalb derselben Sitzung hochgeladen werden. So kann aus mehreren Kamerawinkeln gestreamt oder interaktive Videoerlebnisse in Echtzeit geteilt werden
    • Für eine gute User Experience ist Transcoding erforderlich. Mit WebRTC können Nutzer dasselbe Video in verschiedenen Qualitätsstufen hochladen, was die Betriebskosten des Servers senken kann
    • Über WebRTC kann jeder zum Broadcaster werden. Mit Broadcast Box kann Broadcasting-Software wie OBS verwendet werden. Da direkt im Browser mit dem Streaming begonnen werden kann, können auch Einsteiger leicht mit dem Livestreaming starten
    • Peer-to-Peer, wenn nötig: Mit Broadcast Box können Videos ohne öffentliche IP oder Port-Forwarding bereitgestellt werden. Dank der P2P-Technologie von WebRTC können Videos auch ohne dedizierten Server gestreamt und wiedergegeben werden
  • Verwendung
    • Broadcast Box kann direkt auf dem gehosteten b.siobud.com genutzt werden, ohne es lokal ausführen zu müssen
    • Für die lokale Ausführung siehe den Abschnitt Getting Started

Zusammenfassung von GN⁺

  • Broadcast Box ist ein Tool für Streaming mit extrem niedriger Latenz, das mit WebRTC eine schnelle und effiziente Streaming-Erfahrung bietet
  • Es wurde so konzipiert, dass es auch für Einsteiger leicht nutzbar ist, und lässt sich flexibel in verschiedenen Umgebungen einsetzen
  • Es greift die neuesten Trends der Broadcasting-Technologie auf und dürfte für alle nützlich sein, die sich für die Branche interessieren
  • Projekte mit ähnlichen Funktionen sind unter anderem OBS und GStreamer.

2 Kommentare

 
roxie 2024-09-09

Das ist wirklich ein stabiler Stream mit weniger als 3 Sekunden Latenz. Der WebRTC-Boom wird kommen..

 
GN⁺ 2024-09-05
Hacker-News-Kommentare
  • Habe Broadcast Box zu einem Testserver für OBS gemacht

    • Das Testen des WebRTC/WHIP-PR wurde einfacher
    • Als Leute es nutzten, wurden die Vorteile und der Reiz deutlicher
  • Niedrige Latenz bedeutet die Beziehung zu den Zuschauern

    • Intime Übertragungen werden zu einem neuen Medium
  • Simulcasting senkt die Betriebskosten von Streaming-Sites

    • Es ist nicht nötig, serverseitig ffmpeg/Transcoding auszuführen
  • AV1/H265/Opus ermöglichen auch Nutzern mit geringer Bandbreite das Senden

    • Nutzer mit ausreichend Bandbreite können zudem in höherer Qualität als zuvor streamen
  • UDP ermöglicht IRL-/Roaming-Streams

    • Keine benutzerdefinierte Konfiguration für Wiederverbindungen nötig
  • Multi-Track ermöglicht es, mehrere Videofeeds oder Sprachen gleichzeitig zu übertragen

  • Ende-zu-Ende-Verschlüsselung ermöglicht P2P-Verteilung

  • Wer sich für dieses Projekt interessiert, könnte auch Cloudflares WebRTC-Streaming-Dienst spannend finden

    • Ultraniedrige Latenz beim Live-Streaming mit WHIP und Wiedergabe mit WHEP
    • Mit dem OBS-WHIP-Plugin lässt sich direkt zu Cloudflare verbinden
    • Das Preismodell liegt bei $1 pro 1000 Minuten, entsprechend $0.06 pro Stunde
  • Meta-Frage dazu, warum Live-Streaming bevorzugt wird

    • Live-Streaming hat mehrere Nachteile
      • Erfordert Teilnahme in Echtzeit
      • Nicht editierbar (ineffiziente Nutzung der Zeit der Zuschauer)
      • Auf Client-Seite weder Geschwindigkeitsanpassung noch Überspringen unnötiger Teile möglich
      • Kein Index oder Inhaltsverzeichnis möglich
  • Broadcast Box verwendet WebRTC für Übertragung und Wiedergabe

    • Statt RTMP und HLS wird WebRTC verwendet, um die schnellstmögliche Erfahrung zu bieten
    • RTMP hat kein Problem damit, niedrige Latenz zu erreichen; der Software-Stack bestimmt die Verzögerung
    • HLS verursacht wegen inhärenter Schwächen zusätzliche Latenz
  • Wenn diese Funktion richtig funktioniert, wäre ich sehr zufrieden

    • Gemeinsam über das Internet RPGs zu spielen macht mit mehr als 1 Sekunde Verzögerung keinen Spaß
    • Habe nach einer P2P-Streaming-Lösung mit niedriger Latenz gesucht, aber nur mit OBS gab es Probleme
    • Danke, dass dieser Anwendungsfall berücksichtigt wurde
  • Stand der Technik bei der Auslieferung von WebRTC an 100k+ Clients

    • Als ich vor ein paar Jahren im Bereich Low-Latency-Streaming war, erreichte WebRTC zwar weniger als 1 Sekunde Latenz, aber es fehlte an Infrastruktur für den tatsächlichen Einsatz
    • Cloudflare und andere Anbieter arbeiteten an der Standardisierung
    • Ich frage mich, ob man einen horizontal skalierbaren WebRTC-Broadcaster betreiben kann (und ob es dafür eine Open-Source-Implementierung gibt)
    • Low-Latency-HLS oder CMAF erreichten weniger als 5 Sekunden Latenz, waren aber sehr einfach auszurollen (statische Dateien auf CDN/http-Servern bereitstellen)
  • Bei Gesprächen mit der Familie über Jitsi gibt es immer Probleme

    • Entweder man sieht den Bildschirm nicht, er erscheint nur in niedriger Auflösung, die Kamera ist eingeschaltet, aber nicht sichtbar, oder bei allen bricht die Verbindung ab
    • Ich frage mich, ob man mit Broadcast Box unter Verwendung von OBS Studio streamen kann (ohne von proprietären Servern abhängig zu sein)
    • Ich brauche keine 100k+ Clients, nur eine stabile Verbindung zwischen 2 bis 4 Clients
    • Ich kann einen Server außerhalb des NAT betreiben
    • 120 ms Latenz sind unmöglich; ich bin in Argentinien und die meisten anderen in den USA, also gibt es über das Internet bereits mehr als 200 ms Latenz in die USA
    • Falls Broadcast Box nicht das ist, was ich suche, frage ich mich, ob es andere Alternativen gibt
    • Zoom, Google und Teams kenne ich bereits, aber sie sind anfällig durch proprietäre Server
  • Habe im README folgende Formulierung gesehen

    • "Mit P2P kann man andere Broadcaster in den Stream holen. Keine besondere Konfiguration oder Server mehr nötig"
    • Ich habe derzeit ein Setup für gemeinsame Streams mit einem Freund
      • Mein Freund erfasst sein Gameplay mit OBS
      • Mein Freund streamt mit OBS an einen Raspberry Pi bei mir zu Hause
      • Auf dem Raspberry Pi läuft nginx, um den RTMP-Stream anzunehmen
      • Auf einem anderen Gerät läuft OBS, um mein Gameplay aufzuzeichnen und Overlays hinzuzufügen
      • Mein OBS nutzt VLC als Eingabequelle, um den Stream vom Raspberry Pi zu übernehmen
    • Das Setup ist furchtbar, das Video ist verzögert und bleibt oft hängen
    • Ich würde mir dieses Projekt gern ansehen, aber selbst nach dem Lesen des README ist unklar, wie man es einrichtet
    • Ich brauche Rat
  • Als jemand, der mit Videolatenz beim Senden nicht vertraut ist, frage ich mich, wie das im Vergleich zu anderen Alternativen einzuordnen ist

    • Mich interessieren die Hardware-Spezifikationen, mit denen die gemessenen 120 ms erreicht wurden
  • Ich nutze seit einigen Jahren OvenMediaEngine

    • Es bietet ähnliche Funktionen, aber auch dieses Projekt wirkt vielversprechend
    • Ich werde es ausprobieren