In diesem Artikel erfahren Sie, wie Sie Ihre Ausgabestreams für verschiedene Zwecke einrichten.
In diesem Artikel:
→ Einleitung
→ Verwendung von Parametern und Konfigurationsstrings
→ Konfigurationsbeispiele
→ AAC-Audiostreams in hoher Qualität
→ Farbraum und Chroma-Subsampling und Interlace
→ Mehrere Audiospuren
→ Untertitel und SCTE
→ Streams über bestimmte IP-Adressen leiten
→ Überwachung und Fehlerbehebung
1. Einleitung
Sie können für jede Quelle 15 verschiedene Stream-Konfigurationen einrichten, darunter Kanäle, Eingänge und die Director-Ansicht. Standardmäßig wird das Videoformat bei Start des Streams von der Quelle übernommen, Sie können jedoch in jede beliebige Auflösung transkodieren.
Sobald Sie Ihr Protokoll ausgewählt haben, passen sich die anderen Felder für Video-/Audio-Codec und URL entsprechend Ihrer Auswahl an, das heißt: Nicht jeder Video-/Audio-Codec ist für jedes Stream-Protokoll verfügbar.
INFO: NVIDIA-Encoder unterstützen keine Interlaced-Formate mehr. Verwenden Sie stattdessen Intel QuickSync.
Ihre URL enthält einen Vorschlag für das erforderliche URL-Format. Klicken Sie auf “URL-Info”, um weitere Beispiele anzuzeigen, z. B. wie Sie Benutzername und Passwort einbinden können. Die Vorschau-URL wird von PLAYDECK nicht verwendet; sie dient lediglich dazu, dass sich Ihr Internetbrowser öffnet, wenn Sie auf “Vorschau” klicken.
2. Verwendung von Parametern und Konfigurationen
Es können weitere Parameter für Protokoll und Codecs festgelegt werden, die für Ihre Auswahl spezifisch sind. Diese können zur Feinabstimmung Ihrer Einstellungen verwendet werden, z. B. um Ihren Stream auf CBR umzustellen oder Metadaten hinzuzufügen.
Wenn Sie auf “Parameter” klicken, öffnet sich ein Editor, der nur die für Ihre Auswahl möglichen Einstellungen anzeigt. Alle Werte, die vom Standardwert abweichen, werden hervorgehoben.
Der “Konfigurationsstring” enthält alle Ihre Protokoll- und Codec-Auswahlen sowie die entsprechenden Parameter. Der Konfigurationsstring funktioniert in beide Richtungen: Sie können auch einen Konfigurationsstring in das Textfeld kopieren und einfügen und dann auf “Aus String aktualisieren” klicken, um die Werte zu übernehmen. So können Sie Einstellungen einfach zwischen Stream-IDs kopieren oder mit anderen Benutzern teilen.

3. Konfigurationsbeispiele
Hier findest du eine kurze Auswahl empfohlener Konfigurationen für verschiedene Zwecke. Kopiere sie in PLAYDECK und klicke auf “Aus Zeichenfolge aktualisieren”.
DVB-Stream mit CBR- und GOP-B-Frames. Keine PCR-, PTS-DTS- oder Buffer-Underrun-Fehler
format='dvb' protocol='udp://' mpegts_start_pid='60' video::streamid='80' video::disable_sps_pps='true' video::codec='n264' video::profile='high' video::level='4.1' video::rc_type='cbr' muxrate='10M' video::b='7.5M' video::bufsize='1.25M' video::g='32' video::bf='2' video::ref_frames='3' audio::streamid='81' audio::metadata::language='deu' audio::codec='mp2' audio::b='192k' pmt_start_pid='100' mpegts_flags='-system_b' rc_buffers='4' pcr_period='35' pat_period='0.1' sdt_period='0.5' tdt_period='10' start_pcr='0' service_name='TEST' service_provider='PD' service_id='1' original_network_id='1' transport_stream_id='201' service_type='advanced_codec_digital_hdtv'
Oder kurz gesagt:
format='dvb' protocol='udp://' video::disable_sps_pps='true' video::codec='n264' video::profile='high' video::level='4.1' video::rc_type='cbr' muxrate='10M' video::b='7,5M' video::bufsize='1,25M' video::g='32' video::bf='2' video::ref_frames='3' audio::metadata::language='deu' audio::codec='mp2' audio::b='192k' service_type='advanced_codec_digital_hdtv'
INFO: Jeder DVB-Empfänger ist anders, und möglicherweise sind unterschiedliche Einstellungen erforderlich. Bei manchen Empfängern sind KEINERLEI Abweichungen von offizielle Richtlinien, und zeigt SCHWARZ an. Die zuverlässigste Lösung zur Codierung von DVB-Signalen sind Hardware-Encoder, z. B. Haivision.
Die beste Vorgehensweise, um DVB-Streams auf PCR-Fehler oder andere Probleme zu prüfen, ist die Verwendung eines der folgenden Tools:
– DVBControl DVBAnalyzer (Kosten ca. 2000 EUR, ist jedoch äußerst zuverlässig und erkennt PTS-DTS-Fehler)
– StreamGURU (Kosten ca. 300 EUR, erkennt jeden ETR-Fehler und zeigt eine Bitrate-Grafik an)
– TSAnalyzer (kostenlos, kann jedoch Stream-URLs verarbeiten, benötigt TS-Datei auf der Festplatte)
– Weitere erwähnenswerte Programme: DVBInspector, Elecard Stream Analyzer, StreamXpert

————————————————————
SRT-Stream im CBR-Format für 25 Bilder pro Sekunde mit hoher Audioqualität
Das folgende Beispiel wird von mehreren Kunden in einer Multichannel-Streaming-Konfiguration zur Übertragung von Musikvideos verwendet. Diese Konfiguration läuft reibungslos mit vier parallelen Ausgangs- und Streaming-Kanälen und erzielt mit FHD-ACC-Audio eine optimale Ton- und Bildqualität.
format='mpegts' protocol='srt://' video::codec='n264' video::b='4M' video::rc_type='cbr' video::preset='p4' audio::codec='aac' audio::b='128K' audio::profile='aac_low' audio::stereo_mode='ms_force' audio::minrate='128K' audio::maxrate='128K' audio::bufsize='128K' audio::aac_coder='0'
————————————————————
RTMP-Stream im CBR-Format für 60 FPS mit 2-Sekunden-Keyframes
Das nächste Beispiel bezieht sich auf YouTube. Nutze die YouTube-Analytics- und Stream-Health-Tools, um die Stabilität deines Streams zu testen:
format='flv' protocol='rtmp://' video::codec='n264' video::b='9000k' video::maxrate='9000k' video::bufsize='9000k' video::g='120' video::preset='veryfast' audio::codec='aac' audio::b='128k' audio::ar='44100'
Das nächste Beispiel ist für Twitch. Verwenden Sie Twitch Inspector Um die Stabilität Ihres Streams zu überprüfen, fügen Sie “?bandwidthtest=true” an Ihre Stream-URL an, um zu verhindern, dass der Stream live geschaltet wird.
format='flv' protocol='rtmp://' merge_tracks='true' video::codec='n264' video::b='5800k' video::maxrate='5800k' video::bufsize='5800k' video::g='120' video::preset='veryfast' audio::codec='aac' audio::b='128k' video::tune='zerolatency' audio::codec='aac' audio::ar='44100' audio::b='128k'
————————————————————
Sony XDCAM HD422-Standard
Videoparameter – darunter 4:2:2-Chroma-Subsampling, eine bestimmte GOP-Struktur (M=3, N=15) und die Verarbeitung von Zeilensprungbildern – sowie professionelles 24-Bit-PCM-Audio mit einer Abtastrate von 48 kHz.
format='mxf' video::codec='mpeg2video' video::b='50M' video::interlace='1' video::top='1' video::g='15' video::v422='true' video::bf='2' video::flags='+ildct+ilme' audio::codec='pcm_s24le' audio::ar='48000'
4. AAC-Audiostreams in hoher Qualität
Die Standard-Einstellungen für AAC-Streaming schonen die CPU, können aber bei Musikkanälen zu einem flachen Klang führen. Für eine erstklassige Audioqualität wählen Sie je nach Zielgruppe und Ausgangsmaterial eines der beiden unten aufgeführten Profile aus.
Schnelle Zubereitung:
– Quelle: Verwenden Sie 48-kHz-Clips (320 kbps oder verlustfreies PCM).
– Video: Reduzieren Sie die Videoauflösung auf 720p30, wenn die Bandbreite gering ist. Verwenden Sie immer Hardware-Codierung.
Option 1: Maximale Kompatibilität und Stabilität (sichere Variante)
Am besten geeignet für: Standard-Streaming, Kabelbetreiber und DVB-T-Multiplexer. Dies ist das sicherste Profil, um Phasenprobleme bei verschiedenen Arten von Inhalten zu vermeiden.
format='mpegts' protocol='udp://' video::codec='n264' video::b='4M' audio::codec='aac' audio::b='256K' audio::profile='aac_low' audio::aac_coder='0'
audio::profile=’aac_low’: Stellt AAC-LC für maximale Qualität und Kompatibilität mit dem Hardware-Decoder 100% ein.
audio::aac_coder=’0′: Erzwingt einen hochwertigen Zwei-Schleifen-Kodierungsdurchlauf für klare Transienten. (Stellen Sie den Wert auf 1, wenn es zu CPU-Spitzen kommt).
Dynamisches Stereo: Überlässt die Stereoverwaltung dem Encoder, wodurch das System äußerst widerstandsfähig gegenüber unvollkommenem Ausgangsmaterial ist.
Option 2: High-Fidelity-Streaming (optimierte Stereo-Variante)
Am besten geeignet für: Spezielle Musikkanäle mit makellosen Quelldateien in Studioqualität. Dieses Profil nutzt eine straffe VBR-Hüllkurve und eine erzwungene Mid/Side-Stereoverarbeitung.
format='mpegts' protocol='udp://' video::codec='n264' video::b='4M' audio::codec='aac' audio::b='256K' audio::profile='aac_low' audio::stereo_mode='ms_force' audio::minrate='200K' audio::maxrate='320K' audio::bufsize='640K' audio::aac_coder='0'
audio::stereo_mode=’ms_force’: Ermöglicht eine Mid/Side-Stereoverarbeitung und maximiert die Bandbreiteneffizienz für tiefe, breite Stereoklangbilder.
minrate=’200K’ / maxrate=’320K’ / bufsize=’640K’: Eine straffe VBR-Hüllkurve, die Qualitätsverluste in leisen Passagen verhindert und gleichzeitig Spielraum für starke musikalische Spitzen lässt.
Hinweis: Falls Ihrem Ton bei bestimmten Clips der “Biss” fehlt oder er hohl klingt, wechseln Sie zurück zu Option 1, da Ihr Ausgangsmaterial möglicherweise Phasenabweichungen aufweist.
5. Farbraum, Chroma-Subsampling und Zeilensprung
Die Unterstützung bestimmter Farbräume, z. B. 4:2:2 für DVB oder Interlaced-Kodierung, hängt stark von der verwendeten Intel-CPU oder NVIDIA-GPU ab.
Hier ist eine Seite für NVIDIA NVenc und 422 Support und hier für Intel Quick Sync und 422 Support.
Einfach ausgedrückt:
1. NVidia-Unterstützung für Interlaced-Kodierung:
– Pascal (GTX 10-Serie): Letzte Architektur mit Interlace-Unterstützung
– Turing / Ampere / Ada (RTX 20/30/40): Die Hardwareunterstützung für die Interlaced-Kodierung wurde entfernt
– Blackwell (RTX 50-Serie): Die Interlaced-Kodierung für H.264 (8-Bit und 10-Bit) wurde wieder eingeführt
2. NVidia-Unterstützung für den 4:2:2-Farbraum:
– Blackwell (RTX 50-Serie)
3. Intel-Unterstützung für den 4:2:2-Farbraum
– Prozessoren der 10. Generation und neuerer bieten über Quick Sync Unterstützung für die hardwarebeschleunigte Codierung und Decodierung des HEVC-Codecs bei einer Farbabtastung von 4:2:2.
– Frühere Grafikcontroller bei Intel® Core™-Prozessoren der 9. Generation und älteren Modellen waren bei der hardwarebeschleunigten Codierung und Decodierung auf den HEVC-Codec mit 4:2:0-Farbabtastung beschränkt.
Dies ist ein kurzes Konfigurationsbeispiel für die 4:2:2-Kodierung mit Intel Quick Sync (10. Generation und höher)
format='dvb' protocol='udp://' video::codec='hevc_qsv' video::b='5M' audio::codec='aac' audio::b='128K' video::pix_fmt='yuyv422'
Hinweis: Funktionen wie Interlacing und der 4:2:2-Farbraum sind auch in den x264-CPU-Encodern verfügbar. Da wir eine LGPL-Version von FFmpeg ohne GPL-Teile (z. B. libx264) verwenden, sind diese Funktionen nicht aktiviert. Es ist möglich, die FFmpeg-Bibliotheken durch eigene Versionen zu ersetzen.
6. Mehrere Audiospuren
Wenn Sie mehrere Audiospuren senden müssen, z. B. für verschiedene Sprachen oder für Regie-Audio, ist dies mit allen unterstützten Protokollen (DVB, RTMP, UDP und einigen weiteren) möglich. Sie können auch verschiedene Audio-Codecs verwenden.
Das funktioniert so: Du hast bereits ALLE Audiospuren in deinem Kanal aktiviert und teilst die Audiospuren für deinen Stream-Ausgang dann beispielsweise in Stereopaare auf.
Stellen Sie zunächst sicher, dass Ihr Kanal auf mehr als 2 Audiokanäle eingestellt ist:

“Füllen” Sie diese Audiokanäle anschließend mit Audioinhalten, z. B. indem Sie alle Audiospuren eines Clips aktivieren oder alle Spuren über SDI einlesen (bis zu 16 Audiospuren). Sie können auch Audio-Mapping verwenden, um Ihre Audiospuren zu mischen, oder den Audiofilter nutzen, um bestimmte Audiospuren zu kopieren und zu verzögern.

Öffne dann deine Stream-Einstellungen, insbesondere die Parameter deines Stream-Protokolls, und aktiviere die Audio-Spuraufteilung:

INFO: Die Anzahl der Audiokanäle in deinen Stream-Einstellungen muss auf 2 eingestellt bleiben.
Bei Bedarf können Sie für die zusätzlichen Audiospuren verschiedene Audio-Codecs verwenden. Bitte beachten Sie die fortlaufenden Nummern für jede weitere Audiospur nach der ersten:
audio::codec='aac' audio.1::codec='ac3' audio.2::codec='libmp3lame' audio.3::codec='mp2'
Sie können außerdem für jede Audiospur einen Sprachdeskriptor festlegen:
audio::metadata::language='eng' audio.1::metadata::language='ita' audio.2::metadata::language='fra' audio.3::metadata::language='ger'
INFO: Sprachcodes müssen den folgenden Anforderungen entsprechen ISO 639-2
Anschließend kannst du deine fertigen Audiospuren beispielsweise in StreamGURU testen:

7. Untertitel und SCTE
Beide Optionen können in den Parametereinstellungen Ihres Protokolls aktiviert werden:

INFO: SCTE-35 ist nur für folgende Protokolle verfügbar: SRT, DVB, UDP (beliebiger Videocodec). Untertitel funktionieren nur mit den folgenden Videocodecs: MPEG-2, H.264 (alle Protokolle)
Dazu müssen beide Funktionen bereits in Ihrem Kanal aktiviert und verfügbar sein. Weitere Informationen zu SCTE und/oder Untertiteln finden Sie in den folgenden Artikeln:
→ SCTE-35 an den Stream-Server senden
→ Untertitel
8. Weiterleitung von Datenströmen über bestimmte IP-Adressen
Für Ihre Produktion müssen Sie Ihre Streams über bestimmte Netzwerke senden. Dies dient in erster Linie dazu, eine dedizierte/reservierte Leitung für das Streaming zu nutzen, damit der reguläre Netzwerkverkehr nicht beeinträchtigt wird.
Falls Sie UDP-Ströme Füge diesen Parameter einfach direkt in die URL ein:
udp://ip:port?localaddr=172.20.10.2
Falls Sie SRT-Streams Füge diesen Parameter einfach direkt in die URL ein. Das funktioniert nur in Rendezvous-Modus:
srt://ip:port?mode=rendezvous&localip=172.20.10.2
Bei der Verwendung von RTMP-Streams gibt es leider keinen entsprechenden Parameter. Sie müssen den gesamten ausgehenden RTMP-Datenverkehr manuell weiterleiten. Dazu verwenden wir Proxifier. Gehen Sie zu “Profil”, „Proxifizierung-Regeln“, „Neue Regel hinzufügen“, bearbeiten Sie sie wie folgt und verschieben Sie sie an den Anfang der Regeln. Wählen Sie den gewünschten Adapter über „Erweitert“ aus.

Wenn Sie lokal einen Testlauf ohne die zweite Leitung durchführen möchten, aktivieren Sie sowohl den Ethernet-Adapter als auch das WLAN auf Ihrem PC, starten Sie dann einen neuen Hotspot auf Ihrem Mobiltelefon und verbinden Sie das WLAN Ihres PCs mit diesem Telefon. Öffnen Sie anschließend die Eingabeaufforderung (“cmd”) und geben Sie “ipconfig” ein. Die benötigte IP-Adresse finden Sie dort:

Sie können Ihren Netzwerkverkehr mit Wireshark.
9. Überwachung und Fehlerbehebung
Wenn Ihre Streams ruckeln oder sogar ganz stehen bleiben, wissen Sie oft nicht, was genau passiert ist. Hier sind einige Tipps, die Ihnen helfen sollen, das Problem zu identifizieren.
1. Bitrate
Beachten Sie folgende Regel: Die Bitrate-Einstellung für Video und Audio (für Ihren Stream) sollte niemals die Bitrate der Clip-Kodierung überschreiten. Überprüfen Sie dies, indem Sie mit der rechten Maustaste auf Ihren Clip in der Wiedergabeliste klicken und „MediaInfo“ öffnen. Stellen Sie in diesem Fall die Video-Bitrate auf 3 Mbit/s und die Audio-Bitrate auf 128 kbit/s ein.

2. Überwachung
Öffnen Sie das Monitorfenster in PLAYDECK oder öffnen Sie die Stream-Protokolle.

50/60 FPS (Durchschnittliche/angestrebte Bildrate)
Vergleicht die aktuelle und die durchschnittliche Codierungsbildrate mit dem Sollwert. Ein Rückgang deutet darauf hin, dass das System mit der Echtzeit-Codierung nicht Schritt halten kann.
Verstrichen (Wartezeit pro Bild in Sekunden)
Zeigt die Zeit an, die seit der Verarbeitung des letzten Frames verstrichen ist. Steigt dieser Wert an, können keine Frames verarbeitet werden, da die Quelle fehlt, falsche Einstellungen vorliegen oder keine Verbindung besteht.
Übersprungen (Ausgelassene Bilder)
Der wichtigste Indikator für Leistungsengpässe. Steigt dieser Wert an, lässt der Encoder absichtlich Frames weg, da er diese nicht schnell genug verarbeiten kann.
Pausen (Verlorene Bilder)
Wenn das Netzwerk langsam ist, werden Unterbrechungen angezeigt, da der Server möchte ein neuer Frame, der jedoch nicht rechtzeitig eintrifft (bei Protokollen, die eine Bestätigung erfordern, wie RTMP oder SRT). Unterbrechungen können auch auftreten, wenn die Quelle einen Frame nicht rechtzeitig liefert.
Puffer (Warten auf Frames)
Überwacht die Anzahl der Frames, die in der internen Warteschlange warten. Ein ständig wachsender Puffer ist in der Regel ein Vorbote für übersprungene Frames oder Unterbrechungen. Hoch übersprungen, tief gebrochen: Das bedeutet in der Regel, dass dein CPU-/GPU-Encoder ist zu langsam. Hohe Unterbrechungen, wenige/keine Übersprünge: Das bedeutet in der Regel, dass die Netzwerk oder Quelle ist der Engpass. Der Autor ist bereit zum Codieren, aber die Frames kommen nicht an oder werden aufgrund der Verbindungsverzögerung nicht in den richtigen Zeitintervallen “abgeholt”.
3. Netzwerk-/Bandbreitenprobleme
Schalte alle deine Streams aus, öffne die Windows-Eingabeaufforderung (“cmd” im Startmenü) und gib Folgendes ein
tracert
Verwenden Sie den Hostnamen oder die IP-Adresse Ihrer Ziel-URLs. Wenn Sie Werte von mehr als 100 ms sehen, deutet dies auf eine langsame Verbindung zu Ihrem Stream-Ziel hin.
Beachten Sie auch, dass die Download-Geschwindigkeiten bei Glasfaser-, Kabel- oder DSL-Verbindungen heutzutage zwar meist sehr hoch sind (>100 Mbit/s), die Upload-Geschwindigkeit jedoch deutlich geringer ausfallen kann. Verwenden Sie ein Tool wie Geschwindigkeitstest um Ihre tatsächliche Upload-Geschwindigkeit zu ermitteln.
Verwenden Sie außerdem den Bandwidth Profiler auf dem Stream-Server, um zu überprüfen, ob die gewünschte Bitrate auch auf dem Server empfangen wird. Die meisten Anbieter oder Softwareprogramme stellen Tools zur Messung der empfangenen Bitrate zur Verfügung. Idealerweise wird diese als Grafik dargestellt, die eventuelle Lücken während der Übertragung aufzeigen kann. Falls Sie kein solches Tool zur Hand haben, empfehlen wir Ihnen, auf YouTube zu streamen, da diese Plattform über einen integrierten Stream-Analysator verfügt, der sich hervorragend zur Diagnose instabiler Verbindungen eignet.
Erkundigen Sie sich bitte zusätzlich bei Ihrem Anbieter oder Dienst, ob dieser lokale Stream-Ingest-URLs für Ihre Region oder Ihr Land bereitstellt. Twitch stellt beispielsweise solche URLs zur Verfügung Twitch-Ingest-Endpunkte.