niiyan's blog

niiyanの個人ブログ。

myFunctions: iDust関数

説明

iFilterT関数のDust(DustV5プラグイン)特化型版です。

Dustプラグインに収録されているフィルタ(FaeryDustなど)は、1スクリプトに1回しか呼び出せないという制限があります。そのため、iFilterT関数は、そのままでは使用することができません。iFilterT関数は、フィールドごとに1回ずつ、計2回フィルタをかけるからです。

iFilter関数の場合は、Dustフィルタを使用することができます。

使用上の注意

iDust関数ではDustプラグインを2つ使用します。

DustV5.dllのコピーを、あなたのプラグインフォルダ以外の場所に用意するか、別の名前にリネームしてください。そして、myFunctions.avsの5行目のdustv5_2_dirを、コピー/リネームしたdllのパスに設定しなおしてください。

##### 初期設定 (最初に設定してください)#####
#//--- Bob(60fps化)フィルタの指定(iResize、BobDust使用時に必要) ---//
global bbb_filter = "AutoBob()" #kernelbob/dgbobは"kernelbob(order)"と指定可
#//--- DustV5.dllのコピー/リネームしたdllのパス(iDust使用時に必要) ---//
global dustv5_2_dir = "D:\AviSynth\DustV5_2.dll"

ダウンロード

インターレース素材系関数集」から、myFunctions.avsをダウンロードしてください。

書式

iDust(clip clip, string "dust_filter", int "limit", string "output")
引数
  • clip: ビデオクリップ。
  • dust_filter: "FaeryDust"/"SpaceDust"/"PixieDust"/"GoldDust"のいずれか。
  • limit: Dustのlimit。省略したときは、dust_filterのデフォルト値。
  • output: Dustのlimit。省略したときは、clipの色空間。

使用例

Import("myFunctions.avs")
iFilter("FaeryDust", 2)

その他の注意

  • あらかじめフィールドオーダーを正しく指定しておくこと(AssumeTFF/AssumeBFFなどを使って)。
  • DustはYV12に対応していません。この関数では、YV12のクリップを内部でYUY2に変換します。そして、フィルタ適用後にYV12に戻します。
  • 追記: iDust関数がHC Encoder v0.18で使えない件も参照。