FFmpeg-2.7.2
Introduction à FFmpeg
FFmpeg est une solution pour
enregistrer et convertir un flux audio et vidéo. C'est un
convertisseur audio et vidéo très rapide et il peut aussi acquérir
à partir d'une source audio et vidéo en direct. Conçu pour être
intuitif, l'interface en ligne de commande (ffmpeg) tente de couvrir tous les
paramètres lorsque cela est possible. FFmpeg peut convertir aussi entre des vitesses
d'échantillon et redimensionner des vidéos à la volée avec un
filtre polyphases de haute qualité. FFmpeg peut utiliser une source vidéo
compatible video4linux et n'importe quelle source audio
Open Sound
System.
Ce paquet est connu pour se construire correctement sur une
plateforme LFS-7.8.
Informations sur le paquet
-
Téléchargement (HTTP) : http://ffmpeg.org/releases/ffmpeg-2.7.2.tar.bz2
-
Somme de contrôle MD5 du téléchargement :
7eb2140bab9f0a8669b65b50c8e4cfb5
-
Taille du téléchargement : 7.8 Mo
-
Estimation de l'espace disque requis : 1.1 Go (with
optional docs); additional 2.3 Go to run the FATE suite)
-
Estimation du temps de construction : 1.8 SBU (with -j4
and optional docs); additional 2.8 SBU, with THREADS=4, to
run the FATE suite, after sample files are downloaded
Dépendances de FFmpeg
Recommandées
libass-0.12.3, fdk-aac-0.1.4, FreeType-2.6, LAME-3.99.5, libtheora-1.1.1,
libvorbis-1.3.5, libvpx-1.4.0, Opus-1.1, x264-20150908-2245 et yasm-1.3.0
Recommandées pour une utilisation de bureau
ALSA-Library-1.0.29, libva-1.6.0, libvdpau-1.1.1 (avec les paquets des pilotes
correspondants), et SDL-1.2.15,
Facultatives
FAAC-1.28,
Fontconfig-2.11.1, frei0r-27-01-15,
libcdio-0.93 pour identifier et lire les CDs),
libwebp-0.4.3, opencv-3.0.0,
OpenJPEG-1.5.2, OpenSSL-1.0.2d
ou GnuTLS-3.4.4.1, PulseAudio-6.0,
Speex-1.2rc2, texlive-20150521 (ou install-tl-unx) pour la documentation PDF et
PS, v4l-utils-1.6.3, XviD-1.3.3, X Window
System, Flite, GSM, HEVC/H.265,
LADSPA,
libaacplus,
libbluray,
libcaca, libcelt, libcdio,
libdc1394,
libdca,
libiec61883,
libmodplug,
libnut (Git checkout)
librtmp,
libssh,
libxavs
(SVN checkout), OpenAL,
OpenCore AMR,
Schroedinger,
TwoLAME,
vo-aaenc,
vo-amrwbenc,
x265 (H.265/MPEG-H
HEVC), et ZVBI
Notes utilisateur : http://wiki.linuxfromscratch.org/blfs/wiki/ffmpeg
Installation de FFmpeg
Installez FFmpeg en lançant les
commandes suivantes :
sed -i 's/-lflite"/-lflite -lasound"/' configure &&
./configure --prefix=/usr \
--enable-gpl \
--enable-version3 \
--enable-nonfree \
--disable-static \
--enable-shared \
--disable-debug \
--enable-libass \
--enable-libfdk-aac \
--enable-libfreetype \
--enable-libmp3lame \
--enable-libopus \
--enable-libtheora \
--enable-libvorbis \
--enable-libvpx \
--enable-libx264 \
--enable-x11grab \
--docdir=/usr/share/doc/ffmpeg-2.7.2 &&
make &&
gcc tools/qt-faststart.c -o tools/qt-faststart
La documentation HTML a été construite à l'étape précédente si
texlive-20150521 et que vous
souhaitiez des versions PDF et Postscript de la documentation,
tapez les commandes suivantes:
sed -i '$s/$/\n\n@bye/' doc/{git-howto,nut,fate}.texi &&
sed -i '/machine:i386/ s/\\/@backslashchar{}/g' doc/platform.texi &&
pushd doc &&
for DOCNAME in `basename -s .html *.html`
do
texi2pdf -b $DOCNAME.texi &&
texi2dvi -b $DOCNAME.texi &&
dvips -o $DOCNAME.ps \
$DOCNAME.dvi
done &&
popd &&
unset DOCNAME
Si vous avez installé Doxygen-1.8.10
et si vous souhaitez créer la documentation de l'API (ce qui prend
environ 350 Mo d'espace), lancez la commande doxygen.
La suite de tests fate inclu des comparaisons avec des fichiers
installés, et ne doit pas être lancée avant que le paquet ne soit
installé. Cependant, si vous souhaitez la lancer, les instructions
sont données en dessous.
Maintenant, en tant qu'utilisateur root
:
make install &&
install -v -m755 tools/qt-faststart /usr/bin &&
install -v -m644 doc/*.txt \
/usr/share/doc/ffmpeg-2.7.2
Si les documentations PDF et Postscript sont construites, tapez les
commandes suivantes , en tant qu'utilisateur root
pour l'installer:
install -v -m644 doc/*.pdf \
/usr/share/doc/ffmpeg-2.7.2 &&
install -v -m644 doc/*.ps \
/usr/share/doc/ffmpeg-2.7.2
Si vous avez utilisé doxygen pour créer la
documentation de l'API, installez-la (300 Mo d'espace en plus) en
lançant les commandes suivantes en tant qu'utilisateur root
:
install -v -m755 -d /usr/share/doc/ffmpeg-2.7.2/api &&
cp -vr doc/doxy/html/* /usr/share/doc/ffmpeg-2.7.2/api &&
find /usr/share/doc/ffmpeg-2.7.2/api -type f -exec chmod -c 0644 \{} \; &&
find /usr/share/doc/ffmpeg-2.7.2/api -type d -exec chmod -c 0755 \{} \;
Pour tester proprement l'installation vous devez avoir installé
rsync-3.1.1 et suivi les instructions de
FFmpeg
Automated Testing Environment(FATE). D'abord, environ 930 Mo de
fichiers d'exemple utilisés pour lancer FATE sont sont téléchargés
avec la commande :
make fate-rsync SAMPLES=fate-suite/
Le répertoire fate-suite
est créé et
les fichiers téléchargé ici. Cette commande lance maintenant une
commande rsync pour obtenir les fichiers d'échantillons. Vous
pouvez vouloir comprimer et laisser le répertoire pour retester de
nouveau, dans un autre système, ou quand une nouvelle version de
ffmpeg est lancée. Ensuite, vous déballez les fichiers
d'échantillons dans le répertoire des sources, et lancez, de
nouveau, la commande make
fate-rsync... ci dessus, pour synchroniser avec le
dépot. Maintenant, la taille du téléchargement et le temps sont
drastiquement réduits. Les valeurs estimées dans "Information du
paquet" n'incluent pas le SBU du téléchargement. Quelques
échantillons peuvent être enlevés, dans les nouvelles versions,
quand vous utilisez les échantillons sauvegardés précédement,
lancez la commande suivante:
rsync -vrltLW --delete --timeout=60 --contimeout=60 \
rsync://fate-suite.ffmpeg.org/fate-suite/ fate-suite/
Ensuite, FATE est éxécuté, avec la commande (vous obtenez un nombre
de tests supérieur à 2400):
make fate THREADS=N
SAMPLES=fate-suite/ | tee ../fate.log &&
grep ^TEST ../fate.log | wc -l
ou N
est un entier,
N
≤ nombre de threads
dans le système.
Explication des commandes
sed -i ...
configure : Cette commande ajoute la
bibliothèque ALSA dans la variable
LDFLAGS
de Flite et active la découverte de Flite.
sed -i ... texi:
Corrige des fichiers .texi pour la construction de la
documentation.
find ... ;: Corrige
des droits de fichiers et de répertoires de documentation.
--enable-libfreetype
: Active le support
de Freetype.
--enable-gpl
: Ce
paramètre autorise l'utilisation de code GPL et permet le support
pour que postprocessing, swscale et bien d'autres fonctionnalités.
--enable-version3
:
Active l'utilisation du code (L)GPL version 3.
--enable-nonfree
:
Active l'utilisation de code non-libre. Notez que les binaires et
bibliothèques ne seront pas distribuable.
--disable-static
: Ce
paramètre empêche l'installation des versions statiques des
bibliothèques.
--enable-shared
:
Active la construction des bibliothèques partagées, sinon seulement
les bibliothèques statiques sont construites et installées.
--disable-debug
: Désactive
la construction des symboles de déboguage dans les programmes et
les bibliothèques.
--enable-libass
: Active le
moteur de rendu du format de sous-titre ASS/SSA via libass
.
--enable-libfdk-aac
: Active
actuellement l'encodage et le décodage audio de plus grande qualité
dans le format AAC via libfdk-aac
.
--enable-libmp3lame
:
Active l'encodage MP3 via libmp3lame
.
--enable-libvorbis
--enable-libtheora
: Active l'encodage vidéo Theora via
libvorbis
et libtheora
.
--enable-libvorbis
--enable-libvpx
: Active l'encodage WebM via
libvorbis
et libvpx
.
--enable-libx264
: Active
l'encodage de haute qualité H.264/MPEG-4 AVC via libx264
.
--enable-x11grab
: Active
X11 grabbing.
--enable-openssl
or --enable-gnutls
: Active le protocle HTTPS pour les
flux réseaux.
gcc tools/qt-faststart.c -o
tools/qt-faststart: Cela construit le programme
qt-faststart qui peut
modifier les films formatés en QuickTime (.mov
ou .mp4
) pour
que les informations d'entête soit placées au début du fichier au
lieu de la fin. Cela permet de lire le film avant que le fichier
entier ne soit téléchargé.
Note
Le support de la plupart des paquets dépendants demande
l'utilisation d'options passées au script configure. Regardez la sortie
de ./configure
--help pour une information complète à propos de
l'activation des paquets dépendants.
Configuration de FFmpeg
Fichiers de
configuration
/etc/ffserver.conf
et ~/.ffmpeg/ffserver-config
Vous trouverez un modèle de fichier de configuration pour
ffserver sur
doc/ffserver.conf
dans
l'arborescence des sources.
Contenu
Programmes installés:
ffmpeg, ffplay, ffprobe, ffserver et
qt-faststart
Bibliothèques installées:
libavcodec.so, libavdevice.so,
libavfilter.so, libavformat.so, libavutil.so, libpostproc.so,
libswresample et libswscale.so
Répertoires installés:
/usr/include/{libavcodec,libavdevice,libavfilter,libavformat},
/usr/include/{libavutil,libpostproc,libswresample,libswscale},
/usr/share/doc/ffmpeg-2.7.2, et /usr/share/ffmpeg
Descriptions courtes
ffmpeg
|
est un outil en ligne de commande pour convertir des
fichiers vidéo, des flux réseaux et des entrées d'une
carte TV en divers formats vidéo.
|
ffplay
|
est un lecteur média très simple et portable utilisant
les bibliothèques de ffmpeg
et la bibliothèque SDL.
|
ffprobe
|
rassemble des informations à partir de flux multimédia et
les affiche d'une manière lisible par un homme ou une
machine.
|
ffserver
|
est un serveur de flux pour toutes les entrées
utilisables par ffmpeg (fichiers, flux,
entrées de carte TV, webcam, etc.).
|
qt-faststart
|
déplace le fichier d'index à l'avant des vidéos quicktime
(mov/mp4).
|
libavcodec.so
|
est une bibliothèque contenant les codecs FFmpeg (pour l'encodage et le
décodage).
|
libavdevice.so
|
est le periphérique FFmpeg pour la manipulation de la
bibliothèque.
|
libavfilter.so
|
est une bibliothèque ee filtres capables de modifier des
vidéos ou des sons entre un décodeur et un encodeur (ou
une sortie).
|
libavformat.so
|
est une bibliothèque contenant la gestion des formats de
fichier (code mux et demux pour plusieurs formats)
utilisée par ffplay et permettant de
générer des flux audio et vidéo.
|
libavutil.so
|
est la bibliothèque de l'utilitaire FFmpeg.
|
libpostproc.so
|
is the FFmpeg post
processing library.
|
libswresample.so
|
est la bibliothèque de FFmpeg pour la transformation audio,
elle contient des fonctions pour convertir les formats
d'échantillon audio.
|
libswscale.so
|
is the FFmpeg image
rescaling library.
|
Last updated on : 2013-03-03 16:30:53 +010