AviSynth入門/スクリプト作成時の注意
はじめに †
AviSynth入門/AVSファイルを開くでは、自分で作成したAVSファイル(test.avs)を、実際に開いてみました。
AviSynthのインストールが正常に完了していて、かつ、手順どおりにAVSファイルを作成していれば、真っ黒なビデオクリップ*1が表示されたことと思います。でも、もしかしたら何らかのエラーが出て、AVSファイルを読み込むことができなかったかもしれません。
AviSynth入門/AVSファイルの作成でも少し触れましたが、AviSynthスクリプトを書く上で注意すべきことがいくつかあります。今回は、その確認の意味も兼ねて、考えられるエラーの原因と対処法を見ていきましょう。
エラーの原因と対処法 †
Script error: there is no function named "xxx" †
Script error: there is no function named "BlankCrip"
(訳: スクリプトエラー: "BlankCrip"という名前の関数はありません)
AviSynthにおける関数は、多くの場合、ビデオフィルタやオーディオフィルタです。ここでは、「"BlankCrip"という名前のフィルタはありません」と読みかえても、差し支えはないでしょう。
誤字・脱字 †
もし、このエラーが出たら、まず誤字や脱字がないか確認してみてください。
この例では、「BlankClip」と記述すべきところを、誤って「BlankCrip」と書いてしまったが、エラーにつながりました。
AviSynthスクリプトは、たった1文字間違えただけでも動作しなくなることがあります。AVSファイルを作成するときは、くれぐれも誤字や脱字に注意してください。
大文字と小文字の区別はない †
ただし、AviSynthスクリプトでは、大文字と小文字の区別はありません。つまり、
BlankClip()
と
bLANkcLIP()
は、同じ結果になります。
unexpected character "x" †
unexpected character "・"
(訳: 予期せぬ文字 "・")
どうやら、スクリプトの中に使用できない文字が含まれていたようです。
全角/半角 †
AviSynthスクリプトで利用できる文字は、通常、半角の英字、数字と一部の記号(アンダースコアなど)です。例外として、コメントなどにおいて、全角文字(日本語)を使用することができます*2。
「BlankClip()」が全角になっていないかどうか確認してみてください。
文字コードと改行コード †
AviSynth入門/AVSファイルの作成でも書きましたが、メモ帳でAVSファイルを保存するときは、文字コードをANSIに設定してください。ANSI以外の文字コードで保存すると、VirtualDubModでAVSファイルを開けなかったり、開けても文字化けしたりします。
詳しくは、AviSynthスクリプトと文字コードにまとめてあります。興味のある方は、参考にしてください。
まとめ †
- AVSファイル作成時に気をつけること
- 誤字・脱字
- 大文字・小文字の区別はない
- 半角文字を使用する(全角文字を使用できる場合もある)
- 文字コードはANSI(メモ帳の場合)
メモ †
- エラーのタイプでは、AviSynth使用時に起こりうる代表的なエラーとその対処法を紹介しています。もし、今回紹介していないエラーに遭遇したときは、参考にしてください。