8.2. Xv

XFree86 4.0.2 vagy újabb alatt használhatod a kártyád YUV rutinjait az XVideo kiterjesztés használatával. Ez az, amit a -vo xv kapcsoló használ. Ez a vezérlő támogatja a fényerősség/kontraszt/árnyalat/stb. állítását (hacsak nem a régi, lassú DirectShow DivX codec-et használod, ami mindenhol támogatja), lásd a man oldalt.

A beüzemeléséhez ellenőrizd a következőket:

  1. XFree86 4.0.2 vagy újabbat kell használnod (korábbi verziókban nincs XVideo)

  2. A kártyádnak támogatnia kell a hardveres gyorsítást (a modern kártyák tudják)

  3. Az X-nek írnia kell az XVideo kiegészítés betöltését valahogy így:

    (II) Loading extension XVideo

    a /var/log/XFree86.0.log fájlban.

    Megjegyzés

    Ez csak az XFree86 kiegészítését tölti be. Egy jó telepítésben ez mindig betöltődik, de ez nem jelenti azt, hogy a kártya XVideo támogatása is be van töltve!

  4. A kártyádnak van Xv támogatása Linux alatt. Ennek az ellenőrzéséhez add ki az xvinfo parancsot, ez része az XFree86 disztribúciónak. Egy hosszú szöveget kell kiírnia, valami ilyesmit:

    X-Video Extension version 2.2
    screen #0
      Adaptor #0: "Savage Streams Engine"
        number of ports: 1
        port base: 43
        operations supported: PutImage
        supported visuals:
          depth 16, visualID 0x22
          depth 16, visualID 0x23
        number of attributes: 5
    (...)
        Number of image formats: 7
          id: 0x32595559 (YUY2)
            guid: 59555932-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)
    (...stb...)

    Támogatnia kell a tömörített YUY2 és a YV12 planar pixel formátumokat, hogy az MPlayer használni tudja.

  5. És végül, nézd meg, hogy az MPlayer 'xv' támogatással lett-e fordítva. Írd be ezt: mplayer -vo help | grep xv . Ha az 'xv' támogatás be van építve, egy ehhez hasonló sornak szerepelnie kell:

      xv      X11/Xv

8.2.1. 3dfx kártyák

A régebbi 3dfx vezérlőknek tudvalevőleg problémáik vannak az XVideo gyorsítással, nem támogatják a YUY2 és YV12 színtereket. Nézd meg, hogy 4.2.0 vagy újabb XFree86-tal rendelkezel-e, ez jól kezeli a YV12-őt és a YUY2-őt, míg a korábbi verziók beleértve a 4.1.0-t is, összeomlanak az YV12-vel. Ha különös effekteket tapasztalsz a -vo xv használatakor, próbáld ki az SDL-t (ebben is van XVideo) és nézd meg, hogy ez segít-e. Lásd az SDL fejezetet a részletekért.

VAGY, próbáld ki az ÚJ -vo tdfxfb vezérlőt! Lásd a tdfxfb részt.

8.2.2. S3 kártyák

Az S3 Savage3D nem működik megfelelően, de a Savage4 igen 4.0.3 vagy újabb XFree86 használata mellett (képhibák esetén próbáld 16bpp-vel). Ami az S3 Virge-eket illeti: van xv támogatás, de maga a kártya túl lassú, így jobb, ha eladod.

Már van natív framebuffer vezérlő az S3 Virge kártyákhoz, hasonlóan a tdfxfb-hez. Állítsd be a framebuffer-ed (pl. add hozzá a "vga=792 video=vesa:mtrr" opciót a kernel parancssorához) és használd a -vo s3fb opciót (-vf yuy2 és -dr szintén segíthet).

Megjegyzés

Jelenleg nem tisztázott, hogy mely Savage modellekből hiányzik a YV12 támogatás, és konvertál a vezérlő (lassú). Ha a kártyára gyanakodsz, szerezz be egy újabb vezérlőt, vagy udvariasan kérj az MPlayer-users levelezési listán egy MMX/3DNow! támogatású vezérlőt.

8.2.3. nVidia kártyák

Az nVidia nem mindig a legjobb választás Linux alatt... Az XFree86 nyílt forráskódú vezérlője támogatja a legtöbb kártyát, de a legtöbb esetben a bináris, zárt forrású nVidia vezérlőt kell használnod, ami elérhető az nVidia weboldalán. Erre a vezérlőre mindenképpen szükséged lesz, ha 3D gyorsítást akarsz.

A Riva128 kártyákkal nincs XVideo támogatás az XFree86 nVidia vezérlőjével :( Panaszkodj az nVidia-nak.

Habár az MPlayer a legtöbb nVidia kártyához rendelkezik VIDIX vezérlővel. Jelenleg még béta állapotú, és van pár bökkenője. További információkért lásd az nVidia VIDIX részt.

8.2.4. ATI kártyák

A GATOS vezérlő (amit használnod illene, hacsak nem Rage128 vagy Radeon kártyád van) alapértelmezésként engedélyezi a VSYNC-et. Ez azt jelenti, hogy a dekódolási sebesség (!) a monitor frissítési rátájához van szinkronizálva. Ha a lejátszás lassúnak tűnik, próbáld meg valahogy kikapcsolni a VSYNC-et vagy állítsd be a frissítést n*(film fps értéke) Hz-re.

A Radeon VE - ha X kell, használj XFree 4.2.0-t vagy újabbat ehhez a kártyához. Nincs TV kimenet támogatás. Természetesen az MPlayerrel simán is gyorsított megjelenítést kapsz, TV kimenettel vagy anélkül, és így sem függvénykönyvtárra sem X-re nincs szükség. Olvasd el a VIDIX részt.

8.2.5. NeoMagic kártyák

Ilyen kártyák általában laptopokban találhatóak. XFree86 4.3.0 vagy újabbat kell használnod, vagy Stefan Seyfried Xv-t támogató vezérlőjét. Csak válaszd ki az te XFree86-odhoz illő verziót.

Az XFree86 4.3.0-ban van Xv támogatás, Bohdan Horst pedig küldött egy kis javítást az XFree86 forrásához, ami a framebuffer műveleteket felgyorsítja (XVideo-t is) akár négyszeresére is. A javítás belekerült az XFree86 CVS-ébe és a 4.3.0 utáni következő kiadásban is benne lesz.

A DVD méretű tartalmak lejátszásához az XF86Config-odat módosítanod kell:

Section "Device"
    [...]
    Driver "neomagic"
    Option "OverlayMem" "829440"
    [...]
EndSection

8.2.6. Trident kártyák

Ha az Xv-t Trident kártyával akarod használni, feltéve hogy nem megy 4.1.0-val, telepítsd fel az XFree 4.2.0-t. A 4.2.0-ban teljes képernyős Xv támogatás van a Cyberblade XP kártyával.

Alternatívaként az MPlayer is tartalmaz egy VIDIX vezérlőt a Cyberblade/i1 kártyához.

8.2.7. Kyro/PowerVR kártyák

Ha az Xv-t Kyro alapú kártyával akarod használni (például Hercules Prophet 4000XT-vel), akkor le kell töltened a vezérlőt a PowerVR oldaláról.

8.2.8. Intel kártyák

Ez a kártya sok laptopban megtalálható. A legújabb Xorg javasolt hozzá.

A DVD méretű (és nagyobb) tartalom lejátszásának engedélyezéséhez módosítanod kell az XF86Config/xorg.conf fájlodat így:

Section "Device"
    [...]
    Driver "intel"
    Option "LinearAlloc" "6144"
    [...]
EndSection

Ezen opció hiánya általában egy ehhez hasonló hibát eredményez:

X11 error: BadAlloc (insufficient resources for operation)

when attempting to use -vo xv.