Communitygithub.com

MartinDelophy/ai-video-editor

Éditeur vidéo IA local-first pour navigateur avec musique IA WebGPU, réparation IA, voix off, sous-titres, avatars parlants et export déterministe.

Qu'est-ce que ai-video-editor ?

Ce skill transforme les éditeurs IA (comme Claude Code, Cursor, Codex) en assistants de montage vidéo professionnels, orientés timeline et réversibles. Il permet d'inspecter les médias locaux, de planifier les modifications via un plan déclaratif versionné, de les appliquer transactionnellement et de vérifier le résultat audio et vidéo de manière déterministe. Le skill privilégie le traitement local des fichiers projet (`.timeline`) via une couche de commandes ou des services d'archive locaux, et ne recourt à l'interface navigateur que si l'utilisateur le demande explicitement ou si une fonctionnalité n'est pas disponible localement. Il intègre des références spécialisées pour le montage automatique, la réplication de vidéos de référence, la narration avec voix off (via MeloTTS pour le chinois ou d'autres langues), le sourcing de séquences web, la génération vidéo à distance et les workflows promotionnels. Le skill impose des règles strictes : tout sous-titre visible doit correspondre à une piste audio audible, la voix off doit être naturelle et chaleureuse (jamais mécanique), et aucun artefact ne peut être substitué silencieusement. Il valide la cohérence temporelle du rendu, l'intégrité des canaux audio et la synchronisation parole/sous-titres avant de déclarer une tâche terminée.

Compatible avec✓Claude Code✓Codex CLI~Cursor✓Gemini CLI
npx skills add MartinDelophy/ai-video-editor

Demander à votre IA préférée

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

Documentation

Montage Vidéo IA avec Timeline Studio

Transformez la demande éditoriale exacte de l'utilisateur et ses médias en modifications réversibles de Timeline Studio. Conservez la timeline modifiable comme source de vérité ; ne la remplacez jamais par un rendu opaque unique.

Choisir le chemin d'exécution

  1. Lors de la première utilisation locale après l'installation, lisez references/host-environment.md. Si Node.js n'est pas disponible, commencez par le bootstrap Shell ou PowerShell sans dépendance ; sinon exécutez node scripts/setup-host.mjs --check. Avant une pré-voix off pilotée par l'agent, exécutez également node scripts/setup-host.mjs --check --capability voiceover ; cette capacité installe MeloTTS et ses ressources linguistiques dans un environnement séparé uniquement après approbation explicite. Traitez le résultat comme une preuve de capacité. Si les environnements d'exécution ou les dépendances manquent, affichez le plan d'installation exact et obtenez l'approbation explicite de l'utilisateur avant le mode d'installation ; ne considérez jamais l'installation du Skill comme une autorisation de modifier l'hôte ou de télécharger des modèles.
  2. Traitez le traitement local des fichiers projet comme la valeur par défaut pour le montage déterministe : inspectez les médias localement, modifiez le .timeline portable via la couche de commandes ou les services d'archive locaux, effectuez le rendu localement et vérifiez la sortie décodée localement. N'ouvrez pas un navigateur simplement parce que l'éditeur a une interface utilisateur.
  3. Traitez https://video-editor.ai-creator.top/ comme l'éditeur hébergé canonique uniquement lorsque l'utilisateur demande explicitement d'utiliser le site web, ne fournit aucun dépôt local ou chemin de projet, ou nécessite une capacité exclusivement hébergée.
  4. Lorsque ce dépôt est disponible, privilégiez sa couche de commandes Agent et ses outils médias locaux. Démarrez le serveur local et le navigateur uniquement pour une opération vérifiée exclusivement UI que le pipeline du projet local ne peut pas exprimer et que l'utilisateur n'a pas exigé en workflow local. Lisez l'URL réelle du serveur à partir de la sortie du processus ; ne supposez jamais le port 5173.
  5. Inspectez package.json pour un script de commandes Agent. N'utilisez pas npm run ... --if-present comme détection de capacité car cela peut réussir silencieusement.
  6. Si l'exécuteur de commandes existe, lisez references/command-contract.md, inspectez le projet, construisez un plan versionné, exécutez le validateur structurel, et utilisez project.diff comme simulation sémantique faisant autorité avant project.run.
  7. Si une opération requise manque dans le contrat local, indiquez l'écart exact. Pour le travail de développement du dépôt, implémentez la plus petite opération locale partagée et le support du moteur de rendu avant de recourir à l'interface utilisateur. Sinon, demandez avant de passer au workflow navigateur.
  8. Ne prétendez pas à une exécution déterministe ou idempotente lorsque seule l'automatisation de l'interface utilisateur était disponible. Indiquez la limitation et conservez une archive de projet modifiable lorsque l'interface utilisateur le supporte.

Workflow

1. Inspecter avant de modifier

  • Conservez la demande de l'utilisateur textuellement comme brief créatif.
  • Résolvez chaque ressource référencée en un chemin ou une URL explicite. Ne parcourez jamais un répertoire sans approbation.
  • Inspectez la durée, les dimensions, la présence audio et le type de média.
  • Lisez le résumé actuel du projet avant de modifier un projet existant.
  • Demandez uniquement lorsqu'un choix non résolu modifie matériellement la modification, comme la durée ou le rapport hauteur/largeur souhaité en sortie.
  • Pour une demande de montage automatique, lisez references/auto-edit-workflow.md. Inspectez d'abord, classifiez le contenu, l'objectif et la livraison avec un niveau de confiance explicite, puis posez uniquement les questions minimales spécifiques à la catégorie qui peuvent changer le montage. Ne demandez jamais des faits découvrables à partir du média.
  • Pour une demande de reproduction, imitation, recréation ou rétro-ingénierie d'une vidéo de référence, lisez references/replication-workflow.md. Classez-la comme reproduction de style de montage, reproduction par génération IA ou hybride ; reconstruisez les filtres, répétitions, divisions de source, courbes de vitesse, transitions, plans et timing avant de construire ; et résolvez explicitement si la piste audio originale autorisée doit être conservée. Ne commencez pas le montage avant que la porte de vérification de complétude de l'analyse de reproduction ne soit passée. Utilisez une recherche web actuelle pour comparer les plateformes de vidéo IA uniquement lorsque la génération est requise, et utilisez des séquences web légitimes uniquement lorsque l'utilisateur n'a pas fourni de matériel adéquat.
  • Avant de charger ou télécharger un modèle pour l'analyse média, lisez references/local-model-routing.md. Inventoriez les capacités locales existantes et les miroirs épinglés du dépôt, choisissez la chaîne de modèles minimale nécessaire pour combler le manque de preuves, exécutez l'inférence localement sans piloter l'interface utilisateur visible de l'éditeur, et enregistrez la provenance exacte du modèle/environnement d'exécution/fallback. Ne chargez jamais tous les modèles disponibles par défaut et ne créez pas de cache en double.
  • Lorsque l'utilisateur a besoin de séquences web ou demande où trouver du matériel téléchargeable, lisez references/web-footage-sourcing.md. Donnez des suggestions de plateformes actuelles et spécifiques à la tâche issues d'une recherche en direct et classez-les par légitimité de la source, support de téléchargement explicite, droits d'utilisation, adéquation visuelle, qualité et provenance. Restez neutre vis-à-vis du fournisseur de compétence ; ne codez jamais en dur une plateforme ou une marque comme route permanente.
  • Pour chaque montage automatique terminé, lisez references/professional-editing-workflow.md. Analysez les images directement ; analysez la vidéo avec des images représentatives, la parole/OCR, la sémantique et un flux optique global et par région de sujet. Stabilisez avant le suivi ou l'amélioration. Demandez des modèles image-vers-vidéo ou image-vers-image uniquement après que l'inspection prouve que la génération est matériellement utile.
  • Lorsque la génération distante est matériellement requise, lisez references/remote-video-generation.md. Recherchez la documentation officielle actuelle, comparez uniquement les fournisseurs qui correspondent au plan de plan, obtenez l'approbation avant tout travail payant ou sensible à la vie privée, normalisez la tâche asynchrone et la provenance, téléchargez les octets de sortie expirants, et ajoutez les résultats vérifiés à Mes ressources sans placement automatique sur la timeline.
  • Pour les modifications de produit, de marque, marketing-commerce, de promotion de site web ou autres modifications promotionnelles, lisez references/promotion-narrative-workflow.md. Construisez proactivement un récit global ambitieux et fondé sur des preuves plutôt qu'une liste de fonctionnalités ou un montage typographique cinétique. Sauf si l'utilisateur demande explicitement un teaser, construisez un arc complet problème-transformation-preuve-CTA et trouvez activement plusieurs cas visuellement distincts – normalement au moins trois pour un court métrage de 35 à 45 secondes – chacun avec son propre contexte, action produit, résultat visible et lien vers le payoff final. N'inventez jamais de clients, résultats, métriques ou comportement de produit pour donner l'impression que l'histoire est plus grande.
  • Pour les modifications de moments forts et les reproductions de référence où l'emphase ou l'impact dramatique compte, lisez references/highlight-tension-workflow.md. Traitez la saillance comme preuve candidate, assignez des rôles de mise en place/montée/pré-impact/pic/réplique, concevez une enveloppe de tension non plate, protégez l'image héroïque décisive, et rejetez la finalisation lorsque le montage précis manque encore d'un payoff dominant.
  • Pour une visite guidée ou un enregistrement promotionnel de site web, utilisez un skill de contrôle de navigateur supporté pour inspecter et répéter le parcours autorisé avant la capture. Lisez ce skill de navigateur complètement avant les actions de navigateur, puis suivez references/website-promo-workflow.md. Construisez et complétez un manifeste de couverture page/parcours avant de tirer des conclusions sur le produit. Lorsque les pages requises sont verrouillées, demandez à l'utilisateur de se connecter lui-même dans le navigateur sélectionné ; ne demandez jamais d'identifiants et ne décrivez pas un comportement inaccessible comme vérifié. Confirmez toute action externe conséquente séparément, protégez les données connectées et personnelles, et ne prétendez jamais qu'un véritable enregistrement d'écran a été capturé lorsque seules des captures d'écran ou des ressources statiques étaient disponibles.
  • Pour les modifications narrées, lisez references/voiceover-workflow.md. Utilisez MeloTTS ZH pour la narration en chinois contenant de l'anglais en ligne, et assurez-vous que son environnement isolé et les artefacts de modèle épinglés approuvés sont prêts avant la synthèse. Sauf si l'utilisateur demande une autre livraison, choisissez la voix naturelle la plus chaleureuse de type conteur disponible et dirigez une performance proche et conversationnelle avec une formulation significative ; ne choisissez jamais par défaut un effet de voix système plat, métallique ou mécanique. Verrouillez la performance vocale naturelle finale avant de finaliser les durées des scènes ou le mouvement. Laissez le timing des phrases et les pauses piloter le montage image. Considérez une durée approximative comme une plage cible, pas une permission de compresser temporellement la parole globalement ; réécrivez ou raccourcissez la narration lorsqu'une limite exacte ne peut être atteinte naturellement.

2. Planifier à la fidélité supportée

  • Pour un montage automatique, conservez la demande et normalisez les décisions inférées, confirmées, par défaut et non résolues dans un brief modifiable. Construisez un enregistrement de décisions de temps source avec les décisions de conserver/supprimer/raccourcir/réorganiser, les raisons, la confiance, les attentes de sous-titres, les contraintes de continuité audio et le contenu protégé avant de modifier la timeline.
  • Pour les séquences explicatives de produit, de tutoriel ou de site web, choisissez un traitement d'attention explicite pour la seule cible nommée : agrandissez les preuves petites ou denses, soulignez le texte ou les chiffres exacts, ou encadrez la limite exacte d'un contrôle, d'une carte ou d'un résultat. Utilisez au plus un traitement de support avec un mouvement de caméra, et appliquez le soulignement ou l'encadrement uniquement après que la caméra s'est arrêtée.
  • Avec l'exécuteur de commandes, exprimez les modifications comme des opérations déclaratives avec des ID stables, des secondes, des révisions, des ID d'opération et des préconditions. Exécutez scripts/validate_edit_plan.mjs <plan.json> pour les erreurs de forme de transport, puis exécutez npm run agent -- project.diff <plan.json> pour rejeter les opérations non supportées et les modifications invalides spécifiques au projet avant d'appliquer quoi que ce soit.
  • Avec l'interface utilisateur du navigateur uniquement, écrivez une courte liste de contrôle ordonnée des intentions utilisateur visibles et des résultats UI attendus. Préférez les contrôles nommés et les libellés de clips ; utilisez les coordonnées uniquement comme dernier recours ancré dans une capture d'écran actuelle.
  • Gardez les éléments visuels principaux contigus. Traitez les sous-titres, autocollants, audio source, voix off, musique et superpositions comme des clips chronométrés.
  • Appliquez une règle unidirectionnelle sous-titre-vers-parole : si le projet configure ou active un sous-titre, chaque sous-titre visible doit correspondre à une parole audible. Liez les sous-titres de transcription au clip source parlé existant, et générez une voix off pour chaque nouvelle narration, explication, promotion ou sous-titre mené par du texte. La parole source existante satisfait cette règle et ne doit pas recevoir de voix off en double. Si aucun sous-titre n'est configuré, la voix off reste optionnelle et suit le brief, le contenu et l'objectif éditorial. Si un sous-titre configuré n'a pas de route de parole autorisée, omettez-le ou arrêtez-vous avec le projet modifiable préservé.
  • Pour les modifications narrées au niveau de la phrase, divisez la voix off en fichiers audio archivés physiquement séparés et liez chaque sous-titre à exactement un audioClipId correspondant ; ne représentez pas les clips de phrase modifiables comme des plages sur un fichier de narration monolithique.
  • Préservez l'identité du média et le mappage temps-source lors du déplacement ou du rognage des clips.

3. Appliquer en toute sécurité

  • Sauvegardez une version du projet ou exportez une archive .timeline avant un lot destructeur.
  • Appliquez une transaction par intention utilisateur visible. Faites échouer toute la transaction lorsqu'une précondition échoue.
  • Ne substituez jamais silencieusement des médias, voix, modèles, polices ou effets manquants.
  • Gardez chaque résultat annulable et modifiable dans l'interface utilisateur normale.
  • Ne démarrez pas un travail de génération payant ou distant sans une demande utilisateur claire.
  • Ne mettez pas output.render dans un plan de commandes et ne prétendez pas que project.run rend la vidéo. Utilisez la requête versionnée séparée project.render pour son sous-ensemble portable documenté, et utilisez l'éditeur de navigateur pour la génération IA ou les fonctionnalités de composition non supportées.
  • Pour une demande de montage vidéo terminée, résolvez un répertoire de sortie absolu explicite et créez à la fois un projet .timeline portable et la vidéo de résultat rendue. La planification, le diagnostic et une remise explicite uniquement à l'éditeur sont les seules exemptions. Ne signalez pas la finalisation avec un seul artefact.

4. Vérifier le résultat

  • Relisez le résumé de la timeline et comparez-le avec la durée, l'ordre, le placement des pistes et les états activés demandés.
  • Prévisualisez l'ouverture, chaque coupe ou transition, les limites des sous-titres, les superpositions et la dernière image.
  • Jouez la timeline en continu à travers chaque limite visuelle, de sous-titre et audio. L'horloge de la timeline doit avancer de manière monotone ; rejetez toute limite qui stagne, saute en arrière, répète une fin de clip ou active les deux clips adjacents mi-ouverts à la fois.
  • Vérifiez le comportement audible, pas seulement les pistes visibles. Distinguez l'audio vidéo intégré des clips audio source explicitement séparés et vérifiez l'état muet/liaison.
  • Lors du placement d'audio stéréo ou multicanal avec FFmpeg, appliquez chaque décalage prévu à chaque canal explicitement. Pour adelay, utilisez adelay=<millisecondes>:all=1 ou fournissez une valeur de délai par canal ; une seule valeur avec all=false par défaut retarde uniquement le premier canal et peut empiler chaque clip ultérieur dans l'autre canal au temps zéro. Avant la livraison, comparez l'activité gauche/droite dans la fenêtre d'ouverture et autour de chaque limite de parole planifiée. Rejetez la parole précoce limitée à un canal, plusieurs clips de narration empilés à l'ouverture, ou un décalage d'attaque intercanal non documenté.
  • Vérifiez que chaque sous-titre visible correspond à un clip de parole audible pendant son intervalle actif complet. Rejetez les sous-titres orphelins, les clips liés silencieux, les sous-titres s'étendant au-delà de la parole, la parole source en double plus la voix off, ou la livraison de sous-titres uniquement textuels.
  • Écoutez la narration complète à vitesse de lecture normale. Rejetez le timbre froid ou mécanique, la hauteur et l'énergie plates, la livraison synthétique mot par mot, les pauses rigoureusement égales, le rythme précipité, les pauses rognées, la prononciation non naturelle, les changements de vitesse au niveau de la phrase, les sauts de volume inexpliqués, ou la narration qui a été globalement accélérée simplement pour atteindre une durée cible. Exigez une performance vocale chaleureuse, humaine, narrative – avec un rythme et un contour naturels – avant de déclarer la tâche terminée.
  • Vérifiez chaque piste de sous-titres visibles individuellement : chaque piste doit soit avoir une piste audio liée audible, soit être supprimée. Si une police ou une langue de sous-titres manque, ne la remplacez pas silencieusement ; arrêtez-vous avec le projet modifiable préservé. Confirmez que les sous-titres automatiques ou les transcriptions sont enregistrés au format .srt ou .vtt standard et sont correctement horodatés pour les images du projet rendu.
  • Pour le résultat final, adhérez exactement au rapport hauteur/largeur, à la résolution, au format de conteneur, au codec vidéo, au débit vidéo, au codec audio, au débit audio, aux canaux audio et à la fréquence d'échantillonnage demandés, mais résolvez toute ambiguïté de paramètre non couverte par la demande en faveur de la compatibilité et de la plus haute qualité documentée du format.

5. Archivage du résultat & édition ultérieure

  • Conservez les résultats dans un répertoire de sortie dédié. Ne polluez pas le répertoire de travail ou le dossier du projet.
  • Produisez toujours à la fois le projet .timeline modifiable et le fichier vidéo de rendu final. Le projet .timeline est l'artefact faisant autorité.
  • Lors de la reprise d'une session d'édition, ne reconstruisez pas le projet à partir de zéro ; lisez le fichier .timeline existant, mettez à jour les décisions en fonction du brief actuel, et appliquez les modifications comme un nouveau lot transactionnel.

Flux de travail de référence (à lire à la demande)

Skills associés