フィールドオーダーの確認
次のビデオクリップを使って、AviUtlでフィールドオーダーを確認する方法(※)を紹介したいと思います。このビデオクリップでは、画面真ん中のロゴが時計回りに回転しています。
|
(1)AviUtlにおけるフィールドオーダーの指定
AviUtlでは、メニューの[設定]->[インターレースの解除]からフィールドオーダーを設定することができます(AviUtl97d以降)。 ここでは、とりあえず[ボトムフィールド->トップフィールド]にしてみることにします。 |
(2)ビデオクリップを60fpsで読み込む
[ファイル]->[開く]からビデオクリップを開きます。 |
その際、ファイル選択画面左下の[60fps読み込み]にチェックを入れてください。 これにより30fps(29.97fps)のビデオクリップが倍の60fps(59.94fps)に展開して表示されます。 |
|
60fps読み込みしました。フレーム数は倍になっています。
カッコ内の数字は元のフレーム番号を表しています。またBはボトムフィールド、Tはトップフィールドの意味です。
AviUtlのフィールドオーダーを[ボトムフィールド->トップフィールド]にしていますので、60fps読み込みしたクリップは「ボトム->トップ->ボトム->トップ->・・・」の並び順(フィールドオーダー)になっています。
フレーム番号6(3B)からフレーム番号8(4B)を見てください。
フレーム番号6(3B)からフレーム番号7(4T)にかけて、時計回りに回転しているはずの画像が逆方向(反時計回り)に動いています。そしてフレーム番号8(4B)で、また時計回りに回転しています。
この状態で(フィールドオーダーで)ビデオクリップを再生すると、カクカクと不自然な動きになってしまいます。
このようにビデオクリップ内のオブジェクトが本来動くべき方向とは逆方向に動いたり、また元の方向に動いたりというように、画像が行ったり来たりする場合、フィールドオーダーが間違っていることになります。
カッコ内の数字は元のフレーム番号を表しています。またBはボトムフィールド、Tはトップフィールドの意味です。
AviUtlのフィールドオーダーを[ボトムフィールド->トップフィールド]にしていますので、60fps読み込みしたクリップは「ボトム->トップ->ボトム->トップ->・・・」の並び順(フィールドオーダー)になっています。
フレーム番号6(3B)からフレーム番号8(4B)を見てください。
フレーム番号6(3B)からフレーム番号7(4T)にかけて、時計回りに回転しているはずの画像が逆方向(反時計回り)に動いています。そしてフレーム番号8(4B)で、また時計回りに回転しています。
この状態で(フィールドオーダーで)ビデオクリップを再生すると、カクカクと不自然な動きになってしまいます。
このようにビデオクリップ内のオブジェクトが本来動くべき方向とは逆方向に動いたり、また元の方向に動いたりというように、画像が行ったり来たりする場合、フィールドオーダーが間違っていることになります。
(3)フィールドオーダーを変更して読み込む
今度はAviUtlのフィールドオーダーを[トップフィールド->ボトムフィールド]に変更して読み込んでみます。
|
ロゴは時計回りに回転しています。行ったり来たり、不自然な動きをしていません。
よって、このビデオクリップのフィールドオーダーはトップファースト([トップフィールド->ボトムフィールド]の順)であるということになります。
よって、このビデオクリップのフィールドオーダーはトップファースト([トップフィールド->ボトムフィールド]の順)であるということになります。
[D2Vファイルを開くときの注意] AviUtlでD2Vファイルを開くためには、AviUtlとDVD2AVIがともにVFAPI登録されていなければなりません。 それぞれデフォルトで初回起動時にVFAPI登録されるようになっていますが、もしD2Vファイルが開けなかったときは設定を確認してください。 |
AviUtlは[ファイル]->[環境設定]->[システムの設定]で「aviutl.vfpをVFAPI登録する」にチェック(左図)、DVD2AVIは[Help]->[VFAPI Plug-In]にチェックが入っていればOKです。 |
フィールドオーダーの指定
フィールドオーダーの確認が済んだら、AviSynthでフィールドオーダーを設定しましょう。
Template.avsの13-17行目を見てください。
Template.avsの13-17行目を見てください。
|
「AssumeFrameBased().ComplementParity()」でトップファースト([トップフィールド->ボトムフィールド])、「AssumeFrameBased()」でボトムファースト([ボトムフィールド->トップフィールド])になります。
あてはまる行の#を削除してください。
あてはまる行の#を削除してください。
[AviSynth2.0.4以降の場合] AviSynth2.0.4から、AssumeTFF/AssumeBFFフィルタを使ってフィールドオーダーを指定することもできるようになりました。 |
||
|
前のページ | 次のページ |