使用 ESAM XML 指定 SCTE-35 标记 - MediaConvert
Amazon Web Services 文档中描述的 Amazon Web Services 服务或功能可能因区域而异。要查看适用于中国区域的差异,请参阅中国的 Amazon Web Services 服务入门

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

使用 ESAM XML 指定 SCTE-35 标记

如果您的输入视频不包含 SCTE-35 标记,但您需要在输出中指定广告插入点,则可在 AWS Elemental MediaConvert 作业设置中提供事件信令和管理 (ESAM) XML 文档。执行此操作时,MediaConvert 会在您在文档中指定的插入点处使用 IDR(瞬时解码器刷新)帧来调节输出。在同样包含在 MPEG2-TS 和 HLS 容器中的输出中,传媒在这些点插入 SCTE-35 time_signal 消息。

对于 Apple HLS 输出组,您也可以选择提供用于限制 XML 文档的 HLS 清单。随后,您可以设置作业以相应地限制 HLS 输出的清单。

注意

要将 SCTE-35 标记置于 MPEG2-TS 输出中,除了提供 ESAM XML 文档之外,您还必须在每个输出上启用 ESAM SCTE-35。有关更多信息,请参阅该概述后面的控制台过程。

关于 ESAM 文档中的时间码

在输入剪辑和拼接后,在 XML 文档中指定相对于最终输出时间的插入点。从 00:00:00:00 开始计时,无论您的时间码设置如何。使用以下 24 小时格式与帧编号:H: 毫米:SS: FF.

例如,一个作业具有以下三个输入:一个 5 分钟的预卷、一个 1 小时的影片和一个 5 分钟的续卷。您可以使用输入剪辑来仅剪切 1 小时输入的最后 20 分钟。因此,您的带预卷和续卷的输出的时长为 30 分钟。如果您希望第一个插入点在主要内容中显示三分钟,则应在 8 分钟处指定它 — 5 分钟预卷后的 3 分钟处。

将 ESAM XML 文档包含在作业设置中(控制台)

  1. 从打开 MediaConvert 控制台https://console.aws.amazon.com/mediaconvert

  2. 选择 Create new job (创建新作业)。

  3. 为视频和音频设置输入、输出组和输出,如在 Amazon 元素传媒中设置工作使用 AWS Elemental MediaConvert 创建输出中所述。

  4. 在左侧的 Job (作业) 窗格中的 Job settings (作业设置) 部分中,选择 Settings (设置)

  5. Ad signaling (广告信号) 部分中,启用 Event signaling and messaging (ESAM) (事件信令和消息收发 (ESAM))

  6. 对于 Signal processing notification XML (信号处理通知 XML),请以文本形式输入 ESAM 信号 XML 文档。有关示例,请参阅示例 ESAM XML 信号处理通知

    注意

    默认情况下,MediaConvert 会向 ESAM 负载添加一个四秒预滚。这可能会导致 MediaConvert 将 SCTE-35 消息放置在 HLS 清单中的提示标记之前的一个段落。要删除预卷,请将responseSignalPreroll设置为 0。此设置是电子网络设置

  7. (可选)如果您希望将有关 SCTE-35 标记的信息包含在 HLS 清单中,对于 Manifest confirm condition notification XML (清单确认条件通知 XML),请以文本形式输入 ESAM 清单条件 XML 文档。传媒不会在你的短跑清单中包含有关你的 SCTE-35 标记的信息。

    要在传输流和清单中插入 SCTE-35 标记,请将dataPassThrough属性设置为"true"。如果您不希望在传输流中包含标记,请删除dataPassThrough属性。

    有关示例,请参阅示例 ESAM XML 清单确认条件通知

  8. 对于您希望 SCTE-35 标记所在的每个 MPEG2-TS 输出,请启用标记:

    1. 在左侧的 Job (作业) 窗格中,在 Output groups (输出组)File group (文件组) 下,选择输出。

    2. 确认它是 MPEG2-TS 输出。在 Output settings (输出设置) 部分中,请确保 Container (容器) 设置为 MPEG-2 Transport Stream (MPEG-2 传输流)

    3. 选择 Container settings (容器设置),然后向下滚动以查找 PID controls (PID 控件) 部分。

    4. 对于 ESAM SCTE-35,选择 Enabled (已启用)

    5. 对于 SCTE-35 source (SCTE-35 源),保留默认值 None (无)

  9. 仅对作业中的任何 Apple HLS 输出组执行此步骤。

    如果您要使用 ESAM 插入点限制 HLS 清单,请按照在您的 HLS 清单中包含 SCTE-35 信息中的过程操作。否则,请执行以下步骤来确认以下设置仍处于其默认状态:

    1. 请确保 Manifest confirm condition notification XML (清单确认条件通知 XML)(已在此过程的上一步中讨论)为空。

    2. 对于您的作业中的每个 Apple HLS 输出组,请确认您已将 Ad Markers (广告标记) 保持未选中状态。

      1. 在左侧的 Job (作业) 窗格中,在 Output groups (输出组) 下,选择 Apple HLS

      2. Apple HLS group settings (Apple HLS 组设置) 部分中,选择 Advanced (高级)

      3. Ad markers (广告标记) 部分中,清除 ElementalSCTE-35 enhanced (SCTE-35 增强) 复选框。

    3. 对于 Apple HLS 输出组中的每个输出,请确认 SCTE-35 source (SCTE-35 源) 设置为 None (无)

      1. 在左侧的 Job (作业) 窗格中,在 Output groups (输出组)Apple HLS 下,选择输出。

      2. Output settings (输出设置) 部分中,选择 Transport stream settings (传输流设置)

      3. 对于 SCTE-35 source (SCTE-35 源),选择 None (无)

将 ESAM XML 文档包含在作业设置中(API、开发工具包、Amazon CLI)

  1. 将作业设置的根处的 esam 属性及其子属性包含在 JSON 作业规范中。以下示例显示了这些属性。

    1. 以字符串形式将 ESAM 信号处理 XML 规范包含在设置 sccXml 中。

    2. (可选)以字符串形式将清单确认条件 XML 通知文档包含在设置 mccXml 中:

    "esam": { "responseSignalPreroll": 4000, "signalProcessingNotification": { "sccXml": "<?xml version=\"1.0\" encoding=\"utf-8\"?>\n<SignalProcessingNotification ..." }, "manifestConfirmConditionNotification": { "mccXml": "<?xml version=\"1.0\" encoding=\"utf-8\" standalone=\"yes\"?>\n<ns2:ManifestConfirmConditionNotification ... " }
  2. 对于作业中的每个 M2TS(MPEG2 传输流)输出,设置 JSON 作业规范,如以下示例所示。包含属性 scte35Esam。将 scte35Source 设置为 NONE

    "outputs": [ { "extension": "m2ts", "containerSettings": { "container": "M2TS", "m2tsSettings": { ... "scte35Esam": { "scte35EsamPid": 508 }, ... "scte35Source": "NONE" }
  3. 如果您要使用 SCTE-35 信息限制 HLS 清单,则对于作业中的每个 Apple HLS 输出组,包含以下内容。这些设置显示在此步骤结尾的示例中:

    如果您不想使用 SCTE-35 信息限制 HLS 清单,请保留 scte35Source 的默认设置 NONE,并且不要包含 adMarkers

    "outputGroups": [ { "customName": "apple_hls", "outputGroupSettings": { "type": "HLS_GROUP_SETTINGS", "hlsGroupSettings": { "adMarkers": [ "ELEMENTAL_SCTE35" ], ... } }, "outputs": [ { "extension": "m3u8", "nameModifier": "high", "outputSettings": { "hlsSettings": { ... } }, "containerSettings": { "container": "M3U8", "m3u8Settings": { ... "scte35Source": "PASSTHROUGH" }
  4. 像往常一样提交作业。

    有关以编程方式提交 Amazon 元素传媒作业的信息,请参阅开始使用 AWS Elemental MediaConvertAmazon开发工具包或Amazon CLI使用 API 开始使用 AWS Elemental MediaConvert