

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

# MediaTailor プロトコル固有のパラメータの動作
<a name="manifest-query-parameters-protocol-differences"></a>

AWS Elemental MediaTailor は、HLS プロトコルと DASH プロトコルでマニフェストクエリパラメータを異なる方法で処理します。各プロトコルタイプには、特定のアプリケーションの場所と処理方法があります。

**HLS と DASH のパラメータ処理の比較**  
次の表は、MediaTailor が HLS および DASH プロトコル間でマニフェストクエリパラメータを処理する方法を比較しています。


| 側面 | HLS の動作 | DASH の動作 | 
| --- | --- | --- | 
| パラメータアプリケーション | マニフェスト URLsとセグメント URLsに直接適用 | Location 要素、SegmentTemplate 属性、セグメント URLsに適用 | 
| マニフェスト階層 | 多変量プレイリスト → メディアプレイリスト → セグメント | MPD → 期間 → AdaptationSets → 表現 | 
| 初期化 URLs | 存在する場合は HLS init URLsに適用されます | SegmentTemplate 初期化属性に適用 | 
| セッション処理 | プレイリストの更新全体で保持されるパラメータ | セッション継続性の MPD Location 要素に含まれるパラメータ | 
| 広告セグメントの処理 | メディアプレイリストの広告セグメント URLs に適用 | 広告期間 SegmentTemplate メディア属性に適用 | 

**パラメータアプリケーションの場所**  
MediaTailor は、マニフェストクエリパラメータを次の場所に適用します。

## HLS パラメータアプリケーション
<a name="hls-parameter-application"></a>

HLS ストリームの場合、MediaTailor はマニフェストクエリパラメータを以下に適用します。
+ **多変量プレイリスト URLs:** パラメータがメディアプレイリストリファレンスに追加されます
+ **メディアプレイリスト URLs:** パラメータはメディアプレイリスト内のセグメント URLs に含まれます
+ **コンテンツセグメント URLs:** すべてのコンテンツセグメントにマニフェストクエリパラメータが含まれます
+ **広告セグメント URLs:** 広告セグメントは CDN ルーティングと認可のパラメータを受け取ります
+ **HLS 初期化 URLs:** Init セグメントには、ストリームに存在する場合にパラメータが含まれます
+ **スレートセグメント URLs:** スレートコンテンツには、一貫した CDN 動作のためのパラメータが含まれています

**Example HLS パラメータアプリケーションの例**  
セッションの初期化を前提とすると、次のようになります。  

```
GET /v1/master/123456789/originId/index.m3u8?manifest.auth_token=abc123&manifest.region=us-west
```
多変量プレイリストには、メディアプレイリストリファレンスにパラメータが含まれます。  

```
#EXTM3U
#EXT-X-VERSION:3
#EXT-X-STREAM-INF:BANDWIDTH=2665212,RESOLUTION=960x540
../../../manifest/123456789/originId/session/0.m3u8?auth_token=abc123&region=us-west
```
メディアプレイリストには、セグメント URLsにパラメータが含まれます。  

```
#EXTM3U
#EXT-X-VERSION:6
#EXT-X-TARGETDURATION:7
#EXTINF:6.006,
https://origin.com/segment1.ts?auth_token=abc123&region=us-west
#EXTINF:6.006,
../../../../segment/123456789/originId/session/0/2?auth_token=abc123&region=us-west
```

## DASH パラメータアプリケーション
<a name="dash-parameter-application"></a>

DASH ストリームの場合、MediaTailor はマニフェストクエリパラメータを以下に適用します。
+ **MPD Location 要素:** Location 要素には、マニフェスト更新リクエストのパラメータが含まれます
+ **SegmentTemplate 初期化属性:** Init セグメント URLsパラメータが含まれます
+ **SegmentTemplate メディア属性:** メディアセグメント URL テンプレートにはパラメータが含まれます
+ **コンテンツセグメント URLs:** テンプレートから生成されたすべてのコンテンツセグメントにパラメータが含まれます
+ **広告セグメント URLs:** 広告期間セグメントには CDN 統合のパラメータが含まれます
+ **サーバー側のレポートリダイレクト:** 広告セグメントへの 302 リダイレクトがパラメータを保持

**Example DASH パラメータアプリケーションの例**  
セッションの初期化を前提とすると、次のようになります。  

```
GET /v1/dash/123456789/originId/index.mpd?manifest.auth_token=abc123&manifest.region=us-west
```
DASH マニフェストには、複数の場所にパラメータが含まれています。  

```
<MPD>
    <Location>https://mediatailor.com/v1/dash/123456789/originId/index.mpd?auth_token=abc123&region=us-west&aws.sessionId=session</Location>
    <Period>
        <AdaptationSet>
            <Representation>
                <SegmentTemplate 
                    initialization="init.mp4?auth_token=abc123&region=us-west" 
                    media="segment_$Number$.mp4?auth_token=abc123&region=us-west"/>
            </Representation>
        </AdaptationSet>
    </Period>
</MPD>
```