Communitygithub.com

Voiceover → glass reel

Transforme n'importe quel voiceover (et un script optionnel) en un reel documentaire 16:9 dans After Effects en une seule demande : coupe les pauses et les respirations, écrit l'histoire visuelle, trouve chaque image gratuitement et génère le montage final en MP4.

Qu'est-ce que Voiceover → glass reel ?

Ce skill transforme un fichier audio ou vidéo de voiceover (jusqu'à ~3 minutes) et un script optionnel en un reel documentaire 16:9 complet dans After Effects, sans aucun crédit ou génération payante. Il utilise des sources gratuites comme Pixabay MCP, Wikimedia Commons et thesvg MCP pour les images, les clips et les logos, et synthétise des effets sonores avec ffmpeg. Le montage final est un MP4 1080p H.264 avec un style sombre et archivistique : cadres en verre flottants, grille de perspective animée, légendes frappantes, transitions flash et effets de texte variés (machine à écrire, mots géants, fiches photo). Fonctionne sur macOS avec After Effects 2024 ou plus récent, et nécessite les outils en ligne de commande Xcode et quelques dépendances Python. Il suffit d'une phrase comme « fais une vidéo à partir de mon voiceover » ou « montage en verre avec grille » pour lancer le processus complet.

Compatible avec~Claude Code~Codex CLI~Cursor
npx skills add https://github.com/SergeoDev01/voiceover-glass-reel/tree/HEAD

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 Voiceover → glass reel ?

Une demande, une MP4 terminée. L'utilisateur fournit un fichier voiceover (n'importe quel format audio ou vidéo, jusqu'à ~3 min) et optionnellement le texte du script, une note de sujet ou des liens de référence. Vous faites tout le reste et vous arrêtez seulement :

  • une fois pour les téléchargements comme les logos. Il n'y a pas de budget de crédits : tout est sourcé gratuitement (voir references/higgsfield.md - recettes Pixabay / Wikimedia / thesvg testées). Signalez ce qui a été sourcé et d'où, mais l'argent n'entre jamais en conversation à moins que l'utilisateur ne demande explicitement l'annexe payante.

Travaillez dans la langue de l'utilisateur dans le chat. Tout ce qui s'affiche à l'écran est dans la langue du voiceover.

Ce qu'il produit

Transforme n'importe quel voiceover (et un script optionnel) en un reel documentaire 16:9 dans After Effects en une seule demande. Il coupe les pauses et les respirations, écrit l'histoire visuelle, trouve chaque image gratuitement (photos d'archives Wikimedia Commons, clips et portraits Pixabay MCP, logos SVG via le MCP thesvg, mouvements Ken-Burns ffmpeg à partir d'images fixes) et construit le montage nativement dans After Effects. Le look : documentaire archivistique sombre, chaque clip dans un cadre en verre flottant arrondi avec une fine bordure lumineuse et un push-in fluide, une grille de perspective animée avec des mots-clés qui changent de couleur sur le mot, de grandes légendes parlées, des pages machine à écrire / mot géant / fiche photo, des flashs et des flics négatifs sur les coupes, des effets sonores synthétisés. Il rend un MP4 1080p H.264. Utilisez-le chaque fois que quelqu'un fournit un voiceover, un mémo vocal, une narration ou un extrait de podcast et demande un reel, une vidéo, un court métrage, une explication ou un montage : "fais une vidéo à partir de mon voiceover", "transforme cette narration en reel", "montage en verre", "un clip d'un voice-over", "fais un reel avec mon enregistrement vocal", "coupe une vidéo sur ma voix", "cadres en verre et une grille". Cela fonctionne même s'ils n'ont aucune séquence.

Avant de commencer (vérifier une fois par Mac ; dire exactement à l'utilisateur quoi corriger si quelque chose échoue)

  1. macOS 26 ou plus récent (transcription sur l'appareil) avec After Effects 2024 ou plus récent, ouvert. Dans AE, activez Paramètres → Scripting & Expressions → Autoriser les scripts à écrire des fichiers et à accéder au réseau.
  2. Outils en ligne de commande Xcode (swiftc). Exécutez scripts/build_tools.sh. Il compile scripts/bin/{to_wav,transcribe,facebox,frames}. Si un script échoue avec "permission denied" (un skill téléchargé peut perdre le bit exécutable), exécutez chmod +x scripts/*.sh dans le dossier de ce skill une fois.
  3. Sourcing gratuit prêt : les outils MCP pixabay et thesvg (search_pixabay_images, search_pixabay_videos, search_icons, list_variants, get_icon_url, get_icon) plus curl et ffmpeg (déjà utilisés par le moteur). Wikimedia Commons nécessite seulement Internet
    • un User-Agent approprié. Pas de crédits, pas de comptes, pas de soldes à vérifier.
  4. La première exécution de transcribe peut demander l'autorisation de reconnaissance vocale. Elle peut aussi télécharger le modèle sur l'appareil une fois.
  5. Si un autre projet AE est ouvert avec des modifications non enregistrées, build.sh refuse. Demandez à l'utilisateur de l'enregistrer. Ne jetez jamais leur travail. Le journal de build affiche PREVIOUS_PROJECT <chemin> lorsqu'il a fermé un projet enregistré. Après le rendu final, rouvrez-le : écrivez une ligne jsx app.open(new File("<chemin>")); et exécutez-la avec scripts/ae_run.sh.

S = dossier de ce skill. PY = /usr/bin/python3 (ou tout Python 3.9+, bibliothèque standard uniquement).

Pipeline

1. Dossier du projet et voix

  • Créez <proj> = un nouveau dossier à côté du voiceover nommé <nom_voiceover>_reel.
  • Exécutez PY S/scripts/reel.py prep <voiceover> <proj>. Il convertit l'audio, le transcrit sur le Mac et supprime toutes les pauses et respirations. Les résultats sont work/voice_cut.wav et work/words.json (index des mots → temps programme).
  • Ensuite, exécutez PY S/scripts/reel.py words <proj> et lisez l'intégralité du transcript indexé.
  • Si l'utilisateur a fourni un script, comparez-le avec le transcript. Notez les noms mal entendus pour spell (par exemple "28": "Grok").

2. Histoire (lisez references/story.md, puis écrivez <proj>/story.json)

  1. Décidez le monde qui correspond au script : époque, lieu, un casting récurrent de 2 à 5 personnages, 3 à 6 lieux, N&B ou couleur.
    • Par défaut : un documentaire d'archives en noir et blanc des années 1950-60, où les sujets abstraits deviennent des personnes et des lieux.
    • Choisissez un look pour l'hôte. Quand l'utilisateur veut apparaître lui-même, utilisez sa photo comme référence d'hôte.
  2. Coupez le transcript en plans. Chaque plan commence sur un index de mot.
    • host (parle à la caméra sur la télé) : 3 à 6 plans, 2 à 6 s chacun. Utilisez-les à l'accroche, aux tournants et à l'appel à l'action. Ensemble, ils prennent environ 15 à 20 % du temps.
    • clip (séquence générée dans le cadre en verre) : la plupart des plans, 1,5 à 3 s chacun.
    • type (page machine à écrire) : la question d'ouverture ou les titres de section, au maximum 6 mots.
    • giant (un mot énorme avec une étiquette rouge et une sous-ligne sérif) : un concept nommé.
    • cards (2 à 4 fiches photo avec des badges de logo, un nom sur chaque mot) : quand la voix liste des personnes, des produits ou des marques. Les logos apparaissent seulement quand ils sont prononcés.
    • list : quand la voix liste 2 à 4 points, marquez cette plage de mots. Ses mots-clés passent à la couleur d'accentuation sur le mot.
    • keys : au maximum un par phrase.
    • hits : invert sur 3 à 6 coupes dramatiques, strobe sur au maximum 2 moments "ça devient plus fou", burn sur au maximum 2 pics.
    • Ne montrez jamais le même moment de clip deux fois.
  3. Écrivez la liste de sourcing à partir des plans :
    • chaque clip d'histoire correspond à 8 à 12 s de séquence libre de droits (ou un panoramique Ken-Burns sur une image fixe sourcée), couvrant des plans consécutifs, donc un clip alimente plusieurs plans via différents temps in ;
    • portraits des fiches, lieux et tout matériel hôte - tout sourcé gratuitement ;
    • une bande sonore optionnelle (ou aucune : le build la saute quand music est absent).

3. Sourcer les assets (lisez references/higgsfield.md)

  1. Sourcez dans cet ordre : clips d'histoire → portraits des fiches → lieux → (si conservé) plaque TV → (si conservé) clips hôte. Vérifiez chaque téléchargement selon les recettes testées (HEAD content-type + content-length, curl -A UA + tentatives, SHA-1 quand Commons en donne un). Enregistrez fichier → source URL → licence → auteur dans work/SOURCES.md.
  2. Clips d'histoire : Pixabay search_pixabay_videos (video_type: "film", orientation correspondante, durée 8 à 15 s) ou Commons filetype:video (imageinfo → téléchargement avec la recette curl → transcodage des Talks .ogv/.webm en MP4). Les images fixes deviennent des .mp4 Ken-Burns avec la recette ffmpeg.
  3. Clips hôte (seulement si l'utilisateur apparaît lui-même à l'écran) :
    • PY S/scripts/reel.py chunks <proj> écrit un chunk audio par plan hôte dans work/host/host_NN.wav ;
    • composez le chunk audio sur leur clip webcam et sauvegardez-le comme assets/host/host_NN.mp4 (ffmpeg -map 0:v:0 -map 1:a:0 -shortest) - reel.py align fait ensuite correspondre les mots exactement ;
    • PY S/scripts/reel.py align <proj> mesure le décalage de chaque clip par rapport aux mots. Pas de séquence propre → restructurez ces beats hôte comme des pages type / giant / cards à la place.
  4. Si une plaque TV est utilisée, exécutez PY S/scripts/reel.py screen <proj>/assets/tv_plate.png <proj>. Il trouve l'écran vert. Si aucun n'est trouvé, repeignez-le (ffmpeg drawbox, §2 de la référence) ou passez les plans hôte en mode full - pas de plaque nécessaire.
  5. Exécutez PY S/scripts/reel.py sfx <proj> pour synthétiser les effets sonores (pas de licences nécessaires).
  6. Musique : omettez music (par défaut), utilisez la piste de l'utilisateur, ou convertissez un fichier audio Commons en MP3.

4. Build et vérification

  1. Exécutez PY S/scripts/reel.py plan <proj>. Il écrit work/plan.json et affiche les vérifications. Corrigez chaque ERREUR dans story.json. Prenez les AVERTISSEMENTS au sérieux : clips répétés, lip-sync de l'hôte.
  2. Exécutez S/scripts/build.sh <proj>. Il construit <proj>/reel.aep (comp REEL) en environ 1 min pour un reel de 70 s. Lisez le journal : polices utilisées, avertissements.
  3. Exécutez S/scripts/render.sh <proj> --half pour une vérification rapide (~2 min). Ensuite, vérifiez les images :
    • S/scripts/bin/frames <proj>/out/reel_half.mp4 <proj>/work/check.jpg 4 <la seconde milieu d'environ 16 plans> ;
    • regardez check.jpg : légendes lisibles et pas sur les visages, lèvres de l'hôte qui bougent à l'intérieur de la télé, cadres en verre présents, pas de trous noirs, pages non vides. Corrigez dans story.json, puis réexécutez plan, build et la vérification.
  4. Final : exécutez S/scripts/render.sh <proj>. Il écrit <proj>/out/reel_1080.mp4 (1920×1080, 25 ips, environ 40 Mbps, avec son).
  5. Envoyez le MP4. Signalez :
    • sa durée ;
    • ce que vous n'avez pas pu vérifier ;
    • l'endroit à modifier à la main (reel.aep : chaque plan est sa propre comp dans 02_SHOTS / 03_PAGES, les légendes sont dans CAPTIONS).

Règles

  • Droits :
    • Sourcez tout gratuitement : Pixabay MCP, Wikimedia Commons (vérifiez la licence de chaque fichier), thesvg MCP pour les logos, plus synthèse locale (ffmpeg Ken-Burns, reel.py sfx). Aucun service payant par défaut ; l'annexe Higgsfield est uniquement pour quand l'utilisateur le demande explicitement.
    • Ne scrapez jamais de films, séries, publicités ou autres publications sociales.
    • Logos uniquement depuis le MCP thesvg ou Wikimedia Commons, et seulement après l'approbation de l'utilisateur.
    • La musique est optionnelle (omise, piste propre de l'utilisateur, ou fichier Commons converti en MP3).
    • Les effets sonores sont synthétisés par reel.py sfx.
  • La voix est l'horloge.
    • Chaque coupe tombe sur un mot, une image avant lui. reel.py fait cela.
    • Ne changez jamais la vitesse ni les mots.
    • Les légendes montrent exactement ce qui est dit, à part les corrections spell de noms mal entendus.
  • Personnes :
    • vêtements modestes et adaptés à l'époque ;
    • adultes réalistes ;
    • aucune personnalité publique réelle comme personnage ;
    • les modèles IA et les entreprises sont représentés comme des personnages inventés et nommés uniquement par légende et logo.
  • Les ré-exécutions sont bon marché. plan et build sont déterministes et reconstruisent reel.aep de zéro. Modifiez story.json plutôt que d'éditer reel.aep à la main, à moins que l'utilisateur ne demande des modifications manuelles. Une fois qu'il édite reel.aep lui-même, ne reconstruisez jamais par-dessus sans demander.
  • AE exécute un script à la fois.
    • Utilisez seulement scripts/ae_run.sh, build.sh et render.sh.
    • Sortie 4 signifie qu'AE est encore occupé : attendez, ne renvoyez jamais.
    • Sortie 6 signifie qu'AE n'a pas démarré le script : y a-t-il une boîte de dialogue ouverte ?

Fichiers

cheminquoi
scripts/reel.pyprep / words / chunks / align / screen / sfx / plan (bibliothèque standard uniquement)
scripts/build.sh, scripts/ae/build_reel.jsx, scripts/ae/reel_lib.jsxle build After Effects
scripts/render.shaerender vers H.264 (--half pour vérifications)
scripts/ae_run.shenvoie un script à AE en cours d'exécution et attend
scripts/tools/*.swift → scripts/bin/conversion audio, transcription sur l'appareil, boîtes de visage, feuilles d'images
references/story.mdformat story.json, règles de plan, un exemple complet
references/higgsfield.mdmanuel de sourcing gratuit : recettes de récupération et vérification Pixabay / Wikimedia / thesvg testées, mapping par asset, annexe de génération payante
references/look.mdce que le build dessine (tailles, timings, couleurs) et comment le régler
references/troubleshooting.mderreurs et correctifs
references/example_story.jsonle story.json d'un reel de 70 s terminé (le test EXPERIMENT)
PROMPT.mdcomment installer le skill et l'unique invite à envoyer

Skills associés