Communitygithub.com

Présentation avec voix off

Utilisez lorsque vous écrivez ou générez une voix off / narration pour toute vidéo, démo ou présentation : règles de script à la présentateur, balises de pause, voix Kokoro hors ligne, polissage et mixage adapté à la vidéo.

Qu'est-ce que Présentation avec voix off ?

Cette compétence guide les créateurs de vidéos et les présentateurs dans la rédaction, la production et le mixage de voix off professionnelles, avec un accent particulier sur le style 'présentateur'. Elle repose sur des principes d'écriture spécifiques, comme éviter la répétition du texte à l'écran, structurer une idée par ligne, utiliser une accroche narrative (héros), appliquer la règle de trois et gérer le rythme (débit de parole, pauses). Le pipeline technique utilise le moteur vocal Kokoro hors ligne (via kokoro-onnx, avec plus de 50 voix) et un ensemble de scripts Python (speak.py, polish_vo.py, mix_narration.py) pour générer, polir (égalisation, compression) et mixer la narration avec la vidéo et la musique. La compétence prend en charge les narrations à une seule voix et les dialogues à plusieurs voix, le tout avec une sortie finale au format MP4 et sous-titres SRT, tout en garantissant un calage précis grâce à un rapport de dérive.

Compatible avec~Claude Code~Codex CLI~Cursor
npx skills add https://github.com/Sanjayyykumar/ai-essentials/tree/HEAD/skills/presenter-voiceover

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 Présentation avec voix off ?

Outils : $VIDEO_ROOT/voice/ de video-generations (speak.py, speak_cast.py, polish_vo.py, mix_narration.py, el_cache.py) ; modèles dans $VIDEO_ROOT/models (python studio/get_models.py).

1. Écrire comme un présentateur (le script compte plus que la voix)

  • Ne lisez jamais l'écran. Le texte à l'écran énonce le fait ; la voix ajoute du sens, de l'émotion ou l'histoire derrière ce fait. Si une ligne répète mot pour mot ce qui est à l'écran, réécrivez-la ou supprimez-la. Exceptions : les noms de produits et le slogan final.

  • Une idée par ligne. Phrases courtes, 6 à 12 mots. Anglais parlé, contractions autorisées.

  • Fil conducteur (héros). Suivez une personne (par exemple Aroon, Anita, Dr Rao) et faites-y référence ; les gens se souviennent des histoires, pas des fonctionnalités.

  • Accent final. Placez le mot clé en dernier dans sa phrase (« …chaque équipe n'en a qu'un. ») ; la voix s'y pose naturellement. Chargez le contexte en début de phrase : « À … deux heures quatorze, tôt le matin, // Aroon // s'effondre. »

  • Règle de trois pour les avantages et les listes, avec des temps égaux.

  • Contraste et retournement : problème → « Imaginez maintenant… » → solution.

  • Débuts : commencez chaque section par une ancre (« D'abord, pour les familles. », « Maintenant, entrez dans l'hôpital. »).

  • Fins : les déclarations se terminent par un point pour un ton descendant et terminé. Terminez par la promesse ou le slogan, une invitation claire, puis « Merci. »

  • Rythme (style maison) : un débit lent et des pauses trop nombreuses donne un son robotique (« trop de pauses, trop peu de mots »). Par défaut, adoptez un rythme de présentateur fluide :

    • vitesse 1.00 pour la plupart des lignes, 1.02 pour les longues listes/explications, 0.95–0.97 pour les slogans et fins, 0.93 uniquement pour l'accroche émotionnelle unique.
    • Au maximum un temps d'arrêt ... par ligne, et seulement au moment du retournement émotionnel (« À deux heures quatorze, tôt le matin ... Aroon s'effondre », « Et si ... il suffisait d'un seul clic ? »). Utilisez / avec parcimonie ; préférez les virgules simples.
    • Débit mesuré pour ce style : environ 2,6–2,8 mots parlés par seconde (af_kore). Budget = mots / 2,7 + 0,35 s de queue de polissage ; une ligne doit tenir avant le prochain temps visuel.
    • Laissez un silence délibéré (1–1,5 s, sans ligne) après la construction du problème et après le moment de récompense émotionnelle de la solution (« Plus calme que cette première nuit. »).
    • Densité : environ 230–250 mots narrés pour un film de 2,5 minutes ; chaque scène reçoit au moins une ligne, donc aucune scène ne reste silencieuse plus de ~3 s, sauf les silences planifiés.
  • Honnêteté : pas de résultats inventés ; les noms et chiffres fictifs sont des données de démo.

  • Chemin rapide (pour gagner du temps) : écrivez toutes les lignes → estimez les durées avec le budget ci-dessus → corrigez les dépassements dans le texte avant de générer → générez une fois. Régénérer sur le portable coûte environ 25–40 s par ligne, donc la majeure partie du temps est consacrée au texte qui est réécrit.

2. Balisage (fichier de narration)

LINES = [(start_s, speed, text), ...], VOICE = '...', plus une docstring avec des notes de livraison. Exemple : voice/examples/narration_demo.py.

  • / = pause de respiration (0,25 s), // = pause dramatique (0,55 s), ... = temps d'arrêt (0,8 s).
  • Ré-épeler dans voice/lexicon.py les noms que le moteur prononce mal (par exemple Arun → « Aroon », Dr → « Doctor ») et testez d'abord une ligne.
  • Dialogue avec plusieurs voix : LINES = [(key, voice, speed, text), ...] pour speak_cast.py (voice/examples/dialogue_demo.py).

3. Voix

  • Moteur : Kokoro via kokoro-onnx, hors ligne, 50+ voix. Bons choix pour un présentateur : af_kore / af_heart (femme calme et confiante), hm_omega / hm_psi (homme indien), am_onyx (homme grave), bm_george (homme britannique), hf_alpha / hf_beta (femme indienne). Les mélanges fonctionnent : hm_omega:0.6,am_onyx:0.4.
  • Pour un nouveau choix de voix, lisez 3 lignes représentatives (accroche, solution, slogan) par candidat et laissez l'utilisateur choisir avant l'exécution complète.
  • L'accentuation au niveau du mot ne peut pas être forcée ; créez-la avec la formulation, la ponctuation, les pauses et la vitesse. Une emphase exacte nécessite un enregistrement humain.
  • Voix cloud premium : voice/el_cache.py (ElevenLabs ; chaque ligne facturée une fois, puis mise en cache).

4. Générer → polir → mixer

  1. python voice/speak.py <narration>.py work/vo [voice] — reprenable ; chaque phrase est parlée séparément et jointe avec les silences marqués.
  2. python voice/polish_vo.py work/vo work/vo_polished — coupe, égalisation chaleur/clarté, compression douce, réverbération subtile, fondu de fin.
  3. python voice/mix_narration.py <silent.mp4> <music.wav> <narration>.py work/vo_polished <out.mp4> — place les lignes, accélère une ligne longue d'au plus 1,08×, décale les lignes ultérieures uniquement si nécessaire, réduit la musique, −16 LUFS, écrit .srt.
  4. Vérifiez le rapport de dérive. Chaque ligne doit être à moins de ~0,5 s de son visuel. Si la dérive s'accumule, raccourcissez ou supprimez une ligne (préférez les lignes qui répètent l'écran) et déplacez les heures de début vers leurs temps visuels ; re-mixez sans régénérer les lignes non modifiées. Pour refaire certaines lignes, déplacez leurs anciens fichiers et relancez speak.py ; il ne remplit que les fichiers manquants. Maintenez la numérotation des fichiers en synchronisation avec LINES.
  5. Livrez le MP4 et le SRT.

Skills associés