AssumeFPS
AssumeFPS (clip, float fps, bool "sync_audio") AssumeFPS (clip, int numerator [, int denominator], bool "sync_audio") AssumeFPS (clip1, clip2, bool "sync_audio") AssumeFPS (clip, string preset, bool "sync_audio")
AssumeFPS フィルタは、フレーム総数を変えずにフレームレートを変更します(ビデオの再生を速くするか、もしくは遅くします)。フレームレートパラメータ(fps)だけを設定します。
sync_audio が true なら、同じ割合で音声サンプリング周波数*1も変更します。生成される音声のピッチは、シフトされます*2。
これはまた、音声のサンプリング周波数のみを変更する方法でもあります。
v2.55 からは、clip2 が指定されている場合、clip1 のフレームレートは clip2 のそれに合わせて調節されます。これは、フレームレートがわずかに異なる 2 つのクリップを結合したいときに役立ちます。
v2.57 から、フレームレートに関する挙動が少し変更されました。おもな問題は、ユーザーがフレームレートを浮動小数点数で指定することを許可されているにもかかわらず、NTSC (FILM と Video)規格と PAL 規格はフレームレートとして比を要求するということです。これに加えて、AviSynth はフレームレートを比としてエクスポートします。このため、浮動小数点数を指定したとき、その値は比に変換されます。規格の比は、23.976 (FILM)は 24000/1001、29.97 (ビデオ)は 30000/1001 によって与えられます。これらの浮動小数点数を指定するとき、それらの値は AviSynth によって比としてエクスポートされますが、しかし規格の比としてエクスポートされるのではありません。この理由のひとつは、それらの浮動小数点数は近似値であるということです(24000/1001 = 23.9760239760... ということを忘れないでください)。AviSynth が正しい比の選び方を知るにはどのようにすればいいでしょうか。この問題を克服するために、ユーザは AssumeFPS(24000,1001) もしくは AssumeFPS("ntsc_film") を使うことができます。
もうひとつの問題は、変換された浮動小数点数が(v2.56 以前は)非常に大きな分子(numerator)と分母(denominator)をもたらし、プレーヤーをクラッシュさせる 64 ビット精度でエクスポートされたことです。この問題を克服するために、内部にスマートな浮動小数点比が追加され、フレームレートは小さな数の比により正確に近似されます。例えば AssumeFPS(23.976) は、Info を使って確認できるように AssumeFPS(2997,125) に変換されます。
プリセット:
規格 | 分子(numerator) | 分母(denominator) |
---|---|---|
"ntsc_film" | 24000 | 1001 |
"ntsc_video" | 30000 | 1001 |
"ntsc_double" | 60000 | 1001 |
"ntsc_quad" | 120000 | 1001 |
"ntsc_round_film" | 2997 | 125 |
"ntsc_round_video" | 2997 | 100 |
"ntsc_round_double" | 2997 | 50 |
"ntsc_round_quad" | 2997 | 25 |
"film" | 24 | 1 |
"pal_film" | 25 | 1 |
"pal_video" | 25 | 1 |
"pal_double" | 50 | 1 |
"pal_quad" | 100 | 1 |
使用例 PAL +4% テレシネ変換:
AVISource("FILM_clip.avi") # 24fps のクリップを取得 LanczosResize(768,576) # PAL の正方ピクセルフレームサイズにリサイズ。 AssumeFPS(25, 1, true) # フレームレートを PAL に変換。音声も調節。 SSRC(44100) # 音声サンプリング周波数を標準レートに戻す。
この 4% のスピードアップは、24fps のフィルムを PAL 方式のテレビで表示するために慣習的に使用されます。ピッチとテンポのわずかな増加は、PAL 素材の視聴者から快く受け入れられます。
註: このページは、AviSynth 2.5.7 に同梱されているマニュアル(英語版)の日本語訳です。原文は、AviSynth をインストールしたフォルダ内の Docs/english/corefilters/fps.htm にあります。なお、このページのテキストおよび画像のライセンスは、オリジナルのそれに準じます。