View a markdown version of this page

设置流输出的片段长度 - MediaConvert
Amazon Web Services 文档中描述的 Amazon Web Services 服务或功能可能因区域而异。要查看适用于中国区域的差异,请参阅 中国的 Amazon Web Services 服务入门 (PDF)。

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

设置流输出的片段长度

对于除 HLS(CMAF、DASH 和 Microsoft Smooth Streaming)之外的所有 ABR 流输出组,您为 Fragment length (片段长度) (FragmentLength) 指定的值必须与您指定的其他输出设置配合使用。如果错误设置了 Fragment length (片段长度),在查看者观看输出视频时,其播放器可能会发生崩溃。这种情况可能会发生,因为播放器期望在视频结尾有其他片段,并请求不存在的片段。

片段长度受已关闭的 GOP 节奏(GopClosedCadence)、GOP 大小(GopSize)和帧率(FramerateNumerator、FramerateDenominator)的值约束。有关在控制台和 JSON 作业规范中查找这些设置的信息,请参阅查找与片段长度相关的设置。

注意

在将输出帧率设置为跟随源时,确保输入视频文件的帧率与您为输出片段长度指定的值配合使用。输入视频文件的帧速率与输出帧速率相同。

片段长度的规则

片段长度必须是整数,并且必须是此值的倍数:GOP 大小 x 已关闭的 GOP 节奏 ÷ 帧率

片段长度示例

示例:正确设置

已关闭的 GOP 节奏 = 1

帧率 = 30

GOP 大小 = 60 帧

片段长度 = 2

示例:错误设置

已关闭的 GOP 节奏 = 1

帧率 = 50

GOP 大小 = 90 帧

片段长度 = 2

在设置片段长度时,请检查已关闭的 GOP 节奏、GOP 大小和帧率的值。

片段长度

您可以使用控制台或 JSON 作业规范来设置片段长度。Fragment length (片段长度) 设置将应用于输出组,并会影响该组中的每个输出。

要找到 片段长度 设置(控制台)
  1. 在 Create job(创建任务)页面上,在左侧 Job(任务)窗格的 Output groups(输出组)下,选择 CMAF、DASH ISO 或 Microsoft 平滑流式处理输出组的名称。

  2. 在右侧的组设置部分中,找到 Fragment length (片段长度)。

    组设置部分的标题为 CMAF group settings (CMAF 组设置)、DASH ISO group settings (DASH ISO 组设置) 或 MS Smooth group settings (MS Smooth 组设置)。

要找到 片段长度 设置(JSON 作业规范)
  • 查找作为 OutputGroupSettings 的子级的 FragmentLength,如以下示例所示:

    { "Settings": { ... "Inputs": [ ... ], "OutputGroups": [ { "Name": "DASH ISO", "OutputGroupSettings": { "Type": "DASH_ISO_GROUP_SETTINGS", "DashIsoGroupSettings": { "SegmentLength": 30, "FragmentLength": 2, "SegmentControl": "SINGLE_FILE", "HbbtvCompliance": "NONE" } }, ...

已关闭的 GOP 节奏、GOP 大小和帧速率

您可以使用控制台或 JSON 作业规范来设置已关闭的 GOP 节奏、GOP 大小和帧率。这些设置分别应用于每个输出。确保为输出组中的每个输出设置的值与您为输出组的 片段长度 指定的值配合使用。

注意

您的 ABR 堆栈包含多个输出。确保在每个输出中设置这些值。

查找输出的编码设置(控制台)
  1. 在 Create job(创建任务)页面上,在左侧 Job(任务)窗格的 Output groups(输出组)下,选择输出的名称,例如 Output 1(输出 1)、Output 2(输出 2)等。

  2. 在 Encoding settings (编码设置) 部分中,已自动选择 Video (视频) 选项卡。在此选项卡上找到已关闭的 GOP 节奏、GOP 大小和帧率。

查找输出的编码设置(JSON 作业规范)
  • 查找作为编解码器设置的子级的 GopClosedCadence、GopSize、FramerateNumerator 和 FramerateDenominator,如以下示例所示。在此示例中,编解码器为 H_264,因此,编解码器设置的父设置为 H264Settings。

    { "Settings": { ... "Inputs": [ ... ], "OutputGroups": [ { "Name": "DASH ISO", ... }, "Outputs": [ { "VideoDescription": { ... "CodecSettings": { "Codec": "H_264", "H264Settings": { "InterlaceMode": "PROGRESSIVE", "NumberReferenceFrames": 3, "Syntax": "DEFAULT", "Softness": 0, "GopClosedCadence": 1, "GopSize": 60, ... "FramerateNumerator": 60, "FramerateDenominator": 1 } }, ... },