ffmpegのオプションメモ

ffmpegで、動画をエンコするに至って、いろいろ設定していたがようやく画質が満足できそうなオプションになった。
これのおかげで、ビビッドレッドオペレーション2話を5周くらい見てしまった。
目指すは、200Mで高画質だったが、結果は、200〜300Mくらいで高画質になった。
音のビットレート減らすとまだ容量減らせると思う。
以下、コマンド

ffmpeg -i "hoge.ts" -threads 2 -cmp chroma -flags +ilme+ildct -deinterlace -top -1 -fpre "/usr/local/share/ffmpeg/libx264-hq-ts.ffpreset" -vcodec libx264 -b:v 1024k -s hd720 -pass 1 -passlogfile "./pass.log" -f mp4 -acodec libfaac -ab 128k -ar 48000 -y "hoge.mp4" 2> ffmpeg.log && ffmpeg -i "hoge.ts" -threads 2 -flags +ilme+ildct -deinterlace -top -1 -cmp chroma -fpre "/usr/local/share/ffmpeg/libx264-hq-ts.ffpreset" -vcodec libx264 -b:v 1024k -s hd720 -pass 2 -passlogfile "./pass.log" -f mp4 -acodec libfaac -ab 128k -ar 48000 -y "hoge.mp4" 2>> ffmpeg.log 

途中の libx264-hq-ts.ffpreset は、こちらを参考にしました。
ffmpeg version git-2013-01-12-2ea3f37 では、cmp=+chromaがダメだったので、そこだけオプションで -cmp chroma にしています。
以下 libx264-hq-ts.ffpreset

level=41
crf=25
coder=1
flags=+loop
# cmp=+chroma
partitions=+parti8x8+parti4x4+partp8x8+partb8x8
me_method=umh
subq=7
me_range=16
g=250
keyint_min=25
sc_threshold=40
i_qfactor=0.71
b_strategy=1
qmin=10
rc_eq='blurCplx^(1-qComp)'
bf=16
bidir_refine=1
refs=6

つまづいたとこは、cmp=+chroma と ffmpegの1パスと2パスのオプションを音のエンコ設定も含めて全く一緒にしないといけないとこだった。
1パスではログさえ残せればいいと思ってたので、 -f rawvideo -an /dev/null でいけると思ってたが、音も含めて一緒にしないときちんとエンコされなかった。
もしかしたら他に原因あるかも。

これで低容量高画質が実現できた。
アニメだとTSファイル30分で250MBくらい。
画質はブロックノイズが少々あるので、これをなんとかすれば100%満足。(現状95%)

暇があったらffmpegのオプションの解説とかも(分かる範囲で)したいなと思う。