本頁說明如何將轉碼工作中的輸入影片轉換為支援的高動態範圍 (HDR) 或標準動態範圍 (SDR) 格式。Transcoder API 會使用高效率視訊編碼 (HEVC) 做為主要色彩轉換編解碼器。如果您未指定顏色轉換格式,系統會預設啟用直通功能。
顏色轉換格式
HEVC 是用於支援的色彩轉換格式的主要編解碼,包括:
- 混合式對數伽瑪 (HLG)
- SDR
- HDR10
H.264 和 VP9 串流僅支援 HLG 和 SDR。支援的編解碼和上述色彩格式之間的所有轉換。
透視
如果未指定顏色轉換格式,系統預設會啟用直通功能。
對於直通,Transcoder API 會保留輸入的色彩原色、轉移函式、範圍、色度位置和色彩空間;過程中不會進行任何色彩轉換。如果輸入內容是 HDR10 (或 HDR10+) 和 HEVC,Transcoder API 也會將中繼資料傳遞至輸出影片。
如果您指定的輸出編解碼不支援輸入的色彩格式,則會盡力傳送。舉例來說,輸入 HDR10 影片的 profile
和 pixelFormat
有 10 位元選項。如果您將輸出內容指定為 H.265,並為 profile
使用 8 位元選項,輸出內容就不是有效的 HDR10 影片,因為 HDR10 無法搭配 profile
的 8 位元選項。
轉換範例
如要指定顏色轉換格式,請使用空白的 hlg
、hdr10
或 sdr
物件。以下各節會顯示要新增至 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 輸入