Technik ·
So funktioniert Video-Transcoding (und warum es für 24/7-Streaming wichtig ist)
Das Wichtigste in Kürze
- Transcoding wandelt ein Video in eine einheitliche Auflösung, Bildrate und einen einheitlichen Codec um. Dadurch lassen sich Dateien aus unterschiedlichen Quellen vorhersehbar abspielen.
- Ein 24/7-Loop reagiert besonders empfindlich auf uneinheitliche Videos, weil Clips endlos direkt hintereinander laufen und niemand da ist, der ein Stocken bemerkt oder behebt.
- Wenn du jedes Video einmal vorab normalisierst, musst du nicht in dem Moment neu encodieren, in dem du live gehst. Genau dort entstehen Ruckler und Abstürze an Clipgrenzen meistens.
Wenn du Videos von einem Handy, einem Bildschirmrekorder und einer Schnitt-App ins selbe Projekt hochgeladen hast, ist dir wahrscheinlich aufgefallen, dass sie nicht immer gut zusammenspielen: unterschiedliche Auflösungen, unterschiedliche Bildraten, manchmal ein komplett anderer Codec. Transcoding ist der Schritt, der das behebt, und speziell bei einem 24/7-Live-Loop ist es kein optionales Extra. Es entscheidet darüber, ob ein Stream monatelang ohne Zwischenfall läuft oder jedes Mal ruckelt, wenn er einen bestimmten Clip erreicht.
Was Transcoding wirklich bedeutet
Transcoding ist der Vorgang, eine Videodatei von einem Format in ein anderes umzuwandeln. Typischerweise werden dabei Auflösung (zum Beispiel alles auf 1920x1080), Bildrate (alles auf 30fps) und Codec (häufig H.264 für breite Kompatibilität) vereinheitlicht, damit sich jede Datei im weiteren Ablauf gleich verhält. Das ist etwas anderes, als einfach "einen Dateityp umzuwandeln": Zwei .mp4-Dateien können intern völlig unterschiedliche Codecs, Bitraten und Bildraten nutzen und trotzdem dieselbe Dateiendung haben.
Ohne Transcoding kann eine 4K-Datei mit 24fps, auf die im selben durchgehenden Stream direkt eine 720p-Datei mit 60fps folgt, ein sichtbares Ruckeln, ein kurzes schwarzes Bild oder im schlimmeren Fall einen Absturz des Encoders verursachen, weil die Software, die den Stream sendet, ihre Ausgabeeinstellungen mitten in der Übertragung neu aushandeln muss.
Warum das bei einem 24/7-Loop wichtiger ist als bei einem einzelnen Video
Ein einmaliger Upload wird einmal angeschaut, und ein Stocken zeigt sich als ein einzelnes schlechtes Erlebnis. Ein 24/7-Loop spielt dieselben Clips endlos direkt hintereinander ab, so lange, wie der Stream läuft. Das bedeutet:
- Jede Abweichung wiederholt sich. Ein Ruckeln am Übergang zwischen zwei bestimmten Clips passiert nicht einmal, sondern jedes Mal, wenn die Playlist diese Stelle erreicht, so lange, wie der Loop läuft.
- Niemand schaut zu, um neu zu starten. Die ganze Idee eines 24/7-Streams ist, dass er unbeaufsichtigt läuft. Ein Absturz, den ein Mensch bei einem betreuten Stream in Sekunden bemerken und beheben würde, kann bei einem unbetreuten Stream stundenlang unbemerkt bleiben.
- Playlists wachsen mit der Zeit. Je mehr Videos aus mehr Quellen du hinzufügst, desto größer wird die Wahrscheinlichkeit, dass mindestens ein Clip ein abweichendes Format hat.
Zwei Wege, damit umzugehen: beim Upload oder beim Livegang
Es gibt zwei Zeitpunkte, an denen Transcoding passieren kann, und der Unterschied ist wichtig:
- Beim Upload, einmal. Jedes Video wird in dem Moment, in dem es in deine Bibliothek kommt, auf ein festes Zielformat normalisiert. Auflösung, Bildrate und Codec stehen fest, bevor es überhaupt in eine Playlist kommt. Der Aufwand für das Transcoding fällt einmal vorab an und dann nie wieder.
- Beim Livegang, jedes Mal. Der Stream encodiert die ganze Playlist bei jedem Start der Übertragung spontan neu. Das funktioniert, bedeutet aber, dass du den Aufwand für das Transcoding (und das Risiko, dass es fehlschlägt) jedes einzelne Mal trägst, wenn du live gehst. Und es verhindert keine Abweichungen zwischen Clips innerhalb derselben Playlist.
Loopcast nutzt den ersten Ansatz: Jedes Video wird direkt nach dem Upload einmal im Hintergrund normalisiert. Wenn es in einem Live-Loop läuft, hängt das Relay also nur bereits einheitliche Clips aneinander, statt spontan neu zu encodieren. Deshalb löst das Ändern der Schnittpunkte eines Videos auch nur eine kurze erneute Normalisierung aus, statt den ganzen Stream zu betreffen: Nur der eine geänderte Clip braucht neue Arbeit.
Wie das in der Praxis aussieht
Du siehst das Transcoding normalerweise nicht. Es läuft im Hintergrund, nachdem du ein Video hochgeladen hast, und das Video zeigt kurz einen Status "wird verarbeitet", bevor es als bereit markiert wird und zu einer Playlist hinzugefügt werden kann. Die praktische Erkenntnis ist keine Einstellung, die du konfigurieren musst. Das ist vielmehr ein Grund, Videos vor einem Launch hochzuladen, statt zu erwarten, dass sie sofort bereit für den Stream sind. Und es ist ein Grund, warum ein Dienst, der einmal vorab transcodiert, über einen langen unbeaufsichtigten Betrieb meist besser durchhält als einer, der das nicht tut.
Häufig gestellte Fragen
Verringert Transcoding die Videoqualität?
Ein gut konfiguriertes Transcoding zielt auf eine Bitrate und Auflösung, die hoch genug sind, dass Zuschauer keinen Qualitätsverlust sehen, zumal YouTube selbst ohnehin alles erneut komprimiert, was du hochlädst oder streamst. Ziel des Transcodings ist hier Einheitlichkeit, nicht Kompression um ihrer selbst willen.
Warum wird ein neu hochgeladenes Video als "wird verarbeitet" angezeigt statt sofort als bereit?
Das ist der Transcoding-Schritt, der gerade läuft: Das Video wird im Hintergrund auf ein einheitliches Format normalisiert. Sobald das fertig ist, kannst du das Video zu einer Playlist hinzufügen.
Wenn zwei meiner Videos schon dieselbe Auflösung und Bildrate haben, brauchen sie dann trotzdem Transcoding?
Meistens ja, zumindest beim ersten Mal. Gleiche Auflösung und Bildrate sind notwendig, reichen aber nicht. Codec-Einstellungen, Keyframe-Intervalle und Audioformat können sich trotzdem auf eine Weise unterscheiden, die aus den Dateieigenschaften allein nicht ersichtlich ist. Wenn du jeden Upload gleich normalisierst, musst du dich nicht darauf verlassen, dass eine optische Übereinstimmung auch eine vollständige Übereinstimmung ist.