Communitygithub.com

Uerdong/remotion-explainer-video

流水线 complète pour produire des vidéos éducatives animées en chinois avec Remotion, couvrant le découpage du sujet, la compression du script, le doublage TTS, les sous-titres SRT, l'analyse des battements BGM, l'ancrage des coupes, la synthèse sonore, la construction du projet TSX, l'auto-vérification des images fixes, le rendu final avec double version, ainsi que la création des éléments de publication (vignette, description, titre).

Qu'est-ce que remotion-explainer-video ?

Ce skill définit une pipeline en dix étapes pour la production de vidéos éducatives explicatives animées en chinois (format MG paysage) avec Remotion. Il est conçu pour les développeurs et créateurs qui souhaitent transformer un sujet éducatif en une vidéo animée complète, incluant la génération de script narratif compressé, le doublage TTS, le sous-titrage SRT, l'analyse et l'ancrage des battements de la musique de fond (BGM), la conception des transitions, la synthèse d'effets sonores, et la construction du projet TypeScript avec Remotion. Le processus garantit une approche déterministe et vérifiable : chaque étape produit une entrée pour la suivante, avec des règles strictes (par exemple, la durée est déterminée par le doublage, le BPM doit être mesuré, les coupes sont ancrées aux battements forts, et le rendu est déterministe). Le skill inclut également la génération de livrables de publication (vignette, titre, description multiversions). Il est particulièrement utile pour répondre aux demandes de vidéos explicatives sur des sujets scientifiques ou techniques, avec support explicite pour les contraintes Windows et les workflows de restyling.

Compatible avec~Claude Code~Codex CLI~Cursor
npx skills add https://github.com/Uerdong/remotion-explainer-video/tree/HEAD/remotion-explainer-video

Demander à votre IA préférée

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

Documentation

Vidéo éducative animée chinoise (Pipeline complet Remotion)

Exécutez les dix étapes dans l'ordre. Le produit de chaque étape est l'entrée de la suivante. Il est interdit de sauter une étape puis de revenir en arrière.

Dix règles d'or

  1. La durée est déterminée par le doublage, pas par le script. Le script de référence n'est qu'une intention. Estimez d'abord la durée totale en fonction de la vitesse de lecture réelle (TTS chinois ~3,3 caractères/s). Si elle dépasse la durée cible, réduisez le nombre de caractères et reformulez à l'oral, puis synthétisez chaque segment et mesurez sa durée réelle.
  2. Le BPM doit être mesuré, pas repris des indications de l'utilisateur ou du fichier de référence. Librosa rapporte souvent 104 BPM comme 51,7 (réduit de moitié). Utilisez l'autocorrélation ou changez les paramètres d'onset pour une vérification indépendante, et prenez la valeur qui correspond à l'écoute.
  3. Tous les points de coupe sont ancrés aux battements forts. La limite du paragraphe = la fin du doublage de ce segment, arrondie au battement fort le plus proche. Le numéro d'image = round(beat * (60/BPM) * FPS), codé en dur, pas calculé à l'exécution.
  4. Rendu déterministe. Interdiction d'utiliser Date.now(), Math.random(). Toute oscillation doit être dérivée de Math.sin(frame). La même image doit être identique pixel pour pixel à chaque rendu.
  5. Source unique de vérité pour la timeline. Les paragraphes, numéros d'images, offsets du doublage, frames d'effets sonores n'existent que dans un seul fichier timeline.ts. Si vous modifiez le nombre de caractères du script → relancez le script de génération → synchronisez le TS. Ne modifiez jamais deux endroits à la main.
  6. Les sauts de ligne des sous-titres sont basés sur la ponctuation. Découpez d'abord par clause (selon ,;:。) puis assemblez en boîtes. Utilisez un conteneur à largeur fixe (ex: width: 1460 + whiteSpace: "pre"). Interdiction d'utiliser maxWidth pour laisser le contenu définir la taille du conteneur.
  7. Séparation audio en trois couches : BGM, voix, effets sonores avec des niveaux indépendants. Voix à 0,8, BGM à partir de 0,24. Mesurez le pic après rendu ; >0,95 signifie un risque de saturation.
  8. Vérifiez chaque plan avec une image fixe. Utilisez npx remotion still pour vérifier la composition image par image. Regarder l'image fixe avant de lancer le rendu complet, sinon c'est une refonte.
  9. Trois contraintes strictes pour Windows : --props doit passer un fichier (--props=props-nobgm.json), un JSON en ligne sera mal interprété par le shell ; ffmpeg 9 utilise -fps_mode passthrough au lieu de -vsync ; si le style ne s'applique pas après modification du TSX, supprimez d'abord node_modules\.cache.
  10. Livrez d'abord, évaluez ensuite. Le rendu terminé et les images générées sont livrés tels quels à l'utilisateur. Les problèmes sont seulement enregistrés et expliqués, sans regénération non autorisée.

Pipeline en dix étapes

#ÉtapeAction cléLivrable
1Découpage du sujetDéfinir la chaîne de connaissances, durée cible, format, ton du publicPhrase de sujet + convention durée/format
2Script explicatifCompresser selon "accroche → modèle → déduction → conclusion → leçon", reformuler à l'oralScript segmenté (~6 segments, 50–70 caractères chacun)
3DoublageSynthèse indépendante de chaque segment, même timbre et mêmes paramètres ; mesurer la durée réelle et f0s1..sn.wav + tableau des durées des segments
4Sous-titresGénérer SRT à partir des durées des segments, même source que les points de coupesubtitles.srt
5BGMChoisir ou synthétiser, mesurer le BPM réel et la table des battements forts ; changer si inadaptébgm.wav + bgm.json (beats_sec)
6Réorganisation de la timelineAncrer les limites des segments aux battements forts, calculer le nombre total d'imagestimeline.json + timeline.ts
7Effets sonoresAssocier chaque action clé à un timbre, synthèse dans le code, ancrer aux battements fortssfx/*.wav + tableau des frames d'ancrage
8Projet visueltheme / components / timeline + composants de scène par segmentProjet Remotion
9Rendu et auto-vérificationImages fixes par segment → film complet → mesure du picout/*.mp4, images fixes QA
10Éléments de publicationVignette (rendu par code ou outil de design), titre, description, hashtagsImage de vignette + publishing-copy.md

Décisions en cas de conflit

ConflitTraitement
Conflit entre le nombre de caractères du script et la durée cibleRéduire le script, ne pas changer la durée. Si le taux de compression > 1,3, reformuler en phrases courtes orales, conserver tous les points de connaissance
BPM / durée donnés par l'utilisateur différents de la mesure réelleFaire selon la mesure réelle, et informer activement de la différence (ex: "Le document indique 110 BPM / 58s, mais la mesure réelle donne 104 BPM / 53,65s"), proposer une option "Réorganiser selon le document"
Style de la piste spécifiée par l'utilisateur inadaptéMesurer d'abord le BPM / spectre / pic de cette piste et fournir les données, puis synthétiser un remplacement. Divulguer la raison de l'écart lors de la livraison
Conflit entre le guide visuel de référence et le style de la plateforme pour la vignetteTraiter les deux séparément : le corps suit le guide visuel de l'utilisateur, la vignette suit la logique de diffusion de la plateforme de vignettes, et expliquer les compromis

Liste de livraison

  • Double version du film : avec BGM / sans BGM (pour les plateforms avec leur propre bibliothèque musicale, utiliser cette dernière), même nombre d'images, même durée
  • Sous-titres SRT (externes, identiques à ceux incrustés dans la vidéo)
  • Notice de livraison : tableau des versions, BPM et mesure des battements, tableau des limites des segments, tableau des points d'ancrage, script, tableau des effets sonores, niveaux de mixage, structure du projet, commandes d'exécution
  • Vignette (version paysage + version portrait pour la plateforme cible), plusieurs variantes de titre, plusieurs versions de description, hashtags

Fichiers de référence

  • Commandes, paramètres, méthodes de vérification et chemins des livrables pour chaque étape : references/pipeline.md
  • Modèles adaptés pour chaque étape et justifications : references/models.md
  • Squelette du projet, conventions theme/components/timeline, formules d'ancrage, pièges de rendu : references/remotion-conventions.md
  • Restyling d'un film existant (fond blanc plat → style cinéma sombre, etc.) : references/restyle-playbook.md

Skills associés