Codecs Supportés Codecs vidéo 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: vidéo MPEG1 (VCD) et MPEG2 (DVD) décodeurs natifs pour DivX ;-), OpenDivX (DivX4), DivX 5.01, 3ivX, MS MPEG4 v1, v2 et autres variantes MPEG4 décodeur natif pour Windows Media Video 7/8 (WMV1/WMV2), et décodeur DLL Win32 pour Windows Media Video 9 (WMV3), utilisés tous les deux dans les fichiers .wmv décodeur Sorenson 1 (SVQ1) natif décodeur Sorenson 3 (SVQ3) natif décodeur 3ivx v1, v2 codecs Cinepak et Intel Indeo (3.1,3.2,4.1,5.0) MJPEG, AVID, VCR2, ASV2 et autres formats matériels VIVO 1.0, 2.0, I263 et autres variantes h263(+) FLI/FLC RealVideo 1.0 & 2.0 de libavcodec, et RealVideo 3.0 & 4.0 en utilisant les librairies RealPlayer décodeur natif pour HuffYUV vieux et simples formats variés similaires à RLE 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. DivX4/DivX5 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 inclut 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 MPEG1/2. Maintenant nous utilisons notre propre code, pour touts les types de fichier. 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ÉCOURAGÉ. Cependant, il est utile pour l'encodage. Un désavantage de ce codec est que ces sources sont ne sont pas disponibles sous une licence Open source. DivX4Linux fonctionne dans deux modes: Utilise le codec à la manière d'OpenDivX. Dans ce cas il affiche des images YV12 dans son propre buffer, et MPlayer fait la conversion de palette via libvo.(Rapide, recommandé !) Utilise la conversion de palette du codec. Dans ce mode, vous pouvez également utiliser le format YUY2/UYVY. (LENT) La méthode 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 . Pour les modes RGB la vitesse est la même, au mieux elle peut varier selon votre profondeur de couleur. Si votre pilote supporte le rendu direct, alors 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 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/libavcodec FFmpeg contient un codec open source, qui est capable de décoder des flux encodés avec des codecs audio et vidéo variés. Il offre également un confort d'encodage impressionnant et une plus grande vitesse que les codecs Win32 ou les librairies DivX4/5 de DivX.com ! Il contient plein de bons codecs, les plus importants étant les variantes MPEG4: DivX 3, DivX 4, DivX 5, 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. Si vous utilisez une version officielle vous avez libavcodec directement dans le paquetage, construisez comme d'habitude. Si vous utilisez la version CVS de MPlayer vous devrez extraire libavcodec de l'arborescence CVS de FFmpeg car les versions officielles de FFmpeg sont très rares. Le CVS est pratiquement stable et offre plus de fonctions. Pour y arriver faites: cvs -d:pserver:anonymous@mplayerhq.hu:/cvsroot/ffmpeg login cvs -d:pserver:anonymous@mplayerhq.hu:/cvsroot/ffmpeg co ffmpeg Déplacez le répertoire libavcodec des sources FFmpeg à la racine de l'arborescence CVS de MPlayer. Cela devrait ressembler à cela: main/libavcodec Faire un lien symbolique n'est pas suffisant, vous devez le copier ou le déplacer! Si vous préférez que libavcodec soit mis à jour en même temps que vous mettez à jour le CVS de MPlayer, indiquez la ligne suivante dans le fichier main/CVS/Entries: D/libavcodec//// Compilez. configure devrait détecter les problèmes avant la compilation. La version CVS de MPlayer contient un sous-répertoire libavcodec, mais il ne contient pas le source de libavcodec! Vous devez suivre les étapes ci-dessus pour obtenir le source de cette librairie. Avec FFmpeg et ma Matrox G400, je peut voir des films DivX en haute résolution sans sauter de trames sur mon K6-2 500. Codecs XAnim Soyez prévenu que les codecs binaires XAnim sont packagées avec un un morceau de texte revendiquant être la licence liée au logiciel qui, entre autres restrictions, interdit à l'utilisateur d'utiliser les codecs en conjonction avec n'importe quel autre programme que XAnim. Cependant l'auteur de XAnim n'a encore entrepris d'actions légales contre quiconque pour des problèmes relatifs aux codecs. INSTALLATION ET UTILISATION MPlayer est capable d'employer les codecs XAnim pour décoder. Suivez les instructions pour les activer: Téléchargez les codecs que vous désirez utiliser depuis le site d'XAnim. Le codec 3ivx n'y est pas, il est sur le site de 3ivx. OU téléchargez le pack de codecs depuis notre page des codecs. Utilisez l'option pour dire à configure où trouver les codecs XAnim. Par défaut, il les cherche dans /usr/local/lib/codecs, /usr/local/lib/xanim/mods, /usr/lib/xanim/mods et /usr/lib/xanim. Vous pouvez également fixer la variable d'environnement XANIM_MOD_DIR avec le répertoire des codecs XAnim. Renommez/faites des liens symboliques de ces fichiers, en séparant le reste de l'architecture, ils auront donc des noms comme ceux-ci: vid_cvid.xa, vid_h263.xa, vid_iv50.xa. XAnim sont des codecs de la famille xanim, donc vous pouvez utiliser l'option pour dire à MPlayer de les utiliser si possible. Les codecs testés incluent: Indeo 3.2, 4.1, 5.0, CVID, 3ivX, h263. vidéo VIVO MPlayer peut lire les vidéos Vivo (1.0 and 2.0). Le codec le plus approprié pour les fichiers 1.0 est le décodeur H263 de FFmpeg, vous pouvez l'utiliser avec l'option . Pour les fichiers 2.0, utilisez la DLL Win32 par l'intermédiaire de l'option .Si vous ne fournissez pas d'options en ligne de commande,MPlayer sélectionne le meilleur codec automatiquement. vidéo MPEG 1/2 MPEG1 et MPEG2 sont décodé par la librairie multiplateforme libmpeg2 native, dont le code source est inclus dans MPlayer. Nous gérons la vidéo MPEG 1/2 boguée en attrapant le Signal 11 (segmentation fault), et en réinitialisant rapidement le codec, continuant ainsi exactement où l'erreur c'est produite. Cette technique de récupération n'a pas d'influence mesurable sur la vitesse. MS Video1 C'est un très vieux et très mauvais codec de Microsoft. Dans le passé il était décodé par le codec Win32 msvidc32.dll, maintenant nous avons notre propre implémentation open source (par Mike Melanson). Cinepak CVID MPlayer utilise son propre décodeur Cinepak, open source et multiplateforme (par le Dr. Tim Ferguson) par défaut. Il supporte les sorties YUV, donc le zoom matériel est possible si le pilote de sortie vidéo le permet. RealVideo MPlayer décode toutes les versions de RealVideo: RealVideo 1.0, 2.0 (fourcc RV10, RV20) - en/décodage supporté par libavcodec RealVideo 3.0, 4.0 (fourcc RV30, RV40) - décodage supporté par les librairies RealPlayer Il est recommandé de télécharger et d'installer RealPlayer8 ou RealONE, car MPlayer peut utiliser leurs librairies pour décoder les fichiers contenant de la vidéo RealVideo 2.0 - 4.0. Le script configure de MPlayer devrait détecter les librairies RealPlayer aux emplacements standards d'une installation complète. Si non, dites à configure où chercher avec l'option . À défaut vous pouvez télécharger les codecs sur http://www.mplayerhq.hu/MPlayer/releases/codecs/. Après avoir téléchargé le paquet de codecs Real, extrayez-le dans le répertoire /usr/local/lib/codecs, ou spécifiez un chemin unique avec l'option . Les librairies RealPlayer ne fonctionnent actuellement qu'avec Linux, FreeBSD, NetBSD et Cygwin sur les plateformes x86,Alpha et PowerPC (Linux/Alpha et Linux/PowerPC ont été testés) . XviD XviD est un fork du développement du codec OpenDivX. Il est apparu quand ProjectMayo est passé d'OpenDivX au sources-fermées DivX4 (Maintenant DivX5), 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. AVANTAGES open source son API est compatible avec DivX4 donc en inclure le support est facile encodage en 2 passes bonne qualité d'encodage, plus grande vitesse que DivX4 (vous pouvez l'optimiser pour votre machine pendant la compilation) DÉSAVANTAGES actuellement il ne décode pas correctement tous les fichiers DivX/DivX4 (ce n'est pas un problème puisque libavcodec peut les jouer) en développement INSTALLER LA VERSION CVS DE XVID XviD n'est actuellement disponible que depuis le CVS. Voici les instructions de téléchargement et d'installation (vous aurez besoin d'au moins 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é , copiez ../../src/divx4.h dans /usr/local/include/. Recompilez MPlayer avec . Sorenson Sorenson est une famille de codec vidéo développée par Sorenson Media et licenciée à Apple qui le distribue avec son lecteur QuickTime. Nous sommes actuellement capables de décoder toutes les versions des fichiers Sorenson avec les décodeurs suivants: Sorenson Video v1 (fourcc SVQ1) - décodage supporté par un codec natif (libavcodec) Sorenson Video v3 (fourcc SVQ3) - décodage supporté par un codec natif (libavcodec) COMPILER MPLAYER AVEC LE SUPPORT DES LIBRAIRIES QUICKTIME actuellement seules les plateformes Intel 32bit sont supportées. téléchargez le CVS de MPlayer téléchargez le pack de DLL QuickTime sur décompressez le pack de DLL QuickTime dans votre répertoire de codecs Win32 (par défaut: /usr/local/lib/codecs/) compilez MPlayer Codecs audio Les plus importants d'entre eux: MPEG layer 1/2/3 (MP1/2/3) audio (code natif, avec optimisation MMX/SSE/3DNow!) Windows Media Audio 7 et 8 (alias WMAv1 et WMAv2) (code natif, avec libavcodec) Windows Media Audio 9 (WMAv3) (en utilisant la DLL DMO) AC3 Dolby audio (code natif, avec optimisation MMX/SSE/3DNow!) AC3 par l'intermédiaire de la carte son AAC codec audio Ogg Vorbis (librairie native) RealAudio: DNET (AC3 bas débit), Cook, Sipro et ATRAC3 QuickTime: codecs audio Qualcomm et QDesign VIVO audio (g723, Vivo Siren) Voxware audio (en utilisant la DLL DirectShow) alaw et ulaw, formats divers gsm, adpcm, pcm et autres vieux codecs audio simples Décodage AC3 logiciel C'est le décodeur utilisé par défaut pour les fichier avec de l'audio AC3. Le décodeur AC3 peut créer des sortie audio mixées pour 2, 4 ou 6 haut-parleurs. Quand il est configuré pour 6 haut-parleurs, ce décodeur fournit des sorties séparées pour tous les canaux AC3 du pilote son, autorisant la pleine expérience du "son surround" sans décodeur AC3 externe requis pour l'usage du codec hwac3. Utilisez l'option pour sélectionner le nombre de canaux de sortie. Utilisez pour un mix stéréo. Pour un mix 4 canaux (Avant Gauche, Avant Droite, Surround Gauche et Surround Droit), utilisez. Dans ce cas, l'éventuel canal du centre sera mixé à part égale sur les canaux de devant. sortira tous les canaux AC3 tels qu'ils ont été encodé - dans l'ordre Gauche, Droite, Surround Gauche, Surround Droit, Centre et LFE. Le nombre de canaux par défaut est 2. Pour utiliser plus de 2 canaux de sortie, vous devrez utiliser OSS, et avoir une carte son qui supporte le nombre de canaux de sortie requis via le ioctl SNDCTL_DSP_CHANNELS. Un exemple de driver approprié est emu10k1 (utilisé par la carte Soundblaster Live!) depuis Août 2001 (Le CVS ALSA est également sensé fonctionner). Décodage AC3 matériel Vous avez besoin d'une carte son gérant l'AC3, avec une sortie numérique (SP/DIF). Le pilote de la carte doit supporter correctement le format AFMT_AC3 (C-Media le fait). Connectez le décodeur AC3 à la sortie SP/DIF, et utilisez l'option . C'est expérimental mais cela fonctionne avec les cartes C-Media, Soundblaster Live! en utilisant les pilotes ALSA (mais pas OSS) et les décodeurs MPEG DXR3/Hollywood+. support libmad libmad est une librairie multi-plateforme de décodage MPEG audio entière (24bit PCM interne) uniquement. Elle ne gère pas très bien les fichiers endommagés, et elle a parfois des problèmes pour le déplacement, mais elle peut mieux se comporter que mp3lib sur des plateformes sans FPU (tel que ARM). Pour en activer le support, compilez avec l'option de configuration VIVO audio Le codec audio utilisé dans les fichiers VIVO dépends du fait que ce soit un fichier VIVO/1.0 ou VIVO/2.0. Les fichiers VIVO/1.0 ont de l'audio g.723, et les fichiers VIVO/2.0 de l'audio Vivo Siren. Les deux sont supportés. RealAudio MPlayer supporte le décodage de presque toutes les versions de RealAudio: RealAudio DNET - décodage supporté par liba52 RealAudio Cook/Sipro/ATRAC3 - décodage supporté par les librairies RealPlayer Pour savoir comment installer les librairies RealPlayer, voyez la section format de fichiers RealMedia. Codecs QDesign Les flux audio QDesign (fourcc:QDMC, QDM2) se trouvent dans les fichiers MOV/QT. Les deux versions de ce codec peuvent être décodées avec les librairies QuickTime. Pour les instructions d'installation merci de voir la section codec vidéo Sorenson. Codec Qualcomm Les flux audio Qualcomm (fourcc:Qclp) se trouvent dans les fichiers MOV/QT. Pour les instructions d'installation merci de voir la section codec vidéo Sorenson. Codec AAC AAC (Advanced Audio Coding) est un codec parfois présent dans les fichiers MOV et MP4. Un décodeur open source appelé FAAD est disponible sur . MPlayer inclus libfaad 2.0RC1, vous n'avez donc pas à l'obtenir séparemment. Si vous utilisez gcc 3.2 qui ne peut pas compiler notre FAAD interne, ou si vous voulez utiliser une librairie externe pour d'autres raisons, téléchargez la librairie dpuis la page de téléchargements et passez à configure. Vous n'avez pas besoin de tout faad2 pour décoder les fichiers AAC, libfaad suffit. Construisez comme ceci: cd faad2/ chmod +x bootstrap ./bootstrap ./configure cd libfaad make make install Les binaires ne sont pas disponibles sur audiocoding.com, mais vous pouvez obtenir les paquets Debian sur la page web de Christian Marillat, les RPMs Mandrake sur le P.L.F et les RPMS Red Hat sur la page web de Dominik Mierzejewski. Comment importer des codecs codecs VFW VFW (Video for Windows) est une ancienne API vidéo pour windows. Ses codecs portent l'extension .DLL ou (rarement) .DRV. Si MPlayer n'arrive pas à lire votre AVI et renvoie : UNKNOWN video codec: HFYU (0x55594648) Cela signifie que votre AVI est encodé avec un codec HFYU fourcc (HFYU = codec HuffYUV, DIV3 = DivX Low Motion, etc...). Maintenant que nous savons cela, nous devons déterminer quelle DLL windows utilise pour lire ce fichier. Dans votre cas, le fichier system.ini contient (entre autres): VIDC.HFYU=huffyuv.dll Nous aurons donc besoin de la librairie huffyuv.dll. Notez que les codecs audio sont spécifiés par le préfixe MSACM : msacm.l3acm=L3codeca.acm C'est le codec MP3. Nous avons désormais toutes les informations nécessaires (fourcc, fichier codec, fichier AVI). Demandez le support de votre codec par mail, et envoyez ces fichiers sur le FTP : ftp://ftp.mplayerhq.hu/MPlayer/incoming/[nomcodec]/ Sous Windows NT/2000/XP cherchez cette info dans la base de registre, c-a-d cherchez "VIDC.HFYU". Pour savoir comment faire, regardez l'ancienne méthode DirectShow ci-dessous. Codecs DirectShow DirectShow est une API vidéo récente pour Windows, sans doute plus mauvaise que la précédente. La situations est plus délicate avec DirectShow, puisque system.ini ne contient aucune information, qui sont désormais placées dans la base de registre et nous avons besoin du GUID du codec. Nouvelle Méthode En utilisant Microsoft GraphEdit (rapide) Obtenez GraphEdit depuis le SDK DirectX ou sur doom9 Exécutez graphedit.exe. Dans le menu sélectionnez Graph -> Insert Filters. Dépliez l'élément DirectShow Filters Sélectionnez le bon nom de codec et dépliez l'élément. Dans l'entrée DisplayName regardez le texte entre accolades après le backslash et notez-le (cinq blocs délimités par des tirets, le GUID). Le binaire du codec est le fichier spécifié dans l'entrée Filename. Si il n'y a pas d'entrée Filename et que DisplayName contient quelque chose comme device:dmo, alors c'est un codec DMO. Ancienne Méthode Respirez à fond et fouillez dans la base de registre... Lancez regedit. Pressez Ctrl+F, décochez les deux premières cases, et cochez la troisième. Entrez le fourcc du codec. (par ex.: TM20). Vous devriez trouver un champ contenant le chemin et le nom du fichier utilisé (par ex. C:\WINDOWS\SYSTEM\TM20DEC.AX). Maintenant que nous avons le fichier, nous devons trouver son GUID. Cherchez désormais le nom du codec, pas son fourcc. Son nom peut être trouvé quand Media Player lit le fichier, en regardant dans File -> Properties -> Advanced. Si rien n'apparaît, pas de chance. Essayez de le deviner. (par ex. cherchez : TrueMotion) S'il apparaît dans la base de registre, il devrait apparaître un champ FriendlyName et un champs CLSID. Copiez les 16 bits du CLSID, c'est le GUID dont nous avons besoin. si la recherche échoue, cochez toutes les options de la fenêtre de recherche.. vous aurez des mauvaises occurrences, mais finirez par obtenir la bonne... Nous avons désormais toutes les informations nécessaires (fourcc, GUID, fichier codec, fichier AVI). Demandez le support de votre codec par mail, et envoyez ces fichiers sur le FTP : ftp://ftp.mplayerhq.hu/MPlayer/incoming/[nomcodec]/