/usr/local/bin/ffmpeg '-y' '-i' '/Users/l/htdocs/5a4def2049313.webm' '-vcodec' 'libx264' '-acodec' 'libfaac' '-b:v' '415k' '-refs' '6' '-coder' '1' '-sc_threshold' '40' '-flags' '+loop' '-me_range' '16' '-subq' '7' '-i_qfactor' '0.71' '-qcomp' '0.6' '-qdiff' '4' '-trellis' '1' '-b:a' '128k' '-vf' '-pass' '1' '-passlogfile' '/var/tmp//ffmpeg-passes5a4def443e5eaepy3b/pass-5a4def443e6a2' '/Users/l/htdocs/5a4def2049313.mp4'
此命令出现错误,如:
ratecontrol_init: can't open stats file
Error initializing output stream 0:0 -- Error while opening encoder for output stream #0:0 - maybe incorrect parameters such as bit_rate, rate, width or height';
该命令由库生成。这个库可以与其他格式一起使用,也可以使用更少的参数,例如:
/usr/local/bin/ffmpeg '-y' '-i' '/Users/l/htdocs/5a4def2049313.webm' '/Users/l/htdocs/5a4def2049313.mp4'
只有在处理webm时才会出现错误。第一个命令有什么问题?
-vf
选项(视频过滤器),但没有声明任何过滤器。此选项需要过滤器名称。添加过滤器或删除-vf
。-passlogfile
路径是不存在的。在尝试写入之前检查/var/tmp//ffmpeg-passes5a4def443e5eaepy3b/
是否存在。另请注意//
拼写错误。-crf
而不是-b:v
。libfaac
is old and has been removed from FFmpeg some time ago。如果你正在使用它,你的ffmpeg
已经过时了。 Upgrade并使用aac
代替。/usr/local/bin/ffmpeg '-y' '-i' '/Users/l/htdocs/5a4def2049313.webm' '-c:v' 'libx264' '-preset' 'slow' '-c:a' 'aac' '-b:a' '128k' '-movflags' '+faststart' '/Users/l/htdocs/5a4def2049313.mp4'