是否可以使用FFMPEG创建Dolby Vision HLS流?我尝试过这样的在线教程,例如,但我没有看到任何成功。我要么从TSMUXER,无效的RPU文件中没有DV获取HEVC文件,要么从FFMPEG中获得了Skipping NAL单元63消息。这是我正在测试的当前FFMPEG命令,至少要获得带有杜比视觉的HEVC,
ffmpeg -i input.mp4 -c:v copy -f hevc - | dovi_tool extract-rpu --rpu-out input.rpu - | x265-10b - --input-depth 10 --output-depth 10 --y4m --preset veryfast --crf 22 --master-display "G(8500,39850)B(6550,2300)R(35400,14600)WP(15635,16450)L(40000000,50)" --max-cll "0,0" --colormatrix bt2020nc --colorprim bt2020 --transfer smpte2084 --dolby-vision-rpu input.rpu --dolby-vision-profile 8.1 --vbv-bufsize 20000 --vbv-maxrate 20000 output.hevc
我也尝试过像Dovi_tool一样尝试的,
ffmpeg -i nameofmovie.mp4 -f yuv4mpegpipe -strict -1 -pix_fmt yuv420p10le - | x265-10b - --input-depth 10 --output-depth 10 --y4m --preset veryfast --crf 22 --master-display "G(8500,39850)B(6550,2300)R(35400,14600)WP(15635,16450)L(40000000,50)" --max-cll "0,0" --colormatrix bt2020nc --colorprim bt2020 --transfer smpte2084 --dolby-vision-rpu input.rpu --dolby-vision-profile 8.1 --vbv-bufsize 20000 --vbv-maxrate 20000 output.hevc
这给了我这个错误:
[hevc @ 000002f047aaf1c0] Skipping NAL unit 63
Last message repeated 1 times
av_interleaved_write_frame(): Invalid argument
Error writing trailer of pipe:: Invalid argument00:00:00.04 bitrate=4772857.0kbits/s speed=0.297x
frame= 1 fps=0.0 q=-0.0 Lsize= 24300kB time=00:00:00.04 bitrate=4772857.0kbits/s speed=0.261x
video:0kB audio:0kB subtitle:0kB other streams:0kB global headers:0kB muxing overhead: 5271783.500000%
Error closing file pipe:: Invalid argument
[hevc @ 000002f047cc0b80] Skipping NAL unit 63
Last message repeated 8 times
[hevc @ 000002f047a23dc0] Skipping NAL unit 63
Last message repeated 1 times
[hevc @ 000002f0480be640] Skipping NAL unit 63
Last message repeated 1 times
Conversion failed!
理论上我想从MKV直接到HLS具有Dolby Vision的HLS,但是似乎更有问题。
有什么建议吗?
Is it possible to create a dolby vision HLS stream with ffmpeg? I have tried online tutorials such as this one https://codecalamity.com/encoding-uhd-4k-hdr10-videos-with-ffmpeg/#saving-dolby-vision but I have not seen any success. I either get hevc files with no dv from tsmuxer, invalid rpu files or the Skipping NAL unit 63 message from ffmpeg. Here is the current ffmpeg command I'm testing to at least get an hevc with dolby vision
ffmpeg -i input.mp4 -c:v copy -f hevc - | dovi_tool extract-rpu --rpu-out input.rpu - | x265-10b - --input-depth 10 --output-depth 10 --y4m --preset veryfast --crf 22 --master-display "G(8500,39850)B(6550,2300)R(35400,14600)WP(15635,16450)L(40000000,50)" --max-cll "0,0" --colormatrix bt2020nc --colorprim bt2020 --transfer smpte2084 --dolby-vision-rpu input.rpu --dolby-vision-profile 8.1 --vbv-bufsize 20000 --vbv-maxrate 20000 output.hevc
I have also tried with dovi_tool like so
ffmpeg -i nameofmovie.mp4 -f yuv4mpegpipe -strict -1 -pix_fmt yuv420p10le - | x265-10b - --input-depth 10 --output-depth 10 --y4m --preset veryfast --crf 22 --master-display "G(8500,39850)B(6550,2300)R(35400,14600)WP(15635,16450)L(40000000,50)" --max-cll "0,0" --colormatrix bt2020nc --colorprim bt2020 --transfer smpte2084 --dolby-vision-rpu input.rpu --dolby-vision-profile 8.1 --vbv-bufsize 20000 --vbv-maxrate 20000 output.hevc
Which gives me this error:
[hevc @ 000002f047aaf1c0] Skipping NAL unit 63
Last message repeated 1 times
av_interleaved_write_frame(): Invalid argument
Error writing trailer of pipe:: Invalid argument00:00:00.04 bitrate=4772857.0kbits/s speed=0.297x
frame= 1 fps=0.0 q=-0.0 Lsize= 24300kB time=00:00:00.04 bitrate=4772857.0kbits/s speed=0.261x
video:0kB audio:0kB subtitle:0kB other streams:0kB global headers:0kB muxing overhead: 5271783.500000%
Error closing file pipe:: Invalid argument
[hevc @ 000002f047cc0b80] Skipping NAL unit 63
Last message repeated 8 times
[hevc @ 000002f047a23dc0] Skipping NAL unit 63
Last message repeated 1 times
[hevc @ 000002f0480be640] Skipping NAL unit 63
Last message repeated 1 times
Conversion failed!
Theoretically I'd like to go from mkv straight to HLS with dolby vision but that seems to be even more problematic.
Any suggestions?
发布评论