Überschreiben Sie Stream-Parameter
Das Überschreiben von Stream-Parametern ist optional und verfügbar, wenn Sie möchten, dass der Player oder die Anwendung einen Standardwert eines Stream-Erstellungsparameters überschreibt oder die Auswahl oder Standardreihenfolge von Varianten überschreibt, wenn die HLS- oder DASH-Wiedergabeliste angefordert wird. Sie können diese Parameter vom Player oder der App für IMA SDK- , Server-Side Beaconing (SSB) - und DAI-API- Implementierungen übergeben.
Variantenauswahl und Bestellung überschreiben
Die standardmäßige Wiedergabelistenreihenfolge wird vom Herausgeber festgelegt. Wenn keine Sortierparameter angegeben sind, werden die Wiedergabelisten in der ursprünglichen Reihenfolge zurückgegeben, wie sie vom Herausgeber zurückgegeben wurde.
Sie können die Parameter für die Variantenauswahl und -reihenfolge überschreiben, die während der Stream-Erstellung angegeben wurden, wodurch Sie die Teilmenge der Varianten angeben können, die in der Antwort auf eine Master-Playlist-Anfrage enthalten sein sollen, sowie die Reihenfolge dieser Varianten. Dies kann nützlich sein, wenn Sie möchten, dass eine bestimmte Variante Vorrang vor einer anderen hat, basierend auf dem Benutzer, der den Inhalt konsumiert.
Die Teilmenge und Reihenfolge der Varianten bleiben für die Lebensdauer des Streams gleich. Die Parameter werden entweder als Teil der adTagParameters- Struktur akzeptiert, wenn das IMA SDK , DAI-API- Parameter verwendet werden, oder als zusätzliche HTTP- GET
-Parameter, wenn SSB verwendet wird.
Parameter | Streaming-Protokoll | Beschreibung | Beispiele |
---|---|---|---|
dai-ot | HLS | Die Auftragstypinformationen, die den vom Wenn der Parameter | dai-ot=bw dai-ot=bw_res |
dai-ov | HLS | Durch Kommas getrennte Werte, die die Reihenfolge der zurückzugebenden Medienwiedergabelisten angeben. Muss zusammen mit Wenn mehrere Varianten mit demselben Bestellwert vorhanden sind (z. B. zwei Varianten mit derselben Bandbreite, aber unterschiedlichen Auflösungen), wird die ursprüngliche Reihenfolge unter diesen Varianten beibehalten. | |
dai-sr | HLS, DASH | Der Bandbreitenbereich für zurückzugebende Videovarianten. Um alle höheren Bandbreiten auszuwählen, geben Sie nur die startBandwidth an. Um alle niedrigeren Bandbreiten auszuwählen, geben Sie nur :endBandwidth (mit vorangestelltem Doppelpunkt ":") an. | dai-sr=1300000:2500000 |
dai-aor | HLS, DASH | Der Bandbreitenbereich für zurückzugebende Audiovarianten . Um alle höheren Bandbreiten auszuwählen, geben Sie nur die startBandwidth an. Um alle niedrigeren Bandbreiten auszuwählen, geben Sie nur :endBandwidth (mit vorangestelltem Doppelpunkt ":") an. | dai-aor=60000 |
dai-os | HLS | Die Bandbreite der Videovariante, die oben in der Master-Playlist platziert werden soll. Die Variante, die startBandwidth im Wert am nächsten kommt, wird ausgewählt. Wenn zwei Werte äquidistant sind, wird der niedrigste Wert ausgewählt. Wenn dieser Parameter angegeben wird und dai-aor nicht, werden alle Nur-Audio-Varianten ausgeschlossen. | dai-os=1700000 |
dai-excl | HLS, DASH | Wiedergaben, die von der Wiedergabeliste ausgeschlossen werden sollen. Unterstützt subtitles , codec , audio-lang , subtitle-lang und iframe . Sie können Audio-Codecs, Video-Codecs und Audio- und/oder Untertitelsprachen mit einem einzelnen Wert oder einer durch Kommas getrennten Liste mit mehreren Werten ausschließen. | Einzelner Codec Mehrere Codecs Einsprachiges Audio Einsprachiger Untertitel Mehrfachauswahl |
Andere Override-Parameter
Parameter | Streaming-Protokoll | Beschreibung | Beispiele |
---|---|---|---|
dai-ah | HLS, DASH | Gibt an, ob auf einen Livestream Werbefeiertage angewendet werden sollen oder nicht. In der Live-Stream- Konfiguration muss eine Werbeferiendauer angegeben werden. | Anzeigenfeiertag aktivieren:dai-ah=1 |
dai-apto (Beta) | HLS, DASH | Das Ad-Pod-Entscheidungs-Timeout für VOD und Live-Stream wird in Millisekunden erstellt. Dieses Timeout kann in allen Werbeunterbrechungen verwendet werden. Für vergangene Werbeunterbrechungen ist es jedoch nur verfügbar, wenn Playlists vom Typ EVENT oder der Parameter dai-dpb verwendet werden. Dies kann auf einen beliebigen Wert größer als 0 und kleiner oder gleich 10000 eingestellt werden. Das Festlegen eines sehr niedrigen oder hohen Werts kann sich auf die Anzeigenfüllung oder die Benutzererfahrung auswirken. | dai-apto=4000 |
dai-dpb | HLS, DASH | Gibt an, ob die Entscheidungsfindung für vergangene Unterbrechungen für lineare Nicht-SSB-Streams aktiviert werden soll (der Parameter wird für SSB-Streams ignoriert). Wenn aktiviert, werden vergangene Pausen mit Entscheidungen in der Mitte der Pause entschieden. Dies kann sich auf die Startlatenz auswirken, die Sie mit dem Parameter Vergangene Unterbrechungen werden nicht angezeigt, es sei denn, der Benutzer spult zurück, und dies könnte die Anzahl der bereitgestellten Codes erhöhen. | Entscheidung für vergangene Pausen aktivieren:dai-dpb=true Deaktivieren Sie die Entscheidungsfindung für vergangene Pausen für Playlists vom Typ HLS EVENT : dai-dpb=false |
dai-dvr | HLS, DASH | Die DVR-Dauer (in Sekunden) von Live-Inhalten und Anzeigen, zu denen der Benutzer zurückscrollen und eine nahtlose Wiedergabe beibehalten kann. Der aktuelle Standardwert für diesen Wert ist 100 Sekunden oder der Wert, der während der Einrichtung des Live-Streams angegeben wird. Es kann jedoch für jeden Livestream ein neues Maximum angegeben werden, bis zu 100 Sekunden für SSB oder 1800 Sekunden bei Verwendung des SDK oder der API. Wenn Sie eine längere DVR-Dauer wünschen, wenden Sie sich an Ihren Account Manager. Anleitung und NutzungDie tatsächliche DVR-Dauer der zurückgegebenen Wiedergabeliste kann je nach Dauer der zugrunde liegenden Segmente etwas länger oder kürzer sein. Es kann auch zwischen den Varianten leicht unterschiedlich sein. Der Maximalwert des tatsächlichen Fensters sollte nicht größer sein als der im Ereignis angegebene DVR-Fensterwert. Ist dies der Fall, wird der Wert automatisch begrenzt. DVR-Fenster für SSB-Streams sind im Vergleich zu SDK- oder öffentlichen API-Streams ebenfalls auf einen niedrigeren Wert begrenzt. Obwohl wir unser Bestes tun, um ein kompatibles Manifest zurückzugeben, kann die Angabe eines sehr kleinen oder sehr großen Werts zu Problemen bei der Wiedergabe führen. Die Wiedergabe sollte gründlich mit der gewünschten DVR-Fensterdauer getestet werden, um sicherzustellen, dass alles ordnungsgemäß funktioniert. Vermeiden Sie es, geräteübergreifend unterschiedliche Fenster zu verwenden. Die Angabe einer Fenstergröße von 30 Sekunden für ein Gerät gegenüber 31 Sekunden oder 35 Sekunden für andere Geräte ist aus Leistungssicht nicht geeignet. Verwenden Sie stattdessen Buckets von Fenstern (z. B. 35 Sekunden für einen Gerätesatz, 10 Minuten für einen anderen Satz usw.). Dies ermöglicht eine effizientere Ressourcenzuweisung und Leistung. | dai-dvr=60 |
dai-emsgv | HLS | Die Version der Ereignisnachricht ist ein Stream-Erstellungsparameter, mit dem Anrufer die 'emsg'-Versionen für Inhalte im Common Media Application Format (CMAF) angeben können. Der HLS-Standard erfordert 'emsg' Version 1. Diese Einstellung ist nützlich für Plattformen, die die Standardversion 1 nicht unterstützen und Version 0 benötigen, wie z. B. Roku. | dai-emsgv=1 |
Beispiele zum Überschreiben von Parametern
Alles erweitern Alles schließen
Anfrage
https://dai.google.com/linear/hls/event/<asset_key>/master.m3u8?dai-ot=bw&dai-ov=2025837,1406061
Antwort
#EXTM3U
#EXT-X-VERSION:3
#EXT-X-STREAM-INF:PROGRAM-ID=1,BANDWIDTH=2025837,RESOLUTION=960x540,CODECS="mp4a.40.2,avc1.4d401f"
https://dai.google.com/linear/hls/event/<asset_key>/encoder/<encoder_id>/session/<session_id>/bandwidth/2025837.m3u8
#EXT-X-STREAM-INF:PROGRAM-ID=1,BANDWIDTH=1406061,RESOLUTION=640x360,CODECS="mp4a.40.2,avc1.4d401f"
https://dai.google.com/linear/hls/event/<asset_key>/encoder/<encoder_id>/session/<session_id>/bandwidth/1406061.m3u8
Anfrage
https://dai.google.com/linear/hls/event/<asset_key>/master.m3u8?dai-ot=bw&dai-ov=audio,1406061
Antwort
#EXTM3U
#EXT-X-VERSION:3
#EXT-X-STREAM-INF:PROGRAM-ID=1,BANDWIDTH=64000,RESOLUTION=480x270,CODECS="mp4a.40.2"
https://dai.google.com/linear/hls/event/<asset_key>/encoder/<encoder_id>/session/<session_id>/bandwidth/audio.m3u8
#EXT-X-STREAM-INF:PROGRAM-ID=1,BANDWIDTH=1406061,RESOLUTION=640x360,CODECS="mp4a.40.2,avc1.4d401f"
https://dai.google.com/linear/hls/event/<asset_key>/encoder/<encoder_id>/session/<session_id>/bandwidth/1406061.m3u8
Anfrage
https://dai.google.com/linear/hls/event/<asset_key>/master.m3u8?dai-ot=bw_res&dai-ov=1400000:640x360,audio
Antwort
#EXTM3U
#EXT-X-VERSION:3
#EXT-X-STREAM-INF:PROGRAM-ID=1,BANDWIDTH=1406061,RESOLUTION=640x360,CODECS="mp4a.40.2,avc1.4d401f"
https://dai.google.com/linear/hls/event/<asset_key>/encoder/<encoder_id>/session/<session_id>/bandwidth/1406061.m3u8
#EXT-X-STREAM-INF:PROGRAM-ID=1,BANDWIDTH=64000,RESOLUTION=480x270,CODECS="mp4a.40.2"
https://dai.google.com/linear/hls/event/<asset_key>/encoder/<encoder_id>/session/<session_id>/bandwidth/audio.m3u8
Anfrage
https://dai.google.com/linear/hls/event/<asset_key>/master.m3u8?dai-sr=1300000:2500000&dai-aor=60000
Antwort
#EXTM3U
#EXT-X-VERSION:3
#EXT-X-STREAM-INF:PROGRAM-ID=1,BANDWIDTH=1406061,RESOLUTION=640x360,CODECS="mp4a.40.2,avc1.4d401f"
https://dai.google.com/linear/hls/event/<asset_key>/encoder/<encoder_id>/session/<session_id>/bandwidth/1406061.m3u8
#EXT-X-STREAM-INF:PROGRAM-ID=1,BANDWIDTH=2025837,RESOLUTION=960x540,CODECS="mp4a.40.2,avc1.4d401f"
https://dai.google.com/linear/hls/event/<asset_key>/encoder/<encoder_id>/session/<session_id>/bandwidth/2025837.m3u8
#EXT-X-STREAM-INF:PROGRAM-ID=1,BANDWIDTH=64000,RESOLUTION=480x270,CODECS="mp4a.40.2"
https://dai.google.com/linear/hls/event/<asset_key>/encoder/<encoder_id>/session/<session_id>/bandwidth/audio.m3u8
Anfrage
https://dai.google.com/linear/hls/event/<asset_key>/master.m3u8?dai-os=1700000
Antwort
#EXTM3U
#EXT-X-VERSION:3
#EXT-X-STREAM-INF:PROGRAM-ID=1,BANDWIDTH=1406061,RESOLUTION=640x360,CODECS="mp4a.40.2,avc1.4d401f"
https://dai.google.com/linear/hls/event/<asset_key>/encoder/<encoder_id>/session/<session_id>/bandwidth/1406061.m3u8
#EXT-X-STREAM-INF:PROGRAM-ID=1,BANDWIDTH=2025837,RESOLUTION=960x540,CODECS="mp4a.40.2,avc1.4d401f"
https://dai.google.com/linear/hls/event/<asset_key>/encoder/<encoder_id>/session/<session_id>/bandwidth/2025837.m3u8
Originalmanifest mit Untertiteln
#EXTM3U
#EXT-X-VERSION:3
#EXT-X-MEDIA:TYPE=SUBTITLES,GROUP-ID="subs",LANGUAGE="en",NAME="English",AUTOSELECT=YES,URI="tt-en.m3u8"
#EXT-X-MEDIA:TYPE=SUBTITLES,GROUP-ID="subs",LANGUAGE="de",NAME="Deutsch",AUTOSELECT=YES,URI="tt-de.m3u8"
#EXT-X-MEDIA:TYPE=AUDIO,GROUP-ID="stereo",LANGUAGE="en",NAME="English",DEFAULT=YES,AUTOSELECT=YES,URI="audio.m3u8"
#EXT-X-STREAM-INF:PROGRAM-ID=1,BANDWIDTH=889549,RESOLUTION=640x360,CODECS="mp4a.40.2,avc1.4d401f" SUBTITLES="subs"
https://dai.google.com/linear/hls/event/<asset_key>/encoder/<encoder_id>/session/<session_id>/bandwidth/889549.m3u8
#EXT-X-STREAM-INF:PROGRAM-ID=1,BANDWIDTH=1406061,RESOLUTION=640x360,CODECS="mp4a.40.2,avc1.4d401f" SUBTITLES="subs"
https://dai.google.com/linear/hls/event/<asset_key>/encoder/<encoder_id>/session/<session_id>/bandwidth/2025837.m3u8
Anfrage
https://dai.google.com/linear/hls/event/<asset_key>/master.m3u8?dai-excl=subtitles
Antwort
#EXTM3U
#EXT-X-VERSION:3
#EXT-X-MEDIA:TYPE=AUDIO,GROUP-ID="stereo",LANGUAGE="en",NAME="English",DEFAULT=YES,AUTOSELECT=YES,URI="audio.m3u8"
#EXT-X-STREAM-INF:PROGRAM-ID=1,BANDWIDTH=889549,RESOLUTION=640x360,CODECS="mp4a.40.2,avc1.4d401f" SUBTITLES="subs"
https://dai.google.com/linear/hls/event/<asset_key>/encoder/<encoder_id>/session/<session_id>/bandwidth/889549.m3u8
#EXT-X-STREAM-INF:PROGRAM-ID=1,BANDWIDTH=1406061,RESOLUTION=640x360,CODECS="mp4a.40.2,avc1.4d401f" SUBTITLES="subs"
https://dai.google.com/linear/hls/event/<asset_key>/encoder/<encoder_id>/session/<session_id>/bandwidth/2025837.m3u8
Ursprüngliches Manifest mit ac-3, eac-3
#EXTM3U
#EXT-X-STREAM-INF:BANDWIDTH=6107776,RESOLUTION=1920x1080,CODECS="avc1.640028,ec-3",AUDIO="AUDIO-EAC3"
https://truman.com/ssai/hls/event/<event_code>/encoder/<encoder_id>/session/<session_id>/bandwidth/6107776.m3u8
#EXT-X-STREAM-INF:BANDWIDTH=2212301,RESOLUTION=960x540,CODECS="avc1.640028,ec-3",AUDIO="AUDIO-EAC3"
https://truman.com/ssai/hls/event/<event_code>/encoder/<encoder_id>/session/<session_id>/bandwidth/2212301.m3u8
#EXT-X-STREAM-INF:BANDWIDTH=6295776,RESOLUTION=1920x1080,CODECS="ac-3,avc1.640028",AUDIO="AUDIO-AC3"
https://truman.com/ssai/hls/event/<event_code>/encoder/<encoder_id>/session/<session_id>/bandwidth/6295776.m3u8
#EXT-X-STREAM-INF:BANDWIDTH=2400301,RESOLUTION=960x540,CODECS="ac-3,avc1.640028",AUDIO="AUDIO-AC3"
https://truman.com/ssai/hls/event/<event_code>/encoder/<encoder_id>/session/<session_id>/bandwidth/2400301.m3u8
#EXT-X-STREAM-INF:BANDWIDTH=6045381,RESOLUTION=1920x1080,CODECS="avc1.640028,mp4a.40.2",AUDIO="AUDIO-AAC"
https://truman.com/ssai/hls/event/<event_code>/encoder/<encoder_id>/session/<session_id>/bandwidth/6045381.m3u8
#EXT-X-STREAM-INF:BANDWIDTH=2149906,RESOLUTION=960x540,CODECS="avc1.640028,mp4a.40.2",AUDIO="AUDIO-AAC"
https://truman.com/ssai/hls/event/<event_code>/encoder/<encoder_id>/session/<session_id>/bandwidth/2149906.m3u8
#EXT-X-MEDIA:TYPE=AUDIO,URI="audio-eac3.m3u8",GROUP-ID="AUDIO-EAC3",LANGUAGE="en",NAME="ENGLISH",AUTOSELECT=YES
#EXT-X-MEDIA:TYPE=AUDIO,URI="audio-ac3.m3u8",GROUP-ID="AUDIO-AC3",LANGUAGE="en",NAME="ENGLISH",AUTOSELECT=YES
#EXT-X-MEDIA:TYPE=AUDIO,URI="audio-aac.m3u8",GROUP-ID="AUDIO-AAC",LANGUAGE="en",NAME="ENGLISH",AUTOSELECT=YES
Schließen Sie einen Codec aus
Anfrage
http://truman.com/ssai/event/<event_code>/master.m3u8?dai-excl=codec:ec-3
Antwort
#EXTM3U
#EXT-X-STREAM-INF:BANDWIDTH=6295776,RESOLUTION=1920x1080,CODECS="ac-3,avc1.640028",AUDIO="AUDIO-AC3"
https://truman.com/ssai/hls/event/<event_code>/encoder/<encoder_id>/session/<session_id>/bandwidth/6295776.m3u8
#EXT-X-STREAM-INF:BANDWIDTH=2400301,RESOLUTION=960x540,CODECS="ac-3,avc1.640028",AUDIO="AUDIO-AC3"
https://truman.com/ssai/hls/event/<event_code>/encoder/<encoder_id>/session/<session_id>/bandwidth/2400301.m3u8
#EXT-X-STREAM-INF:BANDWIDTH=6045381,RESOLUTION=1920x1080,CODECS="avc1.640028,mp4a.40.2",AUDIO="AUDIO-AAC"
https://truman.com/ssai/hls/event/<event_code>/encoder/<encoder_id>/session/<session_id>/bandwidth/6045381.m3u8
#EXT-X-STREAM-INF:BANDWIDTH=2149906,RESOLUTION=960x540,CODECS="avc1.640028,mp4a.40.2",AUDIO="AUDIO-AAC"
https://truman.com/ssai/hls/event/<event_code>/encoder/<encoder_id>/session/<session_id>/bandwidth/2149906.m3u8
#EXT-X-MEDIA:TYPE=AUDIO,URI="audio-ac3.m3u8",GROUP-ID="AUDIO-AC3",LANGUAGE="en",NAME="ENGLISH",AUTOSELECT=YES
#EXT-X-MEDIA:TYPE=AUDIO,URI="audio-aac.m3u8",GROUP-ID="AUDIO-AAC",LANGUAGE="en",NAME="ENGLISH",AUTOSELECT=YES
Mehrere Codecs ausschließen
Anfrage
http://truman.com/ssai/event/<event_code>/master.m3u8?dai-excl=codec:ec-3,codec:ac-3
Antwort
#EXTM3U
#EXT-X-STREAM-INF:BANDWIDTH=6045381,RESOLUTION=1920x1080,CODECS="avc1.640028,mp4a.40.2",AUDIO="AUDIO-AAC"
https://truman.com/ssai/hls/event/<event_code>/encoder/<encoder_id>/session/<session_id>/bandwidth/6045381.m3u8
#EXT-X-STREAM-INF:BANDWIDTH=2149906,RESOLUTION=960x540,CODECS="avc1.640028,mp4a.40.2",AUDIO="AUDIO-AAC"
https://truman.com/ssai/hls/event/<event_code>/encoder/<encoder_id>/session/<session_id>/bandwidth/2149906.m3u8
#EXT-X-MEDIA:TYPE=AUDIO,URI="audio-aac.m3u8",GROUP-ID="AUDIO-AAC",LANGUAGE="en",NAME="ENGLISH",AUTOSELECT=YES
No comments:
Post a Comment