AEの快適作業環境を作る

素材の数が増えてくるとものすごい重さで、プレビューにも一苦労になるAfterEffectsの 少しでも作業を楽にするためのメモ。

1 ネットワークドライブ禁止
素材をMemoryに読み込む際に 、素材をおいてあるディスクが遅ければ遅いほどプレビューも遅くなります(当たり前ですが)
仕事の場合、画像はサーバーにおいてあるケースが多いと思うのですが、ローカルディスクに比べて格段に速度が落ちる(+複数でアクセスしにいくとさらに重くなる)ので
作業するときは、ローカルディスクにキャッシュして 終わったら素材のパスを書き換えるようにすると格段に作業がしやすくなります。
以前、SSDとHDDとRAID(ストライピング)での動作検証をしてみた感じだと、キャッシュするディスクによる差はほとんど考慮しなくても良いLvなので、
容量重視の2TBのHDDとをつないでキャッシュ用ドライブにするのがオススメ。
キャッシュデータは、フリーのバックアップソフトなどを使って、自分の作業担当分(あるいは全部)をローカルにバックアップ。
切り替えにはスクリプトを使って、ドライブレターを切り替えてやるのが一番楽かなと思います。
[js]
var numItems = app.project.numItems;

for(i = 1; i <= numItems; i++) {
if(app.project.item(i).typeName == "フッテージ") {
if( !app.project.item(i) ) continue;
var cFile = app.project.item(i).file;
if( !cFile ) continue;
var cFilePath = cFile.path;
var cFileName = cFile.name;

var pExp = new RegExp("/<変更前のドライブレター>/");

if( cFilePath.match(pExp) ) {
var rFileName = cFileName;
var rFilePath = cFilePath;
rFilePath = rFilePath.replace(pExp,"/<変更後のドライブレター>/");
var rFullPath = rFilePath + "/" + rFileName;
try {
app.project.item(i).replaceWithSequence(new File(rFullPath),false);
} catch(err) {
var msg = rFullPath + " は共有と思われるのでスキップしました。"
//alert(msg);
}
}
}
}
[/js]

このスクリプトの

<変更前のドライブレター> と <変更後のドライブレター> の部分を自分の環境に合わせて変更(ネットワークがS ローカルがCなら s c のように、ローマ字1字を入れます。
これを、ネットワーク→ローカル と ローカル→ネットワークと、2つ用意したあと私は、Launch Pad などのランチャーにセットしておいて、ボタン一発で切り替えできるようにしています。
LaunchPadはAdobeのサイトからダウンロードできます。

2  プロクシを使う

1キャラレイヤーが多くなってくると、1カットあたり20レイヤーとかが重なってるとかザラになりもちろん重くなるそんな中、エフェクトかけるのは苦痛で仕方が無いので、最近はプロクシを多用してます。
プロクシとは、簡単に言うと、プレビューの段階ではダミーの画像やムービーに差し替えておくことができるAfterEffectsの機能なのですがこれを使って軽いムービーに差し替えておくと チェックが非常に楽になります。まぁ、素材が大きく変わったりすると見落としの元になったりで怖いですが 使いようによっては何倍も作業を早くしてくれます。

3 解像度を下げる

プレビューウィンドウの下あたりに デフォルトでは「フル画質」となってるところを切り替えるとによって、プレビュー画像の解像度を調整することができます。
解像度を下げればプレビューは早くなりますが、画像もそれに応じて荒くなるのでこまかいEffectをつけるのは無理ですが、素材が揃ってるかをみたり、大まかな調整だと解像度を下げてプレビュー速度を上げたほうが効率がよかったりします。

4 CPUを早くする

作業を早くすると言うより、根本的に作業環境を上げるため。以前の読み込みスピード検証を見ると、CPUの差がプレビュー速度へ与える影響はそれなりにあるので、
AE作業をやるなら(3DCGをやる上でも)CPU速度は必須だと思います。
どんな機能を使おうが、キャッシュをとろうが、自分の使うPCのスペックが低ければなんの意味も無いのでそこは、たとえ何があろうとお金をかけるべき箇所だと思います。

今のところ、私がやってるのはこのぐらいですがスクリプト周りをもうすこし多用すれば、基本的な作業スピードがもう少し上がるんじゃないかなと思ってみる。
今のところCS3より上はほとんど使う機会がないのですがこれが、これがCS4以降となると64bit版AEが使るのでいろいろと違う・・・のかもしれないです。

AEの素材ロード時間をはかってみた

仕事の作業環境改善のために、ロード先が早ければAEのロードもはやくなるのか検証してみました。

素材のロード先を変えてそれぞれ速度を計測。
ローカルドライブのHDDとSSDの差 CPUの違いでどのぐらい差が出るのかチェックします。

テスト環境 1
i7 870 Mem 16GB GPU GF465
1 SSD Intel320シリーズ 160G
2 HDD 320G単品
3 HDD 500*4 RAID0
テスト環境 2
i7 2600k Mem 8GB GPU Quadro600
4 SSD クルーシャル m4 128GB
5 HDD 日立 1TB
番外
6 ネットワークサーバー

使用データ
90f 1.2Gぐらい 960*720 の素材が7~8

まず、参考までにネットワークドライブだと、2分24秒(論外)
以下それ以外
1 22.5秒
2 23.3秒
3 25.1秒
4 18.2秒
5 18.5秒
小数点以下はストップウォッチを押したときの誤差な気がするので、SSD・HDDの差は殆どなく
CPUの違いによって速度が変わるみたいです。

今回はC2QのPCではテストしていないのであくまで予想ですが、C2QのPCとi7のPCとでも差が開くんじゃないかと思います。
なぜかといえば、単純なCPU差もありますが それ以上にメモリがDDR2からDDR3になったことによって メモリへの読み込み速度が早くなっている
んじゃないかと思うからです。
CPUのクロック数による差、メモリの差で実際のところどの程度早くなるのかどうか。
MayaのレンダリングはCPUのクロック数に比例して早くなりますが、AEも同様なのかいずれ検証してみたいです。

その辺OCして遊びつつテストしてみるのもありかと思ったのですが、ジサッカーではあるもののOCは専門外。
PCぶっ壊しそうで怖いです。