

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

# 中的 SCTE-35 消息选项 AWS Elemental MediaPackage
<a name="scte"></a>

本节介绍 AWS Elemental MediaPackage (MediaPackage) 提供的选项，用于配置如何在实时 HLS、DASH 和 CMAF 输出中处理 SCTE-35 消息。对于 live-to-VOD资产，将直播中的 SCTE-35 消息 MediaPackage 传递到采集的资产。这些选项不适用于 Microsoft 平滑流或视频点播 (VOD) 输出。

SCTE-35 消息随视频一起在您的源内容中提供。这些消息指明 MediaPackage 在打包输出内容时应插入广告标记的位置。默认情况下， MediaPackage 为源内容中的以下消息类型插入标记：
+ `splice_insert`
+ 带有以下分段类型的 `time_signal`：
  + 提供商广告
  + 分销商广告
  + 提供商放置机会
  + 分销商放置机会

  `time_signal` 还必须在 `segmentation_descriptor` 中包括交付限制标志。

出现以下命令时， MediaPackage 会在输出清单中插入相应的广告标记：
+ 对于 HLS 和 CMAF 输出、 MediaPackage 插入`EXT-X-CUE-OUT`和标签。`EXT-X-CUE-IN`
+ 对于 DASH 输出，当您启用了多周期清单时， MediaPackage 插入`EventStream`标签以创建多个时段。

以下各节介绍如何修改 MediaPackage SCTE-35 消息处理行为。

## 中的 SCTE-35 设置 MediaPackage
<a name="scte-settings"></a>

您可以修改与源内容中的 SCTE-35 消息的 MediaPackage 交互方式。在您的终端节点上配置以下设置。有关更多信息，请参阅下列内容：
+ 有关 MediaPackage 控制台的信息，请参阅[创建终端节点](endpoints-create.md)。
+ 有关 MediaPackage API，请参阅 *AWS Elemental MediaPackage Live API 参考中的 [Origin\_Endp](https://docs.aws.amazon.com/mediapackage/latest/apireference/origin_endpoints.html) oints*。

**重要**  
要修改 MediaPackage 处理 SCTE-35 消息的方式，您应该熟悉 SCTE-35 标准。您可以在此处查看最新标准：[SCTE 标准目录](https://account.scte.org/standards/library/catalog/)。您还应熟悉如何在您的源内容中实施 SCTE-35。

****广告标记****  
此设置在 HLS 和 CMAF 终端节点上可用。  
通过使用**广告标记**，您可以指定当 MediaPackage 检测到 SCTE-35 消息时应执行什么操作。提供以下选项：  
+ **无** — MediaPackage 忽略 SCTE-35 消息，并且不在输出清单中包含广告标记。
+ **SCTE-35 增强版** — 在输出清单中 MediaPackage包含符合**自定义广告触发器和****投放广告限制要求的 SCTE-35 消息的广告**标记和封锁标签。
+ **直通** — MediaPackage 复制源内容中的所有 SCTE-35 消息并将其插入输出清单中。

****Customize ad triggers (自定义广告触发器)****  
此设置在 HLS、CMAF 和 DASH 端点上可用。  
**自定义广告触发器**可在输出清单中识别哪些 SCTE-35 消息类型被 MediaPackage 视为广告。  
如果您不更改此设置，则 MediaPackage 会将以下消息类型视为广告：  
+ 拼接插入
+ 提供商广告
+ 分销商广告
+ 提供商放置机会
+ 分销商放置机会

****Ads on delivery restrictions (交付时的广告限制)****  
此设置在 HLS、CMAF 和 DASH 端点上可用。  
**Ads on delivery restrictions (交付时的广告限制)** 根据消息的 `segmentation_descriptor` 中的交付限制标志，设置哪些 SCTE-35 消息可作为广告的条件。 MediaPackage 会插入一个广告标记，该标记对应于满足交付限制条件的正确类型的消息的定位。  
如果您不更改此设置，则会将归类为*受限*消息（带有投递限制标记）的消息 MediaPackage 转换为输出清单中的广告标记。  
拼接插入 SCTE-35 消息不具有 `segmentation_descriptor`。如果您选择 **Customize ad triggers (自定义广告触发器)**，所有拼接插入会在输出清单中成为广告标记。

## 工作原理
<a name="scte-works"></a>

**广告标记**、**自定义广告触发器和****投递限制**广告设置共同确定 MediaPackage 如何处理来自来源内容的 SCTE-35 消息。

当来源内容中有 SCTE-35 消息时 MediaPackage ，根据您在**广告标记**中选择的值执行以下操作：
+ **如果为 “无**”， MediaPackage 则不对 SCTE-35 消息执行任何操作。在输出清单中不插入任何广告标记。
+ 对于 **Pass** through，从源内容中 MediaPackage 复制所有 SCTE-35 消息并将其插入输出清单中。
+ 对**于 SCTE-35 增强版**， MediaPackage 会检查是否有符合您设置要求的消息。在输出清单中， MediaPackage 插入对应于适用消息的广告标记。要检查您的要求，请执行以下 MediaPackage 操作：

  1. 检查是否有任何 SCTE-35 消息匹配您在 **Customize ad triggers (自定义广告触发器)** 中指定的消息类型

  1. 对于合适类型的消息，检查 `segmentation_descriptor` 中的交付限制标志是否满足您在 **Ads on delivery restrictions (交付时的广告限制)** 中设置的条件

  1. 对于符合投递限制条件的正确类型的消息，请在输出清单中为每条具有唯一 SCTE 分段 ID 的消息插入广告标记，如本章前面所述
+ 对于 **Daterange**，在 HLS 和 CMAF 输出清单中 MediaPackage 插入`EXT-X-DATERANGE`标签以向广告和节目过渡事件发出信号。

**有关 SCTE-35 数据轨道的重要说明**  
MediaPackage 还会发出信号源中存在的不是广告标记的 SCTE-35 标记。 MediaPackage 从输入内容中选择第一个可用数据轨道进行 SCTE-35 信号处理（通常标识为 PID 500）。为了正确处理 MediaPackage，请确保您的 SCTE-35 广告信号包含在第一个数据轨道中。

## EXT-X-DATERANGE 广告标记
<a name="ext-x-daterange-ad-marker"></a>

Daterange 广告标记用于向直播 HLS 和 CMAF 清单中的广告和节目转换发出信号。当您在终端节点上启用 daterange 广告标记时， MediaPackage 会在有 SCTE-35 `time_signal` 或`EXT-X-DATERANGE`标签的清单中插入`splice_insert`标签。 `EXT-X-DATERANGE`与`EXT-X-PROGRAM-DATE-TIME`标签配合使用。

 有关 HLS `EXT-X-DATERANGE` 和 `EXT-X-PROGRAM-DATE-TIME` 标签的信息，请参阅 [HTTP Live Streaming 第 2 版规范](https://tools.ietf.org/html/draft-pantos-hls-rfc8216bis-07#section-4.4.5.1)。

### 通过控制台启用 Daterange
<a name="enable-daterange-via-console"></a>

**要在创建或编辑端点时启用日期范围广告标记，请在 MediaPackage控制台的 **Packager 设置** > **其他配置** > **广告标记**下，选择 Daterange。**

如果选择 Daterange，则还*必须*输入大于的**节目间 date/time 隔 (秒)** 值。**0**节目 date/time 间隔是在与广告标记设置相同的 “**其他配置**” 窗格中设置的。

### 通过启用日期范围 AWS CLI
<a name="enable-daterange-via-cli"></a>

要为您的终端节点启用 daterange 广告标记，请在 AWS CLI 替换中{{region}}使用您自己的信息运行以下命令：

```
  aws --endpoint=https://mediapackage.{{region}}.amazonaws.com mediapackage --region {{region}} create-origin-endpoint --channel-id test_channel --id hlsmuxed
  --hls-package "{\"ProgramDateTimeIntervalSeconds\":60,\"AdMarkers\":\"DATERANGE\"}"
```

**重要**  
您必须设置一个大于 **0** 的 `ProgramDateTimeIntervalSeconds` 值。

### 通过 MediaPackage API 或 SDK 启用日期范围 AWS
<a name="enable-daterange-via-live-api-or-sdk"></a>

 要了解如何通过 MediaPackage 实时 API 或 AWS SDK 为 HLS 端点启用日期范围广告标记，请参阅以下内容：
+ [MediaPackage 实时 API 参考](https://docs.aws.amazon.com/mediapackage/latest/apireference/origin_endpoints.html) 
+ [AWS 开发工具包](https://aws.amazon.com/getting-started/tools-sdks/)

### 显示 SCTE-35 EXT-X-DATERANGE 信号的 HLS 清单示例
<a name="example"></a>

此示例 HLS 清单由 MediaPackage 使用`EXT-X-DATERANGE`和`EXT-X-PROGRAM-DATE-TIME`标签生成，用于向直播中的事件发出信号。

**注意**  
`EXT-X-DATERANGE` 标签的 `DURATION`、`PLANNED-DURATION` 和 `END-DATE` 属性是可选的。如果 SCTE-35 输入中不存在这些属性，或者在通过 MediaPackage API 创建终端节点时未设置这些属性，则生成的清单中将省略这些属性。

```
#EXTM3U
#EXT-X-VERSION:3
#EXT-X-TARGETDURATION:8
#EXT-X-MEDIA-SEQUENCE:11
#EXT-X-DATERANGE:ID="2415919105",START-DATE="2020-05-03T00:01:00.018Z",PLANNED-DURATION=29.988,SCTE35-OUT=0xFC303000000002CDE400FFF00506FE00526C14001A021843554549900000017FC00000292EA80A04ABCD0001300000D6F17117
#EXT-X-DATERANGE:ID="2147483649",START-DATE="2020-05-03T00:00:30.030Z",PLANNED-DURATION=90.006,SCTE35-CMD=0xFC303000000002CDE400FFF00506FE00293D6C001A021843554549800000017FFF00007B9ABC0A04ABCD0001100000680F3B4B
#EXT-X-PROGRAM-DATE-TIME:2020-05-03T00:01:08.040Z
#EXTINF:7.560,
../../../../index_1_11.ts?m=1588607409
#EXTINF:7.560,
../../../../index_1_12.ts?m=1588607409
#EXTINF:6.846,
../../../../index_1_13.ts?m=1588607409
#EXT-X-DATERANGE:ID="2415919105",START-DATE="2020-05-03T00:01:00.018Z",END-DATE="2020-05-03T00:01:30.006Z",DURATION=29.988
#EXTINF:0.714,
../../../../index_1_14.ts?m=1588607409
#EXTINF:7.560,
../../../../index_1_15.ts?m=1588607409
#EXTINF:7.560,
../../../../index_1_16.ts?m=1588607409
#EXTINF:7.560,
../../../../index_1_17.ts?m=1588607409
#EXTINF:6.636,
../../../../index_1_18.ts?m=1588607409
#EXT-X-DATERANGE:ID="2147483649",START-DATE="2020-05-03T00:00:30.030Z",END-DATE="2020-05-03T00:02:00.036Z",DURATION=90.006,SCTE35-CMD=0xFC304A00000002CDE400FFF00506FE00A4D8280034021843554549800000017FC000000000000A04ABCD0001110000021843554549800000027FFF00007B9ABC0A04ABCD000210000061166A61
#EXT-X-DATERANGE:ID="2147483650",START-DATE="2020-05-03T00:02:00.036Z",PLANNED-DURATION=90.006,SCTE35-CMD=0xFC304A00000002CDE400FFF00506FE00A4D8280034021843554549800000017FC000000000000A04ABCD0001110000021843554549800000027FFF00007B9ABC0A04ABCD000210000061166A61
#EXTINF:0.924,
../../../../index_1_19.ts?m=1588607409
#EXTINF:7.560,
../../../../index_1_20.ts?m=1588607409
#EXT-X-PROGRAM-DATE-TIME:2020-05-03T00:02:08.520Z
#EXTINF:7.560,
../../../../index_1_21.ts?m=1588607409
#EXT-X-ENDLIST
```