ffmpeg因webm而失败

时间:2018-01-04 09:41:02

标签: ffmpeg webm

SKStoreReviewController

此命令出现错误,如:

/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';

只有在处理webm时才会出现错误。第一个命令有什么问题?

1 个答案:

答案 0 :(得分:0)

问题

  • 您使用了-vf选项(视频过滤器)但没有声明任何过滤器。此选项需要过滤器名称。添加过滤条件或移除-vf

  • 您的-passlogfile路径不存在。在尝试写入之前检查/var/tmp//ffmpeg-passes5a4def443e5eaepy3b/是否存在。另请注意//错字。

  • 为什么不使用x264 encoding presets?它们的设计使您无需错误地使用十亿个选项。

  • 你显然使用双通的任何特殊原因?除非您需要特定的输出文件大小,否则应use a single pass using -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'