質問: 30fpsの動画を MPC 、ffdshow , Avisynth , MVtools2 でフレーム補間で60fpsで再生するには?
回答: 2chなどで話題になっているようですね。 一番詳しく手順が書いてあると思われる投稿記事を参考に実験して見ました。 ffdshow と AviSynth は使っているので、その次から作業。 なお、使っているのは、以下のバージョンです。 ffdshow_beta6_rev2527_20081219.exe http://sourceforge.net/projects/ffdshow-tryout/files/Old%20releases... AviSynth 2.5.8 ・Avisynth 2.5.8 MT をダウンロードして解凍 ・Avisynth 2.5.8 MT 同梱の avisynth.dll を system32 にコピー ・Avisynth 2.5.8 MT 同梱の MT.dll を AviSynth 2.5 の plugins にコピー ・MVTools v2.5.10.1 をダウンロードして解凍 (ページ一番下にDLリンクがあります) ・MVTools v2.5.10.1 の mvtools2.dll を AviSynth 2.5 の plugins にコピー ・ffdshow のビデオデコーダーの設定を開く コーデック タブを開き、再生したい動画の形式を libavcodec にする。 Avisynth タブを開き、 [Avisynth] チェックする。 [ffdshowのビデオソースを追加する] チェックを外す。 [3:2 プルダウン]→[プルダウンを行わない] (この設定はあまり関係ないらしい) [入力色空間]→[YV12] だけにチェック。 (この設定の理由はよく分りませんが、AVIやMP4はどうせYV12なので指示通りにする) [バッファー後方/前方] 0/10 (10/10 or 0/24 でもいいらしい) 下の入力ボックスに以下のスクリプトを貼り付ける SetMemoryMax(1280) SetMTMode(5,4) ffdShow_source() SetMTMode(2) super=MSuper(pel=1, hpad=0, vpad=0) backward_1=MAnalyse(super, chroma=false, isb=true, blksize=16, blksizev=16, searchparam=3, plevel=0, search=3, badrange=(-24)) forward_1=MAnalyse(super, chroma=false, isb=false, blksize=16, blksizev=16, searchparam=3, plevel=0, search=3, badrange=(-24)) backward_2 = MRecalculate(super, chroma=false, backward_1, blksize=16, blksizev=16, searchparam=2, search=3) forward_2 = MRecalculate(super, chroma=false, forward_1, blksize=16, blksizev=16, searchparam=2, search=3) backward_3 = MRecalculate(super, chroma=false, backward_2, blksize=8, blksizev=8, searchparam=1, search=3) forward_3 = MRecalculate(super, chroma=false, forward_2, blksize=8, blksizev=8, searchparam=1, search=3) MBlockFps(super, backward_2, forward_2, num=60, den=1, mode=0) SetMTMode(1) GetMTMode(false) > 0 ? distributor() : last スクリプトのモディファイについて ・Quad コアCPUの場合 SetMTMode(5,4) → SetMTMode(5,8) ・CPUパワーが余っていると思うなら super=MSuper(pel=1, hpad=0, vpad=0) → super=MSuper(pel=2, hpad=0, vpad=0) 動作チェック用に ffdshow の オンスクリーンディスプレイを有効にする。 以下の項目にチェックを付けておくといいかも。 ・AviSynthの情報:unavailable と表示されたら AviSynth が効いていない ・CPU使用率:低いようなら、pel=2 に ・フレームレート:元のフレームレートが表示される ・フレーム継続時間:継続時間が16.666...msなら、60(59.94)fpsになっている ・現在のフレーム:コマ送りした時に、この数字が2回に1回しか進まないはず ・入力情報:再生している動画のコーデックを確認 ・入力の色空間:YV12になっていることを確認 MPCのオプションの内部フィルタで、再生したい動画のコーデックのチェックを外す。 (ffdshow経由で再生したいので) H.264/AVC.mp4、H.264/AVC(vfw).avi、XviD.avi、DivX.avi、で確認しました。 また、MPC以外でも、Directshow Filter経由のプレーヤーなら使えるようです。 (WMP や Qonoha など)