Que fait Comfy Director ?
L'histoire d'abord, les images ensuite. Les films d'IA multi-plans échouent au montage, pas au rendu : des battements qui ne s'engendrent pas mutuellement se lisent comme un montage déguisé en histoire, quelle que soit la qualité de chaque plan.
PRÉREQUIS OBLIGATOIRE : la compétence comfy (mécanismes CLI + le chemin de recette —
apply/capture/foreach — pour les graphes multi-étapes réutilisables). En cas d'échec d'un travail,
comfy-debug.
Ordre des opérations
- Concept — une idée qu'un inconnu peut reformuler.
- Scénario — avant de toucher au pipeline. Livrez-le d'abord à l'utilisateur.
- Liste de plans — chaque scène cartographiée avec une stratégie de continuité.
- Conception audio — en fonction des battements émotionnels du scénario, pas après les images.
- Produire → conformer → CQ.
Sauter l'étape 2 et passer directement aux rendus est la cause #1 des montages annulés.
Règles du scénario
- Un seul protagoniste que la caméra peut suivre. Reconnaissable dans chaque plan.
- Test de causalité : chaque coupe répond à « et à CAUSE de ça… » — jamais « et ensuite, ailleurs… ». Si un battement peut être réorganisé sans rien casser, ce n'est pas encore une histoire.
- Test de l'inconnu : quelqu'un sans contexte doit pouvoir reformuler l'intrigue en deux phrases (« X voulait A, B l'en a empêché, il a fait C, donc D »).
- Les battements portent des durées qui totalisent le temps d'exécution cible.
Règles du concept
- La marque/le produit est ressenti, pas nommé : défendez sa philosophie ; les clins d'œil internes et le folklore de la communauté affichés à l'écran sont perçus comme du fan-service.
- Une technique que le client mentionne (« transfert de style », un nom de modèle) est une étincelle, pas un mandat — utilisez-la uniquement si l'idée en a besoin. Construire le film autour d'une technique est le signe d'un fournisseur, pas d'un réalisateur.
- L'étrangeté doit se cumuler : sujet ET objet ET cadre surprenants. Un seul élément étrange dans un cadre normal n'est qu'une décoration.
Création des prompts pour les plans
- Plans photoréalistes : langage de directeur de la photographie / pellicule UNIQUEMENT. Un seul nom d'illustrateur/anime/bande dessinée dans un prompt photoréaliste le gâche. Les références illustrées n'appartiennent qu'aux plans délibérément stylisés.
- Les prompts de mouvement décrivent COMMENT la scène bouge, pas ce qu'elle contient (voir les
pièges vidéo de la compétence
comfy— pièges des modèles t2v/i2v, SaveVideo, câblage fps).
Boîte à outils de continuité
Choisissez par plan, par ordre de force approximatif :
| Stratégie | Utilisation pour |
|---|---|
| Image de référence du personnage/lieu transportée dans chaque plan du graphe i2v | identité du protagoniste |
| Même identité, nouveaux cadrages via édition d'image de référence (un héros → N angles) | visage reconnaissable entre les coupes |
| Image clé du plan N ensemence le plan N+1 (restylage ou image de fin référencée) | action contiguë |
| Tête parlante alimentée par l'AUDIO EXACT qui est joué (KlingAvatar), coupe entre les angles de la même tête synchronisée — jamais de B-roll sur la VO | dialogue qui doit sembler réel |
| Répétition à l'identique des lignes de garde-robe/lumière/objectif dans chaque prompt | colle de base peu coûteuse |
Si un plan ne peut pas maintenir la continuité, réécrivez le scénario pour qu'il n'ait pas besoin de ce plan — ne livrez pas la rupture.
Audio
- Musique = courtes séquences conçues et assemblées aux pivots de l'histoire ; une seule longue génération ne suivra pas un arc dynamique (elle s'inverse exactement là où vous avez besoin du pic).
- Placez la VO par calcul : durée de la piste par rapport à la fenêtre de battement, avant le mixage.
- Faites baisser la musique sous la VO ; normalisez le volume du mix final (~-14 LUFS).
- Le dialogue doit être synchronisé par construction. Pilotez la bouche à partir de l'audio exact
qui est joué (KlingAvatar
sound_file) et coupez entre angles de la même tête synchronisée — un B-roll sur une VO continue donne l'impression d'un montage, et les bouches inventées par i2v dérivent. « Pas de synchronisation / ne semble pas réel » est le rejet classique. (Générez l'audio dans le graphe —LoadAudiocloud ne peut pas voir les téléchargements ; voir les pièges audio decomfy.) - Verrouillez la voix et le casting par l'OUÏE avant les rendus coûteux. La voix/l'accent est
subjectif et illisible à partir d'une forme d'onde — générez quelques prises TTS candidates bon marché
d'une seule ligne, faites choisir l'utilisateur, PUIS intégrez la gagnante dans les plans coûteux
et sujets à
transient_authd'avatar/synchronisation. Re-rendre tous les plans à cause d'une voix rejetée est une perte évitable. Même logique pour l'apparence du protagoniste : approuvez l'image fixe du héros avant de générer chaque plan à partir de celle-ci. - Vérifiez le mix par mesure, pas par foi. Vous ne pouvez pas entendre le rendu —
ffmpeg volumedetectchaque section : une fin « silencieuse » ou une ligne enterrée apparaît comme une fenêtre proche de -91 dB. Confirmez que chaque battement est présent au niveau avant de déclarer la tâche terminée.
Opérations de production
-
Ajoutez CHAQUE soumission — plans, images clés, pistes audio, resoumissions — à
job_ids.txt(<nom_travail> <prompt_id>) au moment de la soumission. Ajout uniquement : une resoumission obtient une nouvelle ligne (shot_s3_resubmit <id>), jamais une écrasement, de sorte que les prompt_id morts conservent leur identité de plan. -
Conservez
LOG.mdà la racine du projet : un journal d'événements en ajout seulement, écrit au moment de l'événement, pas en fin de session — une ligne par soumission/resoumission (+ code d'échec), par verdict de CQ (+ raison du rejet), et par décision qui invalide un travail antérieur : rechangements, modifications de prompt, quelle image de référence ou piste est désormais canonique. Les constatations image par image vivent dansqc/QC_LOG.md; LOG.md les indexe.17:36 ERREUR shot_s3 transient_auth -> RESOUMISSION 27dd45b4 (même workflow, pas de reconnexion) 17:44 CQ shot_s2 ÉCHEC fond-défilement -> re-génération (même kf, nouvelle graine) ; refaire le battement si 2e échoue 17:50 DÉCISION rechangement protagoniste -> ref_ray.png canonique ; vo2, vo6 obsolètes, re-gén -
Contrat de récupération : un agent successeur sans mémoire doit pouvoir reprendre à partir du disque seul :
LOG.md(ce qui s'est passé, pourquoi) →job_ids.txt(quels travaux) →comfy jobs status(leurs états). Une décision absente de LOG.md meurt avec la session — les travaux terminés mais obsolètes (les pistes VO d'un ancien casting) ressemblent autrement à des travaux valides. -
ffprobe chaque clip téléchargé ; normalisez la durée/les dimensions hors spécifications avant le conformage.
-
Contrôlez une image de chaque clip par rapport au scénario avant le montage.
-
Durée exacte : ajustez/retardez par battement dans ffmpeg, n'espérez pas.
Erreurs courantes (chacune a tué un vrai montage)
| Erreur | Résultat |
|---|---|
| Rendu avant le scénario | « Huit beaux battements qui ne s'engendrent pas mutuellement » |
| Folklore de la communauté à l'écran | « Trop direct, fan-service » |
| Technique mentionnée par le client comme concept | « Je l'ai dit pour susciter des idées » |
| Pas de plan de continuité | Le protagoniste change de visage à chaque coupe |
| Une seule génération musicale de 40s | L'arc s'inverse au climax |
| B-roll sur une VO continue | « Donne l'impression d'un montage / l'audio ne correspond pas » |
| Voix intégrée dans N plans avant que l'utilisateur ne l'entende | Re-rendre tout quand il la rejette |
| Plans de tête parlante bout à bout | La voix dérive hors synchronisation (l'avatar ajoute de la vidéo après l'audio) |