使用FFmpeg从10bit Pro-Res为YouTube编码HEVC / H.265 / HDR视频

时间:2018-01-30 15:28:11

标签: ffmpeg hevc hdr

我希望发布HDR YouTube视频,我的源文件是Apple ProRes或DNxHR,使用色度子放大器4:4:4或全RGB,均为10bit,因此原始源文件具有所需的全部内容为了编码成10比特4:2:0 H.265 / HEVC(HDR)。

我已经按照这里列出的一些答案,审查了许多不同的方法,尝试了许多不同的命令但没有成功,仅使用FFmpeg时颜色不正确,红色很多,仅使用Adobe编码为H.264时在他们的支持页面上推荐的设置,结果更暗,这是我使用的命令:

我试过这个:

ffmpeg \
-i input.mov \
-c:v libx265 \
-tag:v hvc1 \
-crf 21 \
-preset fast \
-pix_fmt yuv420p10le \
-x265-params "colorprim=bt2020:transfer=smpte2084:colormatrix=bt2020nc:master-display=G(13250,34500)B(7500,3000)R(34000,16000)WP(15635,16450)L(10000000,10):max-cll=1000,400" \
-c:a libfdk_aac \
-b:a 128k \
-ac 2 \
-ar 44100 \
-movflags +faststart \
output.mp4

而且:

ffmpeg \
-y \
-hide_banner \
-i input.mov \
-pix_fmt yuv420p10le \
-vf "scale=out_color_matrix=bt2020:out_h_chr_pos=0:out_v_chr_pos=0,format=yuv420p10" \
-c:v libx265 \
-tag:v hvc1 \
-crf 21 \
-preset fast \
-x265-params 'crf=12:colorprim=bt2020:transfer=smpte-st-2084:colormatrix=bt2020nc:master-display="G(13250,34500)B(7500,3000)R(34000,16000)WP(15635,16450)L(10000000,1)":max-cll="1000,400"' \
-c:a libfdk_aac \
-b:a 128k \
-ac 2 \
-ar 44100 \
-movflags +faststart \
output.mp4

我还尝试使用MKVToolNix,以便使用以下命令将元数据插入到编码的HEVC / H.265文件中:

/Applications/MKVToolNix-9.7.1.app/Contents/MacOS/mkvmerge \
-o output.mkv \
--colour-matrix 0:9 \
--colour-range 0:1 \
--colour-transfer-characteristics 0:16 \
--colour-primaries 0:9 \
--max-content-light 0:1000 \
--max-frame-light 0:300 \
--max-luminance 0:1000 \
--min-luminance 0:0.01 \
--chromaticity-coordinates 0:0.68,0.32,0.265,0.690,0.15,0.06 \
--white-colour-coordinates 0:0.3127,0.3290 \
input.mp4

但结果是一样的,YouTube不会将文件识别为HDR文件,它只使用第一个FFmpeg命令和使用Adobe Premiere编码的文件,但颜色看起来不太好,所以,也许我错了一些概念,谢谢你的帮助。

0 个答案:

没有答案