Montage vidéo sans GPU dédié
Lorsque d'autres agents IA utilisent, installent ou encapsulent cette compétence, lisez d'abord agent-compatibility.md et traitez le répertoire de compétences et les paramètres locaux en fonction de la plateforme cible.
Utilisez Remotion localement pour l'animation et l'assemblage, FFmpeg pour le traitement audio/vidéo et Shotcut pour le peaufinage ; les sous-titres utilisent faster-whisper en mode CPU/int8 et OpenCC. Par défaut, ne dépend pas de GPU dédié, CUDA, NVENC, DaVinci Resolve, de rendu cloud ou d'effets payants. Utilisez le style et le format de livraison spécifiés par l'utilisateur.
Environnement et ressources
Lors de la première utilisation, copiez local-environment.example.json en references/local-environment.json et renseignez les chemins réels des outils ; les chemins d'exemple ne signifient pas que les outils sont installés.
- Lisez d'abord
references/local-environment.json, utilisez les chemins absolus des outils qu'il contient. Exécutezscripts/project.py doctorpour cette compétence ; les sous-titres utilisent le Python du venv dédié. doctor ne demande pas CUDA ou Resolve, il vérifie seulement que Shotcut existe en tant que programme, ce qui ne valide pas l'interface graphique. - Cette compétence contient des scripts, des modèles Remotion et des fichiers de verrouillage des dépendances. Elle est autonome et peut être utilisée indépendamment des autres compétences de montage ; les emplacements des outils locaux et des modèles sont spécifiés par le fichier de configuration. Lors du déplacement sur un autre ordinateur, lisez environment-notes.md, reconstruisez les dépendances manquantes, modifiez les chemins, puis testez réellement. Ne présumez pas que l'autre machine a déjà installé les outils.
- Par défaut : 16:9, 1920×1080, 30 ips ; commencez par un aperçu en demi-taille. Remotion utilise par défaut un seul job, le backend graphique logiciel SwiftShader et l'encodage logiciel H.264 ; ne passez pas automatiquement en CUDA. Si la mémoire est suffisante, utilisez
--concurrency 2, sinon gardez 1. - Les tâches sont exécutées séquentiellement, ne lancez pas simultanément le rendu complet, la reconnaissance vocale et la conversion de proxy. En cas de mémoire insuffisante, réduisez d'abord la taille de l'aperçu, utilisez des proxies ou divisez en segments ; les segments doivent conserver les mêmes spécifications audio/vidéo et des timings de sous-titres corrects, et vérifiez les raccords.
- 16 Go de RAM sont recommandés, 32 Go offrent plus de confort, utilisez un SSD. Ce sont des recommandations de travail, non une garantie de bon fonctionnement sur tous les ordinateurs ; ne calculez pas la vitesse de sortie non mesurée en fonction du nombre de cœurs ou de la durée de la vidéo.
Média et montage
- Si les exigences sont incomplètes, déterminez d'abord la durée, le format et la narration à partir des médias existants ; ne demandez que si l'absence d'information affecte le résultat final. Si l'emplacement des médias est inconnu, commencez par inventorier le répertoire de travail. Conservez les fichiers originaux ; placez les fichiers dérivés dans un nouveau dossier de travail.
- Lisez media-commands.md, utilisez
scripts/media.py inventorypour créer une liste de durées, formats, pistes audio et vignettes. Regardez les images représentatives, écoutez les voix, lisez la transcription avant de sélectionner les segments ; ne prenez pas les coupes candidates ou les suppositions pour des faits confirmés. - En cas de vidéo 4K, de débit élevé ou de ralentissements lors de l'aperçu, utilisez
media.py proxy --width 960pour générer un fichier proxy H.264/AAC. Enregistrez la correspondance entre le proxy et l'original ; l'aperçu peut utiliser le proxy ; avant la sortie finale, restaurez les originaux et revérifiez les zones de recadrage et la synchronisation. Ne livrez pas le proxy comme qualité originale. - Lisez project-commands.md, utilisez
scripts/project.py initpour créer un nouveau projet Remotion. Copiez les médias sélectionnés danspublic/media/, éditezpublic/project.json; les spécifications des données se trouvent dans motion-template.md. Le modèle prend en charge : générique, chapitres, zoom avant sur les photos, séquences vidéo, citations, générique de fin, sous-titres et bandeaux nominatifs. - Vérifiez d'abord le point d'entrée et la durée de la vidéo avec ffprobe. Privilégiez les fondus en entrée/sortie, les fondus enchaînés simples, les zooms avant lents sur les photos et les animations de texte courtes ; évitez par défaut les effets de flou, particules, 3D ou multicouches haute résolution. Si la qualité est insuffisante, ajustez la conception plutôt que de forcer un texte trop petit.
- Faites d'abord un petit aperçu et des images statiques pour confirmer le style et la lisibilité, puis produisez la vidéo complète. Utilisez
project.py render --scale 0.5pour l'aperçu, la livraison finale se fait en pleine taille. Les commandes spécifiques suivent les références de cette compétence et--helpdes scripts, utilisez des chemins absolus et des tableaux de paramètres pour gérer les chemins en chinois et avec espaces.
Sous-titres traditionnels et audio
scripts/transcribe.pypasse explicitement--device cpu --compute-type int8 --model chemin_du_modèle_local --local-files-only, en utilisant le modèle small déjà téléchargé. En cas d'échec de reconnaissance, vérifiez d'abord le venv, le modèle et les paquets compatibles ; n'exigez pas l'installation de CUDA en raison de la lenteur.- Effectuez la reconnaissance sur la piste vocale après montage, ou recalculez chaque segment de sous-titres en fonction des coupes et des transitions sur la timeline finale ; n'appliquez pas directement les timings de la source. Évitez de générer des sous-titres à partir d'une musique pure.
- OpenCC aide uniquement à convertir en caractères traditionnels ; les noms d'école, noms de personnes, titres, dates, homophones et taïwanais nécessitent une relecture. Si la reconnaissance est incertaine, conservez un marqueur à vérifier, n'inventez pas.
- Les
captionsducaptions.jsonpeuvent être intégrés dansproject.json. La mise en surbrillance mot par mot nécessite de vérifier les timings des mots et la cohérence entre la phrase complète et les sous-titres ; s'il n'y a que des timings de phrases, affichez la phrase entière. - Les sous-titres et bandeaux nominatifs respectent une marge de sécurité et ne se masquent pas mutuellement ; réduisez la musique pour que la voix soit claire, vérifiez que les transitions ne chevauchent pas deux pistes vocales. Conservez les SRT et les sources vocales non mixées pour faciliter les corrections.
Peaufinage avec Shotcut et livraison
project.py shotcut video_finale.mp4 --output nouvelle_version.mltcrée un point de départ pour le peaufinage dans Shotcut, contenant les segments vidéo rendus, permettant d'ajuster le montage, la musique et les niveaux sonores. Shotcut utilise des effets CPU classiques et une sortie logicielle ; si nécessaire, réduisez la mise à l'échelle de l'aperçu et activez les proxies. Ne demandez pas à l'utilisateur d'activer l'encodage matériel.- Le texte, les sous-titres et les transitions de Remotion sont intégrés dans le segment vidéo, ce ne sont pas des calques de texte natifs de Shotcut. Pour modifier le texte ou les animations, revenez au projet Remotion et réexportez ; n'affirmez pas que le MLT permet de modifier ces effets mot par mot. Si des calques séparés ou du texte natif sont demandés, créez-les et vérifiez-les réellement.
- Utilisez
media.py checkpour décoder complètement et vérifier les images noires, le silence et les erreurs, puis vérifiez manuellement le générique, le milieu des transitions, les sous-titres les plus longs, les bandeaux nominatifs et le générique de fin, écoutez la voix/la musique et la synchronisation. Les images noires et le silence peuvent être intentionnels, à interpréter. - Livrez : MP4, vignette, projet Remotion et médias, project.json, SRT, ainsi que le MLT Shotcut réellement créé et la méthode de modification. Exportez une nouvelle version, n'écrasez pas silencieusement un fichier existant ; ne modifiez pas les sources ou les node_modules partagés.
- Avant de livrer le MLT, chargez-le réellement avec Shotcut ou ses outils MLT ; si seuls les formats XML sont validés, expliquez clairement que le chargement dans l'éditeur n'a pas été vérifié. Les fonctionnalités non testées ne doivent pas être déclarées réussies.
- Un MP4 H.264 normal ne conserve pas la transparence. Si une animation transparente est demandée, créez une composition transparente dédiée et testez avec une séquence d'images RGBA PNG ou un encodage alpha compatible.
À la fin, indiquez l'emplacement des fichiers, les paramètres de sortie testés, la portée des modifications, les sous-titres à relire et les éléments non encore validés. Les licences des outils sont soumises aux conditions de chaque logiciel ; les quotas de compte de l'agent IA sont en sus.