

翻訳は機械翻訳により提供されています。提供された翻訳内容と英語版の間で齟齬、不一致または矛盾がある場合、英語版が優先します。

# MediaTailor の概念
<a name="what-is-terms"></a>

 *AWS Elemental MediaTailor ユーザーガイド*全体で使用されている概念の概要を次に示します。

# HLS プレイリストタイプ
<a name="hls-playlist-types"></a>

HTTP ライブストリーミング (HLS) は、多変量プレイリストとメディアプレイリストの 2 つの主要なタイプのプレイリストを使用します。MediaTailor ワークフローを設定およびトラブルシューティングするには、これらのプレイリストタイプの違いを理解することが不可欠です。

マルチバリアントプレイリスト  
多変量プレイリストは、HLS ストリーミングワークフローの最上位インデックスファイルであり、コンテンツの使用可能なすべてのレンディションを一覧表示します。メディアプレイリストへの参照が含まれていますが、メディアセグメント自体は含まれていません。多変量プレイリストを使用すると、プレイヤーはネットワーク条件、デバイス機能、またはユーザー設定に基づいて最適なレンディションを選択できます。  
このプレイリストタイプは、さまざまなコンテキストの他のいくつかの名前でも知られています。  
+ マスタープレイリスト (非推奨用語)
+ マスターマニフェスト (一般的な業界用語)
+ プライマリプレイリスト
+ メインプレイリスト
+ インデックスファイル
+ マスター M3U8
MediaTailor ワークフローでは、多変量プレイリストは再生リクエストのエントリポイントであり、広告パーソナライゼーションが開始される場所です。  

**Example 多変量プレイリストの例**  

```
#EXTM3U
#EXT-X-VERSION:3
#EXT-X-INDEPENDENT-SEGMENTS
#EXT-X-STREAM-INF:BANDWIDTH=2665726,AVERAGE-BANDWIDTH=2526299,RESOLUTION=960x540,CODECS="avc1.640029,mp4a.40.2",SUBTITLES="subtitles"
index_1.m3u8
#EXT-X-STREAM-INF:BANDWIDTH=4786126,AVERAGE-BANDWIDTH=4547599,RESOLUTION=1280x720,CODECS="avc1.640029,mp4a.40.2",SUBTITLES="subtitles"
index_2.m3u8
#EXT-X-STREAM-INF:BANDWIDTH=8171787,AVERAGE-BANDWIDTH=7768157,RESOLUTION=1920x1080,CODECS="avc1.640029,mp4a.40.2",SUBTITLES="subtitles"
index_3.m3u8
```

メディアプレイリスト  
メディアプレイリストには、コンテンツの特定のレンディション (品質レベル) の実際のメディアセグメント情報が含まれます。これには、1 つのレンディションの再生に必要なタイミング情報、セグメント URLs、およびその他のメタデータが含まれます。各メディアプレイリストは、解像度、ビットレート、その他の特性の異なる組み合わせを表します。  
このプレイリストタイプは、他のいくつかの名前でも知られています。  
+ バリアントプレイリスト
+ 子マニフェスト (一般的な業界用語)
+ チャンクリスト
+ メディア M3U8
+ レンディションプレイリスト
MediaTailor ワークフローでは、メディアプレイリストは、コンテンツセグメントと広告セグメントの両方を適切なシーケンスに含めるようにパーソナライズされます。  

**Example メディアプレイリストの例**  

```
#EXTM3U
#EXT-X-VERSION:6
#EXT-X-TARGETDURATION:6
#EXT-X-MEDIA-SEQUENCE:123456
#EXT-X-DISCONTINUITY-SEQUENCE:0
#EXTINF:6.0,
segment123456.ts
#EXTINF:6.0,
segment123457.ts
#EXT-X-DISCONTINUITY
#EXTINF:5.0,
ad-segment1.ts
#EXTINF:5.0,
ad-segment2.ts
#EXT-X-DISCONTINUITY
#EXTINF:6.0,
segment123458.ts
```

**注記**  
多変量プレイリストとメディアプレイリストはどちらも、 `.m3u8`拡張機能を使用するテキストベースのファイルです。これらのファイルの用語はドキュメントやコンテキストによって異なりますが、HLS ストリーミングアーキテクチャでは基本的なロールは変わりません。

MediaTailor を設定するときは、通常、コンテンツオリジンのマルチバリアントプレイリストへの URL を指定します。MediaTailor は、マルチバリアントプレイリストとメディアプレイリストの両方のパーソナライゼーションを処理し、設定に従って広告を挿入します。

HLS プレイリストの仕様の詳細については、[HTTP Live Streaming RFC ](https://datatracker.ietf.org/doc/html/rfc8216)を参照してください。

# DASH マニフェストタイプ
<a name="dash-manifest-types"></a>

Dynamic Adaptive Streaming over HTTP (DASH) は、メディアプレゼンテーション説明 (MPD) マニフェストを使用してストリーミングコンテンツを配信します。MediaTailor ワークフローの設定とトラブルシューティングには、DASH マニフェストの構造とコンポーネントを理解することが不可欠です。

MPD (メディアプレゼンテーションの説明)  
MPD は、メディアコンテンツの構造と可用性を説明する DASH ストリーミングのプライマリマニフェストファイルです。これには、ストリーミングコンテンツを構成する期間、適応セット、表現、セグメントに関する情報が含まれています。  
このマニフェストタイプは、さまざまなコンテキストの他のいくつかの名前でも知られています。  
+ DASH マニフェスト
+ DASH MPD
+ マスターマニフェスト (HLS と比較した場合)
+ プレゼンテーションマニフェスト
MediaTailor ワークフローでは、MPD は再生リクエストのエントリポイントであり、広告パーソナライゼーションが開始される場所です。  

**Example MPD マニフェストの例**  

```
<?xml version="1.0" encoding="UTF-8"?>
<MPD xmlns="urn:mpeg:dash:schema:mpd:2011" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="urn:mpeg:dash:schema:mpd:2011 DASH-MPD.xsd" profiles="urn:mpeg:dash:profile:isoff-live:2011" type="dynamic" minBufferTime="PT5.000S" maxSegmentDuration="PT2.005S" availabilityStartTime="2020-01-01T00:00:00Z" publishTime="2020-01-01T12:30:00Z" minimumUpdatePeriod="PT2.000S" timeShiftBufferDepth="PT5M">
  <Period id="1" start="PT0.000S">
    <AdaptationSet id="1" contentType="video" segmentAlignment="true" bitstreamSwitching="true" frameRate="30000/1001" maxWidth="1920" maxHeight="1080" par="16:9">
      <Representation id="1" mimeType="video/mp4" codecs="avc1.640028" width="1920" height="1080" bandwidth="5000000">
        <SegmentTemplate timescale="90000" initialization="init-stream$RepresentationID$.m4s" media="chunk-stream$RepresentationID$-$Number%05d$.m4s" startNumber="1" duration="180000"/>
      </Representation>
      <Representation id="2" mimeType="video/mp4" codecs="avc1.4d401f" width="1280" height="720" bandwidth="2800000">
        <SegmentTemplate timescale="90000" initialization="init-stream$RepresentationID$.m4s" media="chunk-stream$RepresentationID$-$Number%05d$.m4s" startNumber="1" duration="180000"/>
      </Representation>
      <Representation id="3" mimeType="video/mp4" codecs="avc1.4d401e" width="640" height="360" bandwidth="1100000">
        <SegmentTemplate timescale="90000" initialization="init-stream$RepresentationID$.m4s" media="chunk-stream$RepresentationID$-$Number%05d$.m4s" startNumber="1" duration="180000"/>
      </Representation>
    </AdaptationSet>
    <AdaptationSet id="2" contentType="audio" segmentAlignment="true" lang="eng">
      <Representation id="4" mimeType="audio/mp4" codecs="mp4a.40.2" audioSamplingRate="48000" bandwidth="128000">
        <SegmentTemplate timescale="48000" initialization="init-stream$RepresentationID$.m4s" media="chunk-stream$RepresentationID$-$Number%05d$.m4s" startNumber="1" duration="96000"/>
      </Representation>
    </AdaptationSet>
  </Period>
</MPD>
```

Period  
Period は、DASH プレゼンテーションの一時的なセクションです。各期間には 1 つ以上の適応セットが含まれ、メディア時間の範囲を表します。広告挿入ワークフローでは、通常、個別の期間を使用してコンテンツと広告を区別します。  
このコンポーネントは、他のいくつかの名前でも知られています。  
+ コンテンツセグメント
+ タイムラインセクション
+ プログラムセグメント
MediaTailor ワークフローでは、期間を使用してメインコンテンツを広告コンテンツから分離し、各広告は通常独自の期間で表されます。  

**Example 期間の例**  

```
<Period id="ad-period-1" start="PT30.000S" duration="PT15.000S">
  <AdaptationSet id="1" contentType="video" segmentAlignment="true" bitstreamSwitching="true" frameRate="30000/1001" maxWidth="1920" maxHeight="1080" par="16:9">
    <Representation id="1" mimeType="video/mp4" codecs="avc1.640028" width="1920" height="1080" bandwidth="5000000">
      <SegmentTemplate timescale="90000" initialization="ad1/init-stream$RepresentationID$.m4s" media="ad1/chunk-stream$RepresentationID$-$Number%05d$.m4s" startNumber="1" duration="180000"/>
    </Representation>
  </AdaptationSet>
</Period>
```

AdaptationSet  
AdaptationSet は、1 つまたは複数のメディアコンテンツコンポーネントの交換可能なエンコードされたバージョンのセットをグループ化します。たとえば、ある AdaptationSet には複数のビデオ品質レベルが含まれ、別の AdaptationSet には複数のオーディオ言語オプションが含まれる場合があります。  
このコンポーネントは、以下とも呼ばれます。  
+ メディアコンポーネントグループ
+ ストリームセット
+ トラックグループ
MediaTailor ワークフローでは、コンテンツと広告の間で一貫したメディアタイプを維持するために、広告挿入中に AdaptationSets が保持されます。

表記  
表現は、AdaptationSet 内のメディアコンテンツの特定のエンコードされたバージョンです。各表現は、通常、ビットレート、解像度、またはその他のエンコーディングパラメータが異なるため、クライアントはネットワーク条件とデバイス機能に基づいて最適なバージョンを選択できます。  
このコンポーネントは、以下とも呼ばれます。  
+ レンディション (HLS に類似)
+ 品質レベル
+ ビットレートバリアント
+ ストリームバリアント
MediaTailor ワークフローでは、広告期間の表現は、コンテンツ期間の表現と可能な限り一致させて、スムーズな視聴体験を実現します。

セグメント  
セグメントは、URL によって個別に参照できるメディアデータの単位です。セグメントには実際のメディアコンテンツ (ビデオ、オーディオなど) が含まれ、MPD 内で参照されます。DASH には主に 2 つのタイプのセグメントがあります。  
+ **初期化セグメント**: コーデックパラメータやタイミング情報など、表現の初期化情報が含まれます。
+ **メディアセグメント**: 表現内の特定の時間範囲の実際のメディアデータが含まれます。
MediaTailor ワークフローでは、セグメント URLsは、多くの場合、適切なコンテンツまたは広告メディアファイルを指すように変更されます。

**注記**  
DASH マニフェストは、通常 `.mpd`拡張機能を使用する XML ベースのファイルです。これらのファイルとそのコンポーネントの用語はドキュメントやコンテキストによって異なる場合がありますが、DASH ストリーミングアーキテクチャでは基本的な構造は変わりません。

MediaTailor を設定するときは、コンテンツオリジンの MPD マニフェストへの URL を指定します。次に、MediaTailor はマニフェストのパーソナライゼーションを処理します。通常は、設定に従って広告の追加の期間を挿入します。

DASH マニフェストの仕様の詳細については、[「DASH Industry Forum Implementation Guidelines](https://dashif.org/docs/DASH-IF-IOP-v4.3.pdf)」を参照してください。

# 高度な DASH マニフェストの概念
<a name="dash-manifest-advanced-concepts"></a>

MediaTailor で DASH マニフェストを使用する場合、次の高度な概念を理解することで、ストリーミングワークフローをより効果的に設定およびトラブルシューティングできます。

期間開始時刻の計算  
DASH マニフェストでは、期間の開始時間は MPD の `availabilityStartTime` 属性と期間の `start` 属性に基づいて計算されます。ライブストリームの場合、開始時刻は可用性の開始時刻を基準にしていますが、VOD コンテンツの場合、通常はプレゼンテーションの開始時刻を基準にしています。  
MediaTailor が広告期間を挿入すると、開始時間を慎重に計算して、コンテンツと広告間のシームレスな移行を確保します。この計算では、以下が考慮されます。  
+ 元の期間の開始時刻
+ 前述の広告期間の期間
+ 広告決定サーバーのレスポンスで指定された任意のタイムオフセット

プリロールタイミングの計算  
DASH マニフェストのプレロール広告は、メインコンテンツが開始される前に表示されるため、特別な処理が必要です。MediaTailor は、マニフェストの開始時にプリロール広告を個別の期間として適切な開始時間と期間とともに挿入します。  
プレロール広告の場合、MediaTailor:  
+ プレロール広告ごとに新しい期間を作成します
+ 最初のプリロール期間の開始時間を 0 に設定します
+ すべてのプリロール広告の合計期間を考慮して、メインコンテンツ期間の開始時間を調整します。

Live-to-VOD 移行  
DASH マニフェストは、ライブストリームが終了すると、ライブ形式から VOD (ビデオオンデマンド) 形式に移行できます。この移行では、MPD の `type` 属性を から `dynamic` に変更`static`し、 `timeShiftBufferDepth` や などの他の属性を調整します`minimumUpdatePeriod`。  
MediaTailor が live-to-VOD 移行中にマニフェストを処理すると、以下が保証されます。  
+ 広告マーカーは VOD マニフェストに保持されます
+ 期間の開始時間は、適切なタイミングを維持するために調整されます。
+ マニフェストは VOD 再生クライアントと互換性があります

DRM 処理  
DASH マニフェストのデジタル著作権管理 (DRM) 情報は、通常、AdaptationSets または表現内の`ContentProtection`要素に含まれます。MediaTailor は広告挿入中にこれらの要素を保持し、コンテンツ保護がそのまま維持されるようにします。  
DRM で保護されたコンテンツを処理する場合、MediaTailor は次のようになります。  
+ 元のマニフェストのすべての ContentProtection 要素を維持します
+ 該当する場合、広告コンテンツが互換性のある DRM スキームを使用していることを確認します
+ マニフェスト全体で DRM 関連の属性と要素を保持します

SCC フラグ  
DASH マニフェストの補足コンテンツコントロール (SCC) フラグは、コンテンツの特性と再生要件に関する追加情報を提供します。これらのフラグは通常、MPD 構造内の属性または要素として含まれます。  
MediaTailor が処理する一般的な SCC フラグには以下が含まれます。  
+ コンテンツ評価情報
+ アクセシビリティ機能 (クローズドキャプション、オーディオの説明)
+ コンテンツアドバイザリ通知
+ 再生の制限
MediaTailor は、マニフェスト処理中にこれらのフラグを保持し、すべてのコンテンツメタデータがパーソナライズされたマニフェストに維持されるようにします。

これらの高度な概念を理解することで、最適なパフォーマンスを実現するように MediaTailor を設定し、DASH ストリーミングワークフローで発生する可能性のある問題をトラブルシューティングできます。

## 広告挿入の概念
<a name="what-is-ssai-terms"></a>

以下は、広告挿入に関連する概念の概要です。

**広告表示**  
広告主に販売できる広告時間枠内の特定の広告時間単位。広告ブレークには、複数の広告表示を含めることができます。MediaTailor は、広告決定サーバーから VAST レスポンスを受信すると、パーソナライズされた広告でこれらの表示を埋めます。

**広告時間枠**  
コマーシャルが表示されるプログラミング中の期間。広告ブレークは、コンテンツ前 (ロール前）、コンテンツ中 (ロール中）、またはコンテンツ後 (ロール後) に発生する可能性があります。MediaTailor は、SCTE-35 などのマーカーを通じてマニフェストの広告ブレークを識別します。

**広告決定サーバー (ADS)**  
現在の広告キャンペーンと視聴者の好みなどの基準に基づいて広告スポット仕様を提供するサーバー。

**設定**  
ユーザーが操作する MediaTailor 内のオブジェクト。設定は、オリジンサーバーと広告決定サーバー (ADS) に関する位置情報を保持します。また、MediaTailor 内外のアクセスポイントを提供するエンドポイントも保持します。

**ダイナミックトランスコーディング**  
コンテンツがリクエストされる時に、広告の品質と形式をプライマリ動画コンテンツに一致させるプロセス。ダイナミックトランスコーディングは、ストレージの要件を削減し、再生が広告と動画コンテンツ間をシームレスに移行することを確実にします。

**マニフェスト操作**  
マニフェストが適切な広告フラグメントとコンテンツフラグメントを参照するように、オリジンサーバーからのマニフェストを書き換えるプロセス。広告は、広告決定サーバー (ADS) からの VAST レスポンスによって決定されます。MediaTailor は、再生の進行に沿って、コンテンツストリームへの広告挿入または広告置換を実行します。

**VAST と VMAP**  
動画広告配信テンプレート (VAST) と動画複数広告再生リスト (VMAP) は、広告決定サーバー (ADS) が MediaTailor からの広告リクエストに対して送信する XML レスポンスです。このレスポンスは、MediaTailor がマニフェストに挿入する広告を決定します。VMAP には、広告時間枠のタイミングと広告表示も含まれます。MediaTailor 広告挿入の背景にあるロジックの詳細については、「[AWS Elemental MediaTailor 広告挿入動作について](ad-behavior.md)」を参照してください。MediaTailor が VAST と連動する方法の詳細については、「[MediaTailor 広告サーバー統合要件](vast.md)」を参照してください。

## チャネルアセンブリの概念
<a name="what-is-ca-terms"></a>

以下は、チャネルアセンブリに関連する概念の概要です。

**チャネル**  
チャネルは、ソースマニフェストをリニアストリームにアセンブルします。各チャネルには、プレイヤーがアクセスする再生 URL が含まれた 1 つ、または複数の出力があります。チャネル出力は、ユーザーが VOD ソース用に作成するパッケージ設定の内容に対応します。チャネルには、チャネルのストリームで VOD ソースがいつ再生されるかを決定するスケジュールが含まれています。

**パッケージ設定**  
パッケージ設定は VOD ソースを表すもので、特定のパッケージ化された形式の特性が含まれています。パッケージ設定をチャネル出力に関連付けて、HTTP Live Streaming (HLS) などの VOD ソースのパッケージ形式の再生ストリームを作成します。

**スケジュール**  
各チャネルは、チャネルのスケジュールに沿って配置されたプログラムで構成されています。スケジュールは、チャネルのリニアストリームでプログラムがいつ再生されるかを決定します。

**ソースロケーション**  
ソースロケーションは、アセットが保存されているオリジンサーバーを表します。Amazon S3、HTTP サーバー、コンテンツ配信ネットワーク (CDN)、MediaPackage などのパッケージングインフラストラクチャを使用できます。

**VOD ソース**  
VOD ソースは、映画やテレビ番組のエピソードといった単一のコンテンツを表します。VOD ソースをプログラムに関連付けて、それらをチャネルのリニアストリームに追加します。

**対象者**  
オーディエンスは、オプションで代替コンテンツを持つことができるビューワーコホートを定義します。標準リニアチャネルでオーディエンスを定義できます。