翻訳は機械翻訳により提供されています。提供された翻訳内容と英語版の間で齟齬、不一致または矛盾がある場合、英語版が優先します。
[Getting ready] (準備中): SCTE-35 ソース (セグメントまたはマニフェスト) を設定します。
チャンネルに HLS 入力がある場合は、SCTE-35 メッセージの送信元を識別するように入力を設定する必要があります。考えられるソースが 2 つあります。
-
トランスポートストリーム (TS) のセグメント。このタイプのソースは、SCTE-35 メッセージを含むことができるすべての入力に適用されます。特定の SCTE-35 パケット識別子 (PID) が選択されていない限り、TS に存在する最初の PID が使用されます。
-
HLS 入力マニフェスト内のタグ。このタイプのソースは HLS 入力にのみ適用されます。
HLS 以外の入力のソースを設定するには
-
[Create/Edit channel] (チャンネルの作成) ページのナビゲーションペインで、[Input attachments] (入力アタッチ) を選択します。
-
[General input settings] (全般入力設定) で、以下のフィールドに値を入力します。
-
SCTE-35 PID: PID 値を入力します。値が空白の場合、入力に存在する最初の SCTE-35 PID が選択されます。
-
-
必要に応じて、他の入力アタッチについても繰り返します。
注記
HLS 入力について次の手順に従うだけです。他のすべての入力の場合、SCTE-35 メッセージのソースは常に TS セグメントです。
HLS 入力のソースを設定するには
-
[Create/Edit channel] (チャンネルの作成) ページのナビゲーションペインで、[Input attachments] (入力アタッチ) を選択します。
-
HLS 入力ごとに、[Network input settings] (ネットワーク入力設定) で [HLS input settings] (HLS 入力設定) の [HLS input] (HLS 入力) を選択します。追加のフィールドが表示されます。
-
SCTE-35 ソースから SEGMENTS (デフォルト) or MANIFEST。
サポートされるマニフェスト形式
HLS 入力マニフェストを SCTE-35 ソースとして使用するように設定した場合は、次のセクションをお読みください。
MediaLive ソース HLS マニフェスト内の EXT-X-CUE-OUT タグと、オプションで EXT-X-CUE-IN タグから SCTE35 スプライス挿入メッセージを生成できるようになりました。これらのタグでサポートされている形式の例を次に示します。
-
#EXT-X-CUE-OUT:DURATION=60.000
-
#EXT-X-CUE-OUT:DURATION="60.000"
-
#EXT-X-CUE-OUT:60.000
-
#EXT-X-CUE-OUT:"60.000"
-
#EXT-X-CUE-IN
SCTE-35 MediaLive メッセージを作成する方法を教えてください。
それぞれについてEXT-X-CUE-OUT
、 MediaLive 以下のデータを含むスプライスインサートタイプの SCTE-35 メッセージを作成します。
-
splice_event_id
: 現在の入力から作成される最初の CUE-OUT メッセージは 1 から始まる数字で、1 から始まる。 MediaLive -
out_of_network_indicator
: true (1) -
program_splice_flag
: true (1) -
duration_flag
: true (1) -
break_duration
:-
auto_return
: 1 -
reserved
: 0 -
duration
: マニフェストからの継続時間。90kHz ティックに変換されます。例えば、15 秒は 1350000 ティックです。
-
-
splice_immediate_flag
: 0 (false) -
splice_time
: 入力マニフェストで、この EXT-X-CUE-OUT に続くビデオセグメントの最初のフレームのビデオ PTS を使用します。 -
unique_program_id
: 0 -
avail_num
: 現在の入力から作成される最初の CUE-OUT メッセージでは 1 から始まる数値。 MediaLive -
avails expected
: 0
それぞれについてEXT-X-CUE-IN
、 MediaLive 以下のデータを含むスプライスインサートタイプの SCTE-35 メッセージを作成します。
-
splice_event_id
: マニフェスト内の最新の EXT-X-CUE-OUT の ID。 -
out_of_network_indicator
: false (0) -
program_splice_flag
: true (1) -
duration_flag
: false (0) -
splice_immediate_flag
: 0 (false) -
splice_time
: 入力マニフェストで、この EXT-X-CUE-IN に続くビデオセグメントの最初のフレームのビデオ PTS を使用します。 -
unique_program_id
: 0 -
avail_num
: EXT-X-CUE-OUT の直近の値 -
avails expected
: 0
MediaLive メッセージの挿入方法:preroll
MediaLive CUE-OUT に対応する SCTE-35 メッセージを挿入する際にプリロールを含めます。このプリロールは、SCTE-35 メッセージ内の splice_time の 5 秒前です。
MediaLive プリロールに必要なバッファリングがチャンネルにない場合は、プリロールを減らします。バッファは秒単位で以下の積です。
-
入力セグメント期間。入力マニフェストで指定されます。
-
バッファに含めるセグメントの数。この値は、HLS 入力をアタッチするときの [Buffer segments] (バッファセグメント) フィールドで設定します。
例えば、セグメント期間が 6 秒、セグメント数が 3 の場合、バッファは 18 秒です。
適切なプリロールを確保する
計算された入力バッファが 5 秒未満の場合は、 MediaLive プリロールを減らします。 MediaLive プリロールを 0 に減らすことができます。つまり、SCTE35 メッセージの PTS 値がスプライス時間の PTS と等しくなるということです。
プリロールが不十分にならないように、バッファは少なくともプリロールに 1 セグメントを加えた値にすることをお勧めします。以下の手順に従います。
-
ステップ 1: 入力の最小バッファを秒単位で計算する: 秒単位のプリロール + 秒単位の 1 セグメントの長さ
-
ステップ 2: その最小バッファ内のセグメント数を計算する:最小バッファをセグメント長で割る
-
ステップ 3: その最小値を四捨五入して整数にします。または、その最小値が 3 未満である場合、その数値を 3 に切り上げます。
-
ステップ4: この数字 (または必要に応じて、より大きな数字) を入力アタッチの [Buffer segments] (バッファセグメント) に入力します。
例えば、セグメントの長さが 2 秒であると仮定します。
-
ステップ 1: 5 + 2 = 7
-
ステップ 2: 7 秒を 2 で割った = 3.5
-
ステップ 3: 4 に切り上げます。
-
ステップ4: この数字 (または、より大きな数字) を入力アタッチの [Buffer segments] (バッファセグメント) に入力します。