お知らせ: にーやんのブログ 2 に移転しました。こちらのブログは、2009 年末までに削除します。

スポンサード リンク

iFilter(T/B)関数で複数のフィルタを使用する方法

2ちゃんねるのAviSynthスレッドで、少し話題にあがっていたので、補足の意味もこめて説明しておきます。

なお、これは、iFilter(T/B)関数だけでなく、FilterRange関数のように、関数の引数にフィルタを指定するタイプのものに使えます。

1.関数1.関数2.関数3...

MetaFunction("foo().bar()")

一番シンプルなのは、これでしょう。

MetaFunction("""foo("").bar()""")

中の関数が引用符を含む場合は、このように引用符を3つ重ねます。

2.サブ関数の中でフィルタ指定(116さんの方法)

MetaFunction("subfunction()")

function SubFunction(clip c)
{
c
foo()
bar()
return last
}

3.引用符を使ったテクニック

filter_chain = """\
foo("")
bar()
\"""

MetaFunction(filter_chain)

中の関数が引用符を含まない場合は、引用符は1つでもOKです。

これは、stickboyさんが、三項演算子を使った式において複数の条件を指定する方法として紹介されているものです。ほかに、複数行のコメントアウトとしても使えます。

# 例
AviSource("hoge.avi")
"""\
foo()
bar()
\"""
return last

この場合、foo関数とbar関数は適用されません。

なお、3の方法については、いずれWikiの中でも紹介しようと思っています。

参考

スポンサード リンク

Recent entries from same category
TrackBack ping me at
Trackbacks
[ No TrackBack ]
Comments
[ No Comment ]
Post a comment

writeback message: There was a problem posting your writeback.













Remember the above info?

Preview here...

  • [Preview]ボタンをクリックすると、コメント内容をプレビューすることができます(JavaScript使用)。
  • スパム対策としてリファラチェックを行っています。セキュリティソフトの設定でリファラを無効にしていると投稿できません。
  • エントリの内容と無関係と思われるコメントやトラックバックは削除されます。
  • 当ブログへの言及リンクがないトラックバックはブロックされます。