Voir la table d'état des codecs pour une liste complète, générée quotidiennement. Très peu de codecs sont disponibles en téléchargement sur notre page web. Récupérez-les depuis notre page des codecs.
Les plus importants d'entre eux:
libavcodec
, et
RealVideo 3.0 & 4.0 en utilisant les
librairies RealPlayer
Si vous avez un codec Win32 non listé ici qui n'est pas encore supporté, veuillez lire Comment importer des codecs et aidez-nous à en ajouter le support.
Cette section contient des informations sur les codecs DivX4 et DivX5 de Project Mayo. La première version (alpha) disponible fût OpenDivX 4.0 alpha 47 et 48. Son support était inclu dans MPlayer, et compilé par défaut. Nous avons fréquemment utilisé son code de postprocessing pour améliorer la qualité visuelle des vidéos MPEG-1/2. Maintenant nous utilisons notre propre code, pour tous les types de fichiers.
La nouvelle génération de ce codec est appelée DivX4 et peut même décoder les
vidéos créées avec le très mauvais codec DivX ! De plus il est plus rapide que
les DLLs Win32 DivX natives mais plus lent que libavcodec
. Son utilisation en tant que décodeur
est donc déconseillé. Cependant, il est utile
pour l'encodage. Un désavantage de ce codec est que ses sources ne sont
pas disponibles sous une licence Open Source.
DivX4 fonctionne dans deux modes:
La méthode -vc odivx est généralement plus rapide, grâce au fait qu'elle transfert les données des images au format YV12 (planar YUV 4:2:0), nécessitant ainsi moins de bande passante sur le bus. Pour les modes YUV compactés (YUY2, UYVY), utilisez la méthode -vc divx4. Pour les modes RGB la vitesse est la même, au mieux elle peut varier selon votre profondeur de couleur.
Si votre pilote -vo supporte le rendu direct, alors -vc divx4 pourra être plus rapide voir même la solution la plus rapide.
Le codec binaire de DivX4/5 peut être téléchargé depuis avifile ou divx.com Désarchivez-le, lancez ./install.sh en root et n'oubliez pas d'ajouter /usr/local/lib à votre /etc/ld.so.conf et de lancer ldconfig.
Récupérez la version CVS de l'ANCIENNE librairie principale OpenDivX comme ceci:
cvs -d:pserver:anonymous@cvs.projectmayo.com:/cvsroot login
cvs -d:pserver:anonymous@cvs.projectmayo.com:/cvsroot co divxcore
Cette librairie principale est séparée en librairies d'encodage et de décodage qui doivent être compilées séparément. Pour la librairie de décodage, tapez simplement
cd divxcore/decore/build/linux make cp libdivxdecore.so /usr/local/lib ln -s /usr/local/lib/libdivxdecore.so /usr/local/lib/libdivxdecore.so.0 cp ../../src/decore.h /usr/local/include
Hélas, pour la librairie d'encodage il n'y a pas de Makefile Linux disponible, et le code optimisé pour MMX ne fonctionne que sous Windows. Vous pouvez quand même le compiler en utilisant ce Makefile.
cd ../../../encore/build mkdir linux cd linux cp path/Makefile . make cp libdivxencore.so /usr/local/lib ln -s /usr/local/lib/libdivxencore.so /usr/local/lib/libdivxencore.so.0 cp ../../src/encore.h /usr/local/include
MPlayer détecte automatiquement si DivX4/DivX5 est correctement installé, donc compilez-le normalement. Si il ne détecte pas le codec, votre installation ou votre configuration n'est pas correcte.
FFmpeg contient
libavcodec
, la librairie de codecs
audio et vidéo leader de l'open source.
Elle est capable de décoder la plupart des formats multimédia, la plupart
du temps à une vitesse supérieure aux solutions alternatives, et vise à
supporter le reste.
C'est le décodeur par défaut pour la majorité des codecs que
MPlayer gère.
L'encodage dans différents formats est aussi possible, et est géré par
MEncoder.
Il contient plein de bons codecs, les plus importants étant les variantes MPEG-4: DivX3, DivX4, DivX5, Windows Media Video 7/8 (WMV1/WMV2). Le décodeur WMA est également très intéressant.
Le codec le plus récent est le codec Sorenson 3 (SVQ3). C'est la première implémentation complètement opensource de ce codec. Il est même plus rapide que l'original. Assurez-vous d'utiliser celui-ci à la place du codec binaire !
Pour avoir la liste complète des codecs supportés veuillez vous reporter à la page web de FFmpeg. Codecs video et audio supportés.
MPlayer contient
libavcodec
.
Lancez juste configure et compilez.
XviD est un logiciel gratuit de codec video conforme au MPEG-4 ASP, qui possède des dispositifs d'encodage en 2 passes et un support complet du MPEG-4 ASP, rendant la chose beaucoup plus efficace que le bien connu codec DivX. Il se clame une très bonne qualité video et de bonne performance due aux optimisations pour les processeurs les plus moderne.
Cela a commencé par le fork du développement du codec OpenDivX. Il est apparu quand ProjectMayo est passé d'OpenDivX au sources-fermées DivX4, et les personnes extérieures à ProjectMayo travaillant sur OpenDivX se sont fâchés, et ont démarré XViD. Les deux projets ont donc la même origine.
Notez qu'XviD n'est pas nécessaire pour décoder des vidéos encodée par XviD.
libavcodec
est utilisé par défaut et
offre une vitesse supérieure.
XviD
Installation
Comme la plupart des logiciels open source, il est disponible en deux parfums:
versions officiel
et la version CVS.
La version CVS est actuellement assez stable pour être utilisée, et bénéficie des
corrections de bogues existant des versions "officielles".
Voici qui doit être fait pour faire fonctionner la version CVS de
XviD
avec MEncoder (vous avez besoin au minimum de
autoconf 2.50,
automake et libtool):
cvs -z3 -d:pserver:anonymous@cvs.xvid.org:/xvid login
cvs -z3 -d:pserver:anonymous@cvs.xvid.org:/xvid co xvidcore
cd xvidcore/build/generic
./bootstrap.sh
./configure
Vous pouvez avoir à ajouter des options (examinez la sortie de
./configure --help
).
make && make install
Si vous avez spécifié --enable-divxcompat, copiez ../../src/divx4.h dans /usr/local/include/.
Recompilez MPlayer avec
--with-xvidlibdir=/chemin/vers/
libxvidcore.a
--with-xvidincdir=/chemin/vers/
xvid.h.
x264
est une librairie pour créer des flux video H.264.
Il n'est pas 100% achevé, mais actuellement il a au moins un début de
support pour la plupart des fonctionalités du H.264 qui ont un impact sur la qualité.
Il y a aussi des fonctionalités plus avancées des specifications du H.264
qui n'ont rien avoir avec la qualité vidéo. La plupart ne sont pas encore
implémentées dans le x264
.
Fonctions d'encodage
CAVLC/CABAC
Références multiple
Intra: Tout les types de macrobloc (16x16, 8x8, et 4x4 avec toutes les prédictions)
Inter P: Toutes les partitions (de 16x16 jusqu'à 4x4)
Inter B: Les partitions de 16x16 jusqu'à 8x8 (incluant SKIP/DIRECT)
Control Débit: quantificateur constant, débit constant, simple ou multiple passe ABR, optionnel VBV
Détection de changement de scène
Placement B-frame adaptif
B-frames commme références / ordre arbitraire de frame
8x8 et 4x4 transformation spaciale adaptative
Mode sans perte
Matrices de quantification personnalisées
Encodage parallèle par découpage en de multiples tranches
H.264 est un des noms pour le nouveau codec video numérique développé conjointement par l'ITU et le MPEG. Il peut être aussi correctement référencé avec les noms vagues de "ISO/IEC 14496-10" ou "MPEG-4 Part 10". De façon plus fréquente, il est réferencé comme étant "MPEG-4 AVC" ou juste "AVC".
Qu'importe la façon de l'appeler, H.264 peut valoir le coup d'être essayé parcequ'il peut typiquement être équivalent en qualité au MPEG-4 ASP avec 5%-30% de débit en moins. Concrètement, le résultat dépendra de la source d'encodage et de l'efficacité de l'encodeur. Les gains apportés par H.264 ne sont pas gratuits: Décoder un flux H.264 augmente considérablement les besoins en CPU et mémoire. Par exemple, sur un Athlon 1733 MHz, une vidéo H.264 en résolution DVD à 1500kbps demande environ 35% de CPU à décoder. En comparaison, décoder un flux MPEG-4 ASP en résolution DVD à 1500kbps demande environ 10% de CPU à décoder. Cela signifie que le décodage de flux haute-définition est quasi hors de question pour la majorité des utilisateurs. Cela signifie aussi que même un rip DVD décent peut quelque fois être saccadé sur des processeurs plus lent que 2.0 GHz.
Au moins avec x264
,
les requièrements en encodage sont moins mauvais que ce dont on est habitué
avec le MPEG-4 ASP.
Par exemple, sur un Athlon 1733 MHz un encodage DVD typique devrait marcher
à 5-15fps.
Ce document n'a pas pour but d'expliquer H.264 en détail, mais si vous êtes intéressé par une brêve vue d'ensemble, vous devriez lire L'Encodage Video Avancé H.264/AVC Standard: Vue d'ensemble et Introduction aux Extensions de Chaîne de Fidélité.
MPlayer utilise le décodeur H264 de
libavcodec
.
libavcodec
a eu au moins
un décodeur H.264 qui est un fonctionne un minimum depuis les alentours de Juillet 2004,
cependant des changements et améliorations majeurs ont été implémentés depuis cette date,
que ce soit en terme de fonctionalités supportées et en terme d'utilisation améliorée du CPU.
Juste pour être certain, c'est toujours une bonne idée d'utiliser une version récente extraite
du dépot Subversion.
Si vous voulez une façon rapide et facile de savoir si il y a eu des
changements récents du décodage H.264 de libavcodec
,
vous devriez garder un oeil sur
Interface Web du Subversion de FFmpeg.
Si vous avez la sous-version du client installé, les dernières sources de x264 peuvent être récupérées avec cette commande:
svn co svn://svn.videolan.org/x264/trunk x264
Les sources de MPlayer sont mises à jour lorsque survient
un changement de l'API de x264
,
donc il est toujours conseillé d'utiliser la version Subversion de
MPlayer.
Peut-être cette situtation changera quand et si une "release" de
x264
survient.
En attendant, x264
devra être
considéré comme trè instable, dans le sens que son interface de programmation
est sujet à changer.
x264
est construit et
installé de façon standard:
./configure && make && sudo make install
Ceci installe libx264.a dans /usr/local/lib et x264.h est placé dans
/usr/local/include.
Avec la librairie et l'entête de x264
placé au emplacement standard, construire
MPlayer avec le support
x264
est facile.
Lancé juste le standard:
./configure && make && sudo make install
Le script configure détectera automatiquement que vous avez ce qui est
requis pour le x264
.