リニア放送またはライブフィードの場合、再生リストに広告挿入スプライス ポイントを示す CUE-OUT ポイントと CUE-IN ポイントを含める必要があります。以下に例を示します。
#EXT-X-CUE-OUT:DURATION=<time>
#EXT-X-CUE-IN
EXT-X-CUE-OUT
タグはスプライス開始ポイントを、EXT-X-CUE-IN
はスプライス終了ポイントを示します。EXT-X-CUE-OUT
は広告ブレークの終了を示す EXT-X-CUE-IN
で終了してください。広告サーバーで、EXT-X-CUE-OUT
と EXT-X-CUE-IN
の間のセクション全体が動画広告コンテンツで置き換えられます。
DURATION=<time>
は必須です。おおよその長さを秒または広告ブレークの浮動小数点数で指定してください(EXT-X-CUE-IN
と EXT-X-CUE-OUT
の間の時間です)。EXT-X-CUE-OUT:<time>
の代わりに #EXT-X-CUE-OUT:DURATION=<time>
を使用することも可能です。
スプライス開始ポイントと終了ポイント
#EXTINF:10,
http://media.example.com/fileSequence7796.ts
#EXTINF:6,
http://media.example.com/fileSequence7797.ts
#EXT-X-CUE-OUT:DURATION=30
#EXTINF:4,
http://media.example.com/fileSequence7798.ts
#EXTINF:10,
http://media.example.com/fileSequence7799.ts
#EXTINF:10,
http://media.example.com/fileSequence7800.ts
#EXTINF:6,
http://media.example.com/fileSequence7801.ts
#EXT-X-CUE-IN
#EXTINF:4,
http://media.example.com/fileSequence7802.ts
#EXTINF:10,
http://media.example.com/fileSequence7803.ts
#EXTINF:3,
http://media.example.com/fileSequence7804.ts
DAI 広告サーバーで、OUT
と IN
の間のコンテンツが 30 秒間の広告動画コンテンツで置き換えられます。
#EXTINF:10,
http://media.example.com/fileSequence7796.ts
#EXTINF:6,
http://media.example.com/fileSequence7797.ts
#EXT-X-CUE-OUT:DURATION=30
#EXTINF:10,
http://ads.example.com/fileSequence0001.ts
#EXTINF:10,
http://ads.example.com/fileSequence0002.ts
#EXTINF:10,
http://ads.example.com/fileSequence0003.ts
#EXT-X-CUE-IN
#EXTINF:4,
http://media.example.com/fileSequence7802.ts
#EXTINF:10,
http://media.example.com/fileSequence7803.ts
#EXTINF:3,
http://media.example.com/fileSequence7804.ts
広告ブレークを短くする
広告ブレークを早く終了するには、エンコーダからストリームに「CUE-IN」を送信して、DAI ストリームが広告ブレークを直ちに終了し、元のコンテンツの表示を再開するように指示します。
なお、広告ブレークが早く終了しても、ストリーム アクティビティ モニタには元の「広告ブレークの長さ」、「充足時間」、「配信時間」の値が反映されます。
追加の広告ブレークを作成する
広告ブレークがユーザーに表示されている際に広告ブレークを長くする方法はありませんが、エンコーダが前の広告ブレークの「CUE-IN」の直後に追加で「CUE-OUT」をストリームに送信するようにすることはできます。それにより、広告ブレークを追加して新しく指定した広告を配信できます。
広告ブレークの残りのスペースを埋める
表示可能な広告がない場合や、表示するスペースがない場合は、アド マネージャーでライブ ストリームの設定時に選択した広告ブレークの設定に応じて、スレート コンテンツかベース コンテンツのいずれかが表示されます。
ライブ配信でサポートされている広告マーカー
ライブ配信コンテンツへの広告挿入では、次のマーカーを使用できます。
AWS Elemental を含むいくつかのエンコード ソリューションでは、これらのマークアップ タイプが生成されます。
形式は次のとおりです。
CUE-OUT
#EXT-X-CUE-OUT:DURATION=10.50,K=V
#EXT-X-CUE-OUT:10.50,K=V
現在、CUE-OUT で渡すことができる Key-Value は BREAKID
のみです。
CUE-IN
#EXT-X-CUE-IN
CUE-OUT
#EXT-X-CUE:ID=31264,TYPE="SpliceOut",DURATION=30.00,TIME=77892728.264567
CUE-IN
これらのマークアップには、明示的に CUE-IN
を示すものはありません。代わりに、CUE-OUT
の後の各セグメントは次のようにマークされます。
#EXT-X-CUE:ID=31264,TYPE="SpliceOut",DURATION=30.00,TIME=77892728.264567,ELAPSED=5.00
これは広告ブレーク内のセグメントの位置を示しています。CUE-IN
マーカーは ELAPSED
属性の値とセグメントの長さを基に計算され、広告ブレークの最後のセグメントを示します。
CUE-OUT
#EXT-X-DATERANGE:ID="splice-80f",PLANNED-DURATION=90.5,START-DATE="2017-03-24T13:46:04Z",SCTE35-OUT=0xFC301B00000000000000FFF00A05000001027FDF000000
PLANNED-DURATION
属性の値は、予定されている広告ブレークの長さとして使用されます。
CUE-IN
#EXT-X-DATERANGE:ID="splice-7ef",START-DATE="2017-03-24T13:38:04Z",SCTE35-IN=0xFC301B00000000000000FFF00A05000000FF7F5F0000000000007B7BA160
SCTE-35 のスプライスインとスプライス アウトは、HLS タグ内に時間シグナルで指定できます。SCTE 情報はバイナリ形式で利用可能で、送信シグナルのタイプを判別するためにデコードが必要になります。
CUE-OUT
#EXT-OATCLS-SCTE35:/DAlAAAAAAAAAP/wFAUAAA+if+/+INAJ0P4AKTLgAAAAAAAA9UTkTA==
CUE-IN
#EXT-OATCLS-SCTE35:/DAgAAAAAAAAAP/wDwUAAAPvf0//ahTGjwAAAAAAALda4HI=
有効な CUE-OUT / CUE-IN と広告ブレーク ターゲティング情報が含まれているかどうかを判定するために、SCTE-35 バイナリ(Base64 エンコード)のデータのデコードと解析を行う必要があります。
たとえば、次のバイナリデータには有効な CUE-OUT シグナルが含まれています。
CUE-OUT
/DAsAAAAAyiYAP/wBQb/PVbrDQAWAhRDVUVJB48zWH//AAEuGvsAACIAAdRJqiI=
デコード後のメッセージには次のフィールドが含まれています。
splice_command_type
: 値は 6 で、時間シグナルであることを意味しますsegmentation_type_id
: 時間シグナルの種類を示します
次の segmentation_type_id
の値は、有効な CUE-OUT 時間シグナルとして認識されます。
34
: 中断開始
次の segmentation_type_id
の値(splice_command_type = 6
の場合)は、有効な CUE-IN 時間シグナルとして認識されます。
35
: 中断終了
たとえば、次のバイナリデータには有効な CUE-IN シグナルが含まれています。
CUE-IN
/DAnAAAAAyiYAP/wBQb/PX1ezQARAg9DVUVJB48zWH+/AAAjAAGwzKWt
有効な CUE-OUT / CUE-IN と広告ブレーク ターゲティング情報が含まれているかどうかを判定するために、SCTE-35 バイナリ(Base64 エンコード)のデータのデコードと解析を行う必要があります。
たとえば、次のバイナリデータには有効な CUE-OUT シグナルが含まれています。
CUE-OUT
/DAxAAAAAAAAAP/wBQb//ciI8QAbAhlDVUVJXQk9EX/fAAEuK3sBBUMxNDY0MAEBpOBiAg==
デコード後のメッセージには次のフィールドが含まれています。
splice_command_type
: 値は 6 で、時間シグナルであることを意味しますsegmentation_type_id
: 時間シグナルの種類を示します
次の segmentation_type_id
の値は、有効な CUE-OUT 時間シグナルとして認識されます。
48
: Provider Advertisement Start
次の segmentation_type_id
の値(splice_command_type = 6
の場合)は、有効な CUE-IN 時間シグナルとして認識されます。
49
: Provider Advertisement End
たとえば、次のバイナリデータには有効な CUE-IN シグナルが含まれています。
CUE-IN
/DAsAAAAAAAAAP/wBQb//e78sQAWAhRDVUVJXQk9EX+fAQVDMTQ2NDEBAaKNu/4=
有効な CUE-OUT / CUE-IN と広告ブレーク ターゲティング情報が含まれているかどうかを判定するために、SCTE-35 バイナリ(Base64 エンコード)のデータのデコードと解析を行う必要があります。
たとえば、次のバイナリデータには有効な CUE-OUT シグナルが含まれています。
CUE-OUT
/DA0AAAAAAAA///wBQb+cr0AUAAeAhxDVUVJSAAAjn/PAAGlmbAICAAAAAAsoKGKNAIAmsnRfg==
デコード後のメッセージには次のフィールドが含まれています。
splice_command_type
: 値は 6 で、時間シグナルであることを意味しますsegmentation_type_id
: 時間シグナルの種類を示します
次の segmentation_type_id
の値は、有効な CUE-OUT 時間シグナルとして認識されます。
52
: Provider Placement Opportunity Start
次の segmentation_type_id
の値(splice_command_type = 6
の場合)は、有効な CUE-IN 時間シグナルとして認識されます。
53
: Provider Placement Opportunity End
たとえば、次のバイナリデータには有効な CUE-IN シグナルが含まれています。
CUE-IN
/DAvAAAAAAAA///wBQb+cuN0EAAZAhdDVUVJSAAAjn+PCAgAAAAALKChijUCALdPwUA=
SCTE-35 マークアップのマクロ
フィードに EXT-OATCLS-SCTE35
または EXT-X-DATERANGE
マークアップが含まれている場合は、メタデータが自動的に抽出され、カスタムの Key-Value で利用できるようになります。カスタムの Key-Value を設定し、広告タグの生成時にその Key-Value をマクロとして挿入する必要があります。
SCTE-35 フィールド用に新しいカスタムの Key-Value を設定するときには、「scte35」のようなカスタムキーを使用します。マクロには、フィードで使用可能なフィールドのタイプに対応する値を設定します。
マクロ | 説明 |
---|---|
%%SPLICE_INSERT_EVENT_ID%% |
SCTE-35 メッセージ内で符号なし整数として指定され、10 進数の文字列に変換されます。 |
%%SPLICE_INSERT_UPID%% |
|
%%TIME_SIGNAL_EVENT_ID%% |
|
%%TIME_SIGNAL_UPID%% |
0x 接頭辞を省いた小文字の 16 進数に変換されます。 |
%%TIME_SIGNAL_UPID_RAW%% |
16 進数変換なしで SCTE メッセージの未加工データを挿入します(最初の文字列は有効な UTF-8 エンコード文字列である必要があります)。 |
%%AFMM_CBC%% |
スプライス情報から CM ブレークコードを抽出します(フランスの AF2M 規格の要件です)。 |