2.2.1. Sorties vidéo

General:

  x11  X11 avec extensions SHM optionnelles
xvX11 utilisant les recouvrements de l'extension Xvideo (YUV matériel & redimensionnement)
glrendu OpenGL, ne fonctionne actuellement qu'avec:
  • toutes les cartes Utah-GLX
  • les cartes Matrox et X/DRI >=4.0.3
  • les cartes Radeon avec X/DRI CVS
dgaextension X11 DGA
fbdevsortie vers le framebuffer générique
svgasortie vers SVGAlib
sdl   1.1.7: supporte le redimensionnement logiciel
  1.1.8: supporte Xvideo (redimensionnement/plein écran matériel)
  1.2.0: supporte AAlib (-vo aa recommandé, c.f. ci-dessous !)
ggisimilaire a SDL
aarendu en mode texte avec AAlib

Spécifique aux cartes :

  mga  Revouvrement matérie YUV avec les Matrox G200/G400 via le périphérique mga_vid
xmgaRecouvrement pour Matrox G200/G400 (mga_vid) dans une fenêtre X11
(émulation Xv sur X 3.3.x !)
syncfbsupport framebuffer YUV pour Matrox G400 (obsolète, utilisez mga/xmga)
3dfxsupport YUV matériel pour Voodoo2/3 (/dev/3dfx)(pas encore testé !)

Special:

  png  sortie fichiers PNG (utilisez l'option -z pour la compression)
pgmsortie fichiers PGM (pour réaliser des tests d'encodage avec ffmpeg)
md5sortie MD5sum (pour tests de conformance MPEG)
odivxsortie fichiers AVI OpenDivX (utilisez l'option -br pour le taux d'encodage) (SANS LE SON!)
nullsortie Null (pour tests/benchmarks de vitesse)

NOTE: lisez les sous-sections suivantes pour les détails et prérequis !

2.2.1.1. MTRR

Il est FORTEMENT recommandé de bien ajuster ses registres MTRR, qui apportent un gain important de performances. Vous devez tout d'abord définir leur adresse de base. Vous pouvez la trouver de trois façons :

Trouvons maintenant la taille mémoire. Simplement, convertissez la taille de la mémore vidéo en hexadecimal, ou utilisez cette table :

  1 MB0x100000
2 MB0x200000
4 MB0x400000
8 MB0x800000
16 MB0x1000000
32 MB0x2000000

Vous connaissez l'adresse de base ainsi que la taille, ajustons vos registres MTRR ! Par exemple, pour la carte Matrox utilisée ci-dessus (base=0xd8000000) avec 32MB ram (size=0x2000000) faites simplement :

  echo "base=0xd8000000 size=0x2000000 type=write-combining" >| /proc/mtrr

Tous les processeurs ne supportent pas les MTRR. Les anciens K6-2 par exemple [vers 266Mhz, stepping 0] ne sont pas compatibles avec les MTRR, mais les stepping 12 le sont ('cat /proc/cpuinfo' pour le vérifier').

2.2.1.2. Xv

Sous XFree86 4.0.2 ou plus récent, vous pouvez utiliser les routines YUV matérielles de votre carte en utilisant l'extension XVideo. Ceci peut être fait avec l'option option '-vo xv'. Pour que cela fonctionne, vérifiez ceci :

2.2.1.2.1. Cartes 3dfx

Les anciens drivers 3dfx avaient des problèmes avec l'accélération XVideo, et ne supportaient ni YUY2 ni YV12. Vérifiez que vous avez bien XFree86 version 4.1.0 ou plus, qui doit fonctionner correctement. Par ailleurs, vous pouvez également utiliser les cvs de DRI. Si des problèmes apparaissent en utilisnt -vo xv,essayez SDL (qui utilise également XVideo) et voyez si cela passe mieux. Lisez la section SDL pour plus de détails.

2.2.1.2.2. Cartes S3

Les cartes S3 Savage3D doivent fonctionner correctement, mais pour les Savage4, utilisez XFree86 version 4.0.3 ou plus. Comme pour les S3 Virge.. revendez la.

2.2.1.2.3. Cartes nVidia

nVidia n'est pas un très bon chois sous Linux.. Vous devrez utiliser le driver binaire de nVidia, disponible sur leur site. Le driver standard de X ne supporte pas XVideo pour ces cartes, par la faute des sources/spécifications fermées de nVidia.

2.2.1.2.4. Cartes ATI

  • Le driver GATOS utilise VSYNC par défaut. Cela signifie que la vitesse de décodage est synchronisée à la vitesse de rafraichissement du moniteur (!). Si la lecture semble lente, essayez d'enlever VSYNC, ou passez la vitesse de rafraichissement à n*(fps du film) Hz.
  • Radeon VE - actuellement seule la version CVS de XFree86 a un driver pour cette carte, pas la version 4.1.0. Pas de support TV-out.
  • 2.2.1.2.5. Cartes NeoMagic

    Ces cartes sont utilisées sur de nombreux portables. Sous Linux, seul le DGA manque. Malheureusement, le driver DGA de X 4.1.0 ne fonctionne pas, vous devrez attendre la version 4.2.0, ou télécharger un driver modifié pour 4.0.3 ou 4.1.0 depuis : http://www.mplayerhq.hu/MPlayer/incoming/NeoMagic-driver (existe également en patch pour les sources du driver).
    Drivers fournis par Tomek Jarzynka.

    2.2.1.3. DGA

    2.2.1.3.1. Sommaire

    Ce document tente d'expliquer en quelques mots ce qu'est le DGA en général et ce que peut faire le driver de sortie DGA pour MPlayer (et ce qu'il ne peut pas faire).

    2.2.1.3.2. Qu'est ce que le DGA

    DGA signifie Direct Graphics Access et permet aux programmes de passer outre le serveur X et de modifier directemment la mémoire dans le framebuffer. Techniquement parlant, cela fonctionne en mappant la mémoire du framebuffer dans les adresse mémoire de votre process. Cela est autorisé par le noyau uniquement si vous avez les privilèges super-user. Vous pouvez les obtenir soit en vous loggant en root ou en plaçant le bit suid sur l'exécutable mplayer (NON recommandé !).

    Il existe deux versions de DGA: DGA1 est utilisé par XFree 3.x.x et DGA2 a été introduit par XFree 4.0.1.

    DGA1 propose uniquement un accès direct au framebuffer comme décrit ci-dessus. Pour changer la résolution de votre signal vidéo vous devez utiliser les extensions XVidMode.

    DGA2 incorpore les fonctions de XVidMode et permet également de changer le nombre de couleurs de l'affichage. Donc vous pouvez, en exécutant depuis un serveur X 32 bits, passer en 15 bits et vice-versa.

    Cependant DGA a quelques défauts. Il semble qu'il reste dépendant de la carte graphique utilisée et de la mise en place du driver de votre serveur X controlant cette carte. Cela peut donc ne pas fonctionner sur tout les systèmes ...

    2.2.1.3.3. Installer le support DGA pour MPlayer

    Assurez vous d'abord que X charge l'extension DGA, regardez dans /var/log/XFree86.0.log:

        (II) Loading extension XFree86-DGA

    XFree86 4.0.x ou plus est TRÈS RECOMMANDÉ ! Le driver DGA de MPlayerest automatiquement détecté lors de ./configure, ou bien vous pouvez le forcer avec l'option --enable-dga.

    Si le driver ne peut pas passer en résolution inférieure, essayez les options -vm (unquement avec X 3.3.x), -fs, -bpp, -zoom pour trouver un mode vidéo qui convienne à la vidéo. Il n'existe pas de convertisseur actuellement.. :(

    Passez en ROOT. DGA nécessite un accès root pour écrire directement dans la mémoire vidéo. Si vous voulez rester en utilisateur, installez MPlayer SUID root:

        chown root /usr/local/bin/mplayer
        chmod 750 /usr/local/bin/mplayer
        chmod +s /usr/local/bin/mplayer

    Maintenant cela fonctionne avec les droits d'un simple utilisateur.

    !!!! MAIS FAITES ATTENTION !!!!
    Cela présente une GROSSE faille de sécurité ! Ne faites jamais ceci sur un serveur ou un ordinateur accessible par d'autres personnes que vous, ils pourraient obtenir les privilèges root par l'exécutable mplayer.
    !!!! ON VOUS AURA PRÉVENU ... !!!!

    Utilisez maintenant l'option '-vo dga', et c'est parti ! (enfin on peut l'espérer:) Vous pouvez alors essayer l'option '-vo sdl:dga'. C'est beaucoup plus rapide !!!

    2.2.1.3.4. Changement de résolution

    Le driver DGA vous permet de changer la résolution du driver de sortie. Cela permet d'éviter un redimensionnement logiciel, beaucoup plus lent, et offre une image plein écran. Idéalement il doit passer à la résolution exacte de la vidéo (excepté pour des résolutions exotiques), mais le serveur X permet uniquement le passage à des résolutions définies dans /etc/X11/XF86Config (/etc/X11/XF86Config-4 pour XFree 4.0.X respectivement). Ceux-ci sont définis par des modelines dépendantes des capacités de votre matériel. Le serveur X scanne ce fichier de configuration au démarrage et élimine les modelines ne correspondant pas au matériel. Vous pouvez retrouver dans les logs de X quelles modelines sont acceptables. Elles peuvent être trouvées dans : /var/log/XFree86.0.log.

    C.f. appendice A pour quelques exemples de modelines.

    2.2.1.3.5. DGA & MPlayer

    DGA est utilisé en deux endroits par MPlayer: le driver SDL peut se compiler pour en faire usage (-vo sdl:dga) et dans le driver DGA (-vo dga). Dans les sections suivantes je vous expliquerai comment fonctionne le driver DGA pour MPlayer.

    2.2.1.3.6. Fonctionnalités du driver DGA

    Le driver DGA s'invoque en spécifiant -vo dga sur la ligne de commande. L'action par défaut consiste à passer dans une résolution s'approchant au mieux de la résolution de la vidéo. Il ignore volontairement les options -vm et -fs (autorisant le changement de résolution et le plein écran) - il essaie toujours de couvrir le plus large espace possible de votre écran en changeant les modes vidéo, tout en utilisant un seul cycle CPU additionnel pour agrandir l'image. Si vous voulez utiliser un autre mode que celui qu'il a choisi, vous pouvez le forcer par les options -x et -y. Avec l'option -v, le driver DGA affichera, entre autres choses, une liste de toutes les résolutions supportées par votre fichier XF86Config. Avec DGA2 vous pouvez également le forcer a utiliser un certain nombre de couleurs en utilisant l'option -bpp. Les nombres de couleurs autorisées sont 15, 16, 24 et 32. Cela dépend de votre matériel, soit ces modes sont nativement supportés, soit il pratique une conversion logicielle (qui peut ralentir la lecture).

    Si par chance vous avez assez de mémoire vidéo libre pour y placer une image entière, le driver DGA utilisera le doublebuffering, qui améliore considérablement la qualité de lecture. Il doit vous afficher si le doublebuffering est utilisé ou non.

    Doublebuffering signifie que la prochaine frame de votre vidéo est dessinée dans une partie non affichée de la mémoire graphique tandis que s'affiche la frame en cours.Quand la frame suivant est prête, la puce graphique recoit simplement l'adresse de celle ci et récupère les donnée a afficher depuis cette partie de la mémoire. Pendant ce temps l'autre buffer se remplit de l'image suivante, etc...

    Le doublebuffering peut s'activer dans MPlayer avec l'option -double et se désactiver avec -nodouble. Actuellement l'option par défaut est de désactiver le doublebuffering. En utilisant le driver DGA, l'onscreen display (OSD) fonctionne uniquement avec le doublebuffering activé. Cependant, activer le doublebuffering peut demander des calculs supplémentaires au processeur (sur mon K6-II+ 525 il utilise 20% de temps CPU en plus !), ceci dépendant de l'implementation du DGA pour votre matériel.

    2.2.1.3.7. Problèmes de vitesse

    Généralement, l'accès au framebuffer DGA peut s'avérer aussi rapide que le driver X11, apportant en plus l'avantage de bénéficier d'une image plein écran. Les pourcentages affichées par MPlayer doivent être interprétées avec précaution, comme par exemple avec le driver X11 où ils n'incluent pas le temps utilisé par le serveur X pour l'affichage. Pour des résultats exacts, branchez un terminal sur le port série de votre machine et lancez un 'top' pour savoir ce qui se passe réellement lors de la lecture...

    D'une manière générale, l'accélération acquise en utilisant le DGA au lieu de l'affichage X11 classique dépend fortement de votre carte graphique et des optimisations effectuées sur le module DGA du serveur X.

    Si votre système s'avère trop lent, utilisez plutôt une profondeur de couleurs de 15 or 16bits, qui ne demande que la moitié de la bande passante d'un affichage 32 bits.

    Utiliser une profondeur de 24 bits peut s'avérer une bonne solution si votre carte ne supporte nativement que le 32 bits, le transfert se réduisant de 25% par rapport à un mode 32/32.

    J'ai vu certains fichiers avi passer sur des Pentium MMX 266. Les processeurs AMD K6-2 s'avèrent utilisables à partir de 400 MHZ et supérieur.

    2.2.1.3.8. Bogues connus

    A vrai dire, selon certains développeurs de XFree, DGA est une usine à gaz. Ils recommandent d'éviter son utilisation. Son implementation n'est pas parfaite avec chaque chipset pour XFree.

    2.2.1.3.9. Travaux prévus

    2.2.1.3.A. Quelques modelines

      Section "Modes"
        Identifier    "Modes[0]"
        Modeline	"800x600"  40     800 840 968 1056  600 601 605 628 
        Modeline	"712x600"  35.0   712 740 850 900   400 410 412 425
        Modeline	"640x480"  25.175 640 664 760 800   480 491 493 525 
        Modeline 	"400x300"  20     400 416 480 528   300 301 303 314 Doublescan
        Modeline	"352x288"  25.10  352 368 416 432   288 296 290 310
        Modeline	"352x240"  15.750 352 368 416 432   240 244 246 262 Doublescan
        Modeline	"320x240"  12.588 320 336 384 400   240 245 246 262 Doublescan
      EndSection
    

    Ces entrées fonctionnent bien avec ma carte Riva128, en utilisant le driver nv.o du serveur X.

    2.2.1.3.B. Rapports de bogues

    Si vous constatez des problèmes avec l'utilisation du driver DGA envoyez moi un rapport de bogue à l'adresse ci-dessous. Lancez mplayer avec l'option -v et joignez toutes les lignes commençant par vo_dga à votre mail :

    Merci d'inclure également la version de X11 utilisée, la carte graphique et votre type de processeur. Le module du driver X11 (défini dans XF86-Config) peut également m'aider. Merci !

    Acki (acki@acki-netz.de, www.acki-netz.de)

    2.2.1.4. SDL

    Voici certaines notes sur la sortie SDL dans MPlayer.

    Il existe plusieurs options à la ligne de commande pour SDL :

      -vo sdl:nom   spécifie le driver vidéo sdl a utiliser (ie. aalib, dga, x11)
    -ao sdl:nomspécifie le driver audio sdl a utiliser (ie. dsp, esd, arts)
    -noxvdésactive l'accélération Xvideo matérielle
    -forcexvtente de forcer l'accélération Xvideo

    Touches SDL :

    Fpasse du mode plein écran au mode fenêtré
    Cpasse par tous les modes plein écran valides
    W/Smappings pour les touches * et / (contrôle du mixer)

    Bogues connus :

    2.2.1.5. SVGAlib

    Si vous n'avez pas X, vous pouvez utiliser la sortie SVGAlib ! Faites attention de ne pas utiliser l'option -fs, qui passe en mode de zoom logiciel, et reste très lent actuellement, a moins que vous possédiez un processeur très rapide (et/ou MTRR ?). :(

    Bien sur vous devrez installer svgalib et ses paquetages de développement afin que MPlayer construise son driver SVGAlib driver (autodetecté, mais peut être forcé), et n'oubliez pas d'éditer /etc/vga/libvga.config pour l'ajuster à votre carte et votre moniteur.

    2.2.1.6. Sortie framebuffer (FBdev)

    La compilation de le sortie FBdev est autodétectée durant ./configure . Lisez la documentation sur le framebuffer dans le sources du noyau (Documentation/fb/*) pour savoir comment l'utiliser, etc.. !

    Si votre carte ne supporte pas le standard VBE 2.0 (anciennes cartes ISA/PCI, comme les S3 Trio64), et uniquement VBE 1.2 (ou plus ancien ?) : Dans ce cas, VESAfb reste disponible, mais vous devrez charger SciTech Display Doctor (également nommé UniVBE) avant de booter Linux. Utilisez une disquette de boot DOS ou similaire. Et n'oubliez pas d'enregistrer votre copie d'UniVBE ;))

    La sortie FBdev accepte certains paramètres additionnels :

      -fb   spécifie le device framebuffer a utiliser (/dev/fd0)
    -fbmodemode a utiliser (relatif au fichier /etc/fb.modes)
    -fbmodeconfigfichier de configuration des modes (/etc/fb.modes par defaut)
    -monitor_hfreqvaleurs IMPORTANTES, lisez le fichier example.conf
    -monitor_vfreq
    -monitor_dotclock

    Si vous voulez employer un mode spécifique, utilisez l'option

        mplayer -vm -fbmode (NameOfMode) filename

    NOTE: Le changement de mode vidéo avec FBdev _ne fonctionne pas_ avec le framebuffer VESA, et ne nous le demandez pas, il ne s'agit pas d'une limitation de MPlayer.

    2.2.1.7. Framebuffer Matrox (mga_vid)

    Cette section concerne le support BES (Back-End Scaler) sur cartes Matrox G200/G400/G450, le driver noyau de mga_vid. Il est activement développé par moi (A'rpi), et supporte le VSYNC matériel avec triple buffering. Cela fonctionne aussi bien en console framebuffer cque sous X.

    Pour l'utiliser, vous devez au préalable compiler mga_vid.o :

        cd drivers
        make

    Puis créez le device /dev/mga_vid :

        mknod /dev/mga_vid c 178 0

    et chargez le driver avec

        insmod mga_vid.o

    Vous pouvez vérifier une détection correcte de la taille mémoire en utilisant la commande 'dmesg'. Si elle s'avère incorrecte, utilisez l'option mga_ram_size (rmmod mga_vid d'abord), en spécifiant la mémoire de la carte en MB:

        insmod mga_vid.o mga_ram_size=16

    Pour le charger automatiquement, insérez cette ligne a la fin du fichier /etc/modules.conf :

        alias char-major-178 mga_vid

    Puis exécutez

        depmod -a

    Vous devez maintenant (re)compiler MPlayer, ./configure détectera /dev/mga_vid et construira le driver 'mga'. Pour l'utiliser dans MPlayer, lancer le avec l'option '-vo mga' si vous êtes en console matroxfb, ou '-vo xmga' sous XFree86 3.x.x ou 4.x.x.

    Note: '-vo xmga' fonctionne sous XFree86 4.x.x, mais entre en conflit avec le driver Xv, donc désactivez le auparavent. Si vous devez utiliser Xv avec mga, essayez de lancer MPlayer avec l'option '-vo mga' . Cela doit passer outre Xv.

    2.2.1.8. Framebuffer SiS 6326 (sis_vid)

    Driver framebuffer SiS 6326 YUV -> driver noyau sis_vid

    Son interface doit être compatible avec mga_vid, mais le driver n'a pas eu de mise à jour suite aux changements de mga_vid, il est donc dépassé. Les volontaires sont les bienvenus pour tester et mettre à jour le code.

    2.2.1.9. Support 3dfx YUV

    La 3dfx supporte nativement le YUV+scaler, en utilisant /dev/3dfx (tdfx.o driver?) Le driver noyau /dev/3dfx existe uniquement pour les noyaux 2.2.x, utilisable avec les ports Linux Glide 2.x. Cela n'a pas été testé avec MPlayer, et donc non supporté. Les volontaires sont les bienvenus pour tester et mettre à jour le code.

    2.2.1.10. Sortie OpenGL

    MPlayer supporte l'affichage de vidéos en utilisant l'OpenGL. Malheureusement, tous les drivers ne le supportent pas. Par exemple les drivers Utah-GLX (pour XFree86 3.3.6) l'acceptent pour toutes les cartes. C.f. http://utah-glx.sourceforge.net pour plus de détails sur comment installer ce driver.

    XFree86(DRI) >= 4.0.3 le supporte uniquement avec les cartes Matrox et Radeon. C.f. http://dri.sourceforge.net pour les instructions de téléchargement et d'installation.

    2.2.1.11. AAlib - affichage en mode texte

    AAlib est une libraries affichant des graphiques en mode texte, utilisant un puissant moteur de rendu ASCII. De nombreux programmes le supporte déjà, comme Doom, Quake, etc. MPlayer possède pour cela un driver parfaitement utilisable. Si ./configure détecte une installation de aalib, le driver aalib libvo sera compilé.

    Vous pouvez utiliser certains raccourcis clavier dans le fenêtre AA pour changer les options de rendering :

      1  diminue le contraste
    2augmente le contraste
    3diminue la luminosité
    4augmente la luminosité
    5active/désactive le fast rendering
    6active le mode de dithering (none, error distribution, floyd steinberg)
    7inverse l'image
    apasse des contôles de aa vers ceux de mplayer

    Vous pouvez utiliser les lignes de commande suivantes :

    -aaosdcolor=Vchange la couleur de l'osd
    -aasubcolor=Vchange la couleur des sous-titres

    ou V peut être : (0/normal, 1/noir, 2/bold, 3/boldfont, 4/reverse, 5/special)

    AAlib lui même propose de nombreuses options. En voici les principales :

    -aadriverchoisit le driver aa (X11, curses, linux)
    -aaextendedutilise les 256 caractères
    -aaeightutilise l'ascii 8 bits
    -aahelpaffiche toutes les options de aalib

    NOTE: Le rendering prend beaucoup de temps CPU, spécialement en utilisant aalib sur X, et prend moins de CPU sur une console standard, sans framebuffer. Utilisez SVGATextMode pour passer en mode texte large, et appréciez ! (Quelqu'un peut il améliorer bdev pour faire la conversion/dithering vers hgafb ? Ça serait parfait :)

    Utilisez l'option -framedrop si votre machine n'est pas suffisement rapide pour afficher toutes les frames !

    Sur un terminal vous obtiendrez de meilleures performances en utilisant le driver linux, pas curses (-aadriver linux). Cependant vous devez avoir un accès en écriture sur /dev/vcsa<terminal>! Ce n'est pas autodétecté par aalib, mais vo_aa essaie de déterminer le meilleur mode. C.f. http://aa-project.sourceforge.net/tune/ pour une meilleure optimisation.

    2.2.1.A. Support TV-out

    2.2.1.A.1. Cartes Matrox

    Suivez ces instructions:

    Yoh. L'étape suivante consiste à faire disparaitre le curseur de la console et de désactiver le blanking de l'écran. Exécutez les commandes suivantes :

    echo -e '\033[?25l'
    setterm -blank 0

    Yeah kewl. Lancez la vidéo avec la commande mplayer -vo mga -fs -screenw 640 -screenh 512 <filename>
    (Si vous utilisez X, passer en matroxfb, par exemple CTRL-ALT-F1 !)
    Changez la résoltion de 640x512 selon votre préférence...
    Appréciez la sortie Matrox TV ultra-rapide et fonctionnelle (mieux que Xv) !

    2.2.1.A.2. Cartes ATI

    Quelques mots sur l'ATI TV-out :
    Actuellement ATI ne veut supporter aucun de ses chips TV-out chips sous Linux. Ci-dessous la réponse officielle d'ATI Inc.:


    > Hello!
    >
    > On your pages you wrote that you support linux developers.
    > Currently I participate with mplayer project (www.mplayerhq.hu)
    > I'm interesting with enabling TV-out on Radeon VE chips during
    > movie playback. I would be glad to add this feature to radeonfb driver
    > (which can be found in CVS tree of mplayer project at main/drivers/radeon).
    > Do I have a chance to get any official technical documenation?

    We will not provide TV out related documents due to macrovision concerns.
    Also mpeg2 decoding is something that we MAY consider in the future but not
    at this current time. This is again due to proprietary and 3rd party
    information.

    Désolant, n'est ce pas ?

    Q : Qu'est ce que la Macrovision ?
    A:Un mécanisme de protection contre la copie.

    Ceal signifie que si vous donnez quelque information que ce soit sur les sorties TV-out alors les hackers pourront désactiver la protection contre la copie sur leurs cartes. C'est pourqoi nous ne pouvons pas avoir de TV-out sur ATI.

    Quel est le status des chips tv-out de ATI sous Linux :

  • ATI Mach64 inclut ImpacTV supporté par gatos.
  • ASIC Radeon VIVO inclut Rage Theatre supporté par gatos.
  • Radeon VE et Rage PRO LT incluent ImpacTV2+ pas encore supporté sous Linux.

    Heureusement, les possesseurs de machines suffisement puissantes ((Duron, Celeron2 et supérieur) peuvent regarder les vidéos sur leur TV avec les drivers VESA.

    Je pourrais également féliciter ATI Inc.:
    ils produisent des BIOS de haute qualité.

    Les drivers VESA n'utilisent aucune accélération matérielle mais simulent le DGA a travers une fenêtre de 64K, configurée avec les fonctions 32-bit du BIOS.Les cartes ATI possèdent suffisamanet de mémoire vidéo rapide (DIMM ou DDR chips avec accès 64 - 128-bit) donc ne souffrent pas de cette méthode. Il n'existe pas de limitations sur le mode vidéo utilisé pour votre TV (contrairement a d'autres cartes) donc vous pouvez utiliser n'importe lequel sur votre TV (de 320x200 jusqu'a 1024x768).
    La seule chose que vous devez faire - brancher le connecteur connecteur TV avant de démarrer votre PC puisque le bios vidéo s'initialise une seule fois durant la procédure POST.

    Pour plus de détail lisez la section VESA de cette documentation.

    2.2.1.A.3. Voodoo 3

    Consultez cette URL.