为输出目标设计路径。 - MediaLive

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

为输出目标设计路径。

如果您尚未设计一个或多个完整目标路径,请执行此步骤。如果您已经设计了路径,请转到 在控制台上填写字段

设计路径
  1. 收集您之前从 Amazon S3 用户处获取的存储桶名称。例如:

    amzn-s3-demo-bucket

  2. 设计目标路径中跟随一个或多个存储桶的部分。有关详细信息,请参阅以下部分。

输出路径的语法

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

  • 主清单

  • 子清单

  • 媒体文件

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

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

文件 路径语法 示例
主清单文件 protocol bucket path baseFilename extension

存储桶 sports 中主清单的路径,文件名索引为:

s3ssl://amzn-s3-demo-bucket/sports/delivery/curling/index.m3u8
子清单文件 protocol bucket path baseFilename nameModifier extension curling 输出的高分辨率格式副本的子清单路径

s3ssl://amzn-s3-demo-bucket/sports/delivery/curling/index-high.m3u8

媒体文件(分段) protocol bucket path baseFilename nameModifier optionalSegmentModifier counter extension

第 230 个分段的文件的路径可能是:

s3ssl://amzn-s3-demo-bucket/sports/delivery/curling/index-high-00230.ts

这些目标路径的构造如下:

  • Amazon S3 用户应该已经向您提供了存储桶名称。

  • 您必须确定以下内容:

    • 文件夹

    • baseFilename

    • 修饰符

    • segmentModifier

    请参阅以下各节。

  • MediaLive 在计数器前插入下划线。

  • MediaLiveautomatically 生成这个计数器。最初,这是一个从 00001 开始的五位数字,每次增加 1。即 00001、00002、00003 依此类推。在达到 99999 之后,下一个数字是 100000(六位数字),然后是 100001、100002,依此类推。然后从 999999 到 1000000(七位数字),依此类推。

  • MediaLive 在扩展名前插入圆点。

  • MediaLive 选择扩展名:

    • 对于清单文件 – 始终为 .m3u8

    • 对于媒体文件 — .ts 表示传输流中的文件,.mp4 表示 f 容器中的文件 MP4

设计文件夹和 baseFilename

设计适合您目的的文件夹路径和 baseFilename。

如果每个输出有两个目标,则目标路径之间必须有所不同。请遵循以下准则:

  • 一个路径中必须至少有一个部分与另一个路径不同。所有部分都不同是可以接受的。

    因此,如果存储桶不同,则两个目标的文件夹路径和文件名可以彼此不同,也可以相同。例如:

    s3ssl://amzn-s3-demo-bucket/sports/delivery/curling/index-high.m3u8

    s3ssl://amzn-s3-demo-bucket1/sports/delivery/curling/index-high.m3u8

    s3ssl://amzn-s3-demo-bucket/sports/delivery/curling/index-high.m3u8

    s3ssl://amzn-s3-demo-bucket1/sports/redundant/curling/index-high.m3u8

  • 如果存储桶相同,则两个目标的文件夹路径和文件名必须彼此不同。例如:

    s3ssl://amzn-s3-demo-bucket/sports/delivery/curling/index-high.m3u8

    s3ssl://amzn-s3-demo-bucket/sports/redundant/curling/index-high.m3u8

设计 nameModifier

设计文件名的 nameModifier 部分。子清单和媒体文件在其文件名中包含该修饰符。该 nameModifier 将每个输出与其他输出区分开来,因此,它在每个输出中必须是唯一的。请遵循以下准则:

  • 对于包含视频(可能还包含其他流)的输出,您通常会描述视频。例如,-high-1920x1080-5500kpbs(以描述分辨率和比特率)。

  • 对于仅包含音频或仅包含字幕的输出,您通常会描述音频或字幕。例如,-aac-webVTT

  • 最好以分隔符(例如连字符)为 nameModifier 开头,以便将 baseFilenamenameModifier 分开。

  • nameModifier 可以包含数据变量

设计 segmentModifier

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

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