Differences
This shows you the differences between two versions of the page.
| Both sides previous revision Previous revision Next revision | Previous revision | ||
| cdn [2021/11/18 22:52] – ischluff | cdn [2024/01/29 10:45] (current) – ischluff | ||
|---|---|---|---|
| Line 2: | Line 2: | ||
| < | < | ||
| + | This documentation describes our Livestreaming CDN as of 2024. | ||
| - | Diese Doku beschreibt unser Live-Streaming | + | The File-CDN for media.ccc.de is described on [[software: |
| - | + | ||
| - | Das File-CDN wird dagegen auf der Seite [[software: | + | |
| </ | </ | ||
| - | == Architektur | + | |
| - | Die CDN-Kaskade hat 5 Stufen: | + | |
| + | |||
| + | == The Future of Streaming | ||
| + | |||
| + | For redundancy and ease of use the CDN is managed by a distributed system built on consul. | ||
| + | |||
| + | Damit ist es möglich redundante | ||
| + | |||
| + | Ein weiterer Vorteil des angedachten Setups sind deutlich geringere Latenz durch den fehlenden Fanout, sowie deutlich schnellere Stream-Restarts durch aktive Benachrichtigung der Transcoder. | ||
| + | |||
| + | === Übersicht | ||
| + | {{drawio> | ||
| + | |||
| + | ==== Repo Links | ||
| + | * Stream-api, Upload-Proxy, Upload-Server: https:// | ||
| + | * rtmp-auth daemon: https:// | ||
| + | * Transcoding-Script: | ||
| + | |||
| + | == Architecture | ||
| + | The CDN-Cascade has 5 stages: Master-Encoder, | ||
| {{: | {{: | ||
| === 1. Master-Encoder | === 1. Master-Encoder | ||
| + | The master stream encoding is created near the stage on the encoder PC running voctomix or on with other videoencoder for third party streams. | ||
| + | The master encoding contains a 1080p25 video signal. | ||
| Das Master-Encoding entsteht auf dem encoder-cube im Saal aus dem Ausgabesignal des Voctomix. Das Master-Encoding enthält den Mix als 1080p25 in h264 sowie die Slides als 1080p5 in h264 mit bis zu drei Audiospuren in AAC (Native, Translated, Translated-2). Wahlweise können die Übersetzerspuren sowie die Slide-Spur weggelassen werden. Alle Spuren werden in einem Matroska-Container verpackt. | Das Master-Encoding entsteht auf dem encoder-cube im Saal aus dem Ausgabesignal des Voctomix. Das Master-Encoding enthält den Mix als 1080p25 in h264 sowie die Slides als 1080p5 in h264 mit bis zu drei Audiospuren in AAC (Native, Translated, Translated-2). Wahlweise können die Übersetzerspuren sowie die Slide-Spur weggelassen werden. Alle Spuren werden in einem Matroska-Container verpackt. | ||
| Line 206: | Line 226: | ||
| Die RTMP-Url für den endpunkt '' | Die RTMP-Url für den endpunkt '' | ||
| - | |||
| - | |||
| - | == The Future of Streaming? | ||
| - | Um die Redundanz zu erhöhen und das Management zu vereinfachen ist geplant die Streams auf dem CDN zukünftig über ein verteiltes System zu managen welches auf consul aufbaut. | ||
| - | |||
| - | Damit wäre es möglich redundante CDN-Master sowie redundante Ingest-Server zu betreiben und trotzdem ein Web-Backend mit allen relevanten Streaming-Infos bereitzustellen. Weiterhin könnte die Streaming-Webseite intelligent auf das Vorhandensein/ | ||
| - | |||
| - | Ein weiterer Vorteil des angedachten Setups sind deutlich geringere Latenz durch den fehlenden Fanout, sowie deutlich schnellere Stream-Restarts durch aktive Benachrichtigung der Transcoder. | ||
| - | |||
| - | === Übersicht | ||
| - | {{drawio> | ||
| - | |||
| - | ==== Repo Links | ||
| - | * Stream-api, Upload-Daemon: | ||
| - | * rtmp-auth daemon: https:// | ||
| - | * Transcoding-Script: | ||
| - | |||
| - | === Änderungen zum Jetzt-Stand | ||
| - | ==== 1. Kein Fanout auf dem Master-Relay mehr | ||
| - | Transcoder pushen direkt die fertig gemuxten Client-Streams auf 1-N Master-Relays. Damit brauchen die Transcoder potentiell etwas mehr Bandbreite, dafür wird der Prozess vereinfacht weil der Master Format-unabhängig verteilen kann. | ||
| - | |||
| - | Weiterhin kann damit die Latenz um mindestens ein Keyframe-Intervall (3s), vermutlich sogar mehr gesenkt werden. | ||
| - | |||
| - | ==== 2. Keine WebM-Icecast Streams mehr | ||
| - | Um die Zahl der gepushten Streams zu reduzieren (siehe 1) werden die alten Icecast-Streams abgeschaltet. Seit 2 Jahren sind diese nicht mehr default in der Streaming-Webseite. Als Vorbereitung hierzu wurde Frühling 2020 der Legacy-Tab entfernt. | ||
| - | |||
| - | Audio-Only Streams über Icecast bleiben aber vermutlich erhalten genauso wie das interne Relaying über Icecast. | ||