2009年1月5日月曜日

MKVのavi(例えばXVIDコーデック)への変換

このエントリの続報。

MKVはmediacoderだとVFRでない場合にも上手くトランスコードできない場合があるのだが、やはりCCCP(の中のHaali Media Spliterをmp4やmkvのデコードに用いるのがポイント)を入れてsuper C のDirectshow Decodeオプションをオンにする方法で上手く入った。

基本的にはMediaCoderの方が好きだ。スレッドのプライオリティの設定ができたり、動画のサイズを320x240に指定した上でexpand to fitオプションを選択すれば元動画のサイズに関わらず320x240ぴったりに収まるように拡大縮小される点などが好ましい。しかしMediaCoderで上手く行かないmp4やmkvの場合にはCCCP+Super CのDirectShow Decodeオプションで上手く行くというのが結論でした。

なお、mediacoderの320x240でexpand to fitにする設定の代替としてsuper Cでは4:3でないソースは以下のように設定する。例えば16:9のソースならばvideo sizeとして320:176を選択し、(自動でセットされるが)アスペクト比として16:9を選択する。video sizeとして320:240を選択してアスペクト比として16:9を選択するとmediacoderでexpand to fitにしたのと同じ結果が得られるように見えるが私が使っているiriver lplayer はわざわざ動画のアスペクト比の情報を読むため歪んで再生されてしまう。このため、アスペクト比で嘘をついてはならない。mediacoderと違いアスペクト比が違う複数のソースを同時にバッチ処理できないのと、規格外のアスペクト比に対応できないのが難点だが、とりあえずこれでiriver lplayerで16:9の動画を再生できる。

0 件のコメント: