はじめてのスクリプト のバックアップの現在との差分(No.7)


  • 追加された行はこの色です。
  • 削除された行はこの色です。
*AVSファイルの作成手順 [#zb4b4565]

このページでは、はじめての人にもわかりやすいように、簡単な例をあげながら、AviSynthスクリプトファイル(以下、AVSファイル)の基本的な作成手順を紹介します。

#contents

**作成するもの [#ed86424c]
&ref{hello001_hello_world.png};~
今回は、スクリプトの作成例として、MessageClipというフィルタで、"Hello World!"というメッセージが付きのビデオクリップを作成します。
&ref(hello001_hello_world.png);~
今回は、スクリプトの作成例として、MessageClipというフィルタで、"Hello World!"というメッセージ付きのビデオクリップを作成します。

**1.メモ帳を開く [#qb332be4]

まず、メモ帳を開きます。

&ref{notepad_startmenu.png};~
&ref(notepad_startmenu.png);~
メモ帳は、スタートメニューの''[スタート] -> [プログラム(P)] -> [アクセサリ] -> [メモ帳]''から起動することができます。

**2.スクリプトを記述する [#w2f0e562]

メモ帳に、スクリプトを記述します。

ここでは、次の2行を記述してください。

&ref{intro001_your_first_avs.png};
&ref(intro001_your_first_avs.png);

***スクリプトを記述する際に気をつけること [#ka706c79]

スクリプトを記述するときは、次の点に注意してください。

-記述ミスに気をつけてください。エラー発生の原因となります。
-AviSynthでは、大文字小文字の区別はありません。
-基本的に使用できる文字は、半角英数字のみ(アンダースコア含む)です。((引用符で区切られた文字列として、全角文字を使用できる場合があります。[[Subtitle]]フィルタで、日本語対応フォントを指定した場合など。))

***スクリプトの内容 [#a06aeb25]
-1行目
 MessageClip("Hello World!")
AviSynthでフィルタを使用したいときは、次のように記述します((記述の仕方は他にもありますが、ここでは複雑になるので紹介しません。AviSynthの文法については、ScriptGrammarを参照。))。~
 Function(Args) # フィルタ名(パラメータ)
ここでは、MessageClipというフィルタを使いますので、Functionの部分にMessageClipをあてはめます。また、「Hello World!」というテキストを表示させたいので、パラメータの部分に"Hello World!"を記述します。文字列は、引用符で囲む形で記述しなければなりません。~
AviSynthでフィルタを使用したいときは、[[フィルタの書式]]にしたがって記述しなければなりません。基本的には、次のような形で記述することになります。~
 フィルタ名(パラメータ)
ここでは、MessageClipというフィルタを使いますので、「フィルタ名」の部分にMessageClipをあてはめます。また、「Hello World!」というテキストを表示させたいので、「パラメータ」の部分に"Hello World!"を記述します。文字列は、引用符で囲む形で記述します。~
~
フィルタの記述の仕方についての詳しいことは、[[フィルタの書式]]のページを見てください。また、MessageClipフィルタの書式については、MessageClipのページを参照してください。~
#br

-2行目
 return last
return文です。~
~
「return last」で、最後に処理したクリップ(last)を返します。つまり、AVSファイルをアプリケーションで開いたときに、last(この場合、1行目のMessageClip)が表示されます。~
~
「return last」は省略することも可能です。ただし、アプリケーションによっては、エラーが出ることもあるようなので、念のために、記述しておきます。

**3.AVSファイルを保存する [#c2b9151d]

&ref{intro002_save_menu.png};~
&ref(intro002_save_menu.png);~
メモ帳のメニューから''[ファイル] -> [名前を付けて保存]''を選択します。

&ref{intro004_enter_name.png};~
&ref(intro004_enter_name.png);~
保存ダイアログが開きますので、''[ファイル名]''の欄に、適当な名前を入力してください。その際、拡張子をavsにしてください。AVSファイルの拡張子は、avsです。

ここでは、仮に、hello_world.avsという名前を付けたとします。

名前を入力し終えたら、''[保存]''ボタンをクリックします。

***AVSファイルの保存に関する注意 [#a490f585]
-拡張子は、avsにしてください。
-拡張子を指定せずに保存すると、txtファイルとして保存されてしまいます。そのときは、ファイルの拡張子を変更してください((''[右クリック] -> [名前の変更]''などから。))。
-''[フォルダオプション] -> [表示]タブ -> [登録されているファイルの拡張子は表示しない]''にチェックが入っている場合は、ファイルの拡張子は表示されません。

**4.AVSファイルをアプリケーションで開く [#e29ab855]
あなたが使用したいアプリケーションで、AVSファイルを開きます。

たとえば、VirtualDubModを使用する場合は、次のような手順で行います((ドラッグ&ドロップによって開くことも可能です))。

&ref{intro009_open_avs.png};~
&ref(intro009_open_avs.png);~
まず、メニューの''[File] -> [Open video files...]''を選択します。

&ref{intro010_preview.png};~
&ref(intro010_preview.png);~
次に、あなたが開きたいAVSファイル(この場合、hello_world.avs)を選択してから、''[開く]''をクリックします。

&ref{hello001_hello_world.png};~
&ref(hello001_hello_world.png);~
このようにプレビューできれば、成功です。((Cinema Craft Encoder(CCE)のように、プレビューできないアプリケーションもあります。))

***AVSファイルのプレビューに関する注意 [#me7d7200]
-AviSynthに対応しているアプリケーションの情報は、[[アプリケーションのAviSynth対応状況]]を参考にしtください。
-AviSynthに対応しているアプリケーションの情報は、[[アプリケーションのAviSynth対応状況]]を参考にしてください。
-AVSファイルに対応していないアプリケーションでも、ffdshowに付属しているAVS -> AVI変換ツールの[[[makeAVIS]]]を使用すれば、AVSファイル(の疑似AVI化ファイル)を開くことができるようになります。
-色空間がYV12のファイルを開くためには、YV12デコードをサポートしているデコーダ(コーデック)をインストールする必要があります。

***エラーが出たら・・・ [#bc0a57a5]
スクリプトの記述ミスによってエラーが発生したり、その他の原因でうまく動作しなかった時は、あわてずに、エラーメッセージを確認しましょう。

&ref{error003_expected_c.png};~
&ref(error003_expected_c.png);~
エラー画面の一例です。

-1行目
--AviSynthがスクリプトのオープンに失敗したことを宣言しています。

-2行目
--エラーの内容。これは、以下のような形式で書かれています。
 エラーの種類やフィルタの名前: エラーの原因
「エラーの種類やフィルタの名前: 」がない場合もあります。

-3行目
--エラーの箇所。何行目の何文字目にエラーの原因があるのかがわかります。これは、以下のような形式で書かれています。
 (スクリプトのパス, line *[, column *])
---line: エラーが含まれている行(*は数字)。
---column: エラーが含まれている列(省略されている場合あり)

典型的なエラーとその原因について知りたいときは、「[[エラーのタイプ]]」を見てください。また[[FAQ]]にも、トラブルに関する項目がありますので、参考にしてください。