

本文為英文版的機器翻譯版本，如內容有任何歧義或不一致之處，概以英文版為準。

# 在 AWS Elemental MediaLive 中準備輸入
<a name="feature-prepare-input"></a>

當您在 MediaLive 中實作輸入切換時，您可以準備與立即輸入切換相關聯的輸入，以減少 MediaLive 執行切換時發生的延遲。

如果您準備輸入，MediaLive 執行立即輸入切換時，延遲會減少許多。這是因為 MediaLive 已探查輸入並開始解碼。如果您未準備輸入，MediaLive 排程收到動作的那一刻到切換發生的那一刻之間會有延遲。

在這種情況下，我們建議您準備輸入
+ 您計劃切換到具有立即啟動類型的輸入。
+ 您不知道何時需要進行切換，但您知道可能只有幾秒鐘的提前通知。

您可以透過將輸入*準備*動作新增至[頻道排程](working-with-schedule.md)來準備輸入。一般而言，輸入準備套用的輸入切換是立即輸入切換。輸入準備本身可設定為在固定時間開始、立即開始，或開始遵循指定的輸入切換。

MediaLive 會將 動作新增至排程。在動作開始時，MediaLive 會開始準備輸入。

請注意，如果您將切換為固定輸入切換或跟隨輸入切換，則沒有準備輸入的優勢。在此情況下，MediaLive 會自動提前準備輸入。

**術語**  
在本節中，我們使用下列術語：
+ *準備動作 *– 排程中的輸入準備動作。
+ *關聯的切換動作* – 與輸入準備動作相關聯的輸入切換動作。準備動作會準備輸入 A。相關聯的切換動作會切換到輸入 A。
+ *已修正準備* – 設定為在固定時間啟動的輸入準備動作。
+ *立即準備* – 設定為立即啟動的輸入準備動作。
+ *遵循準備、後續開始準備、後續結束準備* – 輸入準備動作，設定為遵循輸入切換。以下準備可以遵循參考切換的開始或結束。
+ *參考切換動作* – 做為後續輸入準備觸發器的輸入切換動作。因此，遵循輸入準備會遵循參考輸入切換動作。

**注意**  
本節中的此內容假設您熟悉輸入切換，如中所述[設定輸入切換](scheduled-input-switching.md)。

**Topics**
+ [MediaLive 中輸入準備的規則和限制](input-prep-rules.md)
+ [在排程中設定輸入準備動作](prepare-input-procedure.md)
+ [輸入準備動作在執行時間的行為](input-prep-runtime.md)
+ [修改輸入準備動作](input-prep-modify.md)
+ [在 MediaLive 排程中刪除和停止輸入準備動作](input-prep-delete.md)

# MediaLive 中輸入準備的規則和限制
<a name="input-prep-rules"></a>

**一次一個作用中的準備**  
MediaLive 排程可以包含任意數量的輸入準備動作，但一次只能有一個輸入準備動作處於作用中狀態。

**至少提前 10 秒的開始時間**  
在 MediaLive 排程中設定每個輸入準備動作，使其在關聯的切換前至少 10 秒啟動。

**無 RTMP 提取輸入**  
MediaLive 頻道不能同時使用 RTMP 提取輸入和輸入準備功能。（可接受 RTMP 推送輸入。) 您必須選擇哪個功能更重要：輸入準備或 RTMP 提取輸入。
+ 如果您想要使用輸入準備功能，且頻道已有 RTMP 提取輸入，您必須先移除輸入。
+ 如果您想要新增 RTMP 提取輸入，且頻道已在排程中具有輸入準備動作，請參閱 [啟用和停用輸入準備功能](input-prep-enable.md)。

# 在排程中設定輸入準備動作
<a name="prepare-input-procedure"></a>

請遵循此程序，將輸入準備動作新增至頻道排程，以便在對該輸入的切換動作之前準備任何輸入。

**在頻道排程中包含輸入準備動作**

1. 作為一次性動作，請在頻道中啟用輸入準備功能。您必須在頻道閒置時啟用此功能。請參閱 [啟用和停用輸入準備功能](input-prep-enable.md)。

1. 規劃頻道的輸入切換和輸入準備。請參閱 [規劃輸入準備的啟動類型](input-prep-plan-start.md)。

1. 如果關聯的輸入切換包含輸入剪輯，請參閱 [剪輯檔案輸入的內容](input-clipping.md)。

   如果關聯的輸入切換是輸入容錯移轉對，請參閱 [設定動態輸入](dynamic-inputs.md)。

1. 在排程中建立動作。一般而言，您會在第一次啟動頻道之前，先建立一些準備動作和切換動作。然後，您可以隨著時間新增更多動作。您可以新增固定切換動作，並遵循切換動作。只要知道未來會有立即切換，您就可以新增準備動作。一般而言，您可以在頻道執行時新增所有這些動作，但您也可以在頻道閒置時新增這些動作。

   如需將輸入準備動作新增至排程的詳細資訊，請參閱 [建立 AWS Elemental MediaLive 排程](working-with-schedule.md)。

**Topics**
+ [啟用和停用輸入準備功能](input-prep-enable.md)
+ [規劃輸入準備的啟動類型](input-prep-plan-start.md)
+ [輸入準備和動態輸入](input-prep-dynamic.md)
+ [輸入準備與剪輯](input-prep-clip.md)
+ [輸入準備和自動輸入容錯移轉](input-prep-aif.md)

# 啟用和停用輸入準備功能
<a name="input-prep-enable"></a>

在將輸入準備動作新增至 MediaLive 排程之前，您必須啟用此功能。

**啟用 功能**
+ 在**建立頻道**頁面**的一般設定**中，於**功能啟用**區段中，將**輸入準備排程動作**設定為**已啟用**。

**停用此功能**

您可以停用輸入準備功能。

一般而言，停用輸入準備的唯一原因是您必須將 [RTMP 提取輸入連接到](input-prep-rules.md)頻道。

1. 停止頻道。

1. 從排程[中刪除](schedule-using-console-delete.md)所有作用中和未來的輸入準備動作。您不需要從排程中刪除過時的輸入準備動作。

1. 在**建立頻道**頁面**的一般設定**中，於**功能啟用**區段中，將**輸入準備排程動作**設定為**已停用**。

1. 以一般方式連接 [RTMP 提取輸入](creating-a-channel-step2.md)。

**Topics**

# 規劃輸入準備的啟動類型
<a name="input-prep-plan-start"></a>

在將輸入準備動作新增至排程之前，請先決定動作的啟動類型。

**Topics**
+ [輸入準備的啟動類型](plan-prep-start-types.md)
+ [選擇啟動類型的準則](plan-prep-tips.md)

# 輸入準備的啟動類型
<a name="plan-prep-start-types"></a>

MediaLive 中的輸入準備動作有三種啟動類型。這些啟動類型與輸入切換的啟動類型相同。
+ 已修正 – 輸入準備會在特定時間開始。
+ 立即 – 輸入準備會在您將動作新增至排程時立即開始。
+ 跟隨 - 輸入準備遵循特定的輸入切換 - *參考輸入切換*。它可以有一個開始或結束*跟隨點*，它可以跟隨參考輸入的開始或參考輸入的結束。

使用下列啟動類型時，適用下列規則：
+ 您無法使用 主控台建立跟隨輸入準備，並將跟隨點設定為*開始*。主控台上不會顯示啟動選項。只會顯示結束選項。
+ MediaLive 會在參考輸入處於作用中狀態*後*開始準備輸入。因此：
  + 對於後續入門準備 （您只能使用 CLI 建立），您必須先新增準備動作，才能在頻道中啟動參考輸入。

    如果參考切換是立即切換，您必須在相同的[批次更新命令](about-batch-update-schedule.md)中包含切換動作和準備動作。

    如果參考切換是固定或跟隨切換，您可以在一個批次更新命令中新增切換動作，並在後續批次更新命令中新增準備動作。
  + 對於後續準備，您必須在參考輸入結束之前新增準備動作 （在擷取結束之前）。
+ 您無法建立兩個遵循準備動作，這兩個動作都遵循相同的參考切換和相同的遵循點。因此：
  + *您無法*建立動作 2 和動作 4，以遵循動作 1 的開始。
  + 但是，您可以建立動作 2 以遵循動作 1 的*開始*，建立動作 4 以遵循動作 1 的*結束*。

# 選擇啟動類型的準則
<a name="plan-prep-tips"></a>

以下是決定與 MediaLive 排程中的輸入準備搭配使用的啟動類型的一些準則。

請記住，您一次只能準備一個切換。當準備動作開始時，MediaLive 會開始準備輸入，並自動停止任何其他作用中的準備輸入動作。

因此，如果輸入 Y 在輸入 X 之前需要準備，則指導原則是確保您不會開始準備輸入 X，並意外*停止*準備輸入 Y。

**Topics**
+ [案例 A](#plan-prep-tips-scenario-A)
+ [案例 B](#plan-prep-tips-scenario-B)
+ [案例 C](#plan-prep-tips-scenario-C)
+ [案例 D](#plan-prep-tips-scenario-D)

## 案例 A
<a name="plan-prep-tips-scenario-A"></a>

您正在兩個輸入之間翻轉。切換啟動一律無法確定，因此每個切換都是立即的切換。在這些切換之間可能有更多切換，但不需要準備。

```
Switch to input A (immediate)
Switch to input B (immediate)
Switch to input A (immediate)
Switch to input B (immediate)
```

最簡單的計劃是在每次切換至 A 後開始準備 B，並在每次切換至 B 後開始準備 A。您可以使用下列任何啟動類型設定每個準備輸入動作：
+ Fixed (固定)。準備 B 的開始時間是在切換 A 的開始時間之後的一段時間。
+ 立即。建議使用。您可以新增準備 B 動作與立即 A 開關同時，或稍後新增。
+ 遵循 （開始）。您應該在相同的[批次更新命令](about-batch-update-schedule.md)中新增準備 B 動作和立即 A 開關。準備 B 動作的參考動作是輸入 A。
+ 遵循 （結束）。在將切換 A 新增至排程之後，您可以隨時新增準備 B 動作。準備 B 動作的參考動作是輸入 A。

例如：

```
Switch to input A (immediate)
Prepare input B (immediate)
Switch to input B (immediate)
Prepare input A (immediate)
Switch to input A (immediate)
Prepare input B (immediate)
Switch to input B (immediate)
```

## 案例 B
<a name="plan-prep-tips-scenario-B"></a>

有立即切換到 A，然後有數個固定或跟隨的切換。您預期下一個立即切換會再次切換到 A。

```
Switch to input A (immediate)
Switch to input C (fixed or follow)
Switch to input D (fixed or follow)
Switch to input A (immediate)
```

切換到 A 之後，MediaLive 會繼續準備 A。因此，不需要再次準備。此外，如果輸入 A 是唯一有立即切換的輸入，您可以在第一次切換之前準備一次 A。您不需要再次準備。

## 案例 C
<a name="plan-prep-tips-scenario-C"></a>

有立即切換到 A，然後有數個固定或跟隨的切換。您預期下一個立即切換將為 B。

```
Switch to input A (immediate)
Switch to input C (fixed or follow)
Switch to input D (fixed or follow)
Switch to input B (immediate)
```

您知道下一個立即切換將是輸入 B，因此您可以在切換到輸入 A 之後隨時開始準備。您可以使用下列任何開始類型設定每個準備輸入動作：
+ Fixed (固定)。準備 B 的開始時間至少為切換 B 開始之前 10 秒。
+ 立即。建議使用。您可以新增準備 B 動作與立即 A 開關同時，或稍後新增。
+ 遵循 （開始）。不建議使用。例如，您可以設定準備 B 動作，以遵循切換 C 的開始或切換 D 的開始。
+ 遵循 （結束）。不建議使用。例如，您可以設定準備 B 動作來遵循切換 A 的結尾或切換 C 的結尾。請勿設定它來遵循切換 D 的結尾。

例如：

```
Switch to input A (immediate)
Prepare input B (immediate)
Switch to input C (fixed or follow)
Switch to input D (fixed or follow)
Switch to input B (immediate)
```

## 案例 D
<a name="plan-prep-tips-scenario-D"></a>

有立即切換到輸入 B，然後有數個固定或跟隨切換。您預期會有另一個立即切換，但一開始您不知道是輸入 B 還是輸入 E。

```
Switch to input A (immediate)
Switch to input C (fixed or follow)
Switch to input D (fixed or follow)
Switch to input B or E (immediate)
```

當您知道要切換到哪個輸入時，就可以開始準備輸入。當您想要準備時，目前的輸入可以是 A、C 或 D。您可以使用下列任何啟動類型來設定每個準備輸入動作：
+ Fixed (固定)。準備 B （或 E) 的開始時間至少為切換 B （或 E) 開始之前 10 秒。
+ 立即。建議使用。當您知道切換是 B 或 E 時，立即新增準備輸入動作。
+ 遵循 （開始）。不建議使用。例如，您可以設定準備 B （或 E) 動作，以遵循切換 C 的開始或切換 D 的開始。
+ 遵循 （結束）。不建議使用。例如，您可以設定準備 B （或 E) 動作，以遵循開關 A 的結尾或開關 C 的結尾。請勿將其設定為遵循開關 D 的結尾。

例如：

```
Switch to input A (immediate)
Switch to input C (fixed or follow)
Switch to input D (fixed or follow)
Prepare input E (immediate)
Switch to input E (immediate)
```

# 輸入準備和動態輸入
<a name="input-prep-dynamic"></a>

當關聯的輸入是[動態輸入](dynamic-inputs.md)時，您可以準備 MediaLive 頻道中的輸入切換。動態輸入在其路徑中具有變數。每次將輸入新增至排程時，您都會指定*取代字串*以將變數取代為 檔案。

設定準備輸入動作時，您必須指定此取代字串。字串必須與切換動作中的取代字串完全相符。如果字串不相同，MediaLive 不會事先準備輸入。

您可以在頻道中多次使用此動態輸入，而取代字串在每個執行個體中可能不同。請務必在每個準備動作中變更字串。

# 輸入準備與剪輯
<a name="input-prep-clip"></a>

當關聯的輸入是包含輸入[剪輯](input-clipping.md)的檔案輸入時，您可以準備 MediaLive 頻道中的輸入切換。

設定準備輸入動作時，您必須指定剪輯的開始和結束。您輸入的值必須與切換動作中的開始和結束完全相符。如果值不相同，MediaLive 不會事先準備輸入。

您可以在頻道中多次使用此檔案輸入，而且每個執行個體的開始和結束可能不同。請務必在每個準備動作中變更開始和結束。

# 輸入準備和自動輸入容錯移轉
<a name="input-prep-aif"></a>

您的 MediaLive 頻道可能包含一些設定為[自動輸入容錯移轉對的輸入](automatic-input-failover.md)。

當您為容錯移轉對的輸入設定準備輸入動作時，請務必將主要輸入指定為相關聯的輸入 （在**建立排程動作**頁面上的**輸入連接**欄位中）。如果您指定次要輸入，MediaLive 不會事先準備輸入。

當 MediaLive 執行準備動作時，它會準備這兩個輸入。這表示稍後的輸入切換動作可以是容錯移轉對中的任一輸入。

以下是說明一些關鍵行為的案例：

1. 您可以透過指定主要輸入來準備輸入 A。準備開始。

1. 您可以透過指定主要輸入來切換到輸入 A。頻道會切換到輸入 A。

1. 然後，準備輸入 B。準備開始。

1. 您注意到輸入 A 正在降級，因此切換到次要輸入。您不需要準備輸入 A。即使您已開始準備輸入 B，輸入 A 的次要輸入仍在準備中，作為自動輸入容錯移轉程序的一部分。因此，切換會順暢進行。

1. 您從輸入 A 切換。

1. 您再次準備輸入 A，因為您稍後會切換到輸入 A。您可以指定主要輸入。準備開始。

1. 您切換到輸入 A。但接著切換到次要輸入，因為主要輸入仍然降級。您可以切換到次要輸入，因為即使您在準備動作中指定主要輸入，MediaLive 仍會準備這兩個輸入。

# 輸入準備動作在執行時間的行為
<a name="input-prep-runtime"></a>

您新增至 MediaLive 排程的所有準備動作都位於排程中，直到開始時間為止。在開始時間 （可以固定、立即或在輸入切換之後），MediaLive 會停止任何目前作用中的輸入準備，並啟動新的輸入準備。

最終，MediaLive 會切換到相關聯的輸入。此時，MediaLive 不會停止準備輸入。輸入準備會無限期繼續，或直到另一個輸入準備開始為止。此永久準備特性可能很有用。如需範例，請參閱[案例 B](plan-prep-tips.md#plan-prep-tips-scenario-B)。

如果頻道失敗，MediaLive 會自動重新啟動頻道。如果排程指出有即將到來的立即切換動作，且排程也包含該輸入的準備動作，則 MediaLive 會再次開始準備輸入。您不需要採取任何步驟。

# 修改輸入準備動作
<a name="input-prep-modify"></a>

如需有關修改 MediaLive 排程中輸入準備動作的資訊，請參閱 [修改排程中的動作 （主控台）](schedule-modify.md)。

# 在 MediaLive 排程中刪除和停止輸入準備動作
<a name="input-prep-delete"></a>

您可以從排程中刪除輸入準備動作。根據頻道的目前狀態，刪除動作有不同的規則。頻道可以執行、閒置或復原。如果您手動停止頻道，頻道會處於閒置狀態。如果頻道失敗且 MediaLive 自動重新啟動，則頻道正在復原。

如需刪除動作的詳細資訊，請參閱 [從排程刪除動作 （主控台）](schedule-using-console-delete.md)。

**在頻道執行時刪除動作**  
當頻道執行時，您無法刪除過去最近的輸入準備動作。此規則存在，因為關聯的輸入切換可能在未來。當 MediaLive 自動重新啟動頻道時，它也必須重新啟動輸入準備，以確保立即輸入切換的輸入將備妥。

**在頻道閒置時刪除動作**  
當頻道閒置時，您可以刪除任何輸入準備動作。

**停止輸入準備**  
若要停止作用中輸入準備，請新增未指定輸入的立即輸入準備。

如需新增動作的詳細資訊，請參閱 [在排程中建立動作 （主控台）](schedule-using-console-create.md)。