サンプルスクリプト/フェードイン

今日の献立

映像効果の 1 つにフェードインがあります。フェードインとは、黒一色(または他の単一色)の画面から、次第に別の画面が浮き上がってくるような効果のことです。今回は、サンプル動画(example.avi)をフェードインさせてみることにしましょう。

材料

作り方

  1. AviSource フィルタで example.avi を開きます。下の画像は、example.avi の各フレームを縮小して、左から順番に並べたものです。
    # ソースの読み込み
    AviSource("example.avi")
    
    o.png
  2. FadeIn フィルタを適用します。括弧内の数値(整数)は、フェードインの対象となるフレーム数です(下記の例では 2 を指定)。
    # フェードイン
    FadeIn(2) # 先頭の 2 フレームがフェードインの対象
    
    i.png
    FadeIn フィルタを使うと、先頭に真っ黒なフレームが 1 フレーム追加されます。つまりクリップのフレーム総数は、1 増加することになります。
  3. 完成したスクリプトは、以下のとおりです:
    # ソースの読み込み
    AviSource("example.avi")
    # フェードイン
    FadeIn(2) # 先頭の 2 フレームがフェードインの対象
    

ひとくちメモ: FadeIn フィルタの正体

AviSynth のマニュアルには、「FadeOut(n)」(n は整数)は以下の省略形であると記されています。

Dissolve(clip, Blackness(clip, n+1,color=color), n)

これを「FadeIn(n)」に置き換えると、次のようになります。

Dissolve(Blackness(clip, n+1, color=color), clip, n)

Dissolve は、2 つ以上のビデオクリップをクロスフェード(オーバーラップ)させながら結合するフィルタです。このスクリプトの意味を簡単に説明すると、「n+1 フレーム、color 色の空(から)のクリップ*1と clip を、n フレーム分オーバーラップさせながら、クロスフェードさせる」ということになります。

具体的な例をあげると、

clip = AviSource("example.avi") # フェードインさせるクリップ
n = 2 # オーバーラップするフレーム数
color = $000000 # 色
FadeIn(clip, n, color=color)

上記のスクリプトは、

clip = AviSource("example.avi") # フェードインさせるクリップ
n = 2 # オーバーラップするフレーム数
color = $000000 # 色
Dissolve(Blackness(clip, n+1, color=color), clip, n)

と同じということになります。

関連レシピ


*1 BlacknessはBlankClipの別名で、単一色の空のビデオクリップを生成するフィルタです。

最終更新日時: 2014-03-11 (火) 03:51:12 (3927d)