將輸入的影片轉換為 HDR

本頁說明如何將轉碼工作中的輸入影片轉換為支援的高動態範圍 (HDR) 或標準動態範圍 (SDR) 格式。Transcoder API 會使用高效率視訊編碼 (HEVC) 做為主要色彩轉換編解碼器。如果您未指定顏色轉換格式,系統會預設啟用直通功能。

顏色轉換格式

HEVC 是用於支援的色彩轉換格式的主要編解碼,包括:

  • 混合式對數伽瑪 (HLG)
  • SDR
  • HDR10

H.264VP9 串流僅支援 HLG 和 SDR。支援的編解碼和上述色彩格式之間的所有轉換。

透視

如果未指定顏色轉換格式,系統預設會啟用直通功能。

對於直通,Transcoder API 會保留輸入的色彩原色、轉移函式、範圍、色度位置和色彩空間;過程中不會進行任何色彩轉換。如果輸入內容是 HDR10 (或 HDR10+) 和 HEVC,Transcoder API 也會將中繼資料傳遞至輸出影片。

如果您指定的輸出編解碼不支援輸入的色彩格式,則會盡力傳送。舉例來說,輸入 HDR10 影片的 profilepixelFormat 有 10 位元選項。如果您將輸出內容指定為 H.265,並為 profile 使用 8 位元選項,輸出內容就不是有效的 HDR10 影片,因為 HDR10 無法搭配 profile 的 8 位元選項。

轉換範例

如要指定顏色轉換格式,請使用空白的 hlghdr10sdr 物件。以下各節會顯示要新增至 VideoStream 的 JSON 物件,以便執行指定的轉換。

轉換為 HLG 格式

使用 hlg 物件,將輸入的影片轉換為 HLG 格式。

"elementaryStreams": [
  {
    "key": "video_hlg",
    "videoStream": {
      "h264": {
        "heightPixels": 720,
        "widthPixels": 1280,
        "bitrateBps": 5000000,
        "frameRate": 25,
        "hlg":{}
    }
  }
]

轉換成 HDR10 格式

使用 hdr10 物件,將輸入影片轉換為 HDR10 格式。

"elementaryStreams": [
  {
    "key": "video_hdr10",
    "videoStream": {
      "h265": {
        "heightPixels": 720,
        "widthPixels": 1280,
        "bitrateBps": 5000000,
        "frameRate": 25,
        "pixelFormat":"yuv420p10",
        "profile":"main10",
        "hdr10":{}
    }
  }
]

降轉為 SDR 格式

使用 sdr 物件,將輸入影片降轉為 SDR 格式。

"elementaryStreams": [
  {
    "key": "video_sdr",
    "videoStream": {
      "h264": {
        "heightPixels": 720,
        "widthPixels": 1280,
        "bitrateBps": 5000000,
        "frameRate": 25,
        "sdr":{}
    }
  }
]

可能發生的錯誤

如果 Transcoder API 無法執行轉換作業,轉碼作業就會失敗。可能的錯誤包括:

  • 使用 8 位元像素格式或設定檔轉換為 HDR10 格式
  • 不符合 BT.709 的 SDR 輸入