After Effectsの画像をスクリプトで制御する方法を覚えたのでメモ。
以下は簡単なサンプルです。
// 選択しているコンポジションの取得
var selectComp = app.project.selection;
// 画像の取得var imgItem = app.project.items[1];
// コンポジションに画像を追加
// app.project.item(index).layers.add(item, duration)
var myLayer = selectComp[0].layers.add(imgItem, 2);
// (位置)プロパティの取得
var myProperty = myLayer.position;
// 指定された時間(time)にキーレフームの値を設定
// time 時間(秒)。コンポジションの開始は0になる。
// newValue プロパティに応じたタイプの値。
// 詳細はhttp://aejsx.hiroshisaito.net/property-object/methods/setvalueattime参照
// フレームレート15のプロジェクトなので15で割っている
myProperty.setValueAtTime(1/15, [100,100]); //1フレーム目
myProperty.setValueAtTime(2/15, [300,100]); //2フレーム目
myProperty.setValueAtTime(3/15, [300,300]); //3フレーム目
myProperty.setValueAtTime(4/15, [100,300]); //4フレーム目
myProperty.setValueAtTime(5/15, [100,100]); //5フレーム目
コンポジションを選択した状態でスクリプトを実行(「ファイル」 –> 「スクリプト」 –> 「スクリプトエディタを開く」–> 「スクリプトの実行を開始(右上の緑の三角ボタン)」)すると、5つのキーフレームを作成します。
このスクリプトはjavascriptなのでfor文やif文などを使って複雑な処理もさせられます。アイディア次第では面白い表現もできそうですね。