我想使用多通道对 H.264 视频进行编码。我尝试过:
ffmpeg -y -ss 00:00:12.0 -i "c:\vid\example.mkv" -vframes 420 -vcodec libx264 -preset veryslow -refs 8 -b:v 1200k -an -pass 1 -f h264 /dev/null
ffmpeg -y -ss 00:00:12.0 -i "c:\vid\example.mkv" -vframes 420 -vcodec libx264 -preset veryslow -refs 8 -b:v 1200k -acodec copy -pass 2 "c:\vid\encoded.mkv"
但它显示错误消息:
/dev/null:没有此文件或目录
ratecontrol_init:无法打开统计文件
打开输出流 #0:0 的编码器时出错 - 可能是不正确的参数,例如 bit_rate、rate、width 或 height
我做错了什么吗?顺便说一句,我不确定如何在 FFmpeg 中使用多通道,有什么想法可以修复错误吗?
答案1
Windows 没有/dev/null
。请使用NUL
代替。
有关详细信息,请参阅FFmpeg Wiki 上有关 H.264 编码的帖子。
答案2
尝试
ffmpeg -y -ss 00:00:12.0 -i "c:\vid\example.mkv" -vframes 420 -vcodec libx264 -preset veryslow -refs 8 -b:v 1200k -an -pass 1 -f matroska dummy
ffmpeg -y -ss 00:00:12.0 -i "c:\vid\example.mkv" -vframes 420 -vcodec libx264 -preset veryslow -refs 8 -b:v 1200k -acodec copy -pass 2 "c:\vid\encoded.mkv"
第二遍完成后,删除第一遍中创建的虚拟文件。