ストリーム パラメータのオーバーライドは必須ではありません。HLS または DASH 再生リストがリクエストされたときに、プレーヤーやアプリケーションで、ストリーム作成パラメータのデフォルト値のオーバーライドまたはバリエーションの選択やデフォルト順序のオーバーライドを行いたい場合に使用できます。これらのパラメータは、プレーヤーやアプリから IMA SDK、サーバーサイド ビーコン処理(SSB)、DAI API を介して渡すことができます。
バリエーションの選択と順序のオーバーライド
デフォルトの再生リストの順序はパブリッシャーが指定します。順序パラメータが指定されていない場合、再生リストはパブリッシャーが指定したとおり元の順序で返されます。
ストリームの作成中に指定されたバリエーションの選択パラメータと順序パラメータをオーバーライドして、マスター再生リストのリクエストへのレスポンスに含めるバリエーションのサブセットと、それらのバリエーションの順序を指定できます。ユーザーのコンテンツ利用状況に応じて、特定のバリエーションを他のものより優先する場合に役立ちます。
バリエーションのサブセットと順序は、ストリームのライフサイクル中はそのまま維持されます。各パラメータは、IMA SDK または DAI API パラメータを使用する場合は adTagParameters 構造の一部として、SSB を使用する場合は追加の HTTP GET
パラメータとして受け付けられます。
パラメータ | ストリーミング プロトコル | 説明 | 例 |
---|---|---|---|
dai-aor |
HLS、DASH | 返される音声バリエーションの帯域幅の範囲。特定の帯域幅より高いバリエーションをすべて選択するには、startBandwidth のみを指定します。特定の帯域幅より低いバリエーションをすべて選択するには、:endBandwidth (先頭にコロン「:」あり)のみを指定します。 |
dai-aor=60000 |
dai-dlid |
HLS、DASH |
ビデオ オンデマンド コンテンツ用の CDN 設定を作成する際に、デフォルトの CDN 設定と追加の CDN 配信設定を定義できます。複数の CDN を設定しておけば、セッションの開始時に Key-Value を使って、どの CDN から配信するかを動的に選択することが可能です。 CDN 設定を指定して保存すると、アド マネージャーでそれぞれに名前が割り当てられます。この名前を リクエストに名前が渡されなかった場合、アド マネージャーではデフォルトの CDN が使用されます。 |
( |
dai-excl |
HLS、DASH | 再生リストから除外するレンディション。subtitles 、codec 、audio-lang 、subtitle-lang 、iframe 、resolution がサポートされます。1 つの値またはカンマで区切った複数の値のリストを使用して、解像度、オーディオ コーデック、動画コーデック、音声や字幕の言語を除外できます。codec プレフィックスは、サフィックス「*」の使用もサポートされます。この場合、指定されたプレフィックスの codec を含むレンディションはすべて除外されます。 |
1 つのコーデック 複数のコーデック プレフィックス指定のコーデック 1 つの言語の音声 1 つの言語の字幕 複数の選択 解像度 |
dai-os |
HLS | マスター再生リストの先頭に設定される動画バリエーションの帯域幅。値が startBandwidth に最も近いバリエーションが選択されます。最も近い値が 2 つある場合は、低い方の値が選択されます。このパラメータが指定されていて、dai-aor が指定されていない場合、音声のみのバリエーションはすべて除外されます。 |
dai-os=1700000 |
dai-ot |
HLS |
|
dai-ot=bw dai-ot=bw_res |
dai-ov |
HLS |
返されるメディア再生リストの順序を指定するカンマ区切りの値。 順序値が同じ複数のバリエーションがある場合(同じ帯域幅で解像度の異なる 2 つのバリエーションがある場合など)、それらのバリエーション間では元の順序が維持されます。 |
|
dai-sr |
HLS、DASH |
返される動画バリエーションの帯域幅の範囲。特定の帯域幅より高いバリエーションをすべて選択するには、 帯域幅の適用は動画コンテンツのみが対象です。
|
dai-sr=1300000:2500000 |
その他のオーバーライド パラメータ
パラメータ | ストリーミング プロトコル | 説明 | 例 |
---|---|---|---|
dai-ah |
HLS、DASH | ライブ ストリームに広告なしの時間枠を適用するかどうかを示します。広告なしの時間枠は、ライブ ストリーム設定で指定する必要があります。 | 広告なしの時間枠を有効にする:dai-ah=1 |
dai-apto (ベータ版) |
HLS、DASH |
連続配信広告が VOD およびライブ ストリームのタイムアウトを判断する時間(ミリ秒単位)です。 この値は、ストリームの作成時に行われるミッドブレークまたは過去のブレークの判定で使用されます(ストリームの作成後に以降の広告の判定がすべて行われるとは限りません)。過去の広告ブレークについては、EVENT タイプの再生リストまたは dai-dpb パラメータを使用している場合のみ使用できます。 0 より大きい 10,000 以下の任意の値を設定できます。
非常に小さい値または非常に大きい値を設定すると、広告掲載やユーザー エクスペリエンスに影響する可能性があります。 |
dai-apto=4000 |
dai-dpb |
HLS、DASH |
非 SSB リニア ストリームで過去のブレークの判定を有効にするかどうかを指定します(SSB ストリームではこのパラメータは無視されます)。有効にすると、過去のブレークがミッドブレークの判定に基づいて判定されます。 この設定は読み込みの遅延に影響する可能性があります。読み込みの遅延は、 過去のブレークは、ユーザーが巻き戻しをしない限り表示されません。また、これによってコード配信数が増加する可能性があります。 |
過去のブレークの判定を有効にする:dai-dpb=true HLS EVENT タイプの再生リストで過去のブレークの判定を無効にする: dai-dpb=false |
dai-dvr |
HLS、DASH | ユーザーがスクロールして戻り、シームレスに再生できるライブ コンテンツと広告の DVR の長さ(秒)です。
現在のデフォルト値は、100 秒またはライブ ストリームの設定時に指定した値となります。ただし、各ライブ ストリームの最大値を新たに指定することもできます。SSB を使用する場合は 100 秒、SDK または API を使用する場合は 1,800 秒までの範囲で指定できます。DVR の長さをこれより伸ばしたい場合は、アカウント マネージャーにお問い合わせください。 ガイダンスと使用方法返される再生リストの実際の DVR の長さは、元のセグメントの長さによって多少変わることがあります。また、バリエーションによって若干異なることもあります。 実際の長さの最大値が、イベントで指定された DVR ウィンドウの値を超えないようにしてください。超えた場合、値は自動的に制限されます。また、SSB ストリームの DVR ウィンドウは、SDK や公開 API のストリームより小さい値に制限されます。 Google では互換性のあるマニフェストを返すよう努めていますが、指定された値が小さすぎたり大きすぎたりする場合は、再生時に問題が発生する可能性があります。目的の DVR ウィンドウの長さで再生テストを十分に行い、想定どおり動作することを確認してください。 デバイスによって異なるウィンドウを使用しないようにしてください。たとえば、あるデバイスで 30 秒のウィンドウを指定し、他のデバイスで 31 秒や 35 秒のウィンドウを指定することは、パフォーマンスの観点から望ましくありません。この場合は、代わりにウィンドウのバケットを使用します(あるデバイス グループには 35 秒、別のグループには 10 分を指定するなど)。これにより、リソースの割り当てとパフォーマンスを効率化できます。 |
dai-dvr=60 |
dai-emsgv |
HLS |
イベント メッセージ バージョンは、呼び出し元が CMAF コンテンツの「emsg」バージョンを指定できるストリーム作成パラメータです。 HLS 規格では「emsg」バージョン 1 が標準となっています。 この設定は、Roku など、標準バージョン 1 に対応していないプラットフォームでバージョン 0 が必要な場合に便利です。
|
dai-emsgv=1 |
dai-pre (ベータ版) |
HLS、DASH | プレロールが有効になっているライブ ストリームで、ミッドロールとプレロールが重なっている場合に、ミッドロールではなくプレロールを表示するかどうかを指定します。デフォルトの動作では、プレロールの代わりに重なっているミッドロールが表示されます。 | dai-pre=1 |
パラメータのオーバーライドの例
リクエスト
https://dai.google.com/linear/hls/event/<asset_key>/master.m3u8?dai-ot=bw&dai-ov=2025837,1406061
レスポンス
#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
リクエスト
https://dai.google.com/linear/hls/event/<asset_key>/master.m3u8?dai-ot=bw&dai-ov=audio,1406061
レスポンス
#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
リクエスト
https://dai.google.com/linear/hls/event/<asset_key>/master.m3u8?dai-ot=bw_res&dai-ov=1400000:640x360,audio
レスポンス
#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
リクエスト
https://dai.google.com/linear/hls/event/<アセットキー>/master.m3u8?dai-sr=1300000:2500000&dai-aor=60000
レスポンス
#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
リクエスト
https://dai.google.com/linear/hls/event/<asset_key>/master.m3u8?dai-os=1700000
レスポンス
#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
字幕を含む元のマニフェスト
#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
リクエスト
https://dai.google.com/linear/hls/event/<アセットキー>/master.m3u8?dai-excl=subtitles
レスポンス
#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
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
1 つのコーデックを除外する
リクエスト
http://truman.com/ssai/event/<event_code>/master.m3u8?dai-excl=codec:ec-3
レスポンス
#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
複数のコーデックを除外する
リクエスト
http://truman.com/ssai/event/<event_code>/master.m3u8?dai-excl=codec:ec-3,codec:ac-3
レスポンス
#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