Footageが画像ファイルかどうか調べる

After Effectsではフッテージと言ってもコンポであったりNullであったり、Solidであったりします。スクリプトからフッテージが画像ファイル(ムービーファイル含む)かどうか調べる必要がある場合には

app.project.item(i).mainSource instanceof FileSource

の論理値を調べることで、フッテージが画像ファイルかどうかを調べることができます。

ちなみにこのままで大丈夫な感じがしますが、実は落とし穴があって、FileSource objectにはサウンドファイルも含まれてるということです。そこでFileSourceからサウンドファイルを除外する必要があります。サウンドファイルを判定するために、私の場合はwidthの値を調べて「0」ならサウンドファイルにしています。

また、このファイルが静止画かどうかを調べるには

app.project.item(i).mainSource.isStill

の戻り値で判定できます。あるいはdurationで調べてもいいかもしれませんが、先に述べた通りサウンドファイルの可能性もあるので、事前にサウンドファイルを除外していること前提です。isStillはitem().mainSource.fileが存在していないとエラーになりますので、isStillを用いる場合には事前にFileSourceの判定を行なってからにする必要があります。

この記事はサイトオーナーのブログより一部修正して転載いたしました。オリジナルの記事はこちらで読めます。

http://hiroshisaito.net/blog/after-effects-scripting-notes.html