

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

# 在计划中规划输入切换
<a name="ips-step-plan-switches"></a>

在为每个输入设计了选择器之后（步骤 4），您必须计划在接收这些输入时 MediaLive 要遵循的顺序。

**此步骤的结果**

完成此步骤后，您已将一个输入标识为将添加到通道中的第一个输入。

此外，您还标识了输入切换的有序列表。每次切换都包含以下内容：
+ 切换的操作名称。
+ 与切换关联的输入附件的名称。
+ 标识为静态或动态的切换输入。
+ 切换的类型 – 固定、跟随或即时。

**Topics**
+ [规划操作名称](ips-plan-action-names.md)
+ [规划输入切换的顺序](ips-order-switches.md)
+ [输入切换列表示例](#ips-ordered-list-examples)
+ [当下一个输入为固定输入或即时输入时处理转换](ips-transition-gap.md)
+ [在下一个输入是跟随输入时处理转换](transition-follow-success.md)
+ [**准备输入 – 当下一次输入为即时输入时，降低延迟**](#ips-plan-immediate-prepare-input)

# 规划操作名称
<a name="ips-plan-action-names"></a>

您应该在计划中计划输入切换操作的 MediaLive 名称。操作名称必须在每个通道的计划中保持唯一。

对于静态输入，您可能需要对操作进行命名，使其指示所适用的输入。例如，对于每次切换到名为 static-live-studio-feed：
+ `static-live-studio-feed-action-1`
+ `static-live-studio-feed-action-2`
+ `static-live-studio-feed-action-3`

对于动态输入的输入切换操作，您可以使用输入名称（或部分名称）加上文件 URL（或部分 URL）。例如：
+ `dyn-preroll-EN-FR-ES-DE-ad-ward-cars-1`
+ `dyn-preroll-EN-FR-ES-DE-ad-zel-cafe`
+ `dyn-preroll-EN-FR-ES-DE-ad-ward-cars-2`

# 规划输入切换的顺序
<a name="ips-order-switches"></a>

我们建议您在计划中创建操作之前，先 MediaLive 计划好输入开关的顺序。

**规划输入切换的顺序**

1. 在第一个位置，将 MediaLive 要收录的输入附件放在第一位。请记录此输入将是计划中的即时切换。

1. 列出一系列切换以及每次切换要使用的输入附件。确定每次切换的开始类型 – 固定、即时或跟随。有关更多信息，请参阅[固定、即时和跟随切换](ips-switch-types.md)和[输入切换的规则和限制](ips-limits.md)。

   您应该能够将固定输入切换和跟随输入切换整理成有序列表。您可能无法将即时切换包括在有序列表中，因为您不知道它们的开始时间。请参阅此程序后面的[示例](ips-step-plan-switches.md#ips-ordered-list-examples)。

   请注意以下有关切换到输入的内容：
   + 您可以根据需要多次切换到输入附件。
   + 切换到动态输入时，必须提供适用于动态输入的该用法的 URL。在您创建的列表中，指定适用于每种用法的 URL。

1. 阅读本部分后面的信息，了解如何在切换之间转换。对于列表中的每个输入附件，请记录如何处理转换。

**关于计划的模型**  
在计划中设置输入切换有两种模型：
+ 在推荐的模型中，您仅使用计划来控制所有输入的提取。使用此模型时，通道中输入附件的顺序无关紧要。您可以设置计划，使第一个输入切换是要首先提取的输入的即时切换。在通道启动之后并在通道开始提取之前，通道将执行该即时切换。

  本部分前面的步骤介绍了如何为该模型设计计划。
+ 在另一个模型中，第一个输入附件是接收的第一个输入 MediaLive 。设置计划以便仅在第一次提取之后执行其输入切换。

  我们不建议使用此模型，因为您必须查看输入附件的顺序和计划。使用第一个模型，您可以从一个地方（计划）监控提取顺序。

## 输入切换列表示例
<a name="ips-ordered-list-examples"></a>

此示例显示了一系列规划输入切换。第一个输入是即时切换到文件输入。然后，有几个短文件输入为跟随切换，因此切换发生在前一个输入的末尾。这些输入一个接一个地运行，但计划是随时通过即时切换到第一个实时输入来中断这些输入。之后，计划在两个实时输入之间来回切换。您不知道切换的确切时间，因此您需要将这些切换设置为即时切换。

排序列表：操作名称、开始类型、输入附件名称
+ 启动、即时、横幅
+ static-1、跟随、short-clip-12
+ static-2、跟随、short-clip-32
+ static-3、跟随、short-clip-77
+ static-4、跟随、short-clip-18

随时可以进行即时切换：
+ static-live-studio，即时，live-1
+ static-live-alternate，即时，live-2

# 当下一个输入为固定输入或即时输入时处理转换
<a name="ips-transition-gap"></a>

在制定计划时，您应确保从文件输入（输入 A）切换到在固定时间开始的输入（输入 B）或立即开始的输入时没有间隙。输入 B 可以是文件或实时输入。如果当前输入在切换开始时间之前结束，则可能存在间隙。

每个输入附件中的 **Source end behavior (源结束行为)** 字段控制该间隙。（此字段显示在 **Input attachments (输入附件)** 页面上的通道 **General input settings (一般输入设置)** 部分中。） 在这种情况下，有两种方法可以确保平稳过渡：
+ 如果将输入 A 的 “**源端行为**” 字段设置为 **LOOP**，则当输入 A 完成 MediaLive 时，会返回并再次摄取它，直到输入 B 的开始时间到来。
+ 如果您将输入 A 的 **Source end behavior (源结束行为)** 字段设置为 **CONTINUE (继续)**，则输入 A 只会被提取一次；当输入完成时，通道将跟随在 **Input Loss Behavior (输入损耗行为)** 字段集中指定的行为（尽管没有“重复帧”逻辑）。当到达输入 B 的开始时间时，输入损耗行为将结束，并且通道将切换到输入 B。

  （要显示此字段，在**全局配置**的**常规输入设置**中，对于**输入丢失行为**，请选择**输入丢失行为**。系统会显示更多字段。有关更多信息，请参阅[处理视频输入损耗](feature-input-loss.md)。）

# 在下一个输入是跟随输入时处理转换
<a name="transition-follow-success"></a>

在制定计划时，应确保从一个输入切换到“跟随输入”可以成功。

如果当前输入（输入 A）设置为循环，则跟随输入（输入 B）将不会成功。当 AWS Elemental MediaLive 到达文件末尾时，它会从文件的开头重新开始摄取。

每个输入附件中的 **Source end behavior (源结束行为)** 字段控制该循环。（此字段显示在 **Input attachments (输入附件)** 页面上的通道 **General input settings (一般输入设置)** 部分中。） 
+ 始终将输入 A 的 **Source end behavior (源结束行为)** 设置为 **CONTINUE (继续)**。当输入 A 完成时，通道将立即切换到输入 B。

在创建通道时，务必在每个输入附件中将 **Source end behavior (源结束行为)** 设置为 **CONTINUE (继续)**，此时计划中的下一个规划的输入将是跟随输入。如果您未使用 **CONTINUE (继续)** 来设置输入，则无法设置将下一个输入作为跟随输入的计划。您必须取消计划操作，修改输入附件，然后再次尝试计划操作。

## **准备输入 – 当下一次输入为即时输入时，降低延迟**
<a name="ips-plan-immediate-prepare-input"></a>

您可能有一个输入切换，您已将其标识为即时输入切换，但您不知道何时需要进行切换。您只知道您会提前几秒钟收到通知。在这种情况下，您可能需要通过创建准备输入操作来提前准备输入。有关更多信息，请参阅 [在 AWS Elemental 中准备输入 MediaLive ](feature-prepare-input.md)。