Présentation de Eleven v3 Alpha

Essayez v3

Comment j'ai créé un générateur de textes publicitaires avec ElevenLabs, Gemini et VEO 2

Comment j'ai conçu un outil complet alimenté par l'IA qui transforme des ébauches en publicités vidéo finies.

Marketing video gen

J'ai passé deux décennies à créer du contenu — du journalisme aux vidéos de produits. L'IA permet de débloquer de nouveaux workflows créatifs. Avec l'intersection du codage d'ambiance et la génération vidéo de plus en plus réaliste, je me suis demandé si je pouvais créer un outil qui prend une simple suggestion et réalise une publicité de 20 secondes.

Le concept était simple : taper une idée de produit approximative et obtenir un spot publicitaire de 30 secondes entièrement produit avec des visuels générés par IA, une voix off et des effets sonores. Voici comment je l'ai construit en utilisant ElevenLabs TTS et les APIs SFX, Gemini de Google, et VEO 2 de Google pour la génération vidéo. Au moment de la création, VEO 3 n'avait pas encore été publié.

La version finale a été créée presque entièrement avec le remarquable Claude 4 Opus d'Anthropic, bien que sur plusieurs jours car je touchais souvent la limite de taux.unknown node

Sélection de la pile : Node.js, Express, React, et Claude 4 Opus

A commercial for "finding places to eat lunch in a park"

J'ai choisi Node.js avec Express pour le backend et React pour le frontend. Node gère les mises à jour en temps réel lors de la génération des vidéos, tandis que l'architecture basée sur les composants de React facilite la gestion et l'extension de l'interface à plusieurs étapes.

J'ai écrit du code de manière intermittente depuis l'enfance — en commençant par un stylo robot à l'école primaire. Mais j'ai toujours été plus un penseur de produit qu'un ingénieur à plein temps. Des outils comme Claude 4 Opus ont changé cela. Avec les bonnes suggestions, je pouvais avancer rapidement, implémenter correctement les fonctionnalités et me concentrer sur la logique du produit plutôt que sur le code standard.

Il ne s'agit pas de déléguer la créativité à l'IA — il s'agit de construire plus intelligemment avec les bons outils.

Assistant en huit étapes : De la suggestion à la publicité finie

Eight step wizard

Créer une publicité pour un nouveau produit ou service, même si elle ne dure que 20 secondes, implique plusieurs étapes complexes, je l'ai donc décomposée en huit phases distinctes :

  1. Informations sur le produit
  2. Génération de script
  3. Création vidéo
  4. Sound Effects
  5. Assemblage vidéo
  6. Voix off
  7. Vidéo finale
  8. Publications sociales

Chaque étape s'appuie sur la précédente, créant un pipeline qui transforme une simple idée en une publicité complète. À chaque étape, l'humain a le contrôle total pour modifier n'importe quel élément ou régénérer n'importe quel texte, vidéo ou audio.

A commercial for "Epoch" matching

Affiner les idées avec Gemini Flash

Le premier défi était que la plupart des gens ne commencent pas avec des idées de produits entièrement formées. Ils pourraient taper quelque chose de vague comme « quelque chose pour la productivité ». C'est là que Gemini intervient.

J'ai utilisé le modèle Gemini 2.0 Flash de Google pour transformer des idées approximatives en concepts de produits concrets. L'ingénierie des suggestions était cruciale ici – j'avais besoin que Gemini soit spécifique et concret, pas vague et générique. Au lieu d'accepter « quelque chose pour le fitness », le système le transforme en quelque chose comme « FitPulse AI : Un bracelet intelligent qui utilise des biométriques avancées pour créer des micro-entraînements personnalisés tout au long de votre journée. »

1"""Enhance a product idea using Gemini"""
2
3 prompt = f"""
4 Enhance this product idea to make it more compelling:
5
6 Original idea: {idea}
7 Target mood: {mood}
8 Target audience: {audience}
9
10 Make it:
11 1. Clear and specific about the value proposition
12 2. Appeal to {audience}
13 3. Match the {mood.lower()} tone
14 4. Be memorable and marketable
15
16 Keep it to 2-3 sentences.
17 """

Générer des scripts non génériques avec Gemini

Ensuite est venue la génération de script. Encore une fois en utilisant Gemini, j'ai structuré la sortie en quatre scènes de 5 secondes, chacune avec trois composants :

  • Le script de la voix off
  • Une suggestion de génération vidéo
  • Une description des effets sonores

L'essentiel était de faire comprendre à Gemini l'ambiance et le public. Une publicité « décalée » pour les milléniaux nécessite un langage différent d'une publicité « professionnelle » pour les clients d'entreprise.

J'ai passé beaucoup de temps à affiner les suggestions pour éviter le langage générique de l'IA et créer des scripts adaptés à chaque produit.

1 """Generate a 4-scene commercial script"""
2
3 prompt = f"""
4 Create a 30-second commercial script with exactly 4 scenes.
5
6 Product: {product_name}
7 Audience: {target_audience}
8 Key Message: {key_message}
9 Mood: {mood}
10
11 Return a JSON array with 4 scenes, each with:
12 - number: 1-4
13 - duration: 5
14 - script: What the voiceover says
15 - videoPrompt: Visual description for video generation
16 - sfxPrompt: Sound effects description
17
18 Example format:
19 [{{"number": 1, "duration": 5, "script": "...", "videoPrompt": "...", "sfxPrompt": "..."}}]
20 """
21

Créer des scènes de 5 secondes avec VEO 2

J'ai utilisé l'API hébergée de FAL.ai pour le modèle VEO 2 de Google. La suggestion vidéo de chaque scène est envoyée à FAL.ai, qui renvoie un clip vidéo de 5 secondes. C'était l'une des intégrations les plus délicates – gérer les longs temps de génération, les limites de l'API et fournir des retours aux utilisateurs pendant qu'ils attendent.

J'avais initialement prévu d'utiliser Google AI Studio ou Vertex AI pour l'API Veo 2, car cela aurait signifié que j'utilisais la même clé API que Gemini, mais je n'ai pas pu faire fonctionner Veo 2 sur mon compte.

J'ai mis en place un système de gestion d'état qui enregistre les vidéos générées localement, afin que les utilisateurs n'aient pas à régénérer du contenu coûteux s'ils naviguent ailleurs et reviennent. Lorsque vous atteignez les limites de taux sur Claude, la dernière chose que vous voulez est de perdre vos vidéos générées parce que vous avez actualisé la page.

Le contenu vidéo pour un clip de 20 secondes, en supposant qu'il n'y ait pas de recoupes ou de régénérations, coûtait environ 10 $.

Utiliser ElevenLabs pour les effets sonores et la voix off

C'est là que je me suis montré créatif avec les APIs d'ElevenLabs. Bien qu'ElevenLabs soit principalement connu pour la génération de voix, nous avons également une API d'effets sonores très impressionnante. Voyez l'incroyable Soundboard pour des exemples d'utilisations potentielles.

Je l'ai utilisé pour générer quatre variations d'effets sonores pour chaque scène – dynamique, énergique, calme et dramatique. Les utilisateurs peuvent prévisualiser chaque option et choisir ce qui correspond à leur vision.

1const response = await elevenLabs.soundGeneration({
2 text: modifiedPrompt,
3 duration_seconds: duration,
4 prompt_influence: 0.3
5});
6

Assembler les vidéos finales avec FFmpeg

Avec quatre clips vidéo et quatre pistes d'effets sonores, je devais les combiner. Cela signifiait plonger profondément dans FFmpeg, le couteau suisse du traitement vidéo. Le backend exécute des commandes FFmpeg pour :

  1. Mélanger les effets sonores avec chaque clip vidéo
  2. Concaténer tous les clips en une seule vidéo
  3. Ajouter la piste de voix off à la vidéo finale

Obtenir les commandes FFmpeg correctes a nécessité un débogage important. Le mixage audio, en particulier, nécessite une attention particulière aux niveaux et au timing. J'ai appris que l'audio de fond doit être réduit à environ 30 % du volume lorsqu'il est mélangé avec la voix off – plus haut, il concurrence l'attention, plus bas, il pourrait aussi bien ne pas être là.

Voix off : Là où ElevenLabs excelle vraiment

Pour la voix off, j'ai intégré l'API de text-to-speech d'ElevenLabs pour offrir aux utilisateurs une sélection de voix. Le système génère un script de voix off cohérent à partir de tous les scripts de scène, puis l'envoie à ElevenLabs avec des paramètres de voix optimisés :

1const voiceSettings = {
2 stability: 0.75,
3 similarity_boost: 0.75,
4 style: 0.0,
5 use_speaker_boost: true
6};
7

Ces paramètres fournissent une narration claire et professionnelle qui fonctionne bien pour les publicités. Après avoir expérimenté différentes configurations, j'ai trouvé que cet équilibre offre de la cohérence sans sonner robotique.

Gestion des erreurs résiliente et expérience utilisateur

Construire avec plusieurs APIs IA signifie gérer divers modes d'échec. Limites de taux, erreurs de timeout, réponses malformées – tout cela arrive. Surtout quand vous déboguez à 2 heures du matin et que VEO 2 décide de renvoyer quelque chose d'inattendu.

J'ai mis en place une gestion complète des erreurs avec des options de secours :

  • Si Gemini échoue, le système fournit des scripts de secours intelligents
  • Si la génération vidéo échoue, des vidéos de remplacement sont disponibles
  • Si la génération sonore échoue, des pistes audio de base sont utilisées

L'objectif était de s'assurer que les utilisateurs pouvaient toujours terminer leur publicité, même si certains services IA avaient une mauvaise journée.

Considérations de performance

A commercial for "Globetrotter Grocer"

Générer une publicité implique plusieurs appels d'API IA qui peuvent prendre plusieurs minutes. Pour améliorer l'expérience, j'ai :

  • Traité les vidéos en parallèle lorsque c'est possible
  • Affiché des indicateurs de progression en temps réel
  • Enregistré localement le contenu généré coûteux
  • Permis aux utilisateurs de régénérer des composants individuels

J'ai également mis en place un système de persistance d'état. Si quelqu'un ferme son navigateur en cours de génération, il peut revenir et reprendre là où il s'était arrêté. Cela n'était pas dans mon plan initial, mais après avoir perdu moi-même plusieurs fois mes progrès lors des tests, c'est devenu une priorité.

Principaux enseignements et prochaines étapes

La construction de cet outil a révélé trois leçons clés.

Premièrement, la conception des suggestions est cruciale. La qualité de la sortie de tout modèle IA dépend fortement de la façon dont vous encadrez l'entrée. J'ai passé autant de temps à affiner les suggestions qu'à écrire du code.

Deuxièmement, l'expérience utilisateur prime sur la complexité technique. Les utilisateurs ne se soucient pas du nombre de services IA impliqués — ils veulent que l'outil fonctionne. Les indicateurs de progression, la gestion des erreurs et les boucles de rétroaction rapides font toute la différence.

Troisièmement, les assistants IA comme Claude accélèrent le développement. Je me suis concentré sur la logique du produit tout en déléguant le code standard et la syntaxe au modèle. Il ne s'agit pas de sauter des étapes — il s'agit de construire plus intelligemment.

Ce qui a commencé comme un projet de week-end s'est transformé en un véritable outil extensible. Les équipes marketing pourraient l'utiliser pour le prototypage, les start-ups pour les vidéos de présentation, et les créateurs pour le contenu sponsorisé.

Le système est flexible par conception. Vous pouvez changer les styles vidéo en ajustant les suggestions VEO 2, modifier la durée des scènes pour différents formats, ou ajouter de la musique via FFmpeg.

La véritable opportunité réside dans l'orchestration de plusieurs systèmes IA. Aucun modèle unique ne peut générer une publicité complète — mais combinés, Gemini, VEO 2 et ElevenLabs peuvent produire quelque chose de bien plus puissant qu'aucun d'eux seul.

Il ne s'agit pas de remplacer les créateurs par l'IA. Il s'agit de leur donner de meilleurs outils. Après 20 ans dans le contenu, j'ai vu beaucoup de changements — mais ce changement semble fondamental.

Si vous souhaitez explorer comment la technologie ElevenLabs peut aider à proposer de nouvelles approches pour le contenu et les médias contactez notre équipe commerciale.

En voir plus

ElevenLabs

Créez avec l'audio AI de la plus haute qualité.

Se lancer gratuitement

Vous avez déjà un compte ? Se connecter