2019年04月09日

AfteEffectsのコンポジションのループ【改良版】

AfterEffectsでのコンポジションのループをさせて、そのタイミングをずらす事のできるエクスプレッションのスクリプトを置いておきます。以下。

near=timeRemap.nearestKey(time);

if( near == 0 ){
loopIn(type = "cycle", numKeyframes = 0)
}else{
loopOut(type = "cycle", numKeyframes = 0)
}

簡単に手順を書いておきます。

@タイムラインウィンドウで目的のコンポジションを選択。
A"メニュー>レイヤー>タイムリマップ使用可能"からタイムリマップを適応。
Bコンポジションの最終フレームは表示されないのでタイムリマップの終了点のキーフレームの値(時間)を1f減らす。
Cタイムリマップを選択、"メニュー>アニメーション>エクスプレッションを追加"からエクスプレッションを適応。
Dエクスプレッションに上記スクリプトを記述。
Eタイムリマップの開始点と終了点のキーフレームを選択、ずらす。

以上でタイムリマップのキーフレームの移動でタイミングを調整できるようになります。
ラベル:AfterEffects
烏野の箱庭ページ烏野の箱庭 …動画・絵・漫画・脚本などの作品紹介
烏野のyoutubeページ烏野博史動画 …広告・実験・講習用映像のyoutubeチャンネル
烏野のyoutubeページうのひろし日々描描 …作画配信のyoutubeチャンネル
UNOUNOのPixiv …絵、デザイン資料、漫画、実験画像
karasuno10をフォローしましょうkarsauno10のTwitter …考え、宣伝
posted by karasuno10 at 23:37 | Comment(0) | 動画>AfterEffects | このブログの読者になる | 更新情報をチェックする

2017年11月30日

AfterEffects ネットワークレンダリング

重い処理をさせる必要があったので久しぶりにAfterEffectsCC2017のネットワークレンダリングを試しました。以下手順です。

■作業マシン-----
@レンダリング設定
 レンダキューで待機中のレンダーアイテムを「既存ファイルをスキップ」(「レンダリング設定」オプション)に設定。”マルチマシン設定”のプリセットでもOK。PNGなどのシーケンスを出力ファイルに設定したキューを置いておく。

Aメニューファイル>依存関係>ファイル収集>すべて>《どのマシンからも参照可能なフォルダ》に収集。

■レンダリングマシン-----
B計算させるマシンにAfterEffectsCCのダウンロードインストール。
  収集したAEとバージョンを合わせます。

C1ライセンスで使用する場合、レンダリング専用マシンに設定をする。
 Windows での場合ae_render_only_node.txt という名前の空のファイルをユーザーのアカウントの種類に応じて次のいずれかに配置。
C:\Users\\Documents
C:\Users\Public\Documents\Adobe

Cコマンドプロンプトで"C:\Program Files\Adobe\Adobe After Effects CC 2018\Support Files\afterfx.exe" -m -wf "《監視フォルダ(どのマシンからも参照可能なフォルダ)へのパス》"
"-m"オプションでいくつものAEを同時に起動させることができます。

Dレンダリングの制御
収集フォルダ内のファイル、《収集フォルダ名》_RCF.txtの書き換えることで、中断したマシンでも再開させる事ができます。
num_machines=5(5つ以上のマシンはキャンセルされます。マシンが増えれば数を増やす)
num_machines=5(中断した場合はここの数値を一つ減らす。MAXになると弾かれます)

F出力ファイルの確認
抜けはAEへのシーケンス読み込み時に検知されますが、0byteファイルは検知されずレンダリング時の変換エラーを起こします。
特にネットワークレンダリング中の中断で、“0byteファイル”や“不完全ファイル”や“抜け”ができているかに注意して下さい。具体的にはシーケンスフォルダ内の他ファイルよりサイズが小さい画像ファイルの中身を確認して下さい。

※備考
AfterFX.exe -m オプションでいくつもAEを起動できます。CPU使用率が低かったので同時起動レンダを試した所、速度向上したのでおすすめします。各PCのプロセス数はスペックにより2-8プロセスぐらいかと思います。

今回、レンダリング時間は一台で60時間とだったので…
ネットワークレンダでAEを4つ起動(4プロセス)だと15時間、
ネットワークレンダ×16プロセスで3.75時間(4台、CPU使用率80%程度。)
ネットワークレンダ×20プロセスで3時間(4台、CPU使用率100%程度。)
という予測でしたが、実際に6.5時間程度に短くなりました。
-------
あと以下は不可能でした。
・「編集」「環境設定」「メモリ&マルチプロセッサ」でメモリーやCPU使用率、メモリー使用量やスレッドをレンダリング速度優先に設定。
-------------
■参考資料
・自動レンダリングとネットワークレンダリング
https://helpx.adobe.com/jp/after-effects/using/automated-rendering-network-rendering.html#WS3878526689cb91655866c1103a4f2dff7-79a2a

・After Effects CC のレンダーライセンスに関して
https://cloud.borndigital.jp/cc/?p=285

・AEによる監視フォルダを使用したネットワークレンダリング
http://www7a.biglobe.ne.jp/~fivetec/video/adobe/adobe_entry_014.html
烏野の箱庭ページ烏野の箱庭 …動画・絵・漫画・脚本などの作品紹介
烏野のyoutubeページ烏野博史動画 …広告・実験・講習用映像のyoutubeチャンネル
烏野のyoutubeページうのひろし日々描描 …作画配信のyoutubeチャンネル
UNOUNOのPixiv …絵、デザイン資料、漫画、実験画像
karasuno10をフォローしましょうkarsauno10のTwitter …考え、宣伝
posted by karasuno10 at 16:51 | Comment(0) | 動画>AfterEffects | このブログの読者になる | 更新情報をチェックする

2014年12月22日

コンポジションの指定秒区間を繰り返す

AfterEffectsで素材の指定秒間を繰り返す方法を紹介します。例えば素材を2.5秒目から3.5秒の間で繰り返す場合、素材をタイムラインに読み込んだあと……

  1. 素材にタイムリマップをかける。
    タイムラインウィンドウの素材を選択した状態で、【メニュー>レイヤー>時間>タイムリマップ使用可能】を選びます。タイムリマップが使用できるようになります。

  2. エクスプレッションを適応する。
    素材のタイムリマップを選択した状態で【メニュー>アニメーション>エクスプレッションの追加】を選びます。

  3. エクスプレッションを書く。
    タイムリマップのエクスプレッションに以下の記述をします。

    start=2.5;  //繰り返し開始時間(秒)
    end=3.5;  //繰り返し終了時間(秒)
    sf=timeToFrames(start);
    ef=timeToFrames(end);
    tf=timeToFrames(time - thisLayer.inPoint);
    f=sf+(tf%(ef-sf+1));
    framesToTime(f);

必要に応じて秒数を変えてください。コンポジションを部分的に繰り返す事もできます。記述の意味についてはコンポジションの繰り返しを参照してください。
ラベル:AfterEffects
烏野の箱庭ページ烏野の箱庭 …動画・絵・漫画・脚本などの作品紹介
烏野のyoutubeページ烏野博史動画 …広告・実験・講習用映像のyoutubeチャンネル
烏野のyoutubeページうのひろし日々描描 …作画配信のyoutubeチャンネル
UNOUNOのPixiv …絵、デザイン資料、漫画、実験画像
karasuno10をフォローしましょうkarsauno10のTwitter …考え、宣伝
posted by karasuno10 at 21:06 | Comment(0) | TrackBack(0) | 動画>AfterEffects | このブログの読者になる | 更新情報をチェックする