VirtualDubでAviSynthフィルタの設定を行う
概要 †
warpsharpパッケージに収録されているavsfilter.dllを使用することによって、AviUtlやVirtualDub(VirtualDubModなどを含む)上で、AviSynthフィルタ(プラグイン)の設定を行えるようになります。
このページでは、avsfilter.dllを利用して、VirtualDubでAviSynthフィルタの設定を行う方法を紹介します。
AviUtlを使用する場合については、AviUtlでAviSynthフィルタの設定を行うを参考にしてください。
なお、このページではVirtualDubModを使って解説していますが、以後、VirtualDubModなどのVirtualDub改良版も含めて、VirtualDubと呼ぶことにします。
必要なもの †
avsfilter.dllを含めた、次の3つのファイルを用意してください。
- avsfilter.dll
- avsfilter.vdf
- avsfilter用定義ファイル(*.vdf.avs*1)
avsfilter.dllとavsfilter.vdf、およびavsfilter用定義ファイルのサンプルは、warpsharpパッケージに収録されています。warpsharpパッケージを入手してください。
warpsharpパッケージの入手先については、warpsharpパッケージのページを参照。
avsfilter.dll / avsfilter.vdf †
warpsharpパッケージをダウンロードし、CABファイル(warpsharp_20xx_xx_xx.cab)を展開すると、avsfilter.dll、avsfilter.auf、avsfilter.vdfの3つのファイルが見つかると思います。
このうち、avsfilter.aufはAviUtl用のファイルですので、ここでは使用しません。avsfilter.vdfとavsfilter.aufを間違えないように気をつけてください。
avsfilter用定義ファイル(*.vdf.avs) †
avsfilter用定義ファイルのサンプルは、warpsharp_20xx_xx_xxフォルダより2つ下層のサブフォルダ(samples -> avsfilter)の中にあります。
2003年11月3日版のwarpsharpパッケージには、ColorYUY2(YUV用とRGB用)、EraseGhost、WarpSharpの各フィルタ用の定義ファイルが収められています。
これらのサンプルを参考にして、そのほかのフィルタの定義ファイルを作成することも可能です。
なお、*.auf.avsはAviUtl用のファイルですので、ここでは使用しません。*.vdf.avsと*.auf.avsを間違えないように気をつけてください。
avsf_pack †
nullinfoで、avsfilter用定義ファイルパックのavsf_packが配布されています。
avsf_packには、DeDot用など十数種類のavsfilter用定義ファイルが含まれています。
avsfilter用定義ファイルを作る †
サンプルや avsf_pack に含まれていないフィルタも、自分で定義ファイルを作成することによって avsfilter で利用することが可能になります。
詳しくは、avsfilter用定義ファイルの作成方法を参照してください。
avsfilterの導入手順 - WarpSharpフィルタ(warpsharp.dll)の場合 †
warpsharpプラグイン(warpsharp.dll)内蔵のWarpSharpフィルタの場合を例に、avsfilter.dllの導入手順を説明します。
1.avsfilter.dllのコピー †
まず、avsfilter.dllをVirtualDub.exe(VirtualDubMod.exe)と同じフォルダにコピーします。
2.avsfilter用定義ファイルの修正 †
avsfilter用定義ファイル(この場合は、WarpSharp.vdf.avs)を開いて、一行目を、あなたが使用したいプラグインのパスになるように修正します。
3.aufilter.vdfとavsfilter用定義ファイルのコピー †
avsfilter.vdfと上記2で修正したavsfilter用定義ファイルを、AviUtlのプラグインディレクトリにコピーします。その際、avsfilter.vdfのオリジナルは、そのまま残しておいたほうがいいでしょう*2。
VirtualDubのプラグインディレクトリは、VirtualDub.exeのあるフォルダのひとつ下層のpluginsフォルダです。
そして、avsfilter.vdfをavsfilter用定義ファイルのファイル名と同じ名前に変更します。WarpSharp.vdf.avsの場合は、avsfilter.vdfをWarpSharp.vdfにリネームします。
4.VirtualDubとフィルタ設定画面の起動 †
VirtualDubを起動して、メニューの[Video]->[Filters...]からフィルタ設定画面を起動します。
ただし、Full processing mode 以外 を選択している場合は、[Filters...]は無効になっています。Full processing modeにチェックを入れた状態で、[Filters...]をクリックしてください。
[Filters...]をクリックするとフィルタ登録画面があらわれますので、画面右の[Add...]ボタンをクリックしてください。
すると今度は、使用できるフィルタ一覧が表示されます。ここで設定したいフィルタを選択し、[OK]をクリックします。
このときメニューに表示されるのは、avsfilter用定義ファイル二行目の二重引用符(")に囲まれている部分です。必要があれば、あらかじめ、この部分も変更しておいてください。
5.フィルタの設定を行う †
フィルタ一覧画面でOKをクリックすると、左のようなフィルタ設定画面が表示されます(図はAviSynth用WarpSharpフィルタのもの)。
[Preview]ボタンをクリックすると、プレビュー画面が起動しますので、それを見ながらパラメータの調節を行ってください。
フィルタ無効時(チェックボックスOFF)
フィルタ有効時(チェックボックスON)
設定画面左上の[Enable]をONにするとフィルタが有効に、OFFにすると無効になります。
6.クリップボードにコピー †
パラメータの調整が済んだら、[Copy]ボタンをクリックします。上記5で行った設定が、WarpSharpフィルタの書式でクリップボードにコピーされます。
備考: VirtualDubのフィルタとして使用する †
なお、ここで[OK]ボタンをクリックすると、フィルタ登録画面にWarpSharpフィルタが登録されます。これによって、AviSynthフィルタをVirtualDubのフィルタとして使用することもできます。
VirtualDubのフィルタとして使用したくない(AviSynthフィルタの設定のみを行いたい)場合は、[Copy]ボタンをクリックしたあとで、[Cancel]をクリックしてください。
7.AVSファイルにペースト †
AVSファイルのWarpSharpフィルタを使用したい行に貼り付けます。
ちゃんと5で設定したとおりのパラメータで、スクリプトを挿入することができました。