module inscription newsletter haut de page forum mobile

Dismiss Notice

formations etalonnage sur davinci resolve

Nos Formations Etalonnage avec Forest reviennent en octobre !
Adoptez une réelle méthodologie d'étalonnage professionnelle et atteignez vos objectifs créatifs avec nos formations intensives sur 3 jours
Toutes les infos
Dismiss Notice

ateliers live resolve avec forest

Ateliers Live Resolve - Formez-vous en ligne tous les mois avec Forest !
Faites rapidement évoluer la qualité de vos étalonnage avec nos ateliers mensuels de 3h.
Toutes les infos
Dismiss Notice

Formation Lumière - Pratique Intensive du 14 au 16 octobre à Paris
Formez-vous avec cet atelier de pratique intensive dans des conditions exceptionnelles ! Formation finançable.
Toutes les infos

Ateliers et Formations

Script (en cours) pour automatiser un rendu

Discussion in 'Adobe After Effects' started by jonz, Sep 6, 2005.

Tags:
  1. jonz

    Trophy Points:
    1,000
    Likes Received:
    0
    Messages:
    352
    Appréciations:
    +0 / 0 / -0
    Script (en cours) pour automatiser un rendu (en vue de faire sa bande demo)

    C'est pas souvent qu'on voit des "making of" qui montrent les "couches" d'effets appliqué a une vidéo.
    comme celle ca ou plus rare
    Ca permet de montrer concretement le travail effectué sur un plan.

    Pour arriver a ce resultat (pas celui de l'effet en lui meme mais la succession de couches) j'aimerais faire un rendu de chacuns de mes calques separement sous forme de fichiers que je reimporte dans after effects afin de refaire un simple empilement de couches.

    Mais la ou ca se complique c'est que les rendus doivent s'effectuer dans un ordre particulier. On commence par le calque qui se trouve le plus en dessous et on fini par celui du dessus tout en laissant activé tout ceux qui viennent d'etre rendu. un exemple avec seulement 3 calques.
    Code:
    RenduA:
        xcalque1: calque masqué
        xcalque2: calque masqué
        >calque3: calque Activé
    
    RenduB:
        xcalque1: calque masqué
        >calque2: calque Activé
        >calque3: calque Activé
    
    RenduC:
        >calque1: calque Activé
        >calque2: calque Activé
        >calque3: calque Activé
    Avec un exemple sur 3 calques ca sera deja ptetre plus simple et oui j'aime bien mon schema :)

    Jusqu'a maintenant je faisais ca a la main. Rendu de calques les uns apres les autres. C'est long, surtout quand on a 50 calques :D
    Mais je sais pas si ce processus peu etre automatiser par un script...

    ps: j'ai voulu effacer une de mes reponses et j'ai effacé le topic... desolé.
     
    #1 jonz, Sep 6, 2005
    Last edited: Sep 6, 2005
  2. nab17connection

    Trophy Points:
    1,900
    Likes Received:
    1
    Messages:
    1,051
    Appréciations:
    +0 / 0 / -0
    ah c est mieux expliqué que le premier jet que tu as effacé ...
    j ai lu (un peu) le Scripting Guide pour mon script sur le Cubi, et je pense que c'est tout à fait realisable :) .
    je vais regarder ca de plus pres et te tiendrai au courant

    ps: une question qui me turlupine, est ce toi sur ton avatar ? :D
     
    #2 nab17connection, Sep 6, 2005
    Last edited: Sep 6, 2005
  3. nab17connection

    Trophy Points:
    1,900
    Likes Received:
    1
    Messages:
    1,051
    Appréciations:
    +0 / 0 / -0
    :) j'ai le script monsieur

    vous pouvez le copier-coller à partir d'ici : MakingOf.jsx

    deux trois mots sur le script :
    _il est écrit et commenté en francais ( j ai bien détaillé chaque etape ).
    _attention à bien avoir une file de rendu vide avant de le lancer.
    _par défaut sur AE quand on lance un rendu, c est en avi non compressé, alors...
    _on peut se choisir un modele de sortie en allant dans Edition>>Modeles>>Module de sortie>>Creer...
    _le nom de votre modele est important, il va vous servir pour faire tourner le script.
    _en fin de code, remplacer la valeur de "myModule" par le nom de
    votre modele (ici mon modele s appelle "QT_50__320_240_noaudio" ).

    voila :)

    apres on peut faire des ptites ameliorations, mais je te laisse Jonz le loisir d essayer et de me dire ce qui ne va pas, ou ce qui serait bien d avoir...

    ps:alors il l'a sa vache qui rit ? :D
     
  4. jonz

    Trophy Points:
    1,000
    Likes Received:
    0
    Messages:
    352
    Appréciations:
    +0 / 0 / -0
    Effectivement, t'es tombé pile poil. Cependant quelques petites choses a ajouter.
    Certains calques 3D perdent leurs transformation quand la camera 3D est desactivé.

    Un increment du nom des fichiers avec un numero a plusieurs chiffres
    (au cas ou on aurait plus de 100 calques :( )
    Parce que la, des qu'on choisit de faire des sequences d'images et que l'option "ignorer les fichiers existants" est activée
    dans le parametre de rendu ca ecrase systematiquement le dernier rendu.

    J'ai pas eu la chance d'avoir lu en detail le scripting guide...
    mais il doit etre possible de faire une boite de dialogue pour choisir
    le modele de sortie et le parametre de rendu dans une liste?

    ps: non ca n'est pas moi sur l'avatar.. Mais ca y ressemble un peu :p

    vive les vaches qui rit a 4€ la boite de 25 :bravo:
     
  5. nab17connection

    Trophy Points:
    1,900
    Likes Received:
    1
    Messages:
    1,051
    Appréciations:
    +0 / 0 / -0
    adios :)

    pour les ameliorations, a vue de nez je dirais :

    _easy pour le pb avec la camera
    _easy pour l increment et donc le choix du nom de fichier de sortie(1,2,3, ...1000000 si tu veux)
    _plus chaud pour la boite de dialogue pour le rendu, mais neanmoins faisable

    J'ai pas encore beaucoup de recul sur le scripting ( j ai commence y a 15j :D ), mais de facon generale, j ai bien l impression que tout ce que tu peux faire à la souris ou au clavier dans AE, tu peux reproduire la meme chose avec un script.
    Quand on utilise AE (ou n importe quel logiciel), à chacune de nos manips avec la souris, du code derrière s'exécute pour effectuer la tâche corespondante.
    Dans le scripting on n'a pas de souris ;) pour dire de faire telle ou telle chose, alors plutot que de "faire", on "écrit", le 'click' est converti en 'instruction'. En d'autres termes, c'est tout bonnement mettre des mots, du javascript en l'occurence, pour définir les actions de la "souris".

    Revenons à nos moutons (qui rient); pour le script MakingOf j'apporterai les modifs que je pourrais et je balancerai la nouvelle version des que j'ai un peu de temps car j'ai pas mal de trucs a faire, qui m interessent moyennement mais qui sont importants :col: )

    ps: j'aime bien ton avatar :) ...et suis un poil décu que ce ne soit pas toi
     
  6. nab17connection

    Trophy Points:
    1,900
    Likes Received:
    1
    Messages:
    1,051
    Appréciations:
    +0 / 0 / -0
    pour ta pause dejeuner tu peux deja prendre cette version 2 qui regle le probleme de la camera.
    il faut que tu places ta camera au sommet de la pile (i.e. en calque 1). je n ai eu à remplacer qu un chiffre le "1" est devenu "2" pour l'iterateur i ( rien n'est fait au premier calque...ta camera donc), je l'ai fait à deux endroits , tu regarderas sur le code.

    je ne sais pas si cela arrive parfois d avoir plusieurs cameras dans ta comp :perplexe:, mais si c est le cas alors remplace ce "2" par ton nombre de caméras...en les placant toutes toujours au sommet de la pile.

    pour l'increment sur le nom des fichiers , ben en fait l incrementation est faite automatiquement lors du rendu..si tu appelles ta comp par exemple "Jonz1_1" et que tu appliques le script, tu vas obtenir ton premier rendu "Jonz1_1_1"(celui qui ne contient que le calque du dessous(le back back background ;) ), puis "Jonz1_1_2", etc .. tu dois pouvoir t'y retrouver facilement avec cette numerotation. Mais c'est ptet pas vraiment ce que tu veux , je sais pas..

    plus tard pour la "boite de rendu" ... ;)
     
  7. jonz

    Trophy Points:
    1,000
    Likes Received:
    0
    Messages:
    352
    Appréciations:
    +0 / 0 / -0
    En fait c'ette histoire d'incrementation avec des numeros.. c'est pour eviter d'avoir des noms de fichier de type jonz_1 et jonz_20 qui sont pas tres pratique quand on liste une sequence de fichiers avec l'explorateur de windows... ca doit etre pareil sur mac.

    En tout cas, l'idéal c'est d'avoir des fichiers de type jonz_001 et jonz_020 ..

    je regarde de mon coté pour ce qui est des fonctions d'incrementation et d'ajout de zeros devant les chiffres.

    En cherchant sur un site specialisé dans le javascript je devrais trouver.
    Ce soir je poste la fonction pour faire apparaitre la boite de dialogue.
    Mais elle se trouve dans un des scripts filé avec l'installation d'after il me semble.

    ps: le script marche nikel pour la camera tant qu'elle est au dessus de la pile.. mais des qu'on a pas, ca devient un soucis. Bref, je continu a regarder de ce coté la aussi.
     
    #7 jonz, Sep 6, 2005
    Last edited: Sep 6, 2005
  8. jonz

    Trophy Points:
    1,000
    Likes Received:
    0
    Messages:
    352
    Appréciations:
    +0 / 0 / -0
    #8 jonz, Sep 6, 2005
    Last edited: Sep 6, 2005
  9. nab17connection

    Trophy Points:
    1,900
    Likes Received:
    1
    Messages:
    1,051
    Appréciations:
    +0 / 0 / -0
    oui pour l histoire des cameras c est normal :)

    si tu as une caméra il faut que tu mettes "2" pour i, mais si tu n en as pas il faut mettre "1".

    donc tu as deux scripts, un pour tes anims avec camera, un autre pour celle qui n' en ont pas...
    ca peut s optimiser mais j ai pas trouvé la commande pour tester si un calque est une camera ou pas, alors je t ai proposee cette "astuce" de sauter le (ou les) calque du haut de la pile.

    pour les noms c est pas super clair ton affaire, mais j ai trouve quelquechose pour ajouter des zeros ou tu veux, style "jonz0010", "jonz0020", jonz0030", etc, c est bon ca ? de toute facon c est facile de modifier le truc et de mettre des zeros ou il t arrange.

    voila le nouveau script qui fait ca, ah oui juste avant une petite chose, il faut preciser l extension choisie pour ta sortie, a mettre au debut du script. Moi j ai mis "mov", si tu veux autre chose, ajustes ce parametre (que j ai appelé "ext" ).
    il est pour une comp avec une camera (mettre "1" pour le parametre i si pas de camera dans la comp):
    MakingOf_1camera

    ps:ah tu viens de poster je vais voir ca ...
    ps2:eh ! c est nickel celle avec les maisons :bravo:
     
  10. jonz

    Trophy Points:
    1,000
    Likes Received:
    0
    Messages:
    352
    Appréciations:
    +0 / 0 / -0
    le fait de rajouter X zeros devant une serie de nombres c'est pour eviter ce genre de probleme lorsque qu'on classe une liste de fichiers par nom:
    nom_1.mov
    nom_10.mov
    nom_11.mov
    nom_12.mov
    etc...
    nom_39.mov
    nom_4.mov
    nom_40.mov
    nom_41.mov
     
  11. jonz

    Trophy Points:
    1,000
    Likes Received:
    0
    Messages:
    352
    Appréciations:
    +0 / 0 / -0
    Je finis de personnaliser le script avec des boites de dialogues pour la camera,
    le dossier de destination, le nombre de chiffres... etc.. Mais je galere un peu.

    Du coup j'avance pas vite et je me suis mis a me demander si on pouvait activer
    les calques qui se trouvent dans des precompositions... Ca serait top.

    Mais la je reve peut etre.
     
  12. nab17connection

    Trophy Points:
    1,900
    Likes Received:
    1
    Messages:
    1,051
    Appréciations:
    +0 / 0 / -0
    porque tu veux faire ca ?

    tu veux dire que tes calques (style calque1, calque2 comme dans ton schema du debut, sont des precomps...et tu voudrais aller activer les calques qui se trouvent dans ces précomps ? je pige pas trop

    sinon, comme je l avais dit je pense que tout ce que tu peux faire a la souris tu peux coder l'equivalent, et donc ca aussi...dans ce cas precis, il faut aller chercher dans les items du projet la précomp en question, puis itérer sur les calques qu elles contient, et faire ce que tu veux avec...
    j en dis pas plus car j ai pas vraiment compris ce que tu voulais (et a quoi ca servait)

    c est bien que tu t' y sois mis :) (et que t'en chie un peu :D , pardon)

    ps: ah en me relisant, je crois voir ce que tu veux dire. Par exemple, le calque 1 est une precomp qui contient pleins d effets, plein de calques.. et toi non seulement tu veux faire les rendus successifs (comme on a fait) avec une couhe en plus à chaque fois, mais egalement montrer chacun des effets sur une seule couche (la precomp en question ), et faire aussi des rendus pour les calques qu elle contient. C est ca grand chef ?
     
  13. jonz

    Trophy Points:
    1,000
    Likes Received:
    0
    Messages:
    352
    Appréciations:
    +0 / 0 / -0
    tout a fait. Si le script rencontre une precomposition il l'active.
    Il active uniquement par la meme occasion le calque qui se trouve en bas de la pile et fait son rendu.
    La suite se passe comme ce qui a deja été fait. Une fois la precomposition rendu (une fois que tous les calques sont activés)
    il revient dans la composition principal et active le calque qui se trouve au dessus.
    Etc etc again and again.. on connais deja la fin.

    Un rendu pour chaques effets ne me parait pas necessaire mais c'est vrai que ca va dans le sens premier du script:
    montrer les effets appliqués couches par couches et de démontrer leurs incidences.

    Bref ouais j'en chie encore un peu mais ca va.
     
  14. nab17connection

    Trophy Points:
    1,900
    Likes Received:
    1
    Messages:
    1,051
    Appréciations:
    +0 / 0 / -0
    ok ...ca doit etre faisable sans trop de complications, puisqu au fond on fait le meme traitement a chaque fois (qu il s agissent de la comp final, ou d une precomp intermediaire..)
    j ai pas encore regardé en detail ...

    sinon, l idee est cool...et ca va te faire des rendus excellents au finish...la declinaison de tous les effets les uns apres les autres.

    ps: c est vraiment bien ce que tu fais ( j ai maté jonz.free), ca me motive a reflechir a nouveau a ce script :) qd j aurai une petite heure de dispo
     
  15. nab17connection

    Trophy Points:
    1,900
    Likes Received:
    1
    Messages:
    1,051
    Appréciations:
    +0 / 0 / -0
    bingo ! :bravo: I got the script

    MakingOf_multiComp.jsx

    et en guise de petit bonus, j ai trouve comment gerer le probleme de "camera ou pas de camera"...le script fonctionne maintenant pour les deux cas, et tu n as rien a preciser par toi meme.

    je cherchais au debut une methode du style "isCamera" qui m aurait indique la nature du calque, j ai pas trouvé. En revanche, j ai trouve une methode "activeCamera" qui indique si la comp possede une camera ou non ...

    pour le reste, quelques manipulations (boucle à travers toutes les comps du projet, d ailleurs j y pense , mets tes comps a la racine pas dans des dossiers..) et le tour etait joué ;)


    balances d autres exemples de rendus "making of" si tu en as en, que j ai l'impression de les avoir faits moi meme :lol:
     
Loading...

Share This Page

Vous souhaitez annoncer sur le Repaire ? Contactez-nous