

本文属于机器翻译版本。若本译文内容与英语原文存在差异，则一律以英文原文为准。

# HLS 清单示例
<a name="manifest-hls-example"></a>

以下部分提供了 HLS 源清单和个性化清单的示例。了解这些示例可以帮助您配置 MediaTailor工作流程并对其进行故障排除。

有关如何将查询参数应用于 HLS 清单和区段的信息，请参阅。[MediaTailor HLS 隐式会话初始化](manifest-query-parameters-hls-implicit-session-initialization.md)

## 了解 HLS 播放列表类型
<a name="hls-playlist-overview"></a>

HTTP 直播 (HLS) 使用两种主要的播放列表类型：

多变体播放列表  
多变体播放列表是列出内容所有可用格式副本的顶级索引文件。它包含对媒体播放列表的引用，但本身不包含任何媒体片段。该播放列表允许玩家根据网络条件、设备功能或用户偏好选择最合适的节目。  
这种播放列表类型在各种上下文中也有其他几个名称，包括主播放列表、主清单、主播放列表、主播放列表、索引文件或主 M3U8。  
在 MediaTailor 工作流程中，多变体播放列表是播放请求的入口点，也是广告个性化的起点。

媒体播放列表  
媒体播放列表包含特定内容再现（质量级别）的实际媒体片段信息。它包括播放单个格式副本所需的时间信息 URLs、片段和其他元数据。  
这种播放列表类型也称为媒体播放列表、子清单、区块列表、媒体 M3U8 或格式副本播放列表。  
在 MediaTailor 工作流程中，媒体播放列表会进行个性化设置，以按适当顺序包括内容细分和广告细分。

有关 HLS 播放列表类型的更多详细信息，请参阅[HLS 播放列表类型](hls-playlist-types.md)。

## HLS 起源清单示例
<a name="manifest-hls-ex-origin"></a>

以下示例显示了 HLS 从内容来源 AWS Elemental MediaTailor 收到的 HLS 多变体播放列表。

```
#EXTM3U
    #EXT-X-VERSION:3
    #EXT-X-INDEPENDENT-SEGMENTS
    #EXT-X-STREAM-INF:BANDWIDTH=2665726,AVERAGE-BANDWIDTH=2526299,RESOLUTION=960x540,FRAME-RATE=29.970,CODECS="avc1.640029,mp4a.40.2",SUBTITLES="subtitles"
    index_1.m3u8
    #EXT-X-STREAM-INF:BANDWIDTH=3956044,AVERAGE-BANDWIDTH=3736264,RESOLUTION=1280x720,FRAME-RATE=29.970,CODECS="avc1.640029,mp4a.40.2",SUBTITLES="subtitles"
    index_2.m3u8
    #EXT-X-STREAM-INF:BANDWIDTH=995315,AVERAGE-BANDWIDTH=951107,RESOLUTION=640x360,FRAME-RATE=29.970,CODECS="avc1.4D401E,mp4a.40.2",SUBTITLES="subtitles"
    index_3.m3u8
    #EXT-X-MEDIA:TYPE=SUBTITLES,GROUP-ID="subtitles",NAME="caption_1",DEFAULT=YES,AUTOSELECT=YES,FORCED=NO,LANGUAGE="eng",URI="index_4_0.m3u8"
```

在这个多变体播放列表示例中：
+ 这些`#EXT-X-STREAM-INF`标签定义了具有不同分辨率和比特率的不同格式副本
+ 每个格式副本都引用一个媒体播放列表（例如`index_1.m3u8`）
+ 该`#EXT-X-MEDIA`标签定义了字幕曲目

以下示例显示了 HLS 从内容来源 AWS Elemental MediaTailor 收到的 HLS 媒体播放列表。本示例使用 `EXT-X-CUE-OUT` 和 `EXT-X-CUE-IN` 标签来描述广告效用机会。

```
#EXTM3U
    #EXT-X-VERSION:3
    #EXT-X-TARGETDURATION:7
    #EXT-X-MEDIA-SEQUENCE:8779957
    #EXTINF:6.006,
    index_1_8779957.ts?m=1566416212
    #EXTINF:6.006,
    index_1_8779958.ts?m=1566416212
    #EXTINF:5.372,
    index_1_8779959.ts?m=1566416212
    #EXT-OATCLS-SCTE35:/DAlAAAAAsvhAP/wFAXwAAAGf+/+AdLfiP4AG3dAAAEBAQAAXytxmQ==
    #EXT-X-CUE-OUT:20.020
    #EXTINF:0.634,
    index_1_8779960.ts?m=1566416212
    #EXT-X-CUE-OUT-CONT:ElapsedTime=0.634,Duration=21,SCTE35=/DAlAAAAAsvhAP/wFAXwAAAGf+/+AdLfiP4AG3dAAAEBAQAAXytxmQ==
    #EXTINF:6.006,
    index_1_8779961.ts?m=1566416212
    #EXT-X-CUE-OUT-CONT:ElapsedTime=6.640,Duration=21,SCTE35=/DAlAAAAAsvhAP/wFAXwAAAGf+/+AdLfiP4AG3dAAAEBAQAAXytxmQ==
    #EXTINF:6.006,
    index_1_8779962.ts?m=1566416212
    #EXT-X-CUE-OUT-CONT:ElapsedTime=12.646,Duration=21,SCTE35=/DAlAAAAAsvhAP/wFAXwAAAGf+/+AdLfiP4AG3dAAAEBAQAAXytxmQ==
    #EXTINF:6.006,
    index_1_8779963.ts?m=1566416212
    #EXT-X-CUE-OUT-CONT:ElapsedTime=18.652,Duration=21,SCTE35=/DAlAAAAAsvhAP/wFAXwAAAGf+/+AdLfiP4AG3dAAAEBAQAAXytxmQ==
    #EXTINF:1.368,
    index_1_8779964.ts?m=1566416212
    #EXT-X-CUE-IN
    #EXTINF:4.638,
    index_1_8779965.ts?m=1566416212
    #EXTINF:6.006,
    index_1_8779966.ts?m=1566416212
    #EXTINF:6.006,
    index_1_8779967.ts?m=1566416212
    #EXTINF:6.006,
    index_1_8779968.ts?m=1566416212
```

在此媒体播放列表示例中：
+ `#EXTINF`标签指定每个片段的持续时间
+ 该`#EXT-X-CUE-OUT`标签标志着广告插播的开始
+ 这些`#EXT-X-CUE-OUT-CONT`标签提供有关正在进行的广告中断的信息
+ 该`#EXT-X-CUE-IN`标签标志着广告插播的结束

## HLS 个性化清单示例
<a name="manifest-hls-ex-personalized"></a>

以下示例显示了个性化的 HLS 多变体播放列表。 AWS Elemental MediaTailor 

```
#EXTM3U
    #EXT-X-VERSION:3
    #EXT-X-MEDIA:LANGUAGE="eng",AUTOSELECT=YES,FORCED=NO,TYPE=SUBTITLES,URI="../../../manifest/43f3e412052f2808dd84ea1da90e92e914edddee/external-canary-hls/ee1696a8-4f7f-4c4c-99de-9821131847e8/3.m3u8",GROUP-ID="subtitles",DEFAULT=YES,NAME="caption_1"
    #EXT-X-INDEPENDENT-SEGMENTS
    #EXT-X-STREAM-INF:CODECS="avc1.640029,mp4a.40.2",AVERAGE-BANDWIDTH=2526299,RESOLUTION=960x540,SUBTITLES="subtitles",FRAME-RATE=29.97,BANDWIDTH=2665726
    ../../../manifest/43f3e412052f2808dd84ea1da90e92e914edddee/external-canary-hls/ee1696a8-4f7f-4c4c-99de-9821131847e8/0.m3u8
    #EXT-X-STREAM-INF:CODECS="avc1.640029,mp4a.40.2",AVERAGE-BANDWIDTH=3736264,RESOLUTION=1280x720,SUBTITLES="subtitles",FRAME-RATE=29.97,BANDWIDTH=3956044
    ../../../manifest/43f3e412052f2808dd84ea1da90e92e914edddee/external-canary-hls/ee1696a8-4f7f-4c4c-99de-9821131847e8/1.m3u8
    #EXT-X-STREAM-INF:CODECS="avc1.4D401E,mp4a.40.2",AVERAGE-BANDWIDTH=951107,RESOLUTION=640x360,SUBTITLES="subtitles",FRAME-RATE=29.97,BANDWIDTH=995315
    ../../../manifest/43f3e412052f2808dd84ea1da90e92e914edddee/external-canary-hls/ee1696a8-4f7f-4c4c-99de-9821131847e8/2.m3u8
```

请注意如何 MediaTailor 修改媒体播放列表 URLs 以包含特定会话的信息，从而实现个性化广告插入。

以下示例显示了 AWS Elemental MediaTailor 个性化的媒体播放列表。

```
#EXTM3U
    #EXT-X-VERSION:6
    #EXT-X-TARGETDURATION:7
    #EXT-X-MEDIA-SEQUENCE:8779957
    #EXT-X-DISCONTINUITY-SEQUENCE:0
    #EXTINF:6.006,
    https://777788889999.mediapackage.us-west-2.amazonaws.com/out/v1/e309ffd02ba8498d864dcaacff7a5ad9/index_1_8779957.ts?m=1566416212
    #EXTINF:6.006,
    https://777788889999.mediapackage.us-west-2.amazonaws.com/out/v1/e309ffd02ba8498d864dcaacff7a5ad9/index_1_8779958.ts?m=1566416212
    #EXTINF:5.372,
    https://777788889999.mediapackage.us-west-2.amazonaws.com/out/v1/e309ffd02ba8498d864dcaacff7a5ad9/index_1_8779959.ts?m=1566416212
    #EXT-X-DISCONTINUITY
    #EXTINF:3.066667,
    ../../../../segment/43f3e412052f2808dd84ea1da90e92e914edddee/external-canary-hls/ee1696a8-4f7f-4c4c-99de-9821131847e8/0/8779960
    #EXTINF:3.0,
    ../../../../segment/43f3e412052f2808dd84ea1da90e92e914edddee/external-canary-hls/ee1696a8-4f7f-4c4c-99de-9821131847e8/0/8779961
    #EXTINF:3.0,
    ../../../../segment/43f3e412052f2808dd84ea1da90e92e914edddee/external-canary-hls/ee1696a8-4f7f-4c4c-99de-9821131847e8/0/8779962
    #EXTINF:3.0,
    ../../../../segment/43f3e412052f2808dd84ea1da90e92e914edddee/external-canary-hls/ee1696a8-4f7f-4c4c-99de-9821131847e8/0/8779963
    #EXTINF:2.966667,
    ../../../../segment/43f3e412052f2808dd84ea1da90e92e914edddee/external-canary-hls/ee1696a8-4f7f-4c4c-99de-9821131847e8/0/8779964
    #EXT-X-DISCONTINUITY
    #EXTINF:6.006,
    https://777788889999.mediapackage.us-west-2.amazonaws.com/out/v1/e309ffd02ba8498d864dcaacff7a5ad9/index_1_8779963.ts?m=1566416212
    #EXTINF:1.368,
    https://777788889999.mediapackage.us-west-2.amazonaws.com/out/v1/e309ffd02ba8498d864dcaacff7a5ad9/index_1_8779964.ts?m=1566416212
    #EXTINF:4.638,
    https://777788889999.mediapackage.us-west-2.amazonaws.com/out/v1/e309ffd02ba8498d864dcaacff7a5ad9/index_1_8779965.ts?m=1566416212
    #EXTINF:6.006,
    https://777788889999.mediapackage.us-west-2.amazonaws.com/out/v1/e309ffd02ba8498d864dcaacff7a5ad9/index_1_8779966.ts?m=1566416212
    #EXTINF:6.006,
    https://777788889999.mediapackage.us-west-2.amazonaws.com/out/v1/e309ffd02ba8498d864dcaacff7a5ad9/index_1_8779967.ts?m=1566416212
    #EXTINF:6.006,
    https://777788889999.mediapackage.us-west-2.amazonaws.com/out/v1/e309ffd02ba8498d864dcaacff7a5ad9/index_1_8779968.ts?m=1566416212
```

在此个性化媒体播放列表示例中：
+ MediaTailor 在内容区段之间插入了广告区段
+ 这些`#EXT-X-DISCONTINUITY`标签标记了内容和广告之间的过渡
+ 内容分段由源服务器提供（MediaPackage 在本例中）
+ 广告区段是从 MediaTailor的广告细分存储空间中提供的

## 个性化清单的主要区别
<a name="manifest-hls-key-differences"></a>

 MediaTailor 对HLS清单进行个性化设置时，它会进行一些重要的更改：

多变体播放列表更改  
+ 变体播放列表 URLs 被重写为指向包含会话信息的 MediaTailor-man URLs aged
+ 为了获得最佳播放效果，可以重新组织标签的顺序

变体播放列表更改  
+ 广告标记 (`EXT-X-CUE-OUT`,`EXT-X-CUE-IN`) 将替换为实际的广告细分
+ 在边界处 content/ad 添加不连续标记 (`EXT-X-DISCONTINUITY`)
+ 内容段 URLs 被重写为指向源或 CDN
+ 广告区段 URLs 已添加到 point to MediaTailor 的广告区段存储空间

了解这些更改可以帮助您解决 MediaTailor 工作流程中的问题，并确保正确配置 CDN 和播放器。

## 相关主题
<a name="manifest-hls-related-topics"></a>

有关 HLS 清单和的更多信息 MediaTailor，请参阅以下主题：
+ [HLS 播放列表类型](hls-playlist-types.md)-HLS 播放列表类型的详细说明
+ [使用 CDN 优化 MediaTailor 广告个性化和内容交付](integrating-cdn.md)-有关将 CDN 与以下内容一起使用的信息 MediaTailor
+ [MediaTailor 广告插入的工作原理](what-is-flow.md)- MediaTailor 广告插入工作原理概述