步骤 1:设计输出目的地的路径 - MediaLive

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

步骤 1:设计输出目的地的路径

如果您尚未设计完整的目标路径,请执行此步骤。如果您已经设计了路径,请转至步骤 2:填写控制台上的字段

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

    DOC-EXAMPLE-BUCKET

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

输出路径的语法

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

  • 主清单

  • 孩子表现出来

  • 媒体文件

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

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

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

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

s3ssl://DOC-EXAMPLE-BUCKET/sports/delivery/curling/index.m3u8
子清单文件 protocol bucket path baseFilename nameModifier extension 卷曲输出高分辨率再现的子路径清单

s3ssl://DOC-EXAMPLE-BUCKET/sports/delivery/curling/index-high.m3u8

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

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

s3ssl://DOC-EXAMPLE-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://DOC-EXAMPLE-BUCKET/sports/delivery/curling/index-high.m3u8

    s3ssl://DOC-EXAMPLE-BUCKET1/sports/delivery/curling/index-high.m3u8

    或者

    s3ssl://DOC-EXAMPLE-BUCKET/sports/delivery/curling/index-high.m3u8

    s3ssl://DOC-EXAMPLE-BUCKET1/sports/redundant/curling/index-high.m3u8

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

    s3ssl://DOC-EXAMPLE-BUCKET/sports/delivery/curling/index-high.m3u8

    s3ssl://DOC-EXAMPLE-BUCKET/sports/redundant/curling/index-high.m3u8

设计 nameModifier

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

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

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

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

  • nameModifier 可以包含数据变量

设计 segmentModifier

设计目标路径的 segmentModifiers 部分。 segmentModifier 是可选的,如果将其包括在内,则只有媒体文件名包含它。

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