Checkout.plugin

Adobe After EffectsのSDKのExamplesにCheckoutというplug-inがあり、その機能についての説明はこうあります。

“Checks out (of After Effects’ frame cache) a frame of input from another layer, at a specified time. This is an important concept for all effects with layer parameters.”

「指定された時間に(After Effectsのフレームキャッシュから)別のレイヤーからの入力フレームをチェックアウトします。これは、レイヤーパラメーターを持つすべてのエフェクトにとって重要な概念です。 」

実際にCheckoutのplug-inビルドし、After Effectsで使用すると下図のような結果になります。

「Layer to checkout 」でレイヤーを指定し「Frame Offset」で現在のフレームからのオフセット数を与えると、現在の時刻の映像とオフセットされた時間の映像が一緒に表示されます。

ソースコードで言えばCheckout.cppの&params[CHECK_INPUT]->u.ldが指定した時刻の(別のレイヤーからの)入力フレームにあたり、Examplesではそれを出力矩形の上半分の領域へと単純にコピーしています。

指定するレイヤーを自分自身、時刻のオフセットを-1にして、二つ入力画像のピクセル値をの減算し絶対値を取ればフレーム差分を取ることができます。これは簡易な画像処理など動き検出に使われたりしています。

また他フレームとの演算が可能ということで、フレーム間予測なども行うことができ、モーションベクトルを用いたエフェクトなどの制作をすることができます。

この記事が気に入ったらサポートをしてみませんか?