ffmpeg
Commandes ffmpeg pour convertir, extraire et manipuler audio/vidéo
Conversion
Convertir une vidéo en MP4
ffmpeg -i input.avi output.mp4
Convertir en WebM
ffmpeg -i input.mp4 -c:v libvpx-vp9 -crf 30 -b:v 0 output.webm
VP9 avec qualité constante, idéal pour le web
Convertir en audio MP3
ffmpeg -i input.mp4 -vn -acodec libmp3lame -q:a 2 output.mp3
-vn supprime la vidéo, -q:a 2 qualité haute
Convertir en audio Qualité Maximale (WAV)
ffmpeg -i video.mp4 -vn -acodec pcm_s16le output.wav
-vn supprime la vidéo, pcm_s16le format audio non compressé
Convertir en GIF
ffmpeg -i input.mp4 -vf "fps=15,scale=480:-1" -loop 0 output.gif
fps=15 images/sec, scale réduit la largeur à 480px
Extraction (Trim)
Extraire l'audio d'une vidéo
ffmpeg -i video.mp4 -vn -acodec copy audio.aac
-acodec copy copie le flux audio sans ré-encoder
Extraire une frame à un timestamp
ffmpeg -i video.mp4 -ss 00:01:30 -frames:v 1 frame.png
-ss position, -frames:v 1 une seule frame
Extraire un segment vidéo
ffmpeg -i input.mp4 -ss 00:00:30 -to 00:02:00 -c copy segment.mp4
-c copy pas de ré-encodage, très rapide
Extraire les sous-titres
ffmpeg -i video.mkv -map 0:s:0 subtitles.srt
0:s:0 premier flux de sous-titres
Compression
Compresser une vidéo avec H.264
ffmpeg -i input.mp4 -c:v libx264 -crf 23 -preset medium output.mp4
CRF 23 bon équilibre qualité/taille, preset contrôle la vitesse
Compresser avec H.265 (HEVC)
ffmpeg -i input.mp4 -c:v libx265 -crf 28 output.mp4
H.265 meilleure compression que H.264 à qualité égale
Réduire la résolution
ffmpeg -i input.mp4 -vf scale=1280:720 -c:a copy output.mp4
Redimensionne en 720p
Limiter le bitrate vidéo
ffmpeg -i input.mp4 -b:v 1M -maxrate 1M -bufsize 2M output.mp4
Limite à 1 Mbit/s
Manipulation
Concaténer des vidéos
ffmpeg -f concat -safe 0 -i files.txt -c copy output.mp4
files.txt contient la liste des fichiers (file 'video1.mp4')
Ajouter une piste audio à une vidéo
ffmpeg -i video.mp4 -i audio.mp3 -c:v copy -c:a aac -map 0:v -map 1:a output.mp4
Supprimer l'audio d'une vidéo
ffmpeg -i input.mp4 -an output.mp4
-an supprime toutes les pistes audio
Accélérer une vidéo x2
ffmpeg -i input.mp4 -filter:v "setpts=0.5*PTS" -filter:a "atempo=2.0" output.mp4
Ajouter un filigrane
ffmpeg -i video.mp4 -i logo.png -filter_complex "overlay=10:10" output.mp4
Positionne le logo en haut à gauche (10px, 10px)
Informations
Afficher les infos d'un fichier média
ffprobe -v quiet -print_format json -show_format -show_streams input.mp4
Sortie JSON avec toutes les métadonnées
Lister les codecs disponibles
ffmpeg -codecs
Lister les formats supportés
ffmpeg -formats