====== FFmpeg ======
[[http://doc.ubuntu-fr.org/ffmpeg|FFmpeg]] est une série de logiciels de lecture et de traitement de flux vidéo (enregistrement, lecture, conversion, etc...).
===== Syntax =====
FFmpeg attend les différentes options dans un ordre précis :
ffmpeg [global options] [input file options] -i input-file-name [output options] output-file-name
* __global options :__ options à appliquer aux fichiers en entrée (vidéo/audio), en amont du processus
* __input file options :__ options à appliquer aux fichiers en entrée (vidéo/audio), en amont du processus
* __-i input-file-name :__ le(s) fichier(s) en entrée
* __output options :__ actions à appliquer au média
* __output-file-name :__ fichier en sortie avec le rendu final
===== Analyser un fichier =====
Pour connaître les détails d'encodage d'un fichier (audio ou vidéo), il suffit de ne renseigner que le fichier d'entrée :
ffmpeg -i music.mp3
ffmpeg -i video.mp4
===== Conversion =====
Pour convertir une vidéo d'un format à un autre (résultat de qualité plutôt médiocre) :
ffmpeg -i MaVideoSource.flv MaVideoDestination.mpeg
Même conversion au format DVD (qualité plus grande signifiant taille de fichier plus grande) :
ffmpeg -i MaVideoSource.flv -target pal-dvd -sameq MaVideoDestination.mpg
{{tag>audio vidéo encodage command-line}}
==== Webm ====
Webm est le format vidéo HTML5 supporté et conseillé pour Chrome et Firefox.
Le contrôle de la qualité se fait via l'option ```c:v libvpx```. Avec divers options ([[http://trac.ffmpeg.org/wiki/Encode/VP8|source]]) :
ffmpeg -i input.mp4
-c:v libvpx
-qmin 0
-qmax 50
-crf 5
-b:v 1M
-c:a libvorbis
output.webm
* ''%%-b:v 1M%%'' : gère le bitrate moyen des frames. La valeur par défaut donne un résultat médiocre, il est donc conseillé d'utiliser ce réglage.
* ''%%-crf 5%%'' : permet d'imposer une qualité estimée "constante" à chaque frame, au lieu d'une qualité variable. Valeur entre 4 et 63, le plus bas donnant la meilleur qualité. Des valeurs autour de 10 sont un bon point de départ.
* ''%%-qmin 0%%'' et ''%%-qmax 50%%'' : permet de définir l'amplitude de variation de qualité (encore une fois, plus bas signifie meilleure qualité). Valeurs entre 0 et 63.
Il est conseillé d'utiliser au moins b:v et/ou crf. Les paramètres qmin/qmax sont secondaires.
===== Rotation =====
ffmpeg -i input.mp4 -vf "transpose=2" output.mp4