FFmpeg

De Wiki de Geonov
Révision datée du 15 février 2022 à 16:02 par Mathieu Ambrosy (discussion | contributions)
(diff) ← Version précédente | Voir la version actuelle (diff) | Version suivante → (diff)

FFmpeg est un outil Open Source de traitement et de conversion en ligne de commandes de données audio et vidéo.

Il est très efficace et performant.

1 Formats et codecs disponibles

ffmpeg -formats
ffmpeg -codecs

2 Convertir la piste audio

Conversion audio en AC3 :

ffmpeg -i source.mkv -vcodec copy -acodec ac3 dest.mkv

3 Convertir la piste vidéo

Conversion vidéo en H264 :

ffmpeg -i source.mkv -vcodec h264 -acodec copy dest.mkv

4 Convertir un mkv en avi (mpeg + mp3)

ffmpeg -i "input.mkv" -f avi -c:v mpeg4 -b:v 3000k -c:a libmp3lame -b:a 128k "output.avi"

5 Extraire une vidéo entre deux temps

Extrait sans conversion (copy) la piste vidéo 0 (v:0) et la piste audio 0 (a:0) entre 1:15:00 et 1:20:00 (hh:mm:ss) :

ffmpeg -i source.mkv -ss 1:15:00 -to 1:20:00 -map 0:v:0 -map 0:a:0 -c copy dest0.mkv

Extrait sans conversion (copy) la piste vidéo 0 (v:0) et la piste audio 1 (a:1) entre 1:15:00 et 1:20:00 (hh:mm:ss) :

ffmpeg -i source.mkv -ss 1:15:00 -to 1:20:00 -map 0:v:0 -map 0:a:1 -c copy dest1.mkv

6 Concaténer des vidéos

Créer un fichier "list.txt" avec :

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

Puis exécuter :

ffmpeg -f concat -safe 0 -i list.txt -c copy dest.mp4

7 Tourner une vidéo

Utiliser l'argument "transpose" avec l'une des valeurs suivantes :

  • 0 : rotation de 90° anti-horaire et retournement vertical
  • 1 : rotation de 90° horaire
  • 2 : rotation de 90° anti-horaire
  • 3 : rotation de 90° horaire et retournement vertical

Par exemple :

ffmpeg -i input.mp4 -vf "transpose=1" output.mp4

Pour une rotation de 180°, il faut enchainer 2 rotations, par exemple :

ffmpeg -i input.mp4 -vf "transpose=2,transpose=2" output.mp4