

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

# 了解 AWS Elemental MediaTailor 廣告插入行為
<a name="ad-behavior"></a>

AWS Elemental MediaTailor 透過取代或將廣告插入原始資訊清單，將廣告拼接至即時或隨選視訊 (VOD) 內容。是否插入或取代廣告取決於廣告休息時間在原始資訊清單中的設定方式，以及內容是 VOD 還是即時。廣告休息時間是顯示廣告的程式設計期間，而廣告時段是廣告休息時間內可以填入廣告的特定廣告時間單位。
+ 透過*廣告替換*，MediaTailor 會將內容區段取代為廣告。
+ 透過*廣告插入*，MediaTailor 會插入區段不存在的廣告內容。

如需有關 MediaTailor 如何將廣告拼接成即時和 VOD 內容的資訊，請選取適用的主題。

**Topics**
+ [VOD 的廣告拼接行為](#ad-behavior-vod)
+ [即時廣告拼接行為](#ad-behavior-live)

## VOD 的廣告拼接行為
<a name="ad-behavior-vod"></a>

MediaTailor 會根據原始資訊清單中廣告標記的設定方式，以及廣告決策伺服器 (ADS) 是否傳送 VMAP 回應，在 VOD 內容中插入或取代廣告。

對於依標記組態區別的各種廣告行為，請參閱下面小節內容。

### 如果廣告標記存在
<a name="markers-present"></a>

AWS Elemental MediaTailor 插入來源資訊清單中存在 SCTE-35 廣告標記的廣告。`0` 持續時間`EXT-X-CUE-OUT`值為 的廣告標記表示廣告插入。

#### HLS 廣告標記準則
<a name="markers-present-hls"></a>

 請遵循下列準則進行後導和廣告 Pod SCTE 訊號：

##### 前導廣告
<a name="post-roll-ad-markers"></a>

處理 HLS 後導時，`CUE-OUT/IN` 標記必須放在最後一個內容片段的前面。因為 HLS 規格會要求標籤裝飾項目於片段之前明確宣告。

例如，請考量下列宣告：

```
#EXT-X-CUE-OUT: 0
#EXT-X-CUE-IN
#EXTINF:4.000,
Videocontent.ts
#EXT-X-ENDLIST
```

AWS Elemental MediaTailor 插入後導，如下所示。

```
#EXTINF:4.000,
Videocontent.ts
#EXT-X-DISCONTINUITY
#EXTINF:3.0,
Adsegment1.ts
#EXTINF:3.0,
Adsegment2.ts
#EXTINF:1.0,
Adsegment3.ts
#EXT-X-ENDLIST
```

**Example 2：廣告裝置**  
 `CUE-OUT/IN` 標籤必須明確連接到區段。您無法連續使用多個 `CUE-OUT/IN` 標籤來模擬廣告組合行為。  
例如，以下宣告是`CUE-OUT/IN`有效使用 來描繪廣告 Pod。  

```
#EXT-X-CUE-OUT: 0
#EXT-X-CUE-IN
#EXTINF:4.000,
Somecontent1.ts
#EXT-X-CUE-OUT: 0
#EXT-X-CUE-IN
#EXTINF:4.000,
Somecontent2.ts
#EXT-X-CUE-OUT: 0
#EXT-X-CUE-IN
#EXTINF:4.000,
Videocontent.ts
```
前面的宣告會產生如下的輸出。  

```
Ad 1
Somecontent.ts
Ad 2
Somecontent2.ts
Videocontent.ts
Post-Roll Ad 3
```
下列宣告無效。  

```
#EXT-X-CUE-OUT: 0
#EXT-X-CUE-IN
#EXT-X-CUE-OUT: 0
#EXT-X-CUE-IN
#EXT-X-CUE-OUT: 0
#EXT-X-CUE-IN
#EXTINF:4.000,
Videocontent.ts
```

### 如果沒有廣告標記
<a name="no-markers"></a>

廣告標記是在資訊清單中發出廣告休息時間訊號的建議方式。不過，不需要廣告標記。如果資訊清單不包含 DASH 或 HLS 的廣告標記，MediaTailor 會對 ADS 進行單一呼叫，並根據回應建立廣告休息時間：
+ 如果 ADS 傳送 VAST 回應，MediaTailor 會在資訊清單開頭的廣告休息時間插入回應中的所有廣告。這就是所謂的前導。
+ 如果 ADS 傳送 VMAP 回應，MediaTailor 會使用廣告休息時間位移來建立休息時間，並在指定的時間 （前導、中導或後導） 在整個資訊清單中插入休息時間。MediaTailor 會針對資訊清單中的每個廣告休息時間，使用 VMAP 回應中每個廣告休息時間的所有廣告。
**注意**  
當區段與 VOD 內容的 VMAP 重疊插入點時，MediaTailor 會四捨五入至最接近的插入點。
**提示**  
如果您想要建立中繼廣告休息時間，但 ADS 不支援 VMAP，請確保資訊清單中有廣告標記。MediaTailor 會在標記處插入廣告，如下列各節所述。

**注意**  
對於伺服器引導的廣告插入方法，MediaTailor 會在資訊清單頂端插入前導廣告，玩家會在其他廣告類型之前播放這些廣告。

## 即時廣告拼接行為
<a name="ad-behavior-live"></a>

在即時串流中， AWS Elemental MediaTailor 一律會執行廣告替換，盡可能保持廣告標記之間的總時間。當廣告標記包含 `DURATION` 屬性時，MediaTailor 會使用 值來判斷廣告休息時間的持續時間。每個`CUE-OUT`指標都必須在即時工作流程中具有持續時間或相符`CUE-IN`指標。

MediaTailor 會執行 HLS 和 DASH 即時內容的廣告替換。如需 MediaTailor 如何計算廣告休息位置和時間的資訊，請參閱 [HLS 支援的廣告標記](hls-ad-markers.md)和 [DASH 廣告標記](dash-ad-markers.md)。

### 廣告選擇和替換
<a name="ad-behavior-live-ad-selection"></a>

AWS Elemental MediaTailor 包含來自廣告決策伺服器 (ADS) VAST 回應的廣告，如下所示：
+ 如果指定持續時間，MediaTailor 會選取一組符合持續時間的廣告，並包含這些廣告。
+ 如果未指定持續時間，MediaTailor 會播放盡可能多的廣告，直到遇到指出返回主要內容的廣告標記為止。

AWS Elemental MediaTailor 在即時廣告替換期間遵守下列準則：
+ MediaTailor 會嘗試播放完整的廣告，無需剪輯或截斷。
+ 當 MediaTailor 遇到指出廣告休息時間結束的廣告標記時，就會返回基礎內容。這時可能就會截短正在播放的廣告。
+ 在持續時間結束時，MediaTailor 會返回基礎內容。
+ 如果 MediaTailor 在廣告休息期間用完廣告播放，則會播放場記板，如果已設定場記板，或繼續播放基礎內容串流。沒有足夠的轉碼廣告來填補廣告休息時間時，通常會發生這種情況。

  
**提示**  
您可以使用個人化的閾值組態設定來定義廣告休息時間允許的廣告填補時間限制。如需詳細資訊，請參閱 [PlaybackConfiguration 參考](https://docs.aws.amazon.com/mediatailor/latest/apireference/API_PutPlaybackConfiguration.html#mediatailor-PutPlaybackConfiguration-request-PersonalizationThresholdSeconds)。

### 伺服器引導式廣告插入的即時前導
<a name="ad-behavior-live-preroll-sgai"></a>

與伺服器端廣告插入相比，即時預導對於伺服器引導廣告插入方法的運作方式不同：

伺服器端廣告插入 （拼接模式）  
前置廣告會取代每個檢視器工作階段開頭的部分即時內容。每個檢視器會根據加入串流的時間，在不同時間看到前導。

伺服器引導廣告插入方法  
MediaTailor 會將前導日期範圍標籤放在具有`CUE="PRE,ONCE"`屬性的所有媒體資訊清單頂端。這會導致玩家在播放開始時請求和播放預導廣告一次，即使共用相同的非個人化資訊清單。

**組態需求：**
+ **即時預導廣告決策伺服器：**為預導廣告設定 VAST 端點 （可能與中導廣告不同）
+ **即時前導允許持續時間上限：**設定前導廣告的持續時間上限 （選用 - 如果省略，則會使用所有傳回的廣告）

**技術實作：**
+ 前置日期範圍標籤使用 `START-DATE="1970-01-01T00:00:00.000Z"`(Unix epoch)
+ 預先引導的資產清單請求使用設定的預先引導廣告決策伺服器，而非一般 ADS
+ 玩家透過資產清單資料`availId="aws-mediatailor-preroll-1"`中的 來識別預導請求

**重要**  
對於即時串流，前置廣告涵蓋內容，而不是延遲內容。未來版本可能會透過其他組態選項支援內容延遲模式。

**注意**  
伺服器引導廣告插入的即時和 VOD 內容之間的前導行為有所不同。即時內容需要明確的前導組態，而 VOD 內容預設會使用一般廣告決策伺服器包含前導。

### 範例
<a name="ad-behavior-live-examples"></a>
+ 如果廣告休息時間的持續時間設定為 70 秒，且 ADS 回應包含兩個 40 秒的廣告，則 會 AWS Elemental MediaTailor 播放其中一個 40 秒的廣告。而剩下的時間，它會切換回到已設定的場記板或基礎內容。在此過程中的任何時候，如果 MediaTailor 遇到提示指標，它會立即切入基礎內容。
+ 如果廣告休息時間的持續時間設定為 30 秒，且 ADS 回應提供的最短廣告為 40 秒，MediaTailor 不會播放任何廣告。如果已設定廣告場記板，MediaTailor 會播放該場記板 30 秒，或直到遇到提示提示為止。否則，MediaTailor 會播放基礎內容。