[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[linux] mini-Howto divx
salut,
Que ce soit sur mon site ou dans cette liste, une question qui revient
régulièrement, c'est "comment regarder des divx sous Linux"... Voici
donc, un espèce de mini-Howto la dessus... Je le mettrai sur mon site
quand il sera plus complet, mais en attendant, le voici en
avant-beta-test ;)
Je le poste ici en espérant recevoir des commentaires, des corrections,
des ajouts, ...
N'hésitez pas à m'envoyer votre config matériel pour faire une liste de
configs sur lesquels les divx tournent correctement.
Merci d'avance
@+,
binny
--
[12:46] <Acid-Drop> mais word est plus puissant :) [que le pdf]
-- Acid-Drop
Benjamin Michotte <binny@baby-linux.net>
web : http://www.baby-linux.net
homepage : http://www.baby-linux.net/binny
icq uin : 99745024
mini-HOWTO-DivX
---------------
1. Avant-Propos.
Ce mini HOWTO est réalisé sur base du HOWTO du logiciel Xine
(http://www.srcf.ucam.org/~rjw57/xine) ainsi que de ma propre expérience.
Veuillez m'envoyer tous vos commentaires, corrections ou apports à
binny@baby-linux.net.
2. "Configuration requise".
La décompression du format DivX ;-) étant relativement gourmande, je ne pense
pas qu'il sera possible de regarder des DivX sur un 486/16Mb avec une carte
VESA.
Ma configuration est la suivante: Pentium2-350 o/c 400, 320Mb de RAM, carte
ATI Rage Fury 128 avec 32Mb de mémoire.
La lecture des DivX fonctionnait très bien également lorsque je n'avais que
128Mb de RAM.
La carte graphique sera de préférence AGP (si vous avez des infos sur les cartes PCI,
veuillez me contacter à l'adresse email donnée ci-dessus).
Ayant avant eu un Celeron 300 o/c 375 et ayant rencontré de grosses difficultés
pour lire les films avant, je pense que la configuration donnée est la
minimum pour une vision correcte et décente des DivX.
La version de XFree sera au minimum 4.0 et votre kernel de préférence 2.4.x (mais la
plupart des supports à ajouter sont présents depuis la version de Linux 2.2.17, du
moins, je pense ;p).
3. Kernel.
Grâce au kernel, il est possible d'améliorer la lecture.
Dans votre kernel, il faut notamment ajouter le support MTRR (Memory Type Range
Register). Reportez-vous au fichier /path/to/kernel/Documentation/mtrr.txt pour la
documentation à ce propos.
Cela se trouve dans l'option Processor type and features
[*] MTRR (Memory Type Range Register) support
Il "faut" également ajouter le support pour votre bus AGP.
Pour cela, rendez-vous dans "Character devices" et cocher (à votre préférence en module
ou en "dur")
<*> /dev/agpgart (AGP Support)
ainsi qu'une des options suivantes selon votre bus (pour toutes infos concernant votre
chipset AGP, reportez-vous à la documentation de votre carte mère).
[ ] Intel 440LX/BX/GX and I815/I840/I850 support
[ ] Intel I810/I815 (on-board) support
[ ] VIA chipset support
[ ] AMD Irongate support
[ ] Generic SiS support
[ ] ALI chipset support
[ ] Serverworks LE/HE support
Ajoutez également le support de votre carte graphique (si elle se trouve dans la liste)
mais ajoutez surtout le support pour le DRI (Direct Rendering Manager)
[*] Direct Rendering Manager (XFree86 DRI support)
et pour les cartes (liste relativement restreinte (pour l'instant ?)) :
< > 3dfx Banshee/Voodoo3+
< > 3dlabs GMX 2000
< > ATI Rage 128
< > ATI Radeon
< > Intel I810
< > Matrox g200/g400
Cette dernière option donnera une _accélération_ graphique à votre carte qui sera
également utile pour certains jeux.
Je vous renvois au kernel-HOWTO pour la compilation du kernel et son installation.
4. XFree.
Comme je l'ai précisé précedemment, votre version de XFree doit être supérieur à 4.0
pour avoir le support du DRI (il est possible de le mettre en place également sur une
version 3.x, mais ces versions n'ont (presque) aucun support d'accélération).
Voyez sur http://dri.sourceforge.net pour plus d'informations sur le DRI.
Pour ce qui est de XFree, reportez-vous à la documentation concernant votre carte sur
le site de XFree (http://www.xfree86.org)
Quelque soit votre carte, vous devez avoir dans le section "Module"
Load "dri"
Vous devez également avoir une section DRI comme suit
Section "DRI"
Mode 0666
EndSection
La section pour votre carte doit ressembler à quelque chose comme
Section "Device"
Identifier "ATI Rage 128 Pro"
Driver "r128"
ChipId 0x5246
VideoRam 32768
Option "AGPMode" "2"
Option "DPMS"
EndSection
16 bpp de couleurs devraient être préféré aux modes 24bpp et 32bpp car ce mode est moins
"gourmand" en ressources CPU (forcément, il y a moins de couleurs à gérer).
Il est conseillé également d'ajouter l'extension XVideo. Cette extension est actuellement
supportée par les cartes suivantes:
- 3DFX Voodoo 3
- nVidia GeForce
- nVidia TNT1 et TNT2
- ATI
- Matrox Gx00
- Intel i810 et i815
- Savage
Pour les cartes nVidia, le module est disponible sur http://www.nvidia.com/, pour les
cartes ATI, vous trouverez ce qu'il faut sur http://www.linuxvideo.org/ sous le nom
de "projet GATOS" et pour les cartes Savage, consultez http://www.probo.com/timr/savage40.html
Si l'extension XVideo est correctement installée, le programme xvinfo devrait vous donner
quelque chose comme
X-Video Extension version 2.2
screen #0
Adaptor #0: "ATI Rage128 Video Overlay"
number of ports: 1
port base: 50
operations supported: PutImage
supported visuals:
depth 24, visualID 0x23
depth 24, visualID 0x24
depth 24, visualID 0x25
depth 24, visualID 0x26
depth 24, visualID 0x27
depth 24, visualID 0x28
depth 24, visualID 0x29
depth 24, visualID 0x2a
number of attributes: 13
"XV_SET_DEFAULTS" (range 0 to 1)
client settable attribute
"XV_AUTOPAINT_COLORKEY" (range 0 to 1)
client settable attribute
client gettable attribute (current value is 1)
"XV_COLORKEY" (range 0 to -1)
client settable attribute
client gettable attribute (current value is 66051)
"XV_DOUBLE_BUFFER" (range 0 to 1)
client settable attribute
client gettable attribute (current value is 1)
"XV_ENCODING" (range 0 to 12)
client settable attribute
client gettable attribute (current value is 1)
"XV_FREQ" (range 0 to -1)
client settable attribute
client gettable attribute (current value is 1000)
"XV_MUTE" (range 0 to 1)
client settable attribute
client gettable attribute (current value is 1)
"XV_HUE" (range -1000 to 1000)
client settable attribute
client gettable attribute (current value is 0)
"XV_BRIGHTNESS" (range -1000 to 1000)
client settable attribute
client gettable attribute (current value is 0)
"XV_SATURATION" (range -1000 to 1000)
client settable attribute
client gettable attribute (current value is 0)
"XV_COLOR" (range -1000 to 1000)
client settable attribute
client gettable attribute (current value is 0)
"XV_CONTRAST" (range -1000 to 1000)
client settable attribute
client gettable attribute (current value is 0)
"XV_VOLUME" (range 1 to 127)
client settable attribute
client gettable attribute (current value is 1)
maximum XvImage size: 2048 x 2048
Number of image formats: 4
id: 0x32595559 (YUY2)
guid: 59555932-0000-0010-8000-00aa00389b71
bits per pixel: 16
number of planes: 1
type: YUV (packed)
id: 0x59565955 (UYVY)
guid: 55595659-0000-0010-8000-00aa00389b71
bits per pixel: 16
number of planes: 1
type: YUV (packed)
id: 0x32315659 (YV12)
guid: 59563132-0000-0010-8000-00aa00389b71
bits per pixel: 12
number of planes: 3
type: YUV (planar)
id: 0x30323449 (I420)
guid: 49343230-0000-0010-8000-00aa00389b71
bits per pixel: 12
number of planes: 3
type: YUV (planar)
Si c'est bon, vous devrez aussi charger le module v4l (Video4Linux). Testez avec
'xdpyinfo | grep XV'. Si vous obtenez 'XVideo', alors vous pouvez ajouter
Load "v4l" dans la section modules de votre configuration.
5. En plus.
Le HOWTO de Xine explique également comment optimiser vos accès aux disques durs
ou comment 'booster' votre RAM. Ces options pouvant être dangereuses pour votre
matériel, je ne les conseille pas. Toutefois, si vous n'avez pas peur d'endommager
votre matériel, reportez-vous à cette documentation.
6. Les codecs Windows.
Le projet Avifile dispose de dll provenant de windows. Ces dll servent à la décompression
du format DivX ;-). Elles sont disponibles sur le site de Avifile (http://divx.euro.ru/).
Vous pouvez également ajouter les dll provenant du projet mplayer. Ces dll sont disponibles
sur http://mplayer.sourceforge.net.
Ces fichiers sont tous à installer dans /usr/lib/win32.
7. Les lecteurs.
Il existe plusieurs projets de lecteurs DivX sous Linux.
Le premier est avifile (http://divx.euro.ru/) mais dans sa version actuelle, il ne permet
pas une lecture décente des films.
Ensuite, vous avez Xine (http://xine.sourceforge.net). Bientôt en version 0.5, il permet
actuellement une lecture _quasi_ parfaite sur ma configuration. De plus, Xine, permet la
lecture de DVD (non cryptés).
Finalement, il y a mplayer, (http://mplayer.sourceforge.net/) actuellement en version
0.18pre qui permet déjà une lecture vraiment plus que _quasi_ parfaite.
Grâce à XFree 4.x, vous pourrez regardez vos DivX en plein écran (appuyez sur f dans Xine ou lancez
mplayer avec les options '-fs -vm -zoom').
Il existe aussi d'autres projet (avi-xmms, xmps, ...) mais ces projets ne sont pas encore
suffisamment avancés ou demandent trop de ressources systèmes dans leur version actuelle.