Communitygithub.com

andyluu98/VideoMotion

Génère une voix off vietnamienne avec VieNeu-TTS à partir d'un script.json de projet vidéo, évalue automatiquement la prononciation avec Whisper, conserve la meilleure lecture et produit des repères temporels mot par mot (voice.wav, words.json). Utilisé à l'étape 4 de /videomotion, ou lorsque l'utilisateur dit « générer la voix », « relire la phrase », « changer de voix », « corriger la prononciation ».

Qu'est-ce que VideoMotion ?

Cette compétence (skill) pour agents IA génère une voix off vietnamienne de haute qualité à partir d'un fichier script.json de projet vidéo, en utilisant le synthétiseur vocal VieNeu-TTS. Elle évalue automatiquement la prononciation de chaque phrase via Whisper, attribue un score et identifie les lectures faibles (WEAK). Les meilleures versions sont conservées, et chaque génération est mise en cache par contenu : si vous modifiez une phrase dans script.json et relancez, seule cette phrase sera régénérée. La sortie comprend un fichier audio voice.wav (48 kHz, mono) avec des silences calibrés, et un fichier words.json contenant les repères temporels précis de chaque mot, chaque phrase, et chaque scène. La compétence prend en charge plusieurs voix (25 préréglages, dont Ngọc Huyền, Mai Anh, Trúc Ly, etc.) et permet de corriger la prononciation via un dictionnaire personnel (pron dans script.json ou ~/.motionfly/pron.json). Elle est conçue pour être utilisée à l'étape 4 du pipeline vidéo /videomotion, ou à la demande de l'utilisateur.

Compatible avec✓Claude Code~Codex CLI~Cursor
npx skills add https://github.com/andyluu98/VideoMotion/tree/HEAD/skills/vm-giong

Demander à votre IA préférée

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

Documentation

Giọng đọc

Biến VV, PY như trong skill videomotion.

Exécution

"$PY" "$VV/tools/voice/voice.py" <projet> > <projet>/voice.log 2>&1

Exécutez en arrière-plan si le script dure plus d'une minute. Terminé lorsque le journal indique VOICEDONE. Toutes les générations sont mises en cache par contenu : si vous modifiez une phrase dans script.json et relancez, seule cette phrase sera régénérée.

Lecture des résultats

  • Chaque phrase affiche score <id>: <score> ok|WEAK | <ce que Whisper a entendu>.
  • Une seule passe suffit. Les scores ne servent qu'au filtrage, il n'est pas nécessaire de rechercher le score maximal. Les WEAK dus à une erreur d'écoute de Whisper sur des noms anglais ("Claude" devient "Clock", "code" devient "cốt") ne sont pas des erreurs de lecture.
  • Vrais WEAK (mauvaise lecture, avalement de mots, mauvaise lecture des chiffres) : corrigez dans l'ordre suivant :
    1. réécrivez la phrase pour qu'elle ait un sujet vietnamien, évitez les phrases de moins de 5 mots ou commençant par un nom anglais ;
    2. ajoutez une entrée dans "pron" dans script.json, par exemple "MCP": "em xi pi" (la clé en majuscules correspond en respectant la casse) ;
    3. relancez avec --candidates 4.
  • Pour les mots à corriger dans tous les projets : ajoutez-les dans ~/.motionfly/pron.json.

Voix

Par défaut Ngọc Huyền (femme, Nord). Quelques voix disponibles : Ngọc Huyền, Mai Anh (actualités), Trúc Ly, Thùy Dung (Sud, actualités), Hải Đăng, Thiện Minh (conteur), Quang Sơn et Ngọc Trân (Centre). Pour voir les 25 voix :

"$PY" -c "from vieneu import Vieneu; [print(v[0]) for v in Vieneu().list_preset_voices()]"

Définissez la voix dans la clé "voice" du fichier script.json.

Sortie

  • voice.wav : 48 kHz mono, avec silences : début 0,5 s, entre phrases 0,35 s, après | 0,55 s, entre scènes 0,7 s, fin 0,8 s.
  • words.json : total, scenes (repères début/fin de chaque scène), segments (chaque phrase, score, drapeau weak), words (chaque mot affiché avec start, end). Le mot affiché conserve exactement le texte du script, même si la prononciation a été modifiée via pron.

Individual skills in this repo

This repo contains 4 individual skills — each has its own dedicated page.

andyluu98/VideoMotion

Làm video tiếng Việt từ một yêu cầu, AI làm đạo diễn, không khung dựng sẵn: ý tưởng lớn, kịch bản, giọng VieNeu, phân cảnh theo lời, nhạc nền, dựng từng cảnh bằng agent Sonnet chạy song song (HyperFrames + GSAP), phụ đề, xuất MP4. Dùng khi người dùng gõ "/videomotion", "làm video", "video giải thích", "clip ngắn về X", "biến bài này thành video".

andyluu98/VideoMotion

Kiểm tra và cài đặt mọi thứ VideoMotion cần (Node.js, ffmpeg, HyperFrames, môi trường Python, giọng VieNeu, Whisper). Dùng khi người dùng mới cài plugin, gõ "/vm-cai-dat", "cài đặt video", "kiểm tra máy làm video", hoặc khi một bước làm video báo thiếu công cụ.

andyluu98/VideoMotion

Dựng hình cho dự án VideoMotion đã có giọng và phân cảnh: tải phông của style, viết màu, giao từng cảnh cho agent vm-canh chạy song song, ghép, kiểm tra kỹ thuật, render, ghép âm thanh và phụ đề. Dùng ở bước 7 của /videomotion, hoặc khi người dùng nói "dựng lại cảnh", "render", "xuất video", "sửa hình cảnh X".

andyluu98/VideoMotion

Chọn hoặc tạo nhạc nền cho dự án video, đo nhịp, rồi trộn với giọng (nhạc tự hạ khi có lời, chuẩn -14 LUFS). Dùng ở bước 6 của /videomotion, hoặc khi người dùng gửi file nhạc, nói "đổi nhạc", "nhạc sôi động hơn", "nhạc nhỏ lại".

Skills associés