Scripting/Projet/Items de projet

Items de projet

L'ensemble des éléments de le fenêtre de projet est désigné par le terme items. Un item de projet peut être de différente nature: un dossier, un métrage, un solide ou encore une composition. Chacun possède ses propres caractéristiques.

L'attribut numItems indique le nombre d'items dans le projet.

alert("Votre projet contient " + app.project.numItems + " items.");

l'attribut numItems

L'attribut numItems

On accède à un item en particulier grâce à l'objet item(), en précisant sa position (index) dans la fenêtre de projet. Cet index a une valeur comprise entre 1 et numItems.

Chaque item possède plusieurs attributs. On peut par exemple accéder à la taille du troisième item de la manière suivante:

myItem = app.project.item(3);
alert("L'item 3 est de taille: " + myItem.width + "x" + myItem.height);

exemples d'attribut d'un item

Exemples d'attribut d'un item

Si l'item considéré est une composition ou un métrage, on peut par exemple accéder à sa cadence (frameRate) ou à sa durée (duration) de la manière suivante:

myItem = app.project.item(1);
alert("item 1: cadence = " + myItem.frameRate + "i/s, durée = " + myItem.duration + "s");

autres exemples d'attribut d'un item

Autres exemples d'attribut d'un item

Interprétation

On peut également avoir accès à l'interprétation d'un item. Toutes les options sont accessibles et modifiables: l'Alpha, la Cadence, les Trames et la conversion ou encore le Format des pixels.

app.project.item(2).pixelAspect = 1.42;

interprétation d'un métrage

Interprétation d'un métrage

Pour toutes les autres options de l'interprétation, on utilise l'objet mainSource qui regroupe toutes les informations liées à l'interprétation de l'item. Pour modifer l'ordre des trames par exemple on peut écrire:

app.project.item(2).mainSource.fieldSeparationType = FieldSeparationType.UPPER_FIELD_FIRST;

interprétation des trames

Interprétation des trames

Remplacer un métrage

Il est possible de remplacer un fichier du projet par un autre. Pour ce faire on utilise la méthode replace() sur un item de type FootageItem, en précisant en paramètre le nom du nouveau fichier. Ce fichier doit être déclaré comme un objet File.

myFile = new File("H:/After Effects/footages/metro_rush.avi");
app.project.item(2).replace(myFile);

remplacement d'un métrage

Remplacement d'un métrage

Élément actif

Un attribut important de l'objet project que l'on rencontre très souvent dans les scripts est l'attribut activeItem. Il désigne l'élément actif du projet, celui qui est en surbrillance. Il peut s'agir par exemple d'un FootageItem de la fenêtre de projet ou en général d'un CompItem (la composition active):

alert("L'item actif est " + app.project.activeItem.name);

l'élément actif

L'élément actif

l'élément actif

L'élément actif