Communitygithub.com

Rebranding de publicités

Remplacez toutes les mentions vocales, textuelles et visuelles d'un ancien nom de produit ou de marque par un nouveau nom dans des vidéos et images publicitaires existantes, en utilisant des voix clonées et une équipe de sous-agents.

Qu'est-ce que Rebranding de publicités ?

Cette compétence permet de rebrander intégralement un lot de publicités vidéo et images après un changement de nom de produit ou de marque. Elle remplace automatiquement chaque mention parlée (via clonage vocal de l'orateur original), chaque sous-titre (en conservant la police d'origine de la vidéo), et chaque élément visuel comme les logos, étiquettes, emballages, écrans, panneaux et cartes de fin. Le reste de chaque publicité (images, timing, musique) reste intact. La compétence s'appuie sur une architecture multi-agents parallélisés pour traiter plusieurs vidéos simultanément. Elle est conçue pour fonctionner sur des postes de développement macOS avec ffmpeg, Whisper, et un environnement Python dédié. Le processus inclut une phase de triage pour identifier toutes les occurrences, une consolidation avec validation humaine pour les droits de clonage vocal et les problèmes non liés à la marque, puis une exécution automatisée avec rendu final et contrôle qualité. Une option permet également de produire des versions retravaillées pour un meilleur engagement (montage dynamique, effets sonores, callouts).

Compatible avec~Claude Code~Codex CLI~Cursor
npx skills add https://github.com/BiggFig/ad-rebrand/tree/main

Demander à votre IA préférée

Ouvre une nouvelle conversation avec cette compétence d'agent déjà préchargée.

Documentation

Que fait Rebranding de publicités ?

Transformez un lot de publicités existantes vers la nouvelle marque : chaque mention parlée est ré-énoncée avec la voix clonée de l'orateur original, chaque sous-titre est ré-écrit dans la police de sous-titrage de la vidéo, chaque logo/étiquette/libellé à l'écran est ré-écrit ou effacé proprement — le reste de chaque publicité reste inchangé (mêmes plans, timing, musique).

Parallélisez avec des sous-agents (outil Agent, run_in_background: true, un message lançant tous les agents indépendants). Modèles de prompts : references/agent-prompts.md. Lisez references/lessons.md avant de commencer — il enregistre ce qui a cassé la dernière fois.

Entrées à déterminer en premier

  • Anciens noms (produit et marque) et le nouveau nom — et comment Whisper pourrait mal entendre les anciens (par exemple « physio rest », « artivate »).
  • Les fichiers (vidéos, images). Travaillez dans un dossier de projet que l'utilisateur peut conserver (par exemple ~/Téléchargements/<Marque> Éditions vidéo) ; ne modifiez jamais les originaux.

Flux de travail

  1. Configuration. scripts/setup_jobs.sh PROJET DÉBUT_N video1 video2 … → job-NN/{assets/source.mp4,analysis,project,renders}. Copiez les images dans PROJET/images/source/. Environnement : ffmpeg/whisper-cli via Homebrew, environnement virtuel Python ~/.cache/video-studio-venv (numpy, opencv-contrib, pillow, soundfile, demucs, torch ; pyworld pour les mots chantés), modèle Whisper ~/.cache/whisper/ggml-small.en.bin. Si manquant, installez (Homebrew nécessite le mot de passe de l'utilisateur dans un onglet de terminal).

  2. Triage (parallèle, un agent par vidéo). Modèle §1. Chaque agent écrit analysis/triage.json|md avec les plages de parole raffinées, les locuteurs + plages de référence de clone propres, chaque occurrence visuelle/sous-titre avec les plages d'images et les anomalies. Vérifiez les images vous-même (zoomez sur les étiquettes/libellés en pleine résolution) — beaucoup ne nécessitent rien.

  3. Consolidation et demande unique (AskUserQuestion) :

    • Droits vocaux : listez chaque voix distincte à cloner (regroupez les vidéos qui partagent une narration — comparez les enveloppes des pistes vocales ; comparez la F0 médiane pour distinguer les locuteurs). Le clonage nécessite un oui explicite de l'utilisateur par voix.
    • Tout ce qui n'est pas l'ancienne marque mais qui ressemble à un problème : autres marques sur le produit, contextes de vente/d'endossement (employés de magasin, logos de magasin), affirmations incohérentes, redondance de script due au changement de nom. Filigranes tiers : signalez, ne les retirez jamais.
    • Mentions chantées : expliquez qu'elles nécessitent un ré-accordage et une écoute humaine.
  4. Lancez immédiatement l'équipe visuelle (modèle §2) — elle ne dépend pas des voix. Regroupez les vidéos qui sont le même montage dans un seul agent. Agent image : modèle §5.

  5. Voix. Exportez les références de clone de la piste vocale de chaque job (25–35 s, sans noms de marque) dans PROJET/voice_refs/. Préférez l'API Fish (examples/voice-splice/fish_tts_api.py, clé dans ~/.config/video-studio/.env) si elle a du crédit API ; sinon créez des clones privés dans l'application web Fish dans le Chrome de l'utilisateur — references/fish-audio-web.md. Générez les lignes de chaque voix en un seul script, les deux prises, sauvegardées dans voice_refs/takes/.

  6. Équipe audio (parallèle, un agent par groupe voix/job). Modèle §3 pour la parole, §4 pour les mots chantés. Sortie : analysis/stems/vocals_nookwave.wav par job, vérifiée par transcription.

  7. Assemblez chaque job dès que son image et sa voix sont prêtes : scripts/mux_final.py JOB NOM_SORTIE.mp4 (image rebrandée + nouvelles voix + piste musicale originale). Si un agent visuel renvoie un résultat incomplet, exécutez vous-même son project/rebrand_job.py.

  8. QC de chaque final vous-même — les rapports des agents sont des affirmations, pas des preuves : scripts/check_final.py source.mp4 final.mp4 --old "physio|fisio|artuvate|artivate" --new "nook" --frames <une image par élément corrigé> → correspondance du nombre d'images, décodage propre, loudness par rapport à la source, zéro ancien nom parlé, et une feuille source|final que vous devez consulter. Transcrivez par échantillonnage des fenêtres de 5 s autour de chaque mention si les totaux semblent anormaux (Whisper fusionne les phrases en entier). Pour les lignes chantées, attendez-vous à ce que Whisper ait du mal même sur l'original.

  9. Livraison. Les fichiers finaux à la racine du projet avec des noms descriptifs, un zip si demandé (zip -0, les vidéos sont déjà compressées), et un résumé : ce qui a changé par fichier, ce qui nécessite une écoute humaine (mots chantés, longueurs de pause après un nom plus court), les images imparfaites connues, et les problèmes non liés à la marque signalés.

Optionnel : montages optimisés pour l'engagement

Pour les demandes « rendez-le plus engageant » en plus du rebranding, examples/engagement-edit/ contient le constructeur de plan (listes de conservation par phrase alignées sur les points silencieux, callouts, punch-ins) et le rendu (alternance de zoom sur les jump cuts, callouts de marque, barre de progression, effets sonores synthétisés, correction de maintien de sous-titres aux coupes, loudnorm −14 LUFS). Réutilisez plutôt que réécrivez.

Fichiers inclus

  • scripts/setup_jobs.sh, scripts/mux_final.py, scripts/check_final.py — génériques.
  • examples/ — code fonctionnel, spécifique au job du premier run (les chemins et numéros d'images sont codés en dur ; adaptez, n'exécutez pas à l'aveugle) :
    • caption-and-tag-library/ — redessin de sous-titres, étiquettes en cuir rotatives, plaques incurvées, gomme de sac, suivi multi-échelle (rebrand_job01.py) ; sous-titres découpés par glyphe, étiquettes gravées/embossées, ré-impression de sac suivie (caption_lib.py, text_lib.py, track_lib.py, rebrand_job05.py).
    • web-and-sign-library/ — sous-titres avec glyphes personnalisés (captions.py), plaque de panneau, ré-écriture de page web, pressage d'étiquette, sac tournant avec animation manuelle (rbk.py, rebrand_job02.py), page d'écran d'ordinateur (rebrand_job06_laptop.py), défilement de page d'avis, logo de carte de fin, suppression de gaufrage tiers (rebrand_job07.py), feuilles de contrôle qualité (visual_qc.py).
    • voice-splice/ — remplacement de mots avec plage mesurée et prise de force ; client API Fish.
    • sung-word/ — rechantage basé sur WORLD sur la mélodie originale.
    • still-image/ — remplacement de texte par homographie sur les emballages.

Skills associés