

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

# 指定輸入檔案和輸入剪輯
<a name="specifying-inputs"></a>

您可以使用 MediaConvert 進行*組裝工作流程*。組裝工作流程是一種 MediaConvert 任務，可執行基本的輸入剪輯和拼接，以組合來自不同來源的輸出資產，而不需要單獨的編輯軟體。例如，組裝工作流程可以組合一個緩衝區，後面接著與廣告交錯的特徵內容。特色內容在每個特色區段的開頭可能具有標誌圖形浮水印。

透過這些類型的任務，您可以使用*輸入拼接*來組合來自多個輸入的輸出，或使用輸入*剪輯來組合部分輸入*。MediaConvert 會從此組件建立任務的所有輸出。如果您希望輸出具備輸入檔案的不同剪輯或不同的輸入排列，則必須為每個組件建立單獨的任務。

**Topics**
+ [

## MediaConvert 如何使用時間軸來組合任務
](#how-mediaconvert-uses-timelines-to-assemble-jobs)
+ [

## 設定組件工作流程任務
](#setting-up-an-assembly-workflow-job)
+ [

# 設定音軌和音訊選擇器
](more-about-audio-tracks-selectors.md)
+ [

# 設定輸入字幕
](including-captions.md)

## MediaConvert 如何使用時間軸來組合任務
<a name="how-mediaconvert-uses-timelines-to-assemble-jobs"></a>

MediaConvert 會根據輸入*時間軸和輸出時間軸組合輸入*和輸入剪輯。 **服務會根據您的設定來建構這些時間軸，然後根據它們將您的輸入組裝到輸出中。下圖顯示三個獨立的輸入時間軸和一個輸出時間軸。

![\[三個獨立的輸入檔案以三個矩形表示。每一個都以代表輸入時間軸的數字行來標記。一個時間軸從零開始。一個時間軸顯示內嵌的時間碼。一個時間軸反映從一小時開始的指定開始設定。兩個矩形內有剪輯片段，表示為以顏色填滿部分矩形。其中一個矩形完全填滿，表示會在輸出中使用整個輸入檔案。輸入矩形下方有一個較寬的矩形，代表組裝在一起的所有剪輯片段和輸入。此矩形標有一個數字行，代表輸出時間軸，該時間軸從 00:00:00:00 開始。\]](http://docs.aws.amazon.com/zh_tw/mediaconvert/latest/ug/images/assembly.png)


### 輸入時間軸
<a name="input-timelines"></a>

每個輸入都有自己的*輸入時間軸*。輸入時間軸是 MediaConvert 產生的一系列時間碼，代表輸入檔案的每個影格。

依預設，輸入時間軸與內嵌於輸入視訊中的任何時間碼相同。您可以在輸入設定時間碼**來源中指定不同的開始時間碼**。如果您使用 API 或 SDK，您可以在任務的 JSON 檔案中找到此設定。設定名稱為 `TimecodeSource`，位於 `Settings`、 中`Inputs`。如需詳細資訊，請參閱[使用輸入時間碼來源調整輸入時間軸](timecode-input.md)。

MediaConvert 會針對下列項目使用輸入時間軸：
+ 決定輸入圖形浮水印 (插入的影像) 在視訊中出現的時間。如需輸入和輸出浮水印之間差異的更多資訊，請參閱[在輸入和輸出浮水印之間進行選擇](choosing-between-input-overlay-and-output-overlay.md)。
+ 決定動態圖形浮水印 (插入的影像) 在視訊中出現的時間。如需不同類型圖形浮水印的更多資訊，請參閱[影像插入](graphic-overlay.md)。
+ 將您的視訊與以時間碼為基礎的*附屬字幕*同步化。附屬字幕是以與視訊分開的輸入檔案形式提供的字幕。
+ 解譯您在指定輸入剪輯時提供的時間碼。

### 輸出時間軸
<a name="output-timeline"></a>

*輸出時間軸*是 MediaConvert 產生的一系列時間碼，可內嵌在輸出中。MediaConvert 也會針對套用至任務中每個輸出的功能，使用輸出時間軸的時間碼。

根據預設，輸出時間軸與內嵌在第一個輸入檔案視訊中的任何時間碼相同。您可以在任務設定的整個任務**時間碼組態設定中指定不同的開始時間碼******。如果您使用 API 或 SDK，您可以在任務的 JSON 檔案中找到這些設定。這些設定位於 `Settings`、 下`TimecodeConfig`。如需詳細資訊，請參閱[使用整個任務的時間碼組態調整輸出時間軸](timecode-jobconfig.md)。

MediaConvert 會針對下列項目使用輸出時間軸：
+ 決定當您在輸出時間碼設定中啟用 **Timecode insertion (時間碼插入)** 時，要嵌入至輸出視訊中的時間碼。
+ 決定輸出浮水印 (插入的影像) 在視訊中出現的時間。如需不同類型圖形浮水印的更多資訊，請參閱[影像插入](graphic-overlay.md)。
+ 決定您的 HLS 變體播放清單如何顯示時間
+ 解譯當您指定 **Anchor Timecode (定位點時間碼)** 的值時所提供的時間碼。

## 設定組件工作流程任務
<a name="setting-up-an-assembly-workflow-job"></a>

依照下列步驟設定結合組裝工作流程特色的任務，例如輸入剪輯、輸入拼接、圖形浮水印和附屬字幕同步。以此順序執行這些工作可以更輕鬆進行設定。特別是，我們建議您最後指定輸入剪輯。這是因為每個輸入時間軸會計算整個輸入的影格，而不是每個個別的剪輯片段。

此程序依賴於輸入和輸出時間軸的概念。如需詳細資訊，請參閱[MediaConvert 如何使用時間軸來組合任務](#how-mediaconvert-uses-timelines-to-assemble-jobs)。

**設定組裝工作流程任務 (主控台)**

1. **指定您的視訊輸入檔案。**

   一個任務中最多可以有 150 個輸入。MediaConvert 會依您新增輸入的順序將輸入拼接在一起。若要依時間順序使用相同輸入檔案中的多個剪輯，而它們之間沒有其他輸入，請指定輸入檔案一次。

   如需完整指示，請參閱[步驟 1：指定輸入檔案](setting-up-a-job.md#specify-input-settings)。

1. **設定您的音訊選擇器。**

   在每個輸入中，您會建立音訊選擇器，將輸入音訊對應到輸出。如需說明，請參閱[步驟 2：建立視訊、音訊和字幕的輸入選擇器](setting-up-a-job.md#create-selectors)。

   使用附屬音訊檔案時，MediaConvert 會同步音訊和視訊，而不考慮時間碼。MediaConvert 會將音訊檔案的開頭排入視訊檔案的開頭。

   無論您的音訊是附屬檔案還是內嵌在視訊中，都可以使用輸入音訊選擇器中的**位移**設定來調整其同步。在 **Offset (位移)** 中使用正數，會將音訊在輸入時間軸中往後移動；使用負數則往前移。

1. **Synchronize any sidecar captions (同步任何附屬字幕)。**

   設定附屬字幕同步的方式取決於輸入字幕格式：
   + 如果您的輸入字幕格式是以時間碼為基礎 (例如 SCC 或 STL)，則服務會將字幕檔案中的時間碼與輸入時間軸同步。
   + 如果您的輸入字幕格式是以時間戳記為基礎 (例如 SRT、SMI 或 TTML)，則服務會將字幕與視訊同步，而不考慮時間碼。

**相關資訊**
   + [關於輸入時間碼來源和字幕對齊](about-input-timecode-source-and-captions-alignment.md)
   + [使用輸入時間碼來源調整輸入時間軸](timecode-input.md)
   + [字幕和字幕選擇器](including-captions.md) 

1. **設定您希望圖形浮水印或動態圖形浮水印的出現時間。**

   如何指定浮水印出現的時間，取決於您指定的浮水印類型：
   + 對於輸入靜態圖形浮水印，請在輸入中指定要顯示浮水印的位置。指定與該輸入時間軸相符之時間碼的開始時間和結束時間。
   + 對於輸出靜態圖形浮水印，請根據輸出時間軸指定您要顯示浮水印的時間。
   + 對於動態圖形浮水印，請根據輸入的時間軸指定要顯示浮水印的時間。

**相關資訊**
   + [使用輸入時間碼來源調整輸入時間軸](timecode-input.md)
   + [使用整個任務的時間碼組態調整輸出時間軸](timecode-jobconfig.md)
   + [影像插入](graphic-overlay.md)

1. **指定輸入剪輯。**

   除非您希望 MediaConvert 包含輸入的完整持續時間，否則請為每個輸入指定輸入剪輯。指定與該輸入時間軸相符之時間碼的開始時間和結束時間。

   設定輸入剪輯，如下所示：

   1. 在**建立任務**頁面上，於左側**的任務**窗格中，選擇輸入。

   1. 在 **Input clips** (輸入剪輯) 區段中，選擇 **Add input clip** (新增輸入剪輯)。

   1. 輸入您希望包含的第一個剪輯的開始和結束時間碼。使用下列 24 小時格式搭配影格編號：HH：MM：SS：FF。

      當您為純音訊輸入指定輸入剪輯時，您輸入的時間碼中的最後一個數字會對應到百分之一秒。例如，00：00：30：75 與 30.75 秒相同。

      請確定您提供的時間碼與您輸入時間軸相符。根據預設，MediaConvert 會根據內嵌在輸入影片中的時間碼進行輸入剪輯。對齊時間碼的方式取決於您輸入的影片時是否內嵌時間碼：
      + 如果您的輸入沒有內嵌的時間碼，請將**時間碼來源**設定為**從 0 開始**或**指定開始**。
      + 如果您的輸入*確實*有內嵌的時間碼，而且您希望 MediaConvert 使用它們，則對於**時間碼來源**，請保留預設值 **Embedded**。相應地指定剪輯片段的開始和結束時間。

        例如，如果輸入**時間碼來源**設定為**內嵌**，且視訊內嵌時間碼從 01：00：00：00 開始，請在 01：00：30：00 （非 00：00：30：00) 中定義剪輯 30 秒的開始時間碼。根據預設，輸入時間軸與內嵌在影片中的時間碼相同。您可以調整輸入**時間碼來源**設定，以調整輸入時間軸的內容。
      + 指定長度少於 12 小時的輸入剪輯持續時間。

      如需詳細資訊，請參閱[使用輸入時間碼來源調整輸入時間軸](timecode-input.md)。

   1. 指定任何其他剪輯。多個剪輯必須按時間順序排列，且不能重疊；每個 **Start timecode (開始時間碼)** 都必須在之前的剪輯的 **End timecode (結束時間碼)** 之後。

      如果您指定一個以上的輸入剪輯，它們會依照您指定時的順序，逐一出現在輸出中。

# 設定音軌和音訊選擇器
<a name="more-about-audio-tracks-selectors"></a>

您可以使用音訊選擇器，建立輸入音訊與輸出音訊的關聯。您可以設定單一音訊選擇器以代表輸入中的一或多個音軌。然後，您可以在輸出中建立音軌，並建立單一音訊選擇器與每個輸出音軌的關聯。

輸入音軌、音訊選擇器及輸出音軌之間的關聯需遵循以下規則：
+  每個輸入音軌皆可關聯至一或多個音訊選擇器 
+  每個音訊選擇器皆有一或多個輸入音軌 
+  每個輸出音軌皆有一個音訊選擇器 

下圖顯示 t 雜湊關係。在此圖中，輸入檔案包含三個音軌。音訊選擇器 1 選擇輸入音軌 1。音訊選擇器 1 與輸出音軌 1 相關聯，因此輸出的音軌 1 與輸入的音軌 1 有相同的內容。音訊選擇器並未選擇第二個輸入音軌，因此不會用於輸出。音訊選擇器 2 選擇輸入音軌 1 和 3。音訊選擇器 2 與輸出音軌 2 相關聯，因此輸出音軌 2 包含輸入音軌 1 和 3 的聲道。

![\[使用音訊選擇器，建立輸入音軌與輸出音軌的關聯。\]](http://docs.aws.amazon.com/zh_tw/mediaconvert/latest/ug/images/audio-selectors-shared-vsd.png)


針對需要通道層級控制的工作流程，請使用音訊聲道混音功能 ，支援下列工作流程：
+ 變更音軌中的聲道順序
+ 將音訊聲道從一或多個輸入音軌移動至不同的輸出音軌
+ 將來自多個聲道的音訊結合至單一聲道
+ 將單一聲道的音訊分離為多個聲道
+ 調整音訊聲道的音量大小

# 設定輸入字幕
<a name="including-captions"></a>

若要將字幕包含在任務中，請依序進行以下步驟：

1. 如果您的輸入字幕是以時間碼為基礎的附屬字幕格式 (例如 SCC 或 STL)，請[設定時間碼來源設定。](#set-the-timecode-source-settings)

1. [收集必要的字幕資訊。](#gather-required-captions-information)

1. [建立輸入字幕選擇器。](#create-input-caption-selectors)

1. [在輸出中設定字幕。](set-up-captions-in-outputs.md)

如需支援輸入和輸出字幕的完整清單，請參閱 [字幕參考表](captions-support-tables.md)。

如需如何在輸出中設定字幕的資訊，請參閱 [在輸出中設定字幕](set-up-captions-in-outputs.md)。

**提示**  
您可以使用 Amazon Transcribe 搭配 MediaConvert 來產生字幕，並將其包含在輸出中。如需詳細資訊，請參閱 GitHub 上*AWS 範例中*[AWS 使用 Amazon Transcribe 的 VOD 字幕](https://github.com/aws-samples/aws-transcribe-captioning-tools)。

## 指定時間碼來源
<a name="set-the-timecode-source-settings"></a>

若要讓字幕正確地與影片同步，您必須設定輸入時間軸，以符合字幕檔中嵌入的時間碼。MediaConvert 會根據您為輸入時間**碼來源設定選擇的值來建立輸入時間**軸。如需詳細資訊，請參閱[輸入時間碼來源和字幕對齊](about-input-timecode-source-and-captions-alignment.md)。

如需調整 **Timecode source (時間碼來源)** 設定的指示，請參閱[使用輸入時間碼來源調整輸入時間軸](timecode-input.md)。

## 收集必要的字幕資訊
<a name="gather-required-captions-information"></a>

在您的任務中設定字幕之前，請注意以下資訊：
+ *輸入字幕格式*。您必須事先擁有此資訊；MediaConvert 不會從您的輸入檔案讀取此資訊。
+ 您要在任何輸出中所使用輸入字幕的*軌道*。
+ 您要在此任務中建立的*輸出封裝和檔案*。如需指定輸出封裝或檔案類型的詳細資訊，請參閱 [建立輸出](output-settings.md)。
+ 您要用於每個輸出的*輸出字幕格式*。

  如需有關依據您的輸入容器、輸入字幕格式及輸出容器而定的支援輸出字幕的詳細資訊，請參閱 [視訊容器中支援的輸入字幕](captions-support-tables-by-container-type.md)。
+ 您要包含在每個輸出的*輸出字幕軌*。如果您傳遞 teletext-to-teletext (電視資訊到電視資訊)，輸入內的所有軌道都會在輸出中提供。否則，您在輸出中包含的軌道，可能是輸入內可用的軌道子集。

## 建立輸入字幕選取器
<a name="create-input-caption-selectors"></a>

當您設定字幕時，請先建立字幕選擇器。字幕選擇器能夠識別輸入中的特定字幕資產，並以標籤與其進行關聯。字幕資產為輸入檔案內的單一軌道或所有軌道的組合，這取決於您的輸入字幕格式。例如，您可以新增 **Captions selector 1** (字幕選擇 1) 並將法語字幕與其建立關聯。當您[設定輸出以包含字幕](set-up-captions-in-outputs.md)時，可藉由指定字幕選擇器來執行此作業。

**建立輸入字幕選擇器**

1. 在**建立任務**頁面上，於左側**的任務**窗格中，選擇輸入。
**注意**  
在有多個輸入的任務中，每個輸入都必須具有相同數量的字幕選擇器。對於沒有字幕的輸入，請建立空白字幕選擇器。針對這些選擇器，針對**來源**選擇 **Null 來源**。如果沒有輸入具有字幕，請移除所有字幕選擇器。

1. 在靠近頁面底部的 **Captions selectors** (字幕選擇器) 區段中，選擇 **Add captions selector** (新增字幕選擇器)。

1. 在 **Source** (來源) 之下選擇輸入字幕格式。

1. 大多數格式會出現更多的欄位。依照與您的輸入字幕格式相關的主題所述，為這些欄位指定值。請由此程序後的清單中選擇適當的主題。

1. 視需要建立多個字幕選擇器。您需要的字幕選擇器數量，取決於您的輸入字幕格式。請由此程序後的清單中選擇適當的主題。

# MXF VANC 資料 （輔助） 輸入字幕中的 QuickTime 字幕追蹤或字幕
<a name="ancillary"></a>

如果您的輸入字幕為以下其中一種格式，此服務會將其視為「輔助」資料進行處理：
+ QuickTime 字幕軌 (格式 QTCC)
+ MXF VANC 資料

MediaConvert 不會以這些格式建立輸出字幕，但您可以將它們轉換為[支援的輸出格式](captions-support-tables-by-container-type.md)。

**輔助式字幕**
+ 為您將在輸出中使用的每一個軌道建立一個字幕選擇器。
+ 在每個字幕選擇器中，在 **Source** (來源) 中選擇 **Ancillary** (輔助)。
+ 在每個字幕選擇器中，在 **CC channel (CC 通道)** 中選擇與該選擇器關聯之軌道的通道號碼。

  例如，輸入字幕有 CC 通道 1 中的英文，以及 CC 通道 2 中的西班牙文。若要使用這些字幕，請建立字幕選擇器 1，然後在 **CC channel** (CC 通道) 下拉式清單中選擇 1。接著，建立字幕選擇器 2，然後在 **CC channel** (CC 通道) 下拉式清單中選擇 2。

# 內嵌 (CEA/EIA-608、CEA/EIA-708)、內嵌 \$1 SCTE-20 和 SCTE-20 \$1 內嵌輸入字幕
<a name="embedded"></a>

如果您的輸入字幕為以下任何一種格式，此服務會將其視為「內嵌」資料進行處理：
+ CEA-608
+ EIA-608
+ CEA-708
+ EIA-708

如果您的輸入字幕同時包含嵌入字幕和 SCTE-20 字幕，並且您希望輸出中同時使用這兩種類型，請為 SCTE-20 和內嵌字幕軌設定單獨的輸入字幕選擇器。設定 SCTE-20 字幕選擇器的方法與設定嵌入式選擇器的方法相同。

**注意**  
對於 MXF 輸入，您的字幕很可能在輔助式的軌道上。某些第三方媒體分析工具不正確地將這些字幕報告為內嵌的 608/708。如需設置輔助式字幕的資訊，請參閱 [MXF VANC 資料 （輔助） 輸入字幕中的 QuickTime 字幕追蹤或字幕](ancillary.md)。

## 內嵌字幕的字幕選擇器數量
<a name="embedded-how-many-caption-selectors"></a>
+ 如果您所有的輸出字幕都是內嵌格式，您只需建立一個字幕選擇器，即使您想要在輸出中包含多個軌道。透過此設定，MediaConvert 會自動擷取所有軌道，並將它們包含在輸出中。
+ 如果您所有的輸出都不是內嵌格式，則必須為您要在輸出中包含的每個軌道建立一個字幕選擇器。
+ 如果您的輸出有一些有內嵌格式的字幕，另外有一些有不同格式的字幕，請為內嵌字幕的輸出建立一個字幕選取器。同時為非內嵌格式的其他字幕建立個別的選擇器，亦即為您要在輸出中包含的每個軌道建立一個字幕選擇器。

## 內嵌字幕的字幕選擇器欄位
<a name="embedded-caption-selector-fields"></a>

**Source** (來源)：選擇 **Embedded** (內嵌)

**CC channel number (CC 通道號碼)**：此欄位指定擷取的軌道。完成如下所示：
+ 如果您正在執行embedded-to-embedded字幕 （亦即，您只為輸入內嵌字幕建立一個字幕選擇器），MediaConvert 會忽略此欄位，因此請保留 **CC 頻道號碼**的預設值。
+ 如果您要將內嵌字幕轉換為另一種格式 (亦即建立多個字幕選擇器，每個軌道一個選擇器)，請從包含您所需軌道的輸入中，指定字幕通道號碼。若要這麼做，請從下拉式清單中選擇通道號碼。例如，選擇 **1** 以選擇 CC1。

**注意**  
MediaConvert 不會自動偵測每個頻道中的語言。您可以在設定輸出字幕時指定 ，以便 MediaConvert 將字幕頻道的語言程式碼中繼資料傳遞至輸出以供下游使用。



# DVB-Sub 輸入字幕
<a name="dvb-sub-or-scte-27"></a>

MediaConvert 僅在 TS 輸入中支援 DVB-Sub。

在大多數情況下，請為每個軌道建立一個字幕選擇器。在每個選擇器中，提供 PID 或語言代碼以指定您想要的軌道。

**注意**  
請勿同時在 **PID** 欄位和 **Language** (語言) 下拉式清單中指定字幕。請在其中之一指定。

如果您要執行 DVB 字幕至 DVB 字幕 (DVB-sub-to-DVB-sub)，而且您想要將所有字幕軌道從輸入傳遞至輸出，請為所有軌道建立一個字幕選擇器。在此情況下，讓 **PID** 欄位維持空白，並且不要在 **Language (語言)** 下拉式清單中選擇任何語言。

# 電視資訊輸入字幕
<a name="teletext"></a>

設定電視資訊輸入字幕選擇器的方式取決於您計劃在輸出中使用字幕的方式。您可以透過下列其中一種方式使用電視資訊字幕：
+ [電視訊息到電視訊息傳遞](#input-teletext-to-output-teletext-passthrough)

  透過電視資訊傳遞，MediaConvert 會將您的輸入字幕從輸入傳遞到輸出。字幕樣式、電視資訊頁面號碼和非字幕電視資訊資料會顯示在輸出中，與輸入完全相同。

  電視資訊傳遞是將非字幕的電視資訊資料包含在輸出中的唯一方法。
+ [Teletext to Teletext，頁面重新映射](#input-teletext-to-output-teletext-with-page-remapping)

  如果您希望輸出上的電視訊息頁碼與輸入上的頁碼不同，您可以重新映射內容。當您執行此操作時，您的輸出字幕具有純樣式，而且您會遺失任何非字幕的電視資訊。
+ [其他字幕格式的電視資訊](#input-teletext-to-other-format-output-captions)

  您可以使用電視資訊輸入字幕，以某些其他格式產生輸出字幕。若要查詢您可以從電視資訊輸入產生哪些字幕，請參閱 [字幕參考表](captions-support-tables.md)。

如需為每個工作流程設定字幕的資訊，請參閱下列主題。

## 電視訊息到電視訊息傳遞
<a name="input-teletext-to-output-teletext-passthrough"></a>

當您執行電視文字到電視文字傳遞時，請為整組輸入字幕建立一個輸入字幕選擇器。請勿指定**頁碼**的值。

如需設定此字幕工作流程輸出的資訊，請參閱 [電視訊息到電視訊息傳遞](teletext-output-captions.md#teletext-to-teletext-passthrough)。

## Teletext to Teletext，頁面重新映射
<a name="input-teletext-to-output-teletext-with-page-remapping"></a>

當您輸入和輸出字幕的字幕格式是電視資訊，而且您希望輸出電視資訊頁面號碼與輸入頁面號碼不同時，請為輸入的每個電視資訊頁面建立單獨的輸入字幕選擇器。為頁碼指定輸入電視資訊**頁碼**。

如需設定此字幕工作流程輸出的資訊，請參閱 [Teletext to Teletext，頁面重新映射](teletext-output-captions.md#teletext-to-teletext-page-remapping)。

## 其他字幕格式的電視資訊
<a name="input-teletext-to-other-format-output-captions"></a>

當您的輸入字幕是電視資訊，而輸出字幕是另一種格式時，請為每個輸入電視資訊頁面設定一個輸入字幕選擇器。為頁碼指定輸入電視資訊**頁碼**。

如需有關設定此字幕工作流程輸出的資訊，請參閱 中輸出格式的 一節[在輸出中設定字幕](set-up-captions-in-outputs.md)。

# IMSC、SCC、SMPTE-TT、SRT、STL、TTML （附屬） 輸入字幕
<a name="sidecar-input"></a>

IMSC、SCC、SMPTE-TT、SRT、STL 和 TTML 是附屬字幕格式。使用這些格式，您可以用獨立的檔案提供輸入字幕。根據您的輸出字幕設定， 會以相同格式將它們 AWS Elemental MediaConvert 傳遞至輸出，或將其轉換為其他附屬格式。

**所有附屬字幕**  
在所有情況下，為每個輸入字幕檔案建立一個字幕選擇器。

在**來源檔案中**，將 URI 輸入至存放在 Amazon S3 或 HTTP(S) 伺服器上的字幕輸入檔案。對於 Amazon S3 輸入，您可以直接指定 URI，或選擇**瀏覽**以從 Amazon S3 儲存貯體中選取。針對 HTTP(S) 輸入，提供輸入影片檔案的 URL。如需詳細資訊，請參閱[HTTP 輸入需求](http-input-requirements.md)。

**IMSC 字幕**  
MediaConvert 支援 IMSC 做為輸入字幕格式，可以是附屬檔案或 IMF 來源的一部分。如果您的輸入 IMSC 字幕是 IMF 套件的一部分，請參閱 [IMSC 輸入字幕 （作為 IMF 來源的一部分）](IMSC-in-MXF.md)。如需 IMSC 支援的限制 , 請參閱 [IMSC 要求](imsc-captions-support.md)。

**SMPTE-TT 字幕**  
您可以使用純文字的 SMPTE-TT 輸入字幕，這些字幕影像包含在具有 base64 編碼的字幕檔案中 (`smpte:image encoding="Base64"`)，以及使用字幕影像的外部參考 ()`smpte:backgroundImage`。

當您的字幕使用映像的外部參考時，這些映像必須位於與字幕檔案相同的 Amazon S3 儲存貯體和資料夾中。例如，假設這是 SMPTE\$1TT 檔案的 Amazon S3 路徑：`amzn-s3-demo-bucket/mediaconvert-input/captions/my-captions-spanish.ttml`。然後，您必須將字幕檔案參考的影像檔案存放在此處：`s3://amzn-s3-demo-bucket/mediaconvert-input/captions/`。

**SRT 字幕**  
MediaConvert 支援具有 UTF-8 字元編碼的 SRT 輸入字幕。

**同步附屬字幕和影片**  
為了確保您的字幕與影片正確同步，請檢查**影片選擇**器區段中**時間碼來源**的值是否符合字幕檔案中的時間碼。例如，如果您的影片有從 01：00：00：00 開始的內嵌時間碼，但字幕檔案中的時間碼從零開始，請將影片選取器**時間碼來源**的預設值從**內嵌**變更為**從 0 開始**。如果您任務的其他層面阻止該作業，請使用 **Time delta (時間差量)** 設定來調整您的字幕，如 [時間差異的使用案例](time-delta-use-cases.md) 所述。

**注意**  
MediaConvert 會根據字幕格式是以時間碼為基礎還是以時間戳記為基礎，以不同的方式處理字幕與視訊的對齊。如需詳細資訊，請參閱[輸入時間碼來源和字幕對齊](about-input-timecode-source-and-captions-alignment.md)。

在**時間差異**中輸入正數或負數，以修改字幕檔案中的時間值。根據預設，時間差異的測量單位為秒。例如，輸入 **15**將 15 秒新增至字幕檔案中的所有時間值。或者，輸入 **-5**以從字幕檔案中的時間值減去 5 秒。若要改為以毫秒為單位指定 ，請將**時間差異單位**設定為**毫秒**。

如果您為**時間差異**輸入的值會在影片前後產生字幕，則這些字幕將不會出現在輸出中。

**注意**  
從 SCC 轉換到 SRT 時，MediaConvert 會先將您為**時間差異**設定的值四捨五入到最接近的輸入影格。MediaConvert 會在計算輸出 SRT 計時時使用此四捨五入值。

**Topics**
+ [

# 輸入時間碼來源和字幕對齊
](about-input-timecode-source-and-captions-alignment.md)
+ [

# 時間差異的使用案例
](time-delta-use-cases.md)
+ [

# 將雙 SCC 輸入檔案轉換為內嵌字幕
](converting-dual-scc-input-files-to-embedded-captions.md)
+ [

# TTML 樣式格式
](ttml-style-formatting.md)

# 輸入時間碼來源和字幕對齊
<a name="about-input-timecode-source-and-captions-alignment"></a>

當您透過將輸入**時間碼來源**設定為**從 0 **開始或**指定啟動**來調整輸入時間軸時，MediaConvert 的行為就像您的輸入具有在您指定時啟動的內嵌時間碼一樣。但是 MediaConvert 不會變更附屬字幕檔案中的時間戳記。因此，對齊字幕的方式取決於您的字幕格式。

**時間碼型附屬格式 (SCC、STL)**  
有些字幕格式 (包括 SCC 和 STL) 會依據時間碼定義字幕在視訊中的放置位置。透過這些格式，MediaConvert 會根據輸入時間軸中的每個影格的時間碼，將每個字幕放置在字幕檔案中指定的影格上。若要調整字幕以開始於不同的時間，請使用 **Time delta (時間差量)** 設定。如需詳細資訊，請參閱[時間差異的使用案例](time-delta-use-cases.md)。

MediaConvert 會根據您為輸入時間**碼來源設定選擇的值來建立輸入時間**軸。

例如，如果您的 SCC 檔案指定第一個字幕應該出現在 00:05:23:00，而且您將 **Timecode source (時間碼來源)** 設定為 **Specified start (指定開始)**，並將 **Start timecode (開始時間碼)** 設定為 00:04:00:00，則第一個字幕會在視訊一分鐘二十三秒後出現在輸出中。如果您將 **Timecode source (時間碼來源)** 設定為 **Specified start (指定的開始)** 以及將 **Start timecode (開始時間碼)** 設定為 01:00:00:00，您就看不到字幕，因為根據輸入時間軸，00:05:23:00 發生在您的視訊開始之前。

**時間戳記型附屬格式 (SRT、SMI、TTML)**  
有些字幕格式 (包括 SRT、SMI 和 TTML) 允許依時間戳記定義字幕在視訊中的放置位置。有了這些，MediaConvert 會測量字幕從影片開始的時間距離放置。無論字幕檔案使用時間碼還是時間戳記指定放置的位置，都是如此。

因此，您的字幕會在字幕檔案指定的時間出現，而不考慮視訊時間碼。例如，如果您的 SRT 檔案指定第一個字幕應該出現在 00:05:23:00 或 00:05:23,000，而且您將 **Timecode source (時間碼來源)** 設定為 **Specified start (指定開始)**，並將 **Start timecode (開始時間碼)** 設定為 00:04:00:00，則第一個字幕仍會在視訊五分鐘二十三秒後出現在輸出中。

若要調整字幕以開始於不同的時間，請使用 **Time delta (時間差量)** 設定。如需詳細資訊，請參閱[時間差異的使用案例](time-delta-use-cases.md)。

**在影片串流中嵌入字幕的格式 (CEA/EIA-608、CEA/EIA-708)**  
有些字幕格式會將字幕直接嵌入視訊影格或視訊影格中繼資料。有了這些，MediaConvert 會保留字幕及其內嵌的影格，無論時間碼設定為何。

# 時間差異的使用案例
<a name="time-delta-use-cases"></a>

使用**時間差異 (TimeDelta)** 的方式取決於您嘗試解決的問題，以及您正在使用的字幕格式。

 根據預設，您可以指定以秒為單位的時間差。如果您想要改為以毫秒為單位指定，請將**時間差異單位 (TimeDeltaUnits)** 設定為**毫秒 (MILLISECONDS)**。

## 調整影片和字幕檔案之間的不同時間碼
<a name="adjusting-for-different-timecodes-between-video-and-captions-files"></a>

使用以時間碼為基礎的註解格式 (例如 SCC 和 STL) 時，字幕中的時間碼可能是相對於開始時間碼，而不是內嵌在視訊中的開始時間碼。您可以使用 **Time delta (時間差量)**，針對差異進行調整。

**範例問題：**您的影片檔案可能有從 00：05：00：00 開始的內嵌時間碼。第一個需要字幕的對話執行個體可能是影片一分鐘，時間碼為 00：06：00：00。您的字幕檔案是基於以下假設來撰寫：您的視訊時間碼於 00:00:00:00 開始，且第一個字幕於 00:01:00:00 開始。如果您不使用**時間差異**，MediaConvert 不會包含此第一個字幕，因為它發生在影片開始之前。

**解決方案：**在字幕中增加五分鐘。輸入 **300** 作為 **Time delta (時間差量)**。

## 同步視訊和音訊後調整字幕
<a name="adjusting-captions-after-sychronizing-video-and-audio"></a>

您的時間碼型 (SCC 或 STL) 字幕可能與視訊中內嵌的時間碼對齊，但您可能需要使用輸入 **Timecode source (時間碼來源)** 設定來對齊音訊。這會在視訊與字幕之間產生差異，您需要對此進行調整。若使用時間戳記型字幕格式 (例如 SRT、SMI 和 TTML)，則不需要進行此調整。

如需在使用輸入 **Timecode source (時間碼來源)** 時對齊字幕的詳細資訊，請參閱[輸入時間碼來源和字幕對齊](about-input-timecode-source-and-captions-alignment.md)。

**範例問題：**您的視訊檔案可能會有從 00:05:00:00 開始的內嵌時間碼，而需要字幕的第一段對話可能在視訊一分鐘的位置，時間碼為 00:06:00:00。您的字幕檔案會正確寫入同步，第一個字幕從 00:06:00:00 開始。但是，您必須在輸入中變更內嵌字幕，才能正確地與音訊檔案同步。因此，您會將輸入 **Timecode source (時間碼來源)** 設定為 **Start at Zero (從零開始)**。如果您不使用**時間差異**，MediaConvert 會在 6 分鐘將輸出中的第一個字幕放入影片。

**解決方案：**從字幕中減去五分鐘。輸入 **-300** 作為 **Time delta (時間差量)**。

## 更正字幕同步中的輕微錯誤
<a name="correcting-slight-errors-in-captions-sync"></a>

採用任何類型的附屬格式，您的輸入字幕檔案中可能有個小錯誤，以致字幕始終延後一點或提早一點。

**範例問題：**您的視訊都有從零開始的內嵌字幕。第一個需要字幕的對話執行個體是在 00:06:15:00，但是字幕延遲三秒 (00:06:18:00) 才出現在螢幕上。

**解決方案：**從字幕中減去三秒。輸入 **-3** 作為 **Time delta (時間差量)**。

# 將雙 SCC 輸入檔案轉換為內嵌字幕
<a name="converting-dual-scc-input-files-to-embedded-captions"></a>

如果您想要使用兩個 SCC 檔案作為字幕輸入，並將字幕內嵌為輸出視訊串流中內嵌的兩個輸出字幕頻道，請根據此程序設定字幕。

**將雙 SCC 轉換為內嵌字幕**

1. 設定兩個輸入字幕選取器。請遵循 [建立輸入字幕選取器](including-captions.md#create-input-caption-selectors) 中的程序。指定值，如下所示：
   + 在每個字幕選取器中，選擇 **SCC** 作為 **Source (來源)**。
   + 對於 **Source file (來源檔案)**，請在每個選取器中選擇其中一個輸入 SCC 檔案。
   + 如果您想要在輸出中同時內嵌 608 和 708 字幕，請在兩個字幕選擇器中選擇 **Upconvert** for **Force 608 to 708 upconvert**。

1. 在您的輸出中設定字幕。請遵循 [在輸出中設定字幕](set-up-captions-in-outputs.md) 中的程序。依照以下特定選項：
   + 在與您要內嵌字幕之視訊的相同輸出中指定字幕。
   + 選擇兩次**新增字幕**，在**編碼設定**區段中建立**字幕 1** 和**字幕 2** 標籤。
   + 對於 **Captions source (字幕來源)**，請在每個字幕標籤中，選擇您在此程序的先前步驟中建立的其中一個字幕選取器。
   + 對於 **CC channel number (CC 頻道號碼)**，為不共用欄位的每個字幕標籤選擇一個數字。例如，在**字幕 1** 中，為 **CC 頻道號碼**選擇 **1**，在**字幕 2** 中，為 **CC 頻道號碼**選擇 **3**。

     請勿選擇組合 1 和 2 或 3 和 4，因為這些頻道配段共用相同的欄位。
   + 如果您在此程序的先前步驟中選擇 **Upconvert (向上轉換)**，請選擇性針對 **708 service number (708 服務號碼)** 指定服務號碼。在輸出中，每個字幕標籤都必須指定不同的服務號碼。

     如果您向上轉換但未指定 **708 service number (708 服務號碼)**，服務會使用您針對 **CC channel number (CC 頻道號碼)** 指定的值作為 708 服務號碼。

# TTML 樣式格式
<a name="ttml-style-formatting"></a>

AWS Elemental MediaConvert 會在任務執行時讀取輸入字幕的樣式格式。如果您注意到輸出的樣式格式有問題，建議您檢查輸入字幕的格式，或將**樣式傳遞**設定為已啟用。下列主題提供在 TTML 輸入字幕中使用字型、可繼承和不可繼承屬性，以及從右到左語言的指導。

**指定字型** 

MediaConvert 支援 [TTML2 W3C 建議](https://www.w3.org/TR/ttml2/#style-value-generic-family-name)中列出的下列一般字型系列：
+ 預設
+ 單空間
+ sansSerif
+ serif
+ monospaceSansSerif
+ monospaceSerif
+ proportionalSansSerif
+ proportionalSerif

為了獲得最佳結果，請在 TTML 輸入字幕中指定一般字型系列。如果您改為指定個別字型，MediaConvert 會將字型映射到上面列出的其中一個一般字型系列。

**可繼承和不可繼承的屬性** 

樣式屬性為可繼承或不可繼承。[TTML 2 W3C 建議](https://www.w3.org/TR/ttml2/#styling-attribute-vocabulary)會針對每個樣式屬性列出*繼承*的這些項目。

在您希望套用它們的每個元素中包含不可繼承的樣式屬性。

例如， `tts:backgroundColor` 是不可繼承的樣式屬性。以下結果會產生紅色背景顏色的 *hello* 和沒有背景顏色*的世界*：

`<span tts:backgroundColor="red">hello<br/>world</span>` 

您可以修正上述格式，讓 *hello world* 都具有紅色背景顏色，方法是使用個別跨度，每個跨度都有自己的樣式屬性，如本範例所示：

`<span><span tts:backgroundColor="red">hello</span> <br/> <span tts:backgroundColor="red">world</span></span>` 

**從右到左語言** 

MediaConvert 在 TTML 中同時支援從左到右和從右到左的文字方向。

當您未指定文字方向時，MediaConvert 會使用從左到右。

若要從右到左指定，請包含 `tts:direction="rtl"` 屬性。如果您的文字混合了雙向字元，也請包含`tts:unicodeBidi="embed"`屬性，如 [TTML2 W3C 建議](https://www.w3.org/TR/ttml2/#style-attribute-direction)中所述。請注意， `tts:unicodeBidi` 是不可繼承的屬性。

# IMSC 輸入字幕 （作為 IMF 來源的一部分）
<a name="IMSC-in-MXF"></a>

AWS Elemental MediaConvert 支援 IMSC 做為輸入字幕格式，可以是附屬檔案或 IMF 來源的一部分。如果您的輸入 IMSC 字幕位於附屬檔案中，請參閱 [IMSC、SCC、SMPTE-TT、SRT、STL、TTML （附屬） 輸入字幕](sidecar-input.md)。

當您的輸入 IMSC 字幕是 IMF 來源的一部分時，您不需要指定 IMSC 字幕的來源檔案。該資訊位於您為任務輸入指定的 CPL 檔案中。如需 IMSC 支援的限制 , 請參閱 [IMSC 要求](imsc-captions-support.md)。

**IMSC 的字幕選擇器數量**  
請為每個軌道建立一個字幕選擇器。

**軌道編號**  
提供軌道編號來指定所需的字幕。軌道編號對應於軌道在 CPL 檔案中顯示的順序。例如，如果您的 CPL 檔案首先列出法語字幕，請將 **Track number (軌道編號)** 設定為 **1** 來指定法語字幕。

**在您的 JSON 任務規格中**  
如果您使用 API 或 SDK，您可以在任務的 JSON 檔案中找到這些設定。這些設定位於 下`Inputs`，如下列範例所示：

```
"Inputs": [

 
      {
        ...
        		
        "CaptionSelectors": {
          "Captions Selector 1": {
            "SourceSettings": {
              "SourceType": "IMSC",
              "TrackSourceSettings": {
                "TrackNumber": 1
              }
            }
          },

          "Captions Selector 2": {
            "SourceSettings": {
              "SourceType": "IMSC",
              "TrackSourceSettings": {
                "TrackNumber": 4
              }
            }
          },
          ...
```

# WebVTT 輸入字幕 （作為 HLS 來源的一部分）
<a name="WebVTT-in-HLS"></a>

AWS Elemental MediaConvert 支援 WebVTT 做為輸入字幕格式，可以是附屬檔案或 HLS 來源的一部分。如果您的輸入 WebVTT 字幕位於附屬檔案中，請參閱 [IMSC、SCC、SMPTE-TT、SRT、STL、TTML （附屬） 輸入字幕](sidecar-input.md)。

當您的輸入 WebVTT 字幕是 HLS 來源的一部分時，您不需要為 WebVTT 字幕指定來源 WebVTT 資訊清單檔案。該資訊位於您在任務輸入中指定的主要 HLS 輸入檔案中。您需要啟用**使用 HLS 轉譯群組**，並使用下列設定。

**WebVTT 的字幕選擇器數量**  
為每個 WebVTT 來源建立一個字幕選擇器。

**轉譯群組 ID**  
提供群組 ID，指定您想要的字幕群組。群組 ID 對應至 HLS 資訊清單中的 EXT-X-MEDIA、GROUP-ID 標籤。例如，如果您的 HLS 資訊清單檔案列出特定群組 "subs" 中的法文字幕，請將**轉譯群組 ID** 設為 **子**，以指定法文字幕群組 ID。

**轉譯名稱**  
提供轉譯名稱來指定您想要的字幕群組。轉譯名稱對應至 HLS 資訊清單中的 EXT-X-MEDIA、NAME 標籤。例如，如果您的 HLS 資訊清單檔案在名為「法文」的轉譯名稱中列出您的法文字幕，請將**轉譯名稱**設定為**法文**，以指定法文字幕轉譯名稱。

**轉譯語言程式碼**  
提供 ISO 639-3 語言代碼，指定您想要的字幕群組。語言對應至 HLS 資訊清單中的 EXT-X-MEDIA、LANGUAGE 標籤。例如，如果您的 HLS 資訊清單檔案以「FRA」的語言代碼列出您的法文字幕，請將**轉譯語言代碼**設定為 **FRA**，以指定法文字幕轉譯語言代碼。

**在您的 JSON 任務規格中**  
如果您使用 API 或 SDK，您可以在任務的 JSON 檔案中找到這些設定。這些設定位於 下`Inputs`，如下列範例所示：

```
"Inputs": [

 
      {
        ...
        		
"CaptionSelectors": {
  "Caption Selector 1": {
    "SourceSettings": {
      "SourceType": "WebVTT",
      "WebvttHlsSourceSettings": {
        "RenditionGroupId": "subs",
        "RenditionName": "French",
        "RenditionLanguageCode": "FRA"
      }
    }
  }
}
          ...
```