

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

# `SegmentTemplate` 中的 `media` 屬性
<a name="segtemp-format-media"></a>

`SegmentTemplate` 屬性 (Property) 中的 `media` 屬性 (Attribute) 定義可讓播放裝置傳送區段請求的 URL。根據預設，此 URL 會使用`$Number$`變數來識別請求的特定區段。當播放裝置請求該區段時，它會將變數取代為區段的數字識別符。對於呈現中的第一個區段，請將此識別符以來自 `SegmentTemplate` 屬性的 `startNumber` 的值取代。每個額外的區段會以一的增量遞增。

在播放可用時，若改為以時間戳記識別區段，有些播放程式能夠更順利地導覽區段。為了支援此使用案例，MediaPackage 會使用 `$Time$`變數，而不是 `media` 屬性的 `$Number$` URL。當播放裝置請求區段時，它會將此變數換成區段的可用開始時間。此開始時間可在 `SegmentTimeline` 物件中區段 (`S`) 屬性的 `t` 值中識別。如需範例，請參閱[運作方式](#how-stemp-works)。

## `$Time$` 變數的運作方式
<a name="how-stemp-works"></a>

透過 DASH 端點上的**區段範本格式**設定啟用`$Time$`變數，如中所述[建立 DASH 端點](endpoints-dash.md)。 AWS Elemental MediaPackage 會採取下列動作：

1.  當 MediaPackage 產生 DASH 資訊清單時，它會在 `SegmentTemplate` 物件`media`的值中使用 `$Time$`變數，如下列範例所示：  
**Example**  

   ```
   <SegmentTemplate timescale="30" media="index_video_1_0_{{$Time$}}.mp4?m=1122792372" initialization="index_video_1_0_init.mp4?m=1122792372" startNumber="2937928">
   ```

1. 當播放裝置請求區段時，會使用 `media` 屬性中定義的 URL，並將變數取代為所請求區段的可用性開始時間。
**重要**  
取代該變數的值，必須是區段確切的 `t` 值。如果請求使用任意時間戳記，MediaPackage 不會尋找最近的區段。  
**Example**  

   以下是來自某個簡報的區段範本範例。它使用 `$Time$` 變數。

   ```
   <SegmentTemplate timescale="30000" media="155_video_1_2_$Time$.mp4?m=1545421124" initialization="155_video_1_2_init.mp4?m=1545421124" startNumber="710">
     <SegmentTimeline>
          <S t="255197799" d="360360" r="8"/>
          <S t="258441039" d="334334"/>
     </SegmentTimeline>
   </SegmentTemplate>
   ```

   第一個區段的請求 URL 為 **155\_video\_1\_2\_{{255197799}}.mp4**。有了 360360 的持續時間，下一個區段請求為 **155\_video\_1\_2\_{{255558159}}.mp4**，以此類推，一直到第九個區段。

   最後一個區段請求為 **155\_video\_1\_2\_{{258441039}}.mp4**。