

本文為英文版的機器翻譯版本，如內容有任何歧義或不一致之處，概以英文版為準。

# MediaTailor 通訊協定特定的參數行為
<a name="manifest-query-parameters-protocol-differences"></a>

AWS Elemental MediaTailor 以不同的方式處理 HLS 和 DASH 通訊協定的資訊清單查詢參數。每個通訊協定類型都有特定的應用程式位置和處理方法。

**HLS 與 DASH 參數處理比較**  
下表比較 MediaTailor 如何處理跨 HLS 和 DASH 通訊協定的資訊清單查詢參數：


| 面向 | HLS 行為 | DASH 行為 | 
| --- | --- | --- | 
| 參數應用程式 | 直接套用至資訊清單 URLs和客群 URLs | 套用至位置元素、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 區段會在串流中出現時包含參數
+ **Slate URLs：**Slate 內容包含一致 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 位置元素：**位置元素包含資訊清單重新整理請求的參數
+ **SegmentTemplate 初始化屬性：**初始化區段 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>
```