Voir la version complète : Gestion automatique des images calculees ?
Bonjour !
... passage rapide (trop de taff:)
mais question sur une tache qui me fait perdre beaucoup de temps :
situation :
lors d'un rendu en animation avec multipasses,
sur un plan long (2000 frames par exemple) quand on demande 10 passes, on arrive a un dossier comprenant 20 000 frames... et ca, After a du mal a gerer
... et meme le finder quand on navigue dans le dossier
workflow actuel :
je passe parfois des heures par jour a ranger mes images en creant un dossier du nom de la passe dans lequel je range a la main mes paquets de 2000 images
c'est pas que je n'aime pas ranger (en meme temps... les photos de mon bureau ne sont pas remises a jour lol)
mais c'est un taff de me rend bete et irritable
question :
existe-t'il un outil Windows (et meme OSX ??) ou un script (C4D ?) permettant de le faire tout seul ?
je reve d'un clic-droit sur une image (n'importe laquelle) qui me donne acces a une fonction
et paf : tous les fichiers de ce dossier qui ont le meme nom (hormis le numero d'image final) se deplacent dans un nouveau dossier portant le nom de l'image cliquee !
... du coup, 10 clics et tout le dossier est pret pour etre importe dans After :o)
je post dans NetRender... car si on pouvait customiser NetRender ce serait une option necessaire de pouvoir definir une hierarchie de rangement des fichiers AVANT de lancer le rendu
bref,
si cela parle a quelqu'un ? merci d'avance de me dire si l'espoir subsiste ;)
... je retourne a mon compositing...
T'es sur la 12 ? Parce qu'un petit script en python serait relativement vite fait...
Rhhaa non... 11.5, et plus de demo de Py4D :(
mais bon... ca donne espoir :o)
je ne ferai pas ca toute ma vie !
merci en tous les cas... et des que je suis sur la 12... je t'appelle ;)
Bon je tente un truc sur la r 11.5, il faudra juste reculer la date en 2010 pendant le démarrage de c4d...
Bon premier jet.
Alors c'est fait à l'arrache, le principe on sélectionne le premier fichier d'un rendu multipasse, et il classe tout dans différents dossiers selon les passes.
Attention de ne pas mettre de '_' dans le nom autre que celui automatique de c4d, car c'est grâce a ce signe qu'il va reconnaître la passe.
Fonctionne avec la r12 et 11.5 ( reculer la date lors du démarrage et ça passe... je sais pas si c'est très catholique, mais ça dépanne!), de toute façon fonctionne également avec la démo de la r12 au pire.
Attention teste peut-être avant sur des dossiers d'essai ou des copies, il n'y a pas d'annulation possible ...Eviter aussi de laisser d'autres fichiers ou dossiers que ceux de c4d dans le dossier (j'ai mis une petite sécurité, mais pas testé)
import c4d
import os
import shutil
import glob
def regrouperImages():
fn = c4d.storage.LoadDialog()
if fn:
dir = os.path.dirname(fn)
listdir = os.listdir(dir)
for file in listdir:
basename= os.path.basename(file)#nom avec extension
name = os.path.splitext(basename)[0]#sans extension
try :
name = name.split('_')[1]#on enlève toute la partie avant le _
except:break
cnt = 0
r = name[cnt].isdigit()
while (r==0):
cnt+=1
r = name[cnt].isdigit()
dir2 = os.path.join(dir ,name[:cnt])
if not os.path.exists(dir2):
os.makedirs(dir2)
dst = os.path.join(dir2,basename)
shutil.move(file, dst)
if __name__=='__main__':
regrouperImages()
Coller tout ça dans Py4d/scriptManager (11.5) ou Python/Gestionnaire de Scripts pour la 12 puis -> exécuter
Donnes-moi des nouvelles pour améliorations ou bugs éventuels ...
:o)
merci Oli !!!
je teste... et je te dis !
Tazintosh
25/01/2011, 17h55
Sous Mac, Automator est ton ami. Scripts classiques ou actions de dossiers, cas typique : quand un fichier nommé "x" se trouvera dans tel dossier, boom le script se lance et le déplace… ou que sais-je.
Il y a aussi Hazel, magnifiquement puissant et pratique. Sachant en plus que Hazel et Automator peuvent communiquer.
Ce genre de problème, c'est un vieux souvenir quand on commence à toucher à ces deux softs (entres autres), et on peut aller très nettement plus loin que le simple déplacement de fichiers.
ben moi je fais le compositing directement dès les premières images calculées
( en tout cas j'amène toutes les passes dans after dès que possible)
ça fait déjà ça de gagné question scrolls à rallonge dans les imports AE.
Après ... c'est à la main pour les dossiers à créer et c'est risqué en plus,
mais je vais regarder vos petites commandes de codes effectivement fortement dépannantes !
hi hi !
Macaïdam
25/01/2011, 20h41
Sinon tu peux faire un script python en dehors de cinema 4D en te basant sur les fins de noms de fichiers.
Sur OS X tu as aussi les scripts bash, mais le python gère bien plus facilement les chemins de fichiers avec des caractères spéciaux
Oli, je viens de tester sous une R12 pour un taff en cours... et ca ne marche po :(
... disons que j'avais laisse le .aec dans le dossier des images de rendu
le script a cree un dossier et n'a mis dedans que le .aec
du coup, j'ai enleve le .aec et son dossier,
relance le script
et la rien ne se passe
... il y a peut-etre une memoire tampon a purger, je retente apres le diner !
pas de stress : c'est un petit rendu ... je n'en ai pas pour longtemps a ranger ;)
Désolé ton post m'avais échappé. J'ai pour l'instant que la version démo de la 12. Pourrais-tu me montrer une capture écran de ce à quoi ressemble un de tes dossiers de rendu multipasses avec les noms de fichiers . En gros, pour l'instant il ne faut pas mettre dans le nom de fichier de base, c'est à dire hors rajout auto de c4d, ni un chiffre ni un '_' (je sais pas si je suis très clair là !). Évite aussi de rajouter d'autres fichiers, mais encore une fois c'est fait à l'arrache juste pour dépanner... quand je serai grand j'améliorerais...
EDIT : je n'ai testé que sur PC ...
Bonsoir Oli,
pas de souci pour l'inertie... j'en suis specialiste en ce moment !
je bosse aussi sur PC pour la prod en cours
... pour mes noms de fichiers, j'ai suivi tes conseils en ne mettant qu'un seul mot sans caractere special
et je le repete, encore merci d'avoir pris le temps de te pencher sur la question : je sais a quel point c'est precieux le temps...
je referai des essais et te donnerai des retours
bonne soiree... et bon courage pour la semaine
Dernière mouture qui devrait mieux fonctionner :
import c4d
import os
import shutil
def regrouperImages():
dir = c4d.storage.LoadDialog(flags=c4d.FILESELECT_DIRECT ORY)
if dir:
listdir = os.listdir(dir)
for file in listdir:
if os.path.isfile:
basename= os.path.basename(file)#nom avec extension
name = os.path.splitext(basename)[0]#sans extension
try :
name = name.split('_',1)[1]#on enlève toute la partie avant le premier_
except:continue
cnt = len(name)-1
r = name[cnt].isdigit()
while (r==1):
cnt-=1
r = name[cnt].isdigit()
dir2 = os.path.join(dir ,name[:cnt+1])
if not os.path.exists(dir2):
os.makedirs(dir2)
dst = os.path.join(dir2,basename)
file = os.path.join(dir,file)
shutil.move(file, dst)
if __name__=='__main__':
regrouperImages()
Merci Oli !
... deux mois pour te remercier c'est po mal ...
je n'etais pas vraiment repasse sur le Forum... et je n'ai toujours pas du reussir a configurer mes alertes mail (?)
je vais avoir l'occasion de tester sous peu...
re-merci donc d'avance ! :)
Dis-moi si tu reçois bien les notifications, je viens de changer un paramètre dans ton profil (tu n'avais pas la notification instantanée de sélectionnée).
Merci Fluffy,
mais je n'ai pas recu de notification pour ta reponse par exemple
... j'ai une page du forum d'ouverte quasi en permanence quand je bosse :
peut-etre que le navigateur etant connecte, le forum n'envoie pas de notification ??
Normalement non, je l'ai aussi souvent ouvert, mais je reçois toujours les notifications. Je vais regarder à nouveau ton compte.
*Edit*
Mmm.. non, tout est correct. Vide tes cookies pour le site, et vérifie si les emails ne se font pas filtrer par un filter anti-spam, peut-être?
c'est sympa... mais vraiment : ne perd pas de temps avec ca !!!
... je sais que ton temps est precieux ;)
[edit] oki... je fais comme tu dis...
Merci OLI !!!!!
je viens de reussir a le faire fonctionner !!! :)
il y avait un souci de copiage/collage du code, en retapant le code : plus de message d'erreur
... et ca tombe bien, j'ai plusieurs dizaines de milliers d'images a gerer :
je te dois au moins une bierre a une beuverie si on se croise !!!
[ou alors je te l'envoie en chronopost la bierre ;]
[edit : Oli... je te dois plus qu'une bierre !!!!... c'est incroyable le temps que cela me fait gagner :) encore un ENORME merci ... ]
Content que ça serve !
Pour le verre volontiers la prochaine fois que je suis sur Paris (c'est bien de là que tu viens, non?) Mais pas de bière, j'aime pas ça, un petit coup de vinasse type Château Pétrus 1957 fera l'affaire... :icon_mrgreen:
Powered by vBulletin® Version 4.2.1 Copyright © 2024 vBulletin Solutions, Inc. Tous droits réservés