今回はPremiere CS5で使用されている画像などの項目のレポートを出力するスクリプトです。あれ?PremiereってJavaScriptで制御できるの?という人がいるかもしれません。限定的ながら制御は可能です。限定的というよりも機能がないので、ほとんど何もできないような状態ですが・・・。
以下のスクリプトは現在のプロジェクトファイルにある画像やシーケンスなどの項目のレポートファイルを作成し保存するものです。
// プロジェクト内の項目情報を出力する
(function(){
var savefile = File.saveDialog("保存するレポートファイル名を入れて下さい");
if (!savefile) return;
if (!savefile.open("w")){
alert("レポートファイルを保存できません");
return;
}
savefile.writeln(app.project.name); // プロジェクト名
savefile.writeln(app.project.path); // プロジェクトが保存されているパス
var itemList = app.project.rootItem.children;
for(var i=0; i<itemList.numItems; i++){
savefile.writeln(itemList[i].name);
}
})();
上記のスクリプトは項目の名前しか出力しません。項目のパスを出力する場合は以下のようにnameの代わりにtreePathを指定します。
// プロジェクト内の項目情報を出力する
(function(){
var savefile = File.saveDialog("保存するレポートファイル名を入れて下さい");
if (!savefile) return;
if (!savefile.open("w")){
alert("レポートファイルを保存できません");
return;
}
savefile.writeln(app.project.name); // プロジェクト名
savefile.writeln(app.project.path); // プロジェクトが保存されているパス
var itemList = app.project.rootItem.children;
for(var i=0; i<itemList.numItems; i++){
savefile.writeln(itemList[i].treePath);
}
})();
上記、いずれのスクリプトも最初の階層のみ出力となっていて入れ子になっている場合には使えません。
これに関しては、また次回ということで。
プレミアCS5のスクリプトに関する情報は、ほとんどなく手探りなので今回は、このくらいで・・・。
感触としてはAfterEffectsと同じような感覚です。プロパティがあっても違う結果を返したり挙動も怪しい部分もあるので、JavaScriptを使って手抜きをするのは多分難しいでしょう。
ちなみにメディアエンコーダーCS5もJavaScriptの制御に対応しています。
[
サンプルをダウンロード]