概覽
高動態範圍(HDR)視頻一詞通常是指視頻格式系列,其特點是通過像素值,特定類型的光電傳輸特性(OETF),顏色空間以及與編碼視頻流一起攜帶的特殊元數據,可以實現更大範圍的顏色和亮度。這種格式通常用於UltraHD視頻內容的生產和交付。
有關HDR視頻的更多信息,請參見什麼是HDR視頻?和高動態範圍視頻。
下表列出了Zencoder當前支持的特定類型的HDR視頻格式。
HDR 格式 | 像素深度 | 像素範圍 | 原色 | 色彩空間 | OETF | 掌握顯示元數據 | 內容亮度級元數據 | 動態元數據 |
---|---|---|---|---|---|---|---|---|
HLG10 [1-1] | +10 | 有限 | 二零零二年 [1 至 4] | 那就是 B C R [1-5] | HLG [1-7] | |||
PQ10 [1-1] | +10 | 有限 | 二零零二年 [1 至 4] | 那就是 B C R [1-5] | PQ [1-8] | |||
HDR10 [1-1] | +10 | 有限 | 二零零二年 [1 至 4] | 那就是 B C R [1-5] | PQ [1-8] | 小型公司 2086 [1-9] | 中國華人民共和國 | |
杜比視界8.1 [1-2] | +10 | 有限 | 二零零二年 [1 至 4] | 那就是 B C R [1-5] | PQ [1-8] | 小型公司 2086 [1-9] | 中國華人民共和國 | 生產製程 |
杜比視界5 [1-3] | +10 | 充分 | 二零零二年 [1 至 4] | 我知道了Ť C p [1-6] | PQ [1-8] | 生產製程 |
注意事項
- [1-1] HLG10,PQ10和HDR10指的是由UltraHD論壇指南
- [1-2] DolbyVision 8.1是指DolbyVision Profile 8,其信號兼容性ID為1,由DolbyVision配置文件和級別規範
- [1-3] DolbyVision 5是指DolbyVision Profile 5,由DolbyVision配置文件和級別規範
- [1-4] BT.2020是指由ITU-R建議書BT.2020
- [1-5] Y'C' 乙 C' [R指Y'C' 乙 C' [R定義的非恆定亮度色彩空間ITU-R建議書BT.2020
- [1-6]我知道了Ť C p指IC Ť C p定義的色彩空間ITU-R建議書BT.2100
- [1-7] HLG是指由以下項定義的混合對數伽馬(HLG)傳遞函數ITU-R建議書BT.2100
- [1-8] PQ是指通過以下方式定義的感知量化器(PQ)傳遞函數ITU-R建議書BT.2100
- [1-9] SMPTE 2086指的是由SMPTE ST 2086
- [1-10] CAE 861.3指的是由CAE 861.3
- [1-11] SMPTE 2094-10引用了DolbyVision動態元數據,由SMPTE ST 2094-10
可在以下文檔中找到有關在視頻編解碼器比特流,容器格式以及DASH和HLS流傳輸系統中傳輸此類格式的詳細信息:
支持的運營
Zencoder當前僅執行直接轉碼操作 HDR格式的視頻。也就是說,如果輸入視頻經過顏色分級並以特定的HDR格式編碼,則相同的顏色分級和與HDR格式相關的元數據將保留在輸出中。
當前不支持不同類型的HDR格式之間的轉換或標準動態範圍(SDR)和HDR格式之間的轉換。原則上,HDR格式之間的轉換是不平凡的操作,可能會影響藝術意圖和/或引入可見的偽像。由於這些原因,我們建議您在後期製作中進行此類轉換操作。
目前,要以HDR格式對視頻進行編碼,需要使用HEVC視頻編解碼器,並在Main10配置文件中運行,並使用10位像素。必須為所有HDR輸出定義此類編解碼器,配置文件和位深度參數。目前不支持將其他編解碼器/配置文件/位深度與HDR格式一起使用。
以DolbyVision格式對視頻進行編碼還需要使用ISOBMFF(MP4)容器格式進行輸出。當前不支持將其他容器格式與DolbyVision一起使用。
通過使用生成的靜態和動態輸出均支持Zencoder中的HDR格式編碼Brightcove上下文感知編碼(CAE)技術。CAE技術的使用可實現更有效的編碼,因此建議UltraHD論壇指南用於UltraHD / HDR內容的編碼。
輸入文件要求
輸入的視頻文件應該是高質量的母帶或中間字母,帶有適當的顏色漸變的HDR視覺內容,並提供描述所用HDR格式所需的所有必要元數據。
此類文件的示例可能是:
- 符合HLG10,PQ10和HDR10的視頻流,使用HEVC編解碼器編碼,並在此類流中攜帶所有必要的HDR信息
- 後期製作的幀內編碼夾層(例如,OP1a MXF中的Apple ProRes 4444,Avid DNxHD或JPEG 2000(J2K)),以及有關正在使用的HDR格式類型和任何其他元數據的附加信息(例如,主顯示屏和內容亮度)元數據)來描述它
- HEVC編碼的DolbyVision流,以及帶有相關動態元數據的“ RPU”文件。
指定HDR格式參數
如果輸入夾層包含與HDR格式相關聯的所有元數據,則可以使用以下命令將所有此類信息傳播到輸出:preserve_hdr_metadata
參數。
下面的示例說明了此方法:
{
"input": "s3://mybucket/hdr_master.mp4",
"outputs": [
{
"video_codec": "hevc",
"video_codec_profile": "main10",
"video_bit_depth": 10,
"preserve_hdr_metadata": true
}
]
}
此方法應適用於HEVC編碼的HDR10,PQ10和HLG10夾層。
如果輸入夾層不能準確描述HDR格式或僅包含部分信息,則應使用HDR格式參數的明確說明。
在這種情況下,Zencoder應該收到hdr_format
參數,描述使用的HDR格式的確切類型,以及傳遞關聯元數據可能需要的幾個其他參數。下表列出了可能的值hdr_format
參數和必須指定的其他參數。
HDR 格式 | Zencoder API參數/值 | |||
---|---|---|---|---|
hdr_format |
master_display |
max_content_light_level ,max_frame_average_light_level |
dolby_vision_rpu_url |
|
HLG10 | hlg |
|||
PQ10 | pq |
|||
HDR10 | hdr10 |
必需的 | 必需的 | |
杜比視界8.1 | dv8.1 |
必需的 | 必需的 | 必需的 |
杜比視界5 | dv5 |
必需的 |
例如,使用master_display
和內容亮度可以使用以下命令來執行外部通信的元數據參數:
{
"input": "s3://mybucket/prores_hdr_master.mov",
"outputs": [
{
"video_codec": "hevc",
"video_codec_profile": "main10",
"video_bit_depth": 10,
"hdr_format": "hdr10",
"master_display": {
"red": {"x": 0.708, "y": 0.292},
"green": {"x": 0.17, "y": 0.797},
"blue": {"x": 0.131, "y": 0.046},
"white_point": {"x": 0.31273,"y": 0.329},
"luminance": {"max": 1000,"min": 0.0001}
},
"max_content_light_level": 1000,
"max_frame_average_light_level": 180
}
]
}
當使用編解碼器(例如Apple ProRes 4444,Avid DNxHD或OP1a MXF中的JPEG 2000(J2K)等)與後期製作的夾層金屬一起使用時,此方法是合適的。
同樣,在對DolbyVision內容進行代碼轉換時,與DolbyVision Content相關的動態元數據(“ RPU”文件)可以通過使用dolby_vision_rpu_url
參數:
{
"input": "s3://mybucket/dv5_master.mp4",
"outputs": [
{
"video_codec": "hevc",
"video_codec_profile": "main10",
"video_bit_depth": 10,
"video_color_range": "full",
"hdr_format": "dv5",
"dolby_vision_rpu_url": "s3://mubucket/dv5_master_rpu.rpu"
}
]
}
使用CAE指定HDR格式參數
使用時Brightcove上下文感知編碼(CAE)技術,可以將所有與編解碼器和HDR格式相關的參數指定為
- 標記為的輸出參數
dynamic_profile_rendition
, 要么 - 的參數
dynamic_profile_options
目的
第二種方法更緊湊,更可取。下面提供了說明使用第二種方法的示例:
{
"input": "s3://mybucket/hdr_master.mp4",
"generate_dynamic_profile": true,
"dynamic_profile_options":
{
"max_renditions": 6,
"video_codec": "hevc",
"video_codec_profile": "main10",
"video_bit_depth": 10,
"preserve_hdr_metadata": true,
}
"outputs": [
{"dynamic_profile_rendition": 1},
{"dynamic_profile_rendition": 2},
{"dynamic_profile_rendition": 3},
{"dynamic_profile_rendition": 4},
{"dynamic_profile_rendition": 5},
{"dynamic_profile_rendition": 6}
]
}