AfterEffects CC 2014自動化作戦

このページはAfterEffects CC 2014をJavaScriptによって自動化運用するためのサンプルスクリプトを掲載しています。
AfterEffects CC 2014はJavaScriptのコアオブジェクト、Adobeファイルオブジェクトに関しては他のAdobeソフトとほぼ同じです(Adobe CS1〜CC 2014 バージョンJavaScript ファレンス&ライブラリのぺージを参照)。つまりPhotoshop CS2〜CC 2014、Illustrator CS2〜CC 2014などで作成された一部のコードは、そのまま動かす事ができます(PremiereもJavaScriptが動作しますが機能が低いので実用には耐えないでしょう)。あとはAfterEffects CC独自部分の機能だけを習得すれば良いと言うメリットもあります。また、以前のバージョンであるAfterEffects 6.5〜CCのスクリプトも、そのまま動作します(完全にはチェックしていないので、もしかしたら非互換部分があるかもしれません)。
Adobe AfterEffects専用ではありませんが、PhotoshopやIllustrator, AfterEffects, Bridgeなどで共通して使えるオブジェクトや機能のリファレンスとしては以下の書籍があります。

AAdobe JavaScriptリファレンスAdobe JavaScript リファレンス

 開発に必要なアプリケーションであるESTK (ExtendScript Toolkit) に関しては以下の書籍があります。

ExtendScript Toolkit(ESTK)基本編ExtendScript Toolkit(ESTK)基本編

レイアウト的におかしな部分や不統一な部分が結構ありますが、ご容赦下さい。
このページに掲載されているスクリプトは(Mac) OS X (10.9) で動作するAfterEffects CC 2014を基準にしているため、それ以外のMac OS X/OS XやWindows版では異なる動作になる可能性があります。あらかじめ、ご了承ください。

また、掲載されているスクリプトで不具合がある場合はメール、openspc@alpha.ocn.ne.jpまでお願いします。
Last update:2014/9/1 PM 3:02

準備

  1. はじめに
  2. 注意事項
  3. JavaScriptとは?
  4. アプリケーション/バージョンアップに伴う注意点
  5. Adobe製品でのJavaScript
  6. AfterEffects CC 2014のJavaScriptで、できることと、できないこと
  7. AfterEffects CC 2014でのJavaScriptの実行方法
  8. JavaScript実行時の注意点
  9. ファイルの指定(パス)について
  10. ExtendScript Toolkit CCについて
  11. Expressionとは何が違うのか?
  12. AfterEffectsのJavaScriptでプログラムを作成する前に

AfterEffectsのJavaScript入門

  1. プログラムとは何?(すぐに始めたい人&面倒な人は読む必要はありません)
  2. JavaScriptとは? (すぐに始めたい人&面倒な人は読む必要はありません)
  3. 簡単なプログラムでAfterEffectsを制御する
  4. 新規にプロジェクトを作成する
  5. よく使われる省略した書き方

JavaScriptの基本文法

  1. 行の記述
  2. 数値
  3. 文字列
  4. 変数名
  5. 型変換
  6. 特殊文字
  7. 三項演算子
  8. 代入演算子
  9. 演算子
  10. 比較演算子
  11. 文字列演算子
  12. 優先順位
  13. オブジェクト
  14. プロパティ/メソッド
  15. イベント
  16. リテラル

基本編

  1. 注釈/コメント
  2. 変数を用意する
  3. 変数に数字や文字を入れる
  4. 配列変数を用意する
  5. 配列変数に数字や文字を入れる
  6. 配列のサイズ(個数)を調べる
  7. 基本的な演算を行う
  8. 高度な演算を行う
  9. 小数点以下の処理を行う
  10. 乱数値を発生させる
  11. 文字列を連結する(文字列の加算)
  12. 文字から数値に変換する
  13. 数値から文字に変換する
  14. 文字列の長さを調べる
  15. 特定の文字列があるかどうか調べる
  16. 文字列を抜き出す
  17. 文字をLatin 1コードに変換する
  18. 英文字を大文字、小文字に変換する
  19. 関数を定義する
  20. 条件判断を行う
  21. 複雑な条件判断を行う
  22. 一定回数繰り返し処理を行う
  23. 条件を満たしている間、繰り返し処理を行う
  24. 値によって分岐させる(switch, case)
  25. 例外処理(エラー処理)を行う
  26. 日付処理を行う
  27. 時間処理を行う
  28. タイムアウト処理を行う

初級編

ダイアログ関連

  1. アラートダイアログを表示する
  2. 確認のダイアログを表示する
  3. 入力ダイアログを表示する

情報パネル

  1. 情報パネルに文字を表示する
  2. 情報パネルの内容を消去する

変換

  1. 時間を示す文字列から秒数を求める
  2. 秒数から時間を示す文字列を求める

アプリケーション関連

  1. バージョンを取得する
  2. AfterEffectsを終了させる
  3. シリアル番号を取得する
  4. 使用されている言語を調べる
  5. ビルド番号を取得する
  6. ビルド名を取得する

プロジェクト関連

  1. 新規にプロジェクトを作成する
  2. プロジェクトを閉じる
  3. 保存ダイアログを表示してプロジェクトを保存する
  4. プロジェクトを保存する
  5. プロジェクトを開く

AVItem (コンポジション/レイヤー/フッテージ/フォルダ)関連

  1. アイテム名を取得する
  2. アイテム名の横幅/縦幅を取得する
  3. アイテムを削除する
  4. アイテムの総数を取得する
  5. アイテムのIDを取得する
  6. アイテムの種類を取得する
  7. アイテムが選択されているかどうか調べる
  8. 親フォルダを調べる
  9. コンポジションを追加する
  10. フォルダを追加する

フッテージ関連

  1. フッテージファイルのファイル名を取得する
  2. フッテージファイルを置換する

レイヤー関連

  1. レイヤーの名前を取得する
  2. 出現番号(インデックス番号)を取得する
  3. レイヤーを削除する
  4. レイヤーを複製する
  5. レイヤーの表示/非表示(有効/無効)を指定する
  6. ヌルレイヤーを追加する
  7. テキストレイヤーを追加する
  8. カメラを追加する
  9. ライト(光源)を追加する
  10. ソリッド(平面)レイヤーを追加する
  11. 指定したレイヤー名が存在するかどうか調べる

エフェクト関連

  1. エフェクト名を取得する(日本語版専用)
  2. エフェクト名を取得する(各国共通版)

ファイル関連

  1. ファイルを開く
  2. ファイル内容を全部読み込む
  3. 最初の5文字だけ読み込む
  4. 1行読み込む
  5. 1文字読み込む
  6. 1文字読み込み文字コードを表示する
  7. ファイルに文字を書き込む
  8. ファイルタイプ(種類)を調べる
  9. ファイルポインタの位置を調べる
  10. ファイルポインタの位置を指定する
  11. ファイル保存ダイアログを表示する
  12. ファイル選択ダイアログを表示する
  13. ファイルのバイト数を求める
  14. ファイルの行数を求める
  15. 改行コードの数を調べる
  16. ファイルの終わりかどうか調べる
  17. ファイルのエンコードの種類を調べる
  18. ファイルをコピーする
  19. ファイル名を変更する
  20. ファイルを削除する
  21. ファイルが存在するかどうか調べる
  22. ファイルの作成日/修正日を調べる
  23. ファイル名を調べる
  24. ファイルのパスを調べる
  25. フォルダ選択ダイアログを表示する
  26. フォルダオブジェクトを作成する
  27. フォルダが存在するかどうか調べる
  28. フォルダの作成日/修正日を調べる
  29. フォルダのパスを調べる
  30. フォルダを作成する
  31. フォルダ名を変更する
  32. フォルダを削除する
  33. フォルダ内のファイル一覧を取得する

中級編

テキストレイヤー編

  1. ファイルからテキストデータを読み込み配置する
  2. ファイルからテキストデータを読み込み一行ずつ配置する

フッテージファイル編

  1. タブ区切りテキストに従ってフッテージファイルを置換する

AfterEffects関連リンク

  1. AEP Project - AfterEffects Users Community -
  2. After Effectsのスクリプトリファレンス
  3. クリエイター手抜きプロジェクト
  4. Adobe CS1〜CS6,CC バージョンJavaScript リファレンス&ライブラリ
  5. ExtendScript Developer Utility