hdr 要求 再谈
https://cloud.tencent.com/developer/article/1180920
HDR视频的标准中,最常用的是由BDA(Blu-ray Disc Association)支持的HDR10标准,这是最早支持HDR视频的几种标准之一。HDR10标准包含的内容有:使用PQ电光转换函数和BT.2020标准中的色度空间,10比特的非恒定亮度Y’CbCr空间,4:2:0的色度抽样方法,压缩方法采用HEVC Main 10配置文件。在实际应用时,HDR10中还应该包括一些常用的元数据,比如Mastering Display Colour Information或者Content Light Level Information等。
https://blog.csdn.net/qq26983255/article/details/105395574 很好的文章 有很大的参考价值
ffmpeg.exe -i X:\HDR\三星仙境HDR.ts -vf zscale=t=linear:npl=100,format=gbrpf32le,zscale=p=bt709,tonemap=tonemap=hable:desat=0,zscale=t=bt709:m=bt709:r=tv,format=yuv420p -c:v libx265 -crf 18 -preset slower output.mkv
这个的效果很好
ffmpeg.exe -i input_path -vf zscale=t=linear:npl=100,format=gbrpf32le,zscale=p=bt709,tonemap=tonemap=hable:desat=0,zscale=t=bt709:m=bt709:r=tv,format=yuv420p,zscale=s=1920x1080 -c:v libx264 -preset slow -crf 18 -c:a copy output_path
作者:ElegyToTheVoid
https://www.bilibili.com/read/cv3936575/
出处: bilibili
通过opencl做色调映射 效果不好 fps 22
./ffmpeg -init_hw_device opencl=cuda -filter_hw_device cuda -i /root/san.ts -vf "format=p010,hwupload,tonemap_opencl=t=bt2020:tonemap=linear:format=p010,hwdownload,format=p010" -c:v hevc_nvenc -b:v 20000000 -c:a copy /root/san_sdr.ts
下面的命令效果仍然很差劲 fps 30
./ffmpeg -init_hw_device opencl=cuda -filter_hw_device cuda -extra_hw_frames 3 -c:v hevc_cuvid -i /root/san.ts -c:a copy -vf "hwupload,tonemap_opencl=tonemap=mobius:param=0.01:desat=0:r=tv:p=bt709:t=bt709:m=bt709:format=nv12,hwdownload,format=nv12" -c:v hevc_nvenc -rc:v vbr -cq:v 20 -qmin 20 -qmax 20 /root/san_sdr.ts
这个效果最好 fps 4.4
./ffmpeg -c:v hevc_cuvid -i /root/san.ts -vf zscale=t=linear:npl=100,format=gbrpf32le,zscale=p=bt709,tonemap=tonemap=hable:desat=0,zscale=t=bt709:m=bt709:r=tv,format=yuv420p,zscale=s=3840x2160 -c:v libx264 -preset slow -crf 18 -c:a copy /root/san_sdr.ts
通过达芬奇sdr 转hdr
https://www.bilibili.com/read/cv7759075/
https://zhuanlan.zhihu.com/p/162352065
一个讲解很深的ffmpeg hdr编码 很不错 good 可以参考其中的qmax qmin 来解决湖南有线mp4转ts问题