Outils pour utilisateurs

Outils du site


logiciels:ffmpeg

FFMPEG : lecture et encodage de vidéo


Encoder une vidéo

FFmpeg est un logiciel de lecture et encodage de vidéo très puissant.
Son utilisation en ligne de commande offre la possibilité de convertir des fichiers vidéo d'un format à un autre.

Quelque exemples de ligne pour convertir mes videos réalisées avec mon appareil photo Panasonic.

Convertir une vidéo mov en flv :

ffmpeg -i ma-video.MOV -ar 44100 -ab 96k -s 1280x720 -b:v 50000k -r 30 ma-video.flv

Convertir une vidéo mov en WebM (VP8+Vorbis) en deux passes :

ffmpeg -i ma-video.MOV -threads 0 -vcodec libvpx -b:v 2000k -minrate 0 -maxrate 9000k -rc_lookahead 16 -keyint_min 0 -g 360 -skip_threshold 0 -level 116 -qmin 1 -qmax 51 -an -pass 1 -passlogfile pass1.fpf pass1.webm
ffmpeg -i ma-video.MOV -threads 0 -vcodec libvpx -b:v 2000k -minrate 0 -maxrate 9000k -rc_lookahead 16 -keyint_min 0 -g 360 -skip_threshold 0 -level 116 -qmin 1 -qmax 51 -acodec libvorbis -ar 8K -ab 64k -ac 2 -pass 2 -passlogfile pass1.fpf video-final.webm
  

Paramètres modifiables :

  • -i [fichier source] – Nom et chemin du fichier
  • -codec:v – indique l'encodeur vidéo utilisé, pour nous c'est la librairie libvpx VP8
  • -quality good – indique la qualité de l'encodeur vidéo VP8. les choix disponibles sont best / good / realtime. (La choix “best” apporte un gain de qualité insignifiant)
  • -cpu-used [0-5] – indique la vitesse de l'encodeur vidéo VP8. (Une valeur faible indique une bonne qualité)
  • -b:v [bitrate] – indique le débit vidéo souhaité ( 2000K pour du 720p et 4500 pour 1080p )
  • -r [25] – indique à l'encodeur, le nombre d'image par seconde (fps) du fichier de sortie. (Pour passer de 50fps à 25 fps)
  • -maxrate – Indique la limite haute sur le flux vidéo à ne pas dépasser.
  • -bufsize – indique à l'encodeur le niveau auquel il est possible d'aller de façon ponctuel en terme de débit en cas de besoin. de façon générale le double du maxrate est utiliser afin de tenir sur 2 secondes.
  • -qmin 10 -qmax 42 – Minimum et maximum des valeurs de quantification.
  • -threads [num] – indique le nombre de fil d'exécution à utiliser. Indiquez le nombre de CPU disponibles.
  • -vf scale=[width:height] – Changer de résolution. (La valeur “-1″ signifie “gardez le ratio”, exemple: “-1:360″ produira un fichier de 360p)
  • -codec:a libvorbis – indique à l'encodeur libvorbis de produire un fichier audio vorbis.
  • -b:a [bitrate] – Débit du flux audio
  • -f webm – indique à FFmpeg le format de sortie (si l'extension webm est présente sur le fichier de sortie, ce paramètre devient inutile)
  • -pass [1|2] – indique à FFmpeg de faire du multiple passes et indique quelle passe est à traiter
  • -an – désactive l'encodage audio, pour gagner du temps au premier à la première passe d'encodage

Placer l'index du WebM en tête du fichier pour optimiser la lecture sur internet avec mkclean

./mkclean –optimize –remux FICHIER_FINAL.webm FICHIER_FINAL_WEB.webm

Convertir une vidéo mov en mkv haute définition :

ffmpeg -i ma-video -an -vcodec libx264 -pass 1 -preset veryslow -threads 0 -b:v 3000k -x264opts frameref=15:fast_pskip=0 -f rawvideo -y /dev/null
ffmpeg -i ${input_file} -acodec libvorbis -ab 64k -ar 8k -ac 2 -vcodec libx264 -pass 2 -preset veryslow -threads 0 -b:v 3000k -x264opts frameref=15:fast_pskip=0 ma-video.mkv

Paramètres modifiables :

  • -threads 0 : dépend du nombre de core

Extraction audio

ffmpeg -i P1030614.MOV -vn -f ogg -acodec libvorbis -ar 8K -ab 64k -ac 2 audio.ogg

Paramètres modifiables :

  • -vn pour dire qu'on ne s'occupe pas de la video
  • -f ogg indique le format
  • -acodec le codec audio employé ici est du libvorbis
  • -ar est la fréquence d'échantillonnage 8000Hz
  • -ac pour le nombre de canaux audio, stéréo donc 2
  • -ab pour bitrate audio

Mixer une vidéo et du son

ffmpeg -i ma-video.xxx -i mon-son.xxx -vcodec copy -acodec copy video-final.xxx

Pivoter une vidéo

ffmpeg -i ori.mp4 -vf "transpose=1" ret.mp4

Paramètres modifiables :

  • 0 = 90CounterCLockwise and Vertical Flip (default)
  • 1 = 90Clockwise
  • 2 = 90CounterClockwise
  • 3 = 90Clockwise and Vertical Flip

Liens utiles

logiciels/ffmpeg.txt · Dernière modification: 2018/10/25 18:19 (modification externe)