4.2. Xv

In XFree86 4.0.2 o successivi, puoi utilizzare le funzioni YUV hardware della tua scheda usando l'estensione XVideo. Questo è quello che fa l'opzione -vo xv. Inoltre, il driver supporta l'impostazione di luminosità/contrasto/tonalità/etc (a meno che tu non usi il vecchio e lento codec DirectShow DivX, che le supporta ovunque), vedi la pagina man.

In order to make this work, be sure to check the following: Per far sì che funzioni, assicurati di controllare le seguenti:

  1. Che tu usi XFree86 4.0.2 o superiore (le versioni precedenti non hanno XVideo)

  2. Che la tua scheda supporti l'accelerazione hardware (le schede moderne la supportano)

  3. Che X carichi l'estensione XVideo, è un qualcosa del genere:

    (II) Loading extension XVideo

    in /var/log/XFree86.0.log

    Nota

    Questo carica solo l'estensione per XFree86. In una buona installazione viene sempre caricata, e non significa che il supporto per l'XVideo della scheda sia presente!

  4. Che la tua scheda abbia il supporto Xv sotto Linux. Per controllare, prova con xvinfo, è parte della distribuzione di XFree86. Dovrebbe mostrarti un lungo testo, simile al seguente:

    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)
    (...etc...)

    Deve supportare i formati pixel YUY2 packed e YV12 planar per poter essere utilizzabile con MPlayer.

  5. E infine, controlla che MPlayer sia stato compilato col supporto per 'xv'. Lancia un mplayer -vo help | grep xv . Se il supporto per 'xv' è compilato, dovrebbe uscire una linea come la seguente:

      xv      X11/Xv

4.2.1. Schede 3dfx

I vecchi driver 3dfx avevano notoriamente dei problemi con l'accelerazione XVideo, non erano compatibili con gli spazi colore YV12 e YUY2. Verifica di avere XFree86 4.2.0 o superiore, può gestire YV12 e YUY2, mentre le versioni precedenti, 4.1.0 incluso, vanno in crash con YV12. Se hai degli strani risultati usando -vo xv, prova SDL (anch'essa ha XVideo) e vedi se aiuta. Controlla la sezione su SDL per i dettagli.

OPPURE, prova il NUOVO driver -vo tdfxfb! Vedi la sezione tdfxfb

4.2.2. Schede S3

Le S3 Savage3D dovrebbero funzionare bene, ma per le Savage4, usa XFree86 4.0.3 o superiore (nel caso tu abbia problemi di immagini, prova a 16bpp). Per le S3 Virge invece: c'è il supporto per xv, ma la scheda in sé è molto lenta, per cui ti conviene venderla.

Non c'è un driver framebuffer nativo per le schede S3 Virge simile a tdfxfb. Configura il tuo framebuffer (per es. aggiungi "vga=792 video=vesa:mtrr" alla riga di avvio del kernel) e usa -vo s3fb (-vf yuy2 e -dr aiutano).

Nota

Non è ben chiaro il perché i modelli Savage non abbiano il supporto YV12 e facciano la conversione con il driver (lento). Se pensi sia colpa della scheda, cerca un driver più recente, o chiedi gentilmente di un driver abilitato MMX/3DNow! sulla mailing list MPlayer-users.

4.2.3. Schede nVidia

nVidia non è sempre una scelta molto buona sotto Linux... Il driver open-source di XFree86 supporta la maggior parte di queste schede, ma in alcuni casi, dovrai usare il driver proprietario a sorgenti chiusi di nVidia, disponibile sul sito nVidia. Ti servirà sempre questo driver anche se vuoi l'accelerazione 3D.

Le schede Riva128 non hanno il supporto XVideo con il driver nVidia di XFree86 :( Lamentati con nVidia.

Tuttavia, MPlayer contiene un driver VIDIX per la maggior parte delle schede nVidia. Attualmente è a livello di sviluppo beta e ha alcuni problemi. Per ulteriori informazioni, vedi la sezione VIDIX nVidia.

4.2.4. Schede ATI

Il driver GATOS (che dovresti usare a meno che tu non abbia una Rage128 o una Radeon) di default ha il VSYNC abilitato. Ciò significa che la velocità di decodifica (!) è sincronizzata alla frequenza di aggiornamento del monitor. Se la riproduzione ti pare lenta, prova a disabilitare in qualche modo VSYNC, o ad impostare la frequenza di aggiornamento a n*(fps del film) Hz.

Read the VIDIX section. Radeon VE - se ti serve X, per questa scheda usa XFree86 4.2.0 o superiore. Il TV out non è supportato. Ovviamente con MPlayer puoi felicemente avere un display accelerato, con o senza l'uscita TV, e non servono librerie né X. Leggi la sezione VIDIX.

4.2.5. Schede NeoMagic

Queste schede si possono trovare in molti portatili. Devi usare XFree86 4.3.0 o superiore, o alternativamente usare i driver con Xv di Stefan Seyfried. Scegli semplicemente quello che ti serve in base alla tua versione di XFree86.

XFree86 4.3.0 include il supporto per Xv, caomunque Bohdan Horst ha postato una piccola patch ai sorgenti di XFree86 che velocizza fino a quattro volte le operazioni sul framebuffer (quindi XVideo). La patch è stata poi incorporata in XFree86 CVS e dovrebbe esserci nei rilasci successivi al 4.3.0.

Per permettere la riproduzione di contenuti della dimensione DVD, modifica il tuo XF86Config in questo modo:

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

4.2.6. Schede Trident

Se vuoi usare Xv con una scheda Trident, assunto il fatto che con 4.1.0 non funziona, intalla Xfree 4.2.0. Il 4.2.0 aggiunge il supporto per Xv a schermo intero con la scheda Cyberblade XP.

Alternativamente, MPlayer contiene un driver VIDIX per le schede Cyberblade/i1.

4.2.7. Schede Kyro/PowerVR

Se vuoi usare Xv con una scheda basata su Kyro (per esempio la Hercules Prophet 4000XT), dovresti scaricare i driver dal sito di PowerVR.

4.2.8. Schede Intel

Queste schede si possono trovare in molti portatili. Si consiglia un Xorg recente.

Per permettere la riproduzione di contenuti a dimensione DVD (o superiore) modifica il tuo file di configurazione XF86Config/xorg.conf nel modo seguente:

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

L'assenza di questa opzione di solito porta a un errore del tipo

X11 error: BadAlloc (insufficient resources for operation)

quando si cerca di usare -vo xv.