

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

# 为输出目标设计路径。
<a name="hls-destinations-emp-design"></a>

如果您尚未设计一个或多个完整目标路径，请执行此步骤。如果您已经设计了路径，请转到 [在控制台上填写字段](hls-specify-destination-emp.md)。

**设计路径**

1. 收集您[之前从 MediaPackage 用户那里获得](origin-server-hls-emp.md)的信息：
   + 频道的两个 URLs （输入端点是 MediaPackage 术语）。请参阅此步骤后面的信息。
   + 如果您使用的是标准版 MediaPackage，请获取用户名和密码。如果您使用的是 MediaPackage v2，则不使用用户凭证。

1. 您必须设计目标路径中跟随的部分 URLs。

**Topics**
+ [收集标准信息 MediaPackage](hls-destinations-emp-info.md)
+ [收集 MediaPackage v2 的信息](hls-destinations-emp-info-v2.md)
+ [输出路径的语法](hls-syntax-emp.md)
+ [设计 nameModifier](hls-nameModifier-design-emp.md)
+ [设计 segmentModifier](hls-segmentModifier-design-emp.md)

# 收集标准信息 MediaPackage
<a name="hls-destinations-emp-info"></a>

对于标准 MediaPackage版，频道 URLs 的两者类似于以下示例：

`6d2c.mediapackage.us-west-2.amazonaws.com/in/v2/9dj8/9dj8/channel` 

`6d2c.mediapackage.us-west-2.amazonaws.com/in/v2/9dj8/e333/channel`

其中：

`mediapackage`表示输入端点使用 MediaPackage API 的版本 1

`channel` 始终在 URL 的末尾。它是该目标上所有文件的基本文件名。

除了前 URLs 面的文件夹，两者总是相同的`channel`。

# 收集 MediaPackage v2 的信息
<a name="hls-destinations-emp-info-v2"></a>

对于 MediaPackage v2，一个频道 URLs 的两个类似于以下示例：

`mz82o4-1.ingest.hnycui.mediapackagev2.us-west-2.amazonaws.com/in/v1/live-sports/1/curling/index`

`mz82o4-2.ingest.hnycui.mediapackagev2.us-west-2.amazonaws.com/in/v1/live-sports/2/curling/index`

其中：


| Element | 说明 | 
| --- | --- | 
| mz82o4-1 和 mz82o4-2 |  指明这两个端点用于中的冗余信道 MediaPackage。前缀始终是 -1 和 -2 | 
| mediapackagev2 | 表示输入端点使用 MediaPackage API 的版本 2 | 
| live-sports/1/curling 和 live-sports/2/curling | 用于冗余提取的文件夹。一个文件夹始终包含 /1/，另一个文件夹始终包含 /2/  | 
| index | 始终在 URL 末尾。它是该目标上所有文件的基本文件名。 | 

# 输出路径的语法
<a name="hls-syntax-emp"></a>

HLS 输出始终包含三类文件：

请参阅以下部分。
+ 主清单
+ 子清单
+ 媒体文件

下表描述了构成这三类文件的目标路径的各个部分。

这三类文件的目标路径在 *baseFileN* ame 之前是相同的，这意味着 thatMediaLive 将所有这些类别的文件发送到同一个文件夹。每类文件的修饰符和文件扩展名都不同。发送到时 MediaPackage，必须将所有文件发送到同一个文件夹。下游系统希望所有文件都在一起。


| 文件 | 路径语法 | 示例 | 
| --- | --- | --- | 
| 主清单文件 |  protocol channelURL extension |  输出路径。以下是使用 MediaPackage v2 的示例 `https://mz82o4-2.ingest.hnycui.mediapackagev2.us-west-2.amazonaws.com/in/v1/live-sports/2/curling/index.m3u8`  | 
| 子清单文件 | protocol channelURL nameModifier extension | 以下是卷曲输出高分辨率再现的子清单路径示例（在使用 MediaPackage v2 的目标中）：`https://mz82o4-1.ingest.hnycui.mediapackagev2.us-west-2.amazonaws.com/in/v1/live-sports/1/curling/index-high.m3u8` | 
| 媒体文件（分段） | protocol channelURL nameModifier optionalSegmentModifier counter extension | 以下是第 230 段（在使用 MediaPackage v2 的目标中）的文件路径示例：https://mz82o4-1.ingest.hnycui.mediapackagev2.us-west-2.amazonaws.com/in/v1/live-sports/1/curling/index-high-00230.ts | 

这些路径的构造如下：
+  MediaPackage 用户应该已经为你提供了频道 URLs。它 URLs 涵盖了路径中直至并包括 baseFileName 的部分：
  + 对于标准版 MediaPackage，基本文件名始终为。`channel`
  +  MediaPackage 在 v2 中，baseFileName 始终是。`index`
+ 您必须指定以下内容：
  + 修饰符
  + segmentModifier

  请参阅以下各节。
+ MediaLive 在计数器前插入下划线。
+ MediaLive 生成计数器，计数器始终是从 00001 开始的五位数。
+ MediaLive 在扩展名前插入圆点。
+ MediaLive 选择扩展名：
  + 对于清单文件 – 始终为 ` .m3u8`
  + 对于媒体文件 — .ts 表示传输流中的文件，.mp4 表示 f 容器中的文件 MP4 

# 设计 nameModifier
<a name="hls-nameModifier-design-emp"></a>

设计文件名的 `nameModifier` 部分。子清单和媒体文件在其文件名中包含该修饰符。

该 `nameModifier` 将每个输出与其他输出区分开来，因此，它在每个输出中必须是唯一的。
+ 对于包含视频（可能还包含其他流）的输出，您通常会描述视频。例如，如果有三个格式副本，则可以使用 **-high**、**-medium** 和 **-low**。或者每个修饰符都可以准确地描述分辨率和比特率（**-1920x1080-5500kpbs**）。
+ 对于仅包含音频或仅包含字幕的输出，您通常会描述音频或字幕。例如，**-aac** 或 **-webVTT**。

最好以分隔符（例如连字符）为 `nameModifier` 开头，以便将 ` baseFilename` 与 `nameModifier` 分开。

`nameModifier` 可以包含[数据变量](variable-data-identifiers.md)。

# 设计 segmentModifier
<a name="hls-segmentModifier-design-emp"></a>

设计目标路径的 segmentModifier 部分。segmentModifier 是可选的；如果包含，则仅媒体文件名包含该部分。

该修饰符的典型使用案例是使用数据变量创建时间戳，以防止在通道重新启动时分段相互覆盖。例如，假设您包含时间戳 **\$1t\$1-**。分段 00001 可能具有 `index-120028-00001` 名称。如果输出在几分钟后重新启动（这会导致分段计数器重新启动），新的分段 00001 将具有 `index-120039-00001` 名称。新文件不会覆盖原始分段 00001 的文件。一些下游系统可能希望具有该行为。