Que fait Producteur Vidéo ?
Créez des vidéos complètes avec voix off, musique et visuels.
Ceci est une compétence d'orchestrateur qui combine :
- Génération de script / storyboard (Claude)
- Synthèse vocale (Gemini TTS)
- Musique de fond (Lyria)
- Génération de clips vidéo (Veo 3.1) ou animation d'images
- Assemblage final (FFmpeg via
media-utils)
Flux de travail
Étape 1 : Recueillir les exigences (OBLIGATOIRE)
⚠️ NE sautez PAS cette étape. N'exécutez PAS init_project.py tant que vous n'avez pas TOUTES les réponses.
Utilisez un questionnement interactif — posez UNE question à la fois, attendez la réponse, puis passez à la suivante. Cela crée un processus collaboratif basé sur les spécifications.
Déroulement des questions
⚠️ Utilisez l'outil AskUserQuestion pour chaque question ci-dessous. N'imprimez pas simplement les questions dans votre réponse — utilisez l'outil pour créer des invites interactives avec les options affichées.
Q1 : Sujet
« Je vais créer cette vidéo ! D'abord — de quoi s'agit-il ?
(par exemple, lancement de produit, histoire de marque, tutoriel, explicatif — ou décrivez le vôtre) »
Attendez la réponse.
Q2 : Durée
« Quelle devrait être la durée de la vidéo ?
- 15 secondes (accroche rapide)
- 30 secondes (publicité standard)
- 60 secondes (explicatif)
- 2 minutes ou plus (détaillé)
- Ou spécifiez votre propre durée »
Attendez la réponse.
Q3 : Style
« Quel style visuel ?
- Premium / luxe
- Amusant / ludique
- Corporate / professionnel
- Dramatique / cinématographique
- Minimaliste / épuré
- Ou décrivez votre propre style »
Attendez la réponse.
Q4 : Assets
« Avez-vous des images ou des clips vidéo existants à utiliser ?
- Non, tout générer
- Oui, j'ai des images (fournissez les chemins)
- Oui, j'ai des clips vidéo (fournissez les chemins) »
Attendez la réponse.
Q5 : Stratégie audio
« Comment devrions-nous gérer l'audio ?
- Personnalisé — Je génère la voix off + la musique de fond
- Veo natif — Utiliser le dialogue/SFX/ambiance intégrés de Veo
- Silencieux — Pas d'audio, ajout ultérieur »
Attendez la réponse.
Q6 : Voix (si audio personnalisé)
« Quelle tonalité pour la voix off ?
- Professionnelle
- Amicale / chaleureuse
- Énergique
- Calme / apaisante
- Dramatique
- Ou décrivez votre propre tonalité »
Attendez la réponse.
Q7 : Musique (si audio personnalisé)
« Quelle ambiance musicale ?
- Moderne électronique
- Cinématographique / épique
- Pop entraînante
- Ambiance / chill
- Corporate
- Ou décrivez votre propre style »
Attendez la réponse.
Q8 : Format
« Quel ratio d'aspect ?
- 16:9 (YouTube, web)
- 9:16 (TikTok, Reels, Shorts)
- 1:1 (fil Instagram) »
Attendez la réponse.
Q9 : Résolution
« Quelle résolution ?
- 720p (génération plus rapide)
- 1080p (HD standard) »
Attendez la réponse.
Q10 : Modèle
« Quel modèle Veo ?
veo-3.1— Le plus récent, la meilleure qualité (par défaut)veo-3.1-fast— Génération plus rapide, qualité légèrement inférieureveo-3— Génération précédenteveo-3-fast— Gen précédente, plus rapide »
Attendez la réponse.
Référence rapide
| Question | Détermine |
|---|---|
| Sujet | Contenu des scènes et prompts |
| Durée | Nombre de scènes (les clips Veo doivent durer 4, 6 ou 8 secondes) |
| Style | Prompts visuels et sélection musicale |
| Assets | Générer vs utiliser des fichiers existants |
| Audio | custom, veo_audio, ou silent |
| Voix | Sélection de la voix TTS |
| Musique | Prompt Lyria |
| Format | Ratio d'aspect pour Veo |
| Résolution | Qualité de sortie 720p ou 1080p |
| Modèle | veo-3.1, veo-3.1-fast, veo-3, veo-3-fast |
Étape 2 : Initialiser le projet
Une fois que vous avez les réponses de l'utilisateur, initialisez le projet avec ses préférences :
python3 ${CLAUDE_PLUGIN_ROOT}/skills/video-producer-agent/scripts/init_project.py \
--name "Vidéo de lancement de produit" \
--duration 30 \
--aspect-ratio 16:9 \
--audio-strategy custom \
--scenes 5
Étape 3 : Configurer project.json
Modifiez project.json avec les prompts de scène, le texte de la voix off et le style musical en fonction des réponses de l'utilisateur.
Étape 4 : Assembler la vidéo
python3 ${CLAUDE_PLUGIN_ROOT}/skills/video-producer-agent/scripts/assemble.py \
--project ~/my_video_project/
Structure du projet
Lorsque vous initialisez un projet, cette structure de dossiers est créée :
my_project/
├── project.json # Configuration : scènes, voix off, musique, paramètres
├── storyboard.md # Document de planification pour la vidéo
├── scenes/ # Clips vidéo générés par Veo
│ ├── scene1_intro.mp4
│ ├── scene2_features.mp4
│ └── scene3_cta.mp4
├── audio/ # Fichiers audio
│ ├── voiceover.wav # Voix off générée
│ ├── background_music.wav # Musique générée
│ └── final_mix.mp3 # Piste audio mixée
├── work/ # Fichiers intermédiaires (générés automatiquement)
│ ├── silent_scene1.mp4
│ ├── video_concatenated.mp4
│ └── ...
└── output/ # Livrables finaux
└── product_launch_video_final.mp4
Scripts
init_project.py
Initialise un nouveau projet vidéo avec la structure de dossiers et les modèles.
# Projet de base
python3 init_project.py --name "Ma vidéo" --duration 30
# Créer dans un répertoire spécifique
python3 init_project.py --name "Vidéo démo" --output ~/Videos/
# Vidéo verticale pour les réseaux sociaux
python3 init_project.py --name "Reel Instagram" --aspect-ratio 9:16 --duration 15
# Utiliser l'audio natif de Veo (pas de voix off/musique personnalisée)
python3 init_project.py --name "Scène cinématographique" --audio-strategy veo_audio
# Plus de scènes
python3 init_project.py --name "Longue vidéo" --duration 60 --scenes 5
Options :
| Option | Défaut | Description |
|---|---|---|
--name | requis | Nom du projet |
--output | répertoire courant | Répertoire parent |
--duration | 30 | Durée cible en secondes |
--aspect-ratio | 16:9 | 16:9, 9:16, 1:1, 4:3 |
--audio-strategy | custom | custom, veo_audio, silent |
--scenes | 3 | Nombre de placeholders de scènes |
assemble.py
Orchestre le pipeline complet d'assemblage vidéo.
# Pipeline complet (tout générer + assembler)
python3 assemble.py --project ~/my_project/
# Ignorer la génération (utiliser les fichiers scène/audio existants)
python3 assemble.py --project ~/my_project/ --skip-generation
# Simulation (montre ce qui serait fait)
python3 assemble.py --project ~/my_project/ --dry-run
Étapes du pipeline :
- Générer les scènes vidéo (Veo 3.1)
- Supprimer l'audio des scènes (si audio personnalisé)
- Générer la voix off (Gemini TTS)
- Générer la musique de fond (Lyria)
- Mixer la voix off + la musique
- Concaténer les clips vidéo
- Fusionner l'audio avec la vidéo
- Générer la vidéo finale
Configuration project.json
{
"name": "Vidéo de lancement de produit",
"duration_target": 30,
"aspect_ratio": "16:9",
"resolution": "720p",
"audio_strategy": "custom",
"scenes": [
{
"id": 1,
"name": "scene1_hero",
"prompt": "Zoom lent cinématographique sur un produit premium, éclairage dramatique, style commercial haut de gamme",
"duration": 6,
"notes": "Musique uniquement, pas de voix off"
},
{
"id": 2,
"name": "scene2_features",
"prompt": "Démonstration des fonctionnalités du produit, animations élégantes, esthétique technologique moderne",
"duration": 8,
"notes": "La voix off commence ici"
},
{
"id": 3,
"name": "scene3_cta",
"prompt": "Produit avec logo sur fond propre, moment d'appel à l'action",
"duration": 6,
"notes": "La musique monte, la voix off se termine"
}
],
"voiceover": {
"enabled": true,
"text": "Découvrez le futur de l'audio. Un son cristallin. Un confort toute la journée. Vivez la différence.",
"voice": "Charon",
"style": "Professionnel, confiant, voix de marque premium"
},
"music": {
"enabled": true,
"prompt": "moderne électronique, premium, élégant, présentation produit, basse subtile",
"duration": 35,
"bpm": 100,
"brightness": 0.6
},
"assembly": {
"transition": "fade",
"transition_duration": 0.5,
"music_volume": 0.3,
"fade_in": 1.0,
"fade_out": 2.0
}
}
Stratégies audio
| Stratégie | Description | Quand l'utiliser |
|---|---|---|
custom | Supprimer l'audio Veo, ajouter une voix off + musique personnalisées | La plupart des vidéos |
veo_audio | Conserver l'audio généré par Veo (dialogue, SFX) | Scènes cinématographiques, dialogues |
silent | Supprimer l'audio, produire une vidéo silencieuse | Ajout de l'audio plus tard |
Flux de travail : Créer une vidéo
Étape 1 : Initialiser le projet
python3 init_project.py --name "Promotion écouteurs sans fil" --duration 30
Étape 2 : Planifier le storyboard
Modifiez storyboard.md pour planifier la structure de votre vidéo :
## Scène 1 : Révélation du héros (0-5s)
- Visuel : Écouteurs émergeant de l'ombre, éclairage premium
- Audio : Musique uniquement (intro dramatique)
## Scène 2 : Qualité sonore (5-12s)
- Visuel : Ondes sonores, personne appréciant la musique
- Audio : Voix off : « Son cristallin. Basses immersives. »
## Scène 3 : Confort (12-20s)
- Visuel : Gros plan sur l'ajustement, personne courant
- Audio : Voix off : « Confort toute la journée. Maintien sécurisé. »
## Scène 4 : CTA (20-30s)
- Visuel : Produit + logo
- Audio : Voix off : « Vivez la différence. » + musique qui monte
Étape 3 : Configurer project.json
Remplissez les prompts de scène, le texte de la voix off et le style musical en fonction de votre storyboard.
Étape 4 : Assembler
python3 assemble.py --project ~/wireless_earbuds_promo/
Étape 5 : Réviser et itérer
Vérifiez la sortie dans le dossier output/. Si des ajustements sont nécessaires :
# Réexécuter avec les scènes existantes (juste remixer l'audio)
python3 assemble.py --project ~/wireless_earbuds_promo/ --skip-generation
Ce que vous pouvez créer
| Type | Exemple |
|---|---|
| Vidéo produit | Vidéo héros de 30s présentant un produit |
| Vidéo explicative | Explication d'une fonctionnalité ou comment faire |
| Vidéo promotionnelle / pub | Publicité marketing |
| Vidéo de démonstration | Démonstration d'un produit |
| Vidéo de formation | Contenu de formation interne |
| Témoignage | Vidéo de type citation client |
| Vidéo de marque | Histoire de l'entreprise/de la marque |
Prérequis
GOOGLE_API_KEY— Pour Veo (vidéo), Gemini TTS (voix), Lyria (musique)- FFmpeg installé :
brew install ffmpeg
Styles vidéo et associations musicales
| Style | Prompt musical | Voix |
|---|---|---|
| Premium / Luxe | « elegant, minimal, ambient, sophisticated » | Charon (informative) |
| Tech / Moderne | « electronic, futuristic, clean, innovative » | Kore (ferme) |
| Amusant / Ludique | « upbeat, cheerful, acoustic, positive » | Puck (optimiste) |
| Corporate | « professional, inspiring, orchestral lite » | Orus (ferme) |
| Lifestyle | « chill, aspirational, indie, warm » | Aoede (léger) |
| Dramatique / Cinématographique | « epic, orchestral, emotional, building » | Gacrux (mature) |
Structures vidéo courantes
Vidéo produit (30s)
0-5s : Plan hero (musique uniquement)
5-15s : Fonctionnalités (voix off + musique)
15-25s: Style de vie / cas d'usage (voix off + musique)
25-30s: Logo + CTA (fondu musical)
Vidéo explicative (60s)
0-5s : Accroche / énoncé du problème
5-20s : Introduction de la solution
20-45s: Comment ça marche (3 étapes)
45-55s: Résumé des avantages
55-60s: CTA
Vidéo témoignage (45s)
0-5s : Introduction / carton de nom
5-35s : Citation du témoignage (plusieurs scènes)
35-45s: Plan produit + logo
Flux de travail manuel (sans scripts)
Si vous préférez exécuter chaque étape manuellement :
Générer les scènes :
python3 ${CLAUDE_PLUGIN_ROOT}/skills/video-generation/scripts/veo.py \
--batch scenes.json
Générer la voix off :
python3 ${CLAUDE_PLUGIN_ROOT}/skills/voice-generation/scripts/gemini_tts.py \
--text "Votre texte de voix off..." \
--voice Charon \
--style "Professionnel, chaleureux"
Générer la musique :
python3 ${CLAUDE_PLUGIN_ROOT}/skills/music-generation/scripts/lyria.py \
--prompt "moderne électronique, premium" \
--duration 35
Supprimer l'audio des clips :
python3 ${CLAUDE_PLUGIN_ROOT}/skills/media-utils/scripts/video_strip_audio.py \
-i scene*.mp4
Concaténer les vidéos :
python3 ${CLAUDE_PLUGIN_ROOT}/skills/media-utils/scripts/video_concat.py \
-i silent_*.mp4 --transition fade -o video.mp4
Mixer l'audio :
python3 ${CLAUDE_PLUGIN_ROOT}/skills/media-utils/scripts/audio_mix.py \
--voice voiceover.wav --music music.wav -o audio.mp3
Fusionner l'audio + la vidéo :
python3 ${CLAUDE_PLUGIN_ROOT}/skills/media-utils/scripts/video_audio_merge.py \
--video video.mp4 --audio audio.mp3 -o final.mp4
Fichiers d'entrée que vous pouvez fournir
| Type de fichier | Comment il est utilisé |
|---|---|
| Images produit | Animer avec Veo comme première image |
| Logo (PNG) | Superposer sur la scène finale |
| Voix off existante | Placer dans audio/voiceover.wav |
| Musique de marque | Placer dans audio/background_music.wav |
| Clips vidéo | Placer dans le dossier scenes/ |
| Script / texte | Utiliser pour le texte de la voix off |
Limitations
- Durée vidéo Veo : Maximum 8 secondes par clip (concaténer pour plus long)
- Veo 3.1 inclut l'audio : Tous les clips ont un audio généré (supprimer si utilisation personnalisée)
- Temps de traitement : La génération vidéo prend 1 à 3 minutes par clip
- Résolution : Actuellement 720p ou 1080p (1080p pour 8s uniquement)
Gestion des erreurs
| Erreur | Solution |
|---|---|
| « GOOGLE_API_KEY not set » | Configurer la clé API selon le README |
| « FFmpeg not found » | Installer : brew install ffmpeg |
| « project.json not found » | Exécutez d'abord init_project.py |
| Timeout de génération vidéo | Réessayer, ou utiliser une durée plus courte |
| Problèmes de synchronisation audio/vidéo | Ajuster les durées des scènes |
Exemples de prompts
Simple :
« Crée une vidéo produit de 30 secondes pour ma nouvelle cafetière »
Détaillé :
« Crée une vidéo produit de 45 secondes pour nos nouveaux écouteurs sans fil. Ambiance premium, luxe. J'ai des photos produit jointes. Voix off masculine professionnelle. Musique électronique moderne. 16:9 pour YouTube. »
Avec projet :
« Initialise un projet vidéo appelé 'App Demo' avec 5 scènes, 60 secondes au total, format vertical pour TikTok »