← Recherche

FFmpeg Auto-Assemble
Media 📌 Version épinglée : commit 96c49b3
⚙ Prérequis: Avant de commencer…

FFmpeg Auto-Assemble

L’essentiel
Quoi
Coût
Gratuit
Prérequis
Avant de commencer : lis ce prompt d'installation au complet, dis-moi en quelques lignes ce que ce skill fait et ce que son installation implique, et attends mon feu vert avant de faire quoi que ce soit d'autre.
Installation
Copiez le prompt d’installation ci-dessous dans votre Muse — votre agent fait le reste.

Version :

⌁

Installation

Copiez le dossier d’installation ci-dessous, puis collez-le dans Muse📌 Version épinglée : commit 96c49b3
Envie d'être encore plus prudent ?

Le prompt d'installation ci-dessous inclut déjà les étapes de vérification : votre agent suit la checklist communautaire avant d'installer tout ce qui contient du code exécutable. Vous en voulez plus ?

Comment vérifier une création avant de l’installer →

🔒 Sécurité et provenance
📌 Version épinglée : commit 96c49b3 · 2026-10-19
Skill Harbor ne révise jamais le code des skills listés. Ce sont des faits datés sur le prompt d’installation et notre test d’installation, pas une certification de sécurité. Révisez un skill vous-même avant de l’installer. Comment nous vérifions

Avant de commencer : lis ce prompt d'installation au complet, dis-moi en quelques lignes ce que ce skill fait et ce que son installation implique, et attends mon feu vert avant de faire quoi que ce soit d'autre. Prérequis : aucun pour l'installation elle-même : aucun compte, aucune clé API, aucun service payant, et rien d'autre à installer d'abord — installer, c'est seulement copier le dossier du skill. Utiliser le skill ensuite est une autre affaire, alors lis ceci d'abord : le rendu exige (1) Python 3.9 ou plus récent avec trois paquets pip — Pillow, NumPy et edge-tts (le requirements.txt du dépôt demande pillow>=10, numpy>=1.24, edge-tts>=6.1) — aucun d'eux n'est installé par cette installation ; (2) ffmpeg (compilé avec libass, et libx264 pour l'encodage) et ffprobe dans le PATH — ffmpeg est une installation système séparée, pas un paquet pip ; et (3) une police CJK installée sur le système pour les sous-titres et cartes incrustés (les scripts en détectent une automatiquement ; sous Linux, c'est typiquement Noto Sans CJK). Une route à l'usage utilise aussi le réseau, sans clé ni compte : par défaut, chaque ligne de narration est envoyée au service en ligne Edge TTS de Microsoft via la bibliothèque edge-tts (divulgué au complet au point 2) — le mode --tts none évite entièrement le réseau. Je fournis les entrées moi-même : un storyboard.json plus les images de produit ou clips vidéo qu'il référence. Installe-moi « ffmpeg-auto-assemble ». Il transforme un storyboard.json (images de produit ou clips vidéo plus un texte de narration) en une courte vidéo ecommerce terminée, par un seul pipeline ffmpeg : synthèse de la voix off, un plan par entrée du storyboard (mouvement Ken Burns sur une image fixe, ou clip vidéo rogné), transitions xfade, sous-titres ASS incrustés avec titres et appels à l'action stylés, musique de fond avec abaissement automatique sous la voix (un fond synthétisé localement et libre de droits par défaut, ou mon propre fichier de musique), et normalisation de la sonie en deux passes à environ -14 LUFS, avec en sortie un MP4 (1080x1920, 9:16, par défaut ; --size permet aussi par ex. 1080x1080 ou 1920x1080) plus un fichier de sous-titres .srt à côté. Dépôt : https://github.com/xianyu110/ecommerce-video-skills (le skill est tout le dossier skills/ffmpeg-auto-assemble/ au commit épinglé : SKILL.md plus son dossier scripts/, 6 fichiers) Version épinglée : installe le code au commit 96c49b349b7d975bda8f05ce6669c1d33500c269 exactement. Ne substitue pas une version plus récente. Si ce commit est inaccessible, arrête-toi et dis-le-moi. 1. Clone https://github.com/xianyu110/ecommerce-video-skills dans un dossier temporaire, place-toi au commit 96c49b349b7d975bda8f05ce6669c1d33500c269, et copie le dossier skills/ffmpeg-auto-assemble/ de ce checkout. Compare ensuite chaque fichier du dossier aux empreintes enregistrées pour cette fiche le 2026-10-19 : [FINGERPRINTS] - SKILL.md: SHA-256 2fcedce4f6b5c87660cc4def11f31d07fe2e02dc5697930e5551c593de7e3c28 - scripts/assemble.py: SHA-256 e55ed538d3662133724b9d1154ee8f6f9419253636388fbb9d8a54c280528048 - scripts/make_bgm.py: SHA-256 f02581b6d77422767b839f0c3b8a1475f74e9910e7a5efc817b71ba97eb5783e - scripts/make_cards.py: SHA-256 b6173bebd9a9a3d69d14688b091d3328f0e4792c72e6fde7530205babc2136d5 - scripts/make_subs.py: SHA-256 8c8e9208e5dee5db0f92ed3e5fc9850f99896be5ca02792d79b5f35b26f89cef - scripts/tts_edge.py: SHA-256 f3263ce63fa29e106cc38be0cec2daf564e9609e37c99c3709eef0136c0a9d76 Si un fichier ne correspond pas, il a changé depuis la préparation de la fiche : ne l'installe pas encore, dis-moi ce que tu as trouvé et laisse-moi décider. 2. Lis SKILL.md au complet et lis les cinq scripts de scripts/ (assemble.py, make_bgm.py, make_cards.py, make_subs.py, tts_edge.py), et dis-moi en mots simples : ce que le skill fait quand on l'utilise, à quels services il se connecte, s'il lit ou envoie des informations personnelles ou des clés, et tout ce qui semble inhabituel. Arrête-toi sur tout signal d'alerte et dis-le-moi avant d'aller plus loin. Confirme ces points à partir des fichiers : - Le dossier du skill contient 6 fichiers seulement : SKILL.md (5 125 octets) et cinq scripts Python dans scripts/ (assemble.py 14 821 octets, make_bgm.py 2 909 octets, make_cards.py 8 184 octets, make_subs.py 5 751 octets, tts_edge.py 4 628 octets). Les cinq scripts de ce dossier sont des copies à l'octet près des scripts du même nom à la racine du dépôt (scripts/) : le skill est autonome dans son propre dossier — assemble.py importe make_subs, make_bgm et tts_edge depuis son propre dossier seulement, et n'a besoin d'aucun fichier d'ailleurs dans le dépôt. Le texte de flux de travail de SKILL.md mentionne des skills frères (un storyboard peut être rédigé par selling-point-storyboard, et les vidéos terminées peuvent passer à platform-spec-export et cover-title-ab), mais ce sont des suggestions de flux optionnelles, pas des dépendances de fichiers de ce dossier. Le chemin d'exemple du démarrage rapide, examples/aura-bottle/storyboard.json, est un exemple du dépôt, pas quelque chose dont ce skill a besoin pour mes propres storyboards. - Rien n'est envoyé nulle part pendant l'installation elle-même ; le seul téléchargement à l'installation est le dossier du skill depuis GitHub au commit épinglé. Aucun script n'est exécuté pendant l'installation, aucune clé n'est demandée, et il n'y a aucune télémétrie dans le dossier. Le dossier ne lit aucune variable d'environnement, aucune clé API et aucun fichier d'identifiants — confirmé dans les cinq scripts. - Ce qui quitte cette machine à l'usage, divulgué ici avant que ça arrive — utiliser le skill est une étape séparée qui ne commence que quand je demande une vidéo, et il y a exactement une route réseau dans le dossier : la voix off par défaut. scripts/tts_edge.py (appelé par assemble.py sauf si je passe --tts none) remet chaque ligne de narration — le texte du champ line du storyboard (ou le champ localisé que je choisis, par ex. line_en), une ligne par plan — avec le nom de la voix (zh-CN-YunxiNeural par défaut, ou la voix du storyboard / celle que je choisis), le débit (rate) et la hauteur (pitch), à la bibliothèque edge-tts, qui les envoie au service en ligne Edge TTS de Microsoft et télécharge en retour l'audio MP3 synthétisé ; le script le rogne ensuite et le convertit localement avec ffmpeg. Aucune clé API, aucun compte et aucun paiement ne sont en jeu, et rien d'autre n'est envoyé : pas mes images, pas mes clips vidéo, pas le fichier storyboard lui-même — seulement le texte de narration que je mets dans les champs line, le nom de la voix, le débit et la hauteur. Les résultats sont mis en cache localement sous un hachage de (texte, voix, débit, hauteur), donc relancer la même ligne ne la renvoie pas. Le mode autonome tts_edge.py --list <locale> interroge aussi ce même service Microsoft pour sa liste de voix. Avec --tts none, rien n'est envoyé nulle part : les durées des plans sont estimées d'après le nombre de caractères de la narration et le rendu est un aperçu silencieux, entièrement hors ligne. - Une correction d'honnêteté au texte amont, à me répéter si je le cite : SKILL.md et le README qualifient ce pipeline de « purement local » / « aucun service cloud ». C'est vrai du rendu lui-même et de --tts none, mais la voix off par défaut est un service Microsoft en ligne, comme divulgué ci-dessus — le texte de narration quitte bel et bien cette machine sur la route par défaut. - Les parties locales seulement à l'usage : tout le reste roule sur cette machine. assemble.py pilote le ffmpeg/ffprobe installé localement (rendu par plan, chaîne xfade, décodage audio, mesure de sonie) et Pillow (préparation des images fixes, fonds remplis par flou) ; make_bgm.py synthétise la musique de fond par défaut localement avec NumPy (aucun téléchargement, aucun enjeu de licence), ou assemble.py boucle un fichier de musique que je fournis localement ; make_subs.py bâtit les sous-titres ASS/SRT localement (il ne lance que la commande locale fc-list pour détecter une police CJK) ; make_cards.py dessine les cartes produit/fin localement avec Pillow. Les chemins d'images/vidéos du storyboard sont lus localement, relativement au fichier storyboard. - N'installe pas Pillow, NumPy, edge-tts ni ffmpeg pendant cette installation, n'exécute aucun des cinq scripts, et ne rends aucune vidéo : la configuration des prérequis de rendu est ma décision, plus tard, quand je demande vraiment une vidéo. 3. Quand je dis « yes, install », installe-le comme skill : copie tout le dossier ffmpeg-auto-assemble dans le répertoire des skills de l'agent, dans un dossier nommé « ffmpeg-auto-assemble », en gardant ses 6 fichiers (SKILL.md à sa racine et les cinq scripts dans son sous-dossier scripts/). Un clone manuel suivi de la copie du dossier skills/ffmpeg-auto-assemble dans ~/.claude/skills/ est la route décrite ici ; toute autre route ne convient que si chaque fichier installé correspond à son empreinte. 4. Vérifie sans appels réseau : frontmatter valide (name: ffmpeg-auto-assemble), les 6 fichiers en place avec des empreintes concordantes. N'exécute pas assemble.py, make_bgm.py, make_cards.py, make_subs.py ou tts_edge.py pour vérifier. 5. Indique ce qui a été installé, où, et ce qu'il me reste à faire moi-même (par exemple : installer moi-même Python 3.9+ avec Pillow, NumPy et edge-tts, et ffmpeg avec libass plus ffprobe, et une police CJK ; écrire ou obtenir un storyboard.json et fournir les images de produit ou clips vidéo qu'il référence, à 1 000 px ou plus pour les images de produit ; décider moi-même si la voix off peut envoyer mes lignes de narration au service Edge TTS de Microsoft, ou utiliser --tts none pour un aperçu silencieux entièrement hors ligne ; utiliser le skill est une étape séparée qui ne commence que quand je le demande, et l'envoi à l'usage divulgué ci-dessus arrive seulement à ce moment-là, seulement sur la route de voix off par défaut). GitHub est optionnel : si j'ai un compte GitHub ou la CLI gh, tu peux l'utiliser ; sinon l'accès public suffit. Ne jamais l'exiger sauf s'il figure dans les prérequis ci-dessus. Règles : ne touche à rien en dehors du dossier temporaire et de la cible d'installation. Si quelque chose semble anormal, arrête-toi et demande-moi.

?

Questions

Comment installer une création ?

Chaque fiche produit contient un prompt d’installation à copier-coller. Collez-le dans votre Muse et il installe la création pour vous — sans configuration manuelle.

Où va mon argent ?

Directement au vendeur. Skill Harbor ne traite jamais les paiements : le paiement se fait sur la page du vendeur, généralement via Stripe.

Que signifie le ✓ à côté du nom d’un créateur ?

Il signifie que nous avons confirmé l’identité de la personne derrière la fiche. Il ne dit rien sur le code lui-même — vérifiez toujours une création avant de l’installer.