Discussion

Moteur de Remake Vidéo Verrouillé sur Image (Flux de Travail Multi-Agents)

De Wikiprompt, l’encyclopédie libre de prompts

dawood46
Contribué pardawood46XSource

30 sept. 2026

Moteur de Remake Vidéo Verrouillé sur Image (Flux de Travail Multi-Agents) Un flux de travail multi-agents complet pour créer un remake verrouillé sur les images d'une vidéo de référence, avec des phases détaillées, des portes de validation et des critères d'acceptation numériques.

Contenu du PromptEnregistrer

🌐
TÂCHE : remake synchronisé de REF=[chemin/vers/référence.mp4] pour [PRODUIT] = [une ligne : ce qu'il vend + l'offre + le prix]. Diffusé côte à côte avec REF, il est visiblement verrouillé sur les images ; diffusé seul, personne ne peut dire qu'il provient de REF. GARDER IDENTIQUE (mesuré, pas estimé à l'œil) : chaque frame de coupe, durée de plan, emplacement de mise en page, taille + position des éléments par frame, frame d'entrée/sortie, courbe d'accélération, mouvement de caméra, cadence de frappe (caractères par frame), trajectoire du curseur, couverture de transition % par frame, luminance par plan (sombre là où REF est sombre), flou activé/désactivé par mouvement, temps de frappe audio, frame de drop musical. REMPLACER TOUT LE RESTE : chaque image, objet, mot, couleur, texture, chrome d'interface, logo, police. Apparence = [APPARENCE, ex. "page #FDFDFB + dégradé linéaire de ciel (180deg,#263F72,#769CC2) avec fine ligne blanche à 20–35%, verre dépoli (blanc 30%→14%, flou d'arrière-plan 24px saturation 1.3, bordure blanche 1px, ombre 0 18px 50px rgba(10,22,50,.18)), Inter 600, un accent #2F6BFF"]. Images = [mes vraies frames de travail/clips | photos CC0/domaine public | personnages originaux dessinés en code]. INTERDIT : accessoires modélisés en 3D, personnes de banque d'images/générées, mèmes/personnages/logos protégés par droit d'auteur, violet/magenta/orange comme couleur de marque, bleu-sur-bleu avec scanlines, HUD de caméra factices, bokeh hexagonal, audio synthétisé par code. ACCEPTATION (tout numérique, tout rapporté ; rien ne sort sans le tableau) : Coupes : 0 frame de décalage par rapport à REF. Par plan : courbe d'énergie de mouvement (différence de frame moyenne absolue en gris 192x108) corrélée croisée avec celle de REF sur le plan → pic au décalage 0 ±1 frame ET corrélation ≥ 0,80. Par plan : 10 frames empilées REF sur les nôtres ; bords des éléments clés à moins de 1% de la frame (19 px x, 11 px y). Beauté : un critique frais qui ne voit que REF vs les nôtres en pleine résolution répond "le nôtre est-il au moins aussi beau et poli que REF à cette frame ?" → OUI sur chaque frame de storyboard. Non reconnaissable : le même critique, voyant le nôtre seul, ne peut pas nommer la marque ou le produit de REF à partir d'aucune frame. Fluidité (le nôtre, film complet) : 0 séries de ≥3 frames gelées (diff < 0,03) en milieu de scène ; < 5 pas saccadés (frames en mouvement consécutives dont le ratio de diff > 2,2) ; aucune diff > 25 sauf à une coupe dure de REF. Voix : chaque ligne commence à ±40 ms de la frame où son premier mot apparaît ; aucun mot prononcé > 150 ms avant que son mot ne soit à l'écran ; chaque ligne en une prise continue (plus longue pause interne < 120 ms sauf si REF l'a) ; vitesse 0,95–1,05. Son : chaque frappe de REF à ±15 ms ; chaque petit signal ≥ 3 dB au-dessus de sa bande à ce moment ; voix p10 ≥ 9 dB au-dessus de la musique+SFX sur chaque ligne ; -14 LUFS ±0,5, pic vrai ≤ -1,0 dBTP (surdimensionné 4x), limiteur actif < 2% des échantillons ; chaque jonction musicale en fondu enchaîné (ratio de saut à la jonction ≤ les sauts de battement propres à la piste). PHASE 0 - ANALYSE (pas de construction encore) ffprobe fps/résolution/durée. Extraire TOUTES les frames en base 0 : ref/full/fNNNN.jpg (résolution native) + ref/audio.wav 48 kHz. Planches de contact à 1 fps et 2 fps. Coupes : pics de diff moyenne absolue par frame > 6x la médiane locale, chacun confirmé en visualisant f-1/f/f+1. Pas : trouver les frames identiques à la précédente dans le mouvement (REF peut animer à 20 fps dans du 30). Enregistrer le motif ; le nôtre rend un 60 fps fluide, ne copie jamais le pas. SPEC.md, un tableau par type : plans : id | f0 | f1 | contenu | luminance moyenne | transition entrée | transition sortie | caméra mots : texte | plan | frame d'apparition | frame de stabilisation | x,y de la ligne de base à gauche | hauteur de capitale px | graisse | couleur objets : id d'emplacement | plan | frame d'entrée | frame de stabilisation | frame de sortie | bbox par frame (fichier tableau) | courbe d'échelle | rotation | ombre transitions : id | f0 | f1 | couverture % par frame (tableau) | direction | style de bord frappe : champ | frame du premier caractère | caractères par frame (tableau) | période de clignotement du curseur curseur : xy de la pointe par frame (tableau) | frames d'appui | courbe d'échelle d'appui caméra : échelle/tx/ty par frame (tableau) | flou par frame MESURER avec numpy/OpenCV : correspondance de modèles ou suivi de bbox d'encre par frame pour CHAQUE élément mobile ; enregistrer chaque piste sous measure/<id>.json (frame → x,y,w,h,opacité). La prose dans SPEC est un guide ; ref/full + measure/ sont la vérité. AUDIO : STT avec horodatages de mots → tableau VO : ligne | début | fin | temps de chaque mot. Musique : BPM + phase de battement (autocorrélation d'attaque), temps de drop, quasi-silence avant le drop (durée), volume par section (LUFS), frappe finale. SFX : attaques à partir du flux spectral, étiquetées par type (whoosh : enregistrer le temps de PIC, pas le début ; clic ; pop ; boom ; riser ; frappe). SWAPS.md : emplacement REF → le nôtre, même nombre de syllabes / même classe de largeur par mot. RÈGLE : si une ligne remplacée est plus longue que celle de REF, le TEMPS change pour s'adapter aux mots : étendre ce plan d'un nombre entier exact de battements musicaux (INS), décaler tout ce qui suit de INS, et dans le côte à côte, maintenir REF (avec une poussée de 2%, jamais figé) pendant INS au même point. Ne jamais entasser une ligne plus longue dans l'emplacement de REF. Écrire les décisions INS dans insert.json. PHASE 1 - MOTEUR (vous, avant tout agent) Une page HTML, 1920x1080. window.seekFrame(F) rend n'importe quelle frame, F fractionnaire autorisé, comme fonction PURE de F. Interdit : minuteurs, Date, Math.random (utiliser un hachage à graine), transitions/animations CSS, requestAnimationFrame. Les plans s'enregistrent avec SHOT({id, f0, f1, render(lf, F)}) renvoyant du HTML. window.ready = true seulement après document.fonts.ready ET que chaque image decode() soit résolue. core.js : ensemble d'accélérations (ease-out-cubic, ease-in-out-cubic, ressort avec dépassement ≤ 8%) ; kf(F, [[f, v]...], ease) utilisant des splines cubiques monotones à travers les clés (jamais linéaires par morceaux : les plis se lisent comme des saccades) ; samples(F, track) lisant measure/*.json avec interpolation par spline ; camera(inner, scale, tx, ty, origin, blur) ; flou directionnel (SVG feGaussianBlur stdDeviation x,y à partir de la vélocité) ; glass(), tile(), chip(), window(), card(), cursor(), textReveal(), glint(age, radius) (balayage spéculaire de 12 frames à l'atterrissage) ; logo comme masque CSS pour que tout remplissage fonctionne ; objet palette - chaque couleur à un seul endroit. POSITIONNEMENT : chaque élément mobile utilise transform : translate3d(x.xxpx, y.yypx, 0) avec des valeurs fractionnaires. L'accrochage de pixels du navigateur dans les conteneurs mis à l'échelle crée des pas de 3 px une frame sur deux. AUCUNE FRAME MORTE : chaque maintien porte une poussée/dérive de caméra ≥ 0,25%/frame ; les lueurs respirent ; la carte de fin pousse jusqu'au fondu. render.mjs (Playwright Chromium, deviceScaleFactor 1, exécuté hors de tout bac à sable OS) : modes stills <frames> | compare <frames> (REF à gauche | le nôtre à droite, feuille étiquetée) | sub <F0> <F1> <workers>. UN PROCESSUS NAVIGATEUR PAR WORKER (les pages dans un navigateur sérialisent les captures : ~65 vs ~450 sous-frames/min). Capturer avec CDP Page.captureScreenshot. Imprimer les erreurs de page. Flou de mouvement : N sous-frames par frame à partir de l'estimation de vitesse propre de la page (N=1 en dessous de 8 px/frame, jusqu'à 16 ; 32 sur les fouettés), obturateur 90° (étalement 0,25 frame, centré). Moyenne dans numpy. Coupes dures uniquement sur des frames entières. Scripts : https://t.co/6oEK6pCkxx (séries gelées + pas saccadés + grands sauts), https://t.co/mMZ99TvBh3 (tableau de décalage/corrélation par plan), https://t.co/ekkkOF28Sg (REF sur le nôtre empilé, verrouillé sur les images), https://t.co/8BkrahuZiR (moyenne des sous-frames → libx264 60 fps CRF 15 yuv420p bt709 + mux ; et REF|nôtre 3840x1080 côte à côte avec audio REF muet), https://t.co/nHE46DMJRg (échanger l'audio sans re-rendu). PHASE 2 - CONSTRUCTION (portes dans l'ordre ; ne pas sauter, ne pas réordonner) PORTE 1 STORYBOARD : un still pleine résolution par plan à sa frame la plus importante, REF|nôtre. Lancer un critique FRAIS (ne voit que les frames REF, les nôtres, et TÂCHE+ACCEPTATION ; jamais les notes du constructeur). Il renvoie par frame : beau comme REF (O/N), reconnaissable comme REF (O/N), vide/plat/cheap (O/N), avec la correction exacte. Tout corriger une fois. Journaliser dans LEDGER.md (constat | frame | statut CORRIGÉ/PARTIEL/OUVERT). PORTE 2 LABOS DE COMPOSANTS : les 4–6 pièces les plus dures (fenêtre/appareil héros, grand élément lumineux, UI de chat, cartes, marque de fin) chacune sur sa propre page de test ; stills à 3 tailles ; passage du critique ; seulement ensuite intégrer. PORTE 3 PLANS : diviser en groupes contigus, un agent par groupe, chacun écrit UNIQUEMENT shots/<G>.js (IIFE, helpers préfixés <G>_), ne modifie jamais core.js (il vous demande). Chaque agent reçoit BRIEF.md (TÂCHE, ACCEPTATION, règles d'échange, règles de fichiers), ses sections SPEC, ses pistes measure/, l'API core. Boucle par plan : piloter chaque élément mobile depuis sa piste measure/ → comparer première/dernière frame, chaque keyframe, 2 frames dans chaque transition → xcorr du plan → itérer jusqu'à décalage 0 ±1 et corrélation ≥ 0,80. ≤ 15 frames par appel de rendu. Tableau de rapport : plan | frames | décalage | corrélation | gelé | saccadé | erreur de bord max px | notes. PORTE 4 AUDIO (agent séparé, en parallèle des données de Phase 0) : Musique : mesurer la courbe d'énergie de REF ; auditionner ≥ 6 pistes commercialement acceptables (Mixkit/Pixabay ; enregistrer URL + licence) pour l'HUMEUR (tonalité, luminosité, genre) d'abord, la correspondance d'énergie ensuite. Étirement temporel ≤ 4% pour atteindre le BPM de REF. Éditer pour que le drop atterrisse sur la frame de drop de REF avec son quasi-silence avant, et que la phrase finale se termine sur la marque de fin. Chaque édition/boucle : fondu enchaîné à puissance égale de 15 ms sur la même phase de battement ; vérifier l'absence de clic. SFX : bibliothèque enregistrée ou génération sonore ElevenLabs, jamais numpy. Un par événement REF, placé par son propre pic/transitoire. Whooshes sur les balayages, pops de verre sur les tuiles, frappes de touches par mot tapé, sons d'envoi/réception, riser dans le drop, sous-boum sur le drop et la marque de fin. Espace : creuser la musique dans la bande de fréquence de chaque petit signal (sidechain/EQ dynamique), ne pas juste monter les signaux. Baisser la musique sous la voix en douceur (-6 à -12 dB, relâchement lent). VO : ElevenLabs (plan payant pour usage commercial). Choisir les voix par correspondance de hauteur/timbre avec les lignes REF. Une prise naturelle continue par ligne ; commencer sur la frame de son premier mot ; ne jamais couper, ne jamais étirer en dehors de 0,95–1,05, jamais "..." dans une ligne. Si ça ne rentre pas : reformuler ou re-timer l'image (règle Phase 0). Traitement léger uniquement (compression 2:1, dé-esseur doux, présence +1,5 dB). Masteriser selon les chiffres d'ACCEPTATION ; exporter mix.wav, music_only.wav, stems/, LICENCES.md, cues.json (signal | frame d'image | temps placé | temps de pic). PHASE 3 - INTÉGRATION + VÉRIFICATION Unifier les composants partagés entre groupes (un curseur, une recette de verre, un logo). Rendu complet en 2–3 morceaux parallèles, https://t.co/8BkrahuZiR, puis mux du mix FINAL seulement après qu'il soit écrit (l'encodeur lit le wav une fois au début ; re-mux si le mix a changé). Exécuter https://t.co/6oEK6pCkxx, https://t.co/mMZ99TvBh3, https://t.co/ekkkOF28Sg. Construire une planche de contact 1 fps REF|nôtre et des planches à chaque jointure de groupe (2 dernières / 2 premières frames). REGARDER. Corriger la dérive. Re-rendre uniquement les plages de frames modifiées et épisser. UN critique final frais : film complet le nôtre seul (reconnaissable ? cheap ? gelé ? dur ?) + côte à côte (hors sync ?) + rapport audio. Un passage de correction. Si deux critiques se contredisent, arrêter d'itérer et montrer à l'utilisateur avec les deux opinions. Après livraison : changement d'image → re-rendre uniquement la plage modifiée et épisser ; changement audio → https://t.co/nHE46DMJRg, pas de re-rendu. PIÈGES (chacun d'eux est arrivé) Des critiques à qui on demandait seulement "synchronisé + différent" ont fait passer un travail moche pendant 12 rounds. Toujours demander "aussi beau que REF à cette frame, pleine résolution". Objets 3D modélisés en code = CGI plastique. Bleu-sur-bleu + scanlines + HUD REC factice + bokeh hexagonal = bouillie. Mouvement chronométré à la main ressemble à de la bouillie IA même quand les stills correspondent. Mesurer chaque élément. Les aperçus 960 px cachent les problèmes de qualité. Juger en 1920. Garder le timing REF après le changement de script → voix précipitée, texte en retard sur la voix, une ligne flashée en 1 s. Déplacer la voix sans déplacer l'image → la voix parle sur le plan précédent. Diviser la voix par mot pour courir après le texte → phrases cassées. "..." dans le texte TTS → un trou au milieu de la ligne. Jonction musicale dure → clic. La réduction qui protège la voix enterre les petits signaux. Muxer pendant que le mix est encore écrit → audio périmé dans la vidéo. measureText avant le chargement des polices → mots en collision. Accrochage de pixels → saccades. Particules aléatoires ne correspondront pas à l'empilement ; piloter les visibles depuis les pistes. Ne jamais prétendre qu'un plan correspond sans visualiser REF|nôtre pour lui et imprimer ses chiffres. LIVRER : remake.mp4 (1920x1080 60 fps, avec audio), side-by-side.mp4 (REF à gauche, le nôtre à droite, verrouillé sur les images), SPEC.md, SWAPS.md, measure/, LEDGER.md, source + scripts, audio/ (mix, music_only, stems, cues.json, LICENCES.md), et un rapport : tableau ACCEPTATION avec chaque chiffre (décalage/corrélation/erreur de bord par plan, séries gelées, pas saccadés, décalages de voix, décalages de signaux, volume, pic vrai, % de limiteur), plus chaque différence restante vs REF avec numéros de frame.

Connectez-vous pour voir le prompt complet

Continuer avec:

En vous connectant, vous acceptez nos Conditions et Confidentialité

Utilisation

Ce prompt est conçu pour être utilisé avec creative. Copiez le contenu ci-dessus et collez-le dans votre outil d’IA préféré.

Pour de meilleurs résultats, personnalisez les espaces réservés (indiqués par des crochets ou des majuscules) selon vos besoins.

Références

Catégories :creative| twitter| video-remake| frame-locked

Discussion