实时输入冗余 AWS Elemental MediaPackage 处理流 - AWS Elemental MediaPackage

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

实时输入冗余 AWS Elemental MediaPackage 处理流

在中实现输入冗余 MediaPackage 通过在中的通道上发送两个流到单独的输入 URL MediaPackage. 其中一个流成为终端节点的主要活动源,而另一个流继续被动地接收内容。如果 MediaPackage 停止从活动流接收内容,它会切换到另一个输入流,以便不中断内容播放。

如果您使用 MediaPackage 使用 AWS Elemental MediaLive (例如),以下是输入冗余的流程:

  1. 您在中创建通道 MediaPackage,如中所述创建通道. 当 MediaPackage 预配置通道时,它会为通道创建两个输入 URL。如果您没有使用输入冗余,您可以将流发送到任何一个输入 URL。您无需向两个 URL 发送内容。

    注意

    当输入冗余可用时, MediaPackage 向现有通道添加第二个输入 URL,并将现有 URL 更新为新格式。您可以使用现有 URL 或新 URL 来输入内容。

  2. 您创建终端节点 MediaPackage 如中所述创建端点.

    重要

    如果您使用短输出段,则根据您的播放设备,您可能会在以下情况下看到缓冲 MediaPackage 切换输入。您可以使用终端节点上的时间延迟功能来减少缓冲。请注意,使用延时会在以下各方面产生延迟: end-to-end 内容的交付。有关启用时间延迟的信息,请参阅创建端点

  3. 您可以在 AWS Elemental 中创建输入和渠道 MediaLive,然后你添加一个 MediaPackage输出组到中的频道 MediaLive. 有关更多信息,请参阅 。从头开始创建通道中的AWS Elemental MediaLive 用户指南.

    如果您在 AWS Elemental 中使用 HLS 输出组 MediaLive,必须设置 HLS 组的设置上的输入损耗操作,以便在服务未接收输入时暂停输出。如果 MediaLive 当缺少输入时发送黑帧或其他某个填充帧,然后 MediaPackage 无法判断何时丢失段,并且随后无法执行故障转移。有关在中设置输入损耗操作的更多信息 MediaLive,请参阅HLS 组的字段中的AWS Elemental MediaLive 用户指南.

    重要

    如果您使用其他编码器(不是 AWS Elemental) MediaLive) 并将两个单独的流发送到 AWS Elemental 中的相同通道 MediaPackage,则这些流必须具有相同的编码器设置。否则,输入冗余可能无法正常工作;如果切换输入,播放可能会中断。

  4. 您在 AWS Elemental 中启动通道 MediaLive 将流发送到 MediaPackage.

  5. MediaPackage 接收两个输入 URL 上的内容,但一次只有一个流用于源内容。如果活动流缺少任何片段,那么 MediaPackage 自动故障转移到另一个流。 MediaPackage 继续使用此流,直到再次需要进行故障转移。

    用于确定输入是否缺少段的公式基于输入和终端节点上的段长度。如果输入缺少段并快速恢复,则段长度较长的终端节点将不会切换输入。这可能会导致使用不同输入的通道上出现不同的终端节点(如果一个终端节点切换而另一个不切换)。这是预期的行为,不应影响内容工作流程。