ffmpegの-fオプションの話

Ubuntu 16.04 LTS にてこの方法コンパイルした ffmpeg を使っていて

$ ffmpeg -y -i input%04d.png -f mp4 -c:v libx264 -pix_fmt yuv420p output.mp4

これは問題なく動くけど

$ ffmpeg -y -f mp4 -i input%04d.png -c:v libx264 -pix_fmt yuv420p output.mp4

これは
input%04d.png: No such file or directory
と怒られてしまう。

後者は間違えて -i より前に -f を置いてしまったせいで、インプットファイルに対して誤ったフォーマットを指定しようとしてエラーが出たのだろうけど、エラーメッセージではファイルが無いと言われているので、ファイル名間違えたのかとか、確かにファイルがあるのにおかしいとか、 %04d という書き方で合っているはずなのにおかしい、などと混乱して時間を溶かしがち、という話。
ffmpeg すごい便利だけど、たまにオプションの順番がクリティカルに効いてくるから注意しないといけない。