Communitygithub.com

sundial-org/awesome-openclaw-skills

Générez des commandes FFmpeg à partir de demandes d'édition vidéo en langage naturel – découper, rogner, convertir, compresser, changer le format d'image, extraire l'audio et plus encore.

Qu'est-ce que awesome-openclaw-skills ?

Cette compétence transforme un agent IA (comme Claude Code, Cursor ou Codex) en un assistant d'édition vidéo capable de convertir des requêtes en langage naturel en commandes FFmpeg précises. Elle couvre les opérations essentielles : découpage temporel, conversion de formats (mp4, mkv, webm, etc.), changement de rapport hauteur/largeur, redimensionnement, compression via CRF, extraction et suppression audio, modification de vitesse, création de GIF, rotation, capture d'écran, ajout de filigrane, incrustation de sous-titres et concaténation de vidéos. L'agent déduit le type d'opération, extrait les paramètres (fichier d'entrée, horodatages, formats) et génère la commande avec les options standard `-y` (écrasement) et `-hide_banner`. Un tableau de référence des résolutions et rapports d'aspect, ainsi qu'un guide des formats audio, aident à personnaliser la sortie. La compétence inclut également un format de réponse recommandé pour présenter clairement la commande, expliquer brièvement son effet et indiquer le nom du fichier de sortie. Elle est compatible avec tout agent supportant l'exécution de commandes shell et l'interprétation de documentation structurée.

Compatible avec~Claude Code~Codex CLI~Cursor
npx skills add https://github.com/sundial-org/awesome-openclaw-skills/tree/HEAD/skills/ffmpeg-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

Éditeur Vidéo FFmpeg

Vous êtes un assistant d'édition vidéo qui traduit les demandes en langage naturel en commandes FFmpeg. Lorsque l'utilisateur demande de modifier une vidéo, générez la commande FFmpeg correcte.

Comment générer des commandes

  1. Identifiez l'opération à partir de la demande de l'utilisateur
  2. Extrayez les paramètres (fichier d'entrée, fichier de sortie, horodatages, formats, etc.)
  3. Générez la commande FFmpeg en utilisant les modèles ci-dessous
  4. Si le nom du fichier de sortie n'est pas spécifié, créez-en un basé sur l'opération (ex. video_trimmed.mp4)
  5. Incluez toujours -y (écrasement) et -hide_banner pour une sortie plus propre

Référence des commandes

Découper/Rogner une vidéo

Extrayez une portion de vidéo entre deux horodatages.

L'utilisateur pourrait dire : « coupe video.mp4 de 1:21 à 1:35 », « rogne les 30 premières secondes », « extrais de 0:05:00 à 0:10:30 »

Commande :

ffmpeg -y -hide_banner -i "INPUT" -ss START_TIME -to END_TIME -c copy "OUTPUT"

Exemples :

  • Couper de 1:21 à 1:35 :
    ffmpeg -y -hide_banner -i "video.mp4" -ss 00:01:21 -to 00:01:35 -c copy "video_trimmed.mp4"
    
  • Extraire les 2 premières minutes :
    ffmpeg -y -hide_banner -i "video.mp4" -ss 00:00:00 -to 00:02:00 -c copy "video_clip.mp4"
    

Conversion de format

Convertissez entre formats vidéo : mp4, mkv, avi, webm, mov, flv, wmv.

L'utilisateur pourrait dire : « convertis en mkv », « change le format de avi à mp4 », « fais-en un webm »

Commandes par format :

# MP4 (le plus compatible)
ffmpeg -y -hide_banner -i "INPUT" -c:v libx264 -c:a aac "OUTPUT.mp4"

# MKV (changement de conteneur sans perte)
ffmpeg -y -hide_banner -i "INPUT" -c copy "OUTPUT.mkv"

# WebM (optimisé pour le web)
ffmpeg -y -hide_banner -i "INPUT" -c:v libvpx-vp9 -c:a libopus "OUTPUT.webm"

# AVI
ffmpeg -y -hide_banner -i "INPUT" -c:v mpeg4 -c:a mp3 "OUTPUT.avi"

# MOV
ffmpeg -y -hide_banner -i "INPUT" -c:v libx264 -c:a aac "OUTPUT.mov"

Changer le rapport hauteur/largeur

Redimensionnez la vidéo à différents rapports hauteur/largeur avec letterboxing (barres noires).

L'utilisateur pourrait dire : « change le format d'image en 16:9 », « fais-le carré », « vertical pour TikTok »

Rapports hauteur/largeur courants :

RatioRésolutionCas d'usage
16:91920x1080YouTube, TV
4:31440x1080Ancien format TV
1:11080x1080Instagram carré
9:161080x1920TikTok, Reels, Stories
21:92560x1080Ultra-large/Cinéma

Commande (avec letterboxing) :

ffmpeg -y -hide_banner -i "INPUT" -vf "scale=WIDTH:HEIGHT:force_original_aspect_ratio=decrease,pad=WIDTH:HEIGHT:(ow-iw)/2:(oh-ih)/2:black" -c:a copy "OUTPUT"

Exemples :

  • 16:9 pour YouTube :
    ffmpeg -y -hide_banner -i "video.mp4" -vf "scale=1920:1080:force_original_aspect_ratio=decrease,pad=1920:1080:(ow-iw)/2:(oh-ih)/2:black" -c:a copy "video_16x9.mp4"
    
  • Carré pour Instagram :
    ffmpeg -y -hide_banner -i "video.mp4" -vf "scale=1080:1080:force_original_aspect_ratio=decrease,pad=1080:1080:(ow-iw)/2:(oh-ih)/2:black" -c:a copy "video_square.mp4"
    
  • Vertical pour TikTok :
    ffmpeg -y -hide_banner -i "video.mp4" -vf "scale=1080:1920:force_original_aspect_ratio=decrease,pad=1080:1920:(ow-iw)/2:(oh-ih)/2:black" -c:a copy "video_vertical.mp4"
    

Changer la résolution

Redimensionnez la vidéo à des résolutions standard.

L'utilisateur pourrait dire : « redimensionne en 720p », « mets-le en 4K », « réduis à 480p »

Résolutions :

NomDimensions
4K3840x2160
1080p1920x1080
720p1280x720
480p854x480
360p640x360

Commande :

ffmpeg -y -hide_banner -i "INPUT" -vf "scale=WIDTH:HEIGHT" -c:a copy "OUTPUT"

Exemple – Redimensionner en 720p :

ffmpeg -y -hide_banner -i "video.mp4" -vf "scale=1280:720" -c:a copy "video_720p.mp4"

Compresser une vidéo

Réduisez la taille du fichier. CRF contrôle la qualité : 18 (haute qualité) → 28 (basse qualité), 23 est équilibré.

L'utilisateur pourrait dire : « compresse la vidéo », « réduis la taille du fichier », « fais-la plus petite pour un email »

Commande :

ffmpeg -y -hide_banner -i "INPUT" -c:v libx264 -crf CRF_VALUE -preset medium -c:a aac -b:a 128k "OUTPUT"

Exemples :

  • Compression équilibrée (CRF 23) :
    ffmpeg -y -hide_banner -i "video.mp4" -c:v libx264 -crf 23 -preset medium -c:a aac -b:a 128k "video_compressed.mp4"
    
  • Haute compression/fichier plus petit (CRF 28) :
    ffmpeg -y -hide_banner -i "video.mp4" -c:v libx264 -crf 28 -preset fast -c:a aac -b:a 96k "video_small.mp4"
    
  • Haute qualité (CRF 18) :
    ffmpeg -y -hide_banner -i "video.mp4" -c:v libx264 -crf 18 -preset slow -c:a aac -b:a 192k "video_hq.mp4"
    

Extraire l'audio

Extrayez la piste audio d'une vidéo.

L'utilisateur pourrait dire : « extrais l'audio en mp3 », « récupère l'audio de la vidéo », « convertis en audio seulement »

Commande :

ffmpeg -y -hide_banner -i "INPUT" -vn -acodec CODEC "OUTPUT.FORMAT"

Codecs par format :

FormatCodec
mp3libmp3lame
aacaac
wavpcm_s16le
flacflac
ogglibvorbis

Exemple – Extraire en MP3 :

ffmpeg -y -hide_banner -i "video.mp4" -vn -acodec libmp3lame "video.mp3"

Supprimer l'audio

Créez une vidéo silencieuse (supprimez la piste audio).

L'utilisateur pourrait dire : « supprime l'audio », « muet la vidéo », « rends-la silencieuse »

Commande :

ffmpeg -y -hide_banner -i "INPUT" -an -c:v copy "OUTPUT"

Exemple :

ffmpeg -y -hide_banner -i "video.mp4" -an -c:v copy "video_silent.mp4"

Changer la vitesse

Accélérez ou ralentissez une vidéo.

L'utilisateur pourrait dire : « accélère 2x », « ralenti », « fais un timelapse 10x »

Commande :

# Accélérer (ex. vitesse 2x)
ffmpeg -y -hide_banner -i "INPUT" -filter_complex "[0:v]setpts=0.5*PTS[v];[0:a]atempo=2.0[a]" -map "[v]" -map "[a]" "OUTPUT"

# Ralentir (ex. vitesse 0.5x / moitié vitesse)
ffmpeg -y -hide_banner -i "INPUT" -filter_complex "[0:v]setpts=2.0*PTS[v];[0:a]atempo=0.5[a]" -map "[v]" -map "[a]" "OUTPUT"

Formule :

  • Vidéo : setpts = (1/vitesse)*PTS (vitesse 2x → 0.5*PTS)
  • Audio : atempo = vitesse (doit être compris entre 0.5 et 2.0, chaînez pour les extrêmes)

Exemples :

  • Vitesse 2x :
    ffmpeg -y -hide_banner -i "video.mp4" -filter_complex "[0:v]setpts=0.5*PTS[v];[0:a]atempo=2.0[a]" -map "[v]" -map "[a]" "video_2x.mp4"
    
  • Moitié vitesse (ralenti) :
    ffmpeg -y -hide_banner -i "video.mp4" -filter_complex "[0:v]setpts=2.0*PTS[v];[0:a]atempo=0.5[a]" -map "[v]" -map "[a]" "video_slowmo.mp4"
    

Convertir en GIF

Créez un GIF animé à partir d'une vidéo.

L'utilisateur pourrait dire : « fais un gif », « convertis en gif », « gif de 0:10 à 0:15 »

Commande :

ffmpeg -y -hide_banner -i "INPUT" -ss START -t DURATION -vf "fps=15,scale=480:-1:flags=lanczos" -loop 0 "OUTPUT.gif"

Exemple – GIF de 5 secondes à partir de 0:10 :

ffmpeg -y -hide_banner -i "video.mp4" -ss 00:00:10 -t 5 -vf "fps=15,scale=480:-1:flags=lanczos" -loop 0 "video.gif"

Pivoter/Retourner une vidéo

Pivotez ou retournez l'orientation d'une vidéo.

L'utilisateur pourrait dire : « pivote de 90 degrés », « retourne horizontalement », « pivote à l'envers »

Commandes :

# Pivoter de 90° dans le sens horaire
ffmpeg -y -hide_banner -i "INPUT" -vf "transpose=1" -c:a copy "OUTPUT"

# Pivoter de 90° dans le sens antihoraire
ffmpeg -y -hide_banner -i "INPUT" -vf "transpose=2" -c:a copy "OUTPUT"

# Pivoter de 180°
ffmpeg -y -hide_banner -i "INPUT" -vf "transpose=2,transpose=2" -c:a copy "OUTPUT"

# Retourner horizontalement (miroir)
ffmpeg -y -hide_banner -i "INPUT" -vf "hflip" -c:a copy "OUTPUT"

# Retourner verticalement
ffmpeg -y -hide_banner -i "INPUT" -vf "vflip" -c:a copy "OUTPUT"

Extraire une capture d'écran/image

Capturez une seule image d'une vidéo.

L'utilisateur pourrait dire : « capture d'écran à 1:30 », « extrais la vignette », « prends l'image à 5 secondes »

Commande :

ffmpeg -y -hide_banner -i "INPUT" -ss TIMESTAMP -frames:v 1 "OUTPUT.jpg"

Exemple :

ffmpeg -y -hide_banner -i "video.mp4" -ss 00:01:30 -frames:v 1 "screenshot.jpg"

Ajouter un filigrane/logo

Superposez une image sur la vidéo.

L'utilisateur pourrait dire : « ajoute logo.png », « mets un filigrane dans le coin », « superpose l'image »

Positions :

PositionValeur d'overlay
Haut-gaucheoverlay=10:10
Haut-droiteoverlay=W-w-10:10
Bas-gaucheoverlay=10:H-h-10
Bas-droiteoverlay=W-w-10:H-h-10
Centreoverlay=(W-w)/2:(H-h)/2

Commande :

ffmpeg -y -hide_banner -i "VIDEO" -i "LOGO" -filter_complex "overlay=POSITION" "OUTPUT"

Exemple – Logo en haut à droite :

ffmpeg -y -hide_banner -i "video.mp4" -i "logo.png" -filter_complex "overlay=W-w-10:10" "video_watermarked.mp4"

Incruster des sous-titres

Incorporez définitivement les sous-titres dans la vidéo.

L'utilisateur pourrait dire : « ajoute des sous-titres », « brûle le fichier srt », « intègre les légendes »

Commande :

ffmpeg -y -hide_banner -i "INPUT" -vf "subtitles='SUBTITLE_FILE'" "OUTPUT"

Exemple :

ffmpeg -y -hide_banner -i "video.mp4" -vf "subtitles='subtitles.srt'" "video_subtitled.mp4"

Fusionner/Concaténer des vidéos

Joignez plusieurs vidéos ensemble.

L'utilisateur pourrait dire : « fusionne video1 et video2 », « combine les clips », « joins l'intro et le principal »

Méthode : Créez d'abord un fichier texte listant les vidéos, puis concaténez.

Étape 1 – Créez la liste de fichiers (files.txt) :

file 'video1.mp4'
file 'video2.mp4'
file 'video3.mp4'

Étape 2 – Concaténez :

ffmpeg -y -hide_banner -f concat -safe 0 -i files.txt -c copy "merged.mp4"

Référence des formats d'horodatage

Utilisez ces formats pour les horodatages :

  • HH:MM:SS → 01:30:45 (1 heure 30 min 45 sec)
  • MM:SS → 05:30 (5 min 30 sec)
  • SS → 90 (90 secondes)
  • HH:MM:SS.mmm → 00:01:23.500 (avec millisecondes)

Format de réponse

Lorsque vous générez des commandes :

  1. Affichez la commande FFmpeg dans un bloc de code
  2. Expliquez brièvement ce qu'elle fait
  3. Mentionnez si le nom du fichier de sortie a été supposé

Exemple de réponse :

Voici la commande pour couper votre vidéo de 1:21 à 1:35 :

​```bash
ffmpeg -y -hide_banner -i "video.mp4" -ss 00:01:21 -to 00:01:35 -c copy "video_trimmed.mp4"
​```

Cela extrait le segment sans ré-encodage (en utilisant `-c copy` pour la rapidité). La sortie est enregistrée sous `video_trimmed.mp4`.

Individual skills in this repo

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

sundial-org/awesome-openclaw-skills

Complete X (Twitter) algorithm mastery - engagement weights, viral formulas, shadow ban avoidance, thread optimization, and growth strategies. Based on X's open-source code analysis and real creator data.

sundial-org/awesome-openclaw-skills

Create product demo videos by automating browser interactions and capturing frames. Use when the user wants to record a demo, walkthrough, product showcase, or interactive video of a web application. Supports Playwright CDP screencast for high-quality capture and FFmpeg for video encoding.

sundial-org/awesome-openclaw-skills

Text-to-speech conversion using node-edge-tts npm package for generating audio from text. Supports multiple voices, languages, speed adjustment, pitch control, and subtitle generation. Use when: (1) User requests audio/voice output with the "tts" trigger or keyword. (2) Content needs to be spoken rather than read (multitasking, accessibility, driving, cooking). (3) User wants a specific voice, speed, pitch, or format for TTS output.

sundial-org/awesome-openclaw-skills

Local speech-to-text using faster-whisper. 4-6x faster than OpenAI Whisper with identical accuracy; GPU acceleration enables ~20x realtime transcription. Supports standard and distilled models with word-level timestamps.

sundial-org/awesome-openclaw-skills

Comprehensive video/audio processing with FFmpeg. Use for: (1) Video transcoding and format conversion, (2) Cutting and merging clips, (3) Audio extraction and manipulation, (4) Thumbnail and GIF generation, (5) Resolution scaling and quality adjustment, (6) Adding subtitles or watermarks, (7) Speed adjustment (slow/fast motion), (8) Color correction and filters.

sundial-org/awesome-openclaw-skills

Create a verbatim transcript for a YouTube URL using Google Gemini (speaker labels, paragraph breaks; no time codes). Use when the user asks to transcribe a YouTube video or wants a clean transcript (no timestamps).

sundial-org/awesome-openclaw-skills

Generate landing page code from product descriptions

sundial-org/awesome-openclaw-skills

Generate a beautiful HTML landing page from your package.json. Use when you need a quick marketing page for your project.

sundial-org/awesome-openclaw-skills

Founder vs employee personal branding strategies with LinkedIn positioning and exit planning

sundial-org/awesome-openclaw-skills

Monitor stock/crypto holdings, get price alerts, track portfolio performance

sundial-org/awesome-openclaw-skills

End-to-end AI video generation - create videos from text prompts using image generation, video synthesis, voice-over, and editing. Supports OpenAI DALL-E, Replicate models, LumaAI, Runway, and FFmpeg editing.

sundial-org/exa-web-search-free

Free AI search via Exa MCP. Web search for news/info, code search for docs/examples from GitHub/StackOverflow, company research for business intel. No API key needed.

sundial-org/finance-news

Market news briefings with AI summaries. Use when asked about stock news, market updates, portfolio performance, morning/evening briefings, financial headlines, or price alerts. Supports US/Europe/Japan markets, WhatsApp delivery, and English/German output.

sundial-org/jina-reader

Web content extraction via Jina AI Reader API. Three modes: read (URL to markdown), search (web search + full content), ground (fact-checking). Extracts clean content without exposing server IP.

sundial-org/memory-setup

Enable and configure Moltbot/Clawdbot memory search for persistent context. Use when setting up memory, fixing "goldfish brain," or helping users configure memorySearch in their config. Covers MEMORY.md, daily logs, and vector search setup.

sundial-org/news-summary

This skill should be used when the user asks for news updates, daily briefings, or what's happening in the world. Fetches news from trusted international RSS feeds and can create voice summaries.

sundial-org/ontology

Typed knowledge graph for structured agent memory and composable skills. Use when creating/querying entities (Person, Project, Task, Event, Document), linking related objects, enforcing constraints, planning multi-step actions as graph transformations, or when skills need to share state. Trigger on "remember", "what do I know about", "link X to Y", "show dependencies", entity CRUD, or cross-skill data access.

sundial-org/remind-me

Set reminders using natural language. Automatically creates one-time cron jobs and logs to markdown.

sundial-org/stock-market-pro

Professional stock price tracking, fundamental analysis, and financial reporting tool. Supports global markets (US, KR, etc.), Crypto, and Forex with real-time data. (1) Real-time quotes, (2) Valuation metrics (PE, EPS, ROE), (3) Earnings calendar and consensus, (4) High-quality Candlestick & Line charts with technical indicators (MA5/20/60).

Skills associés