mga_vid
è un'incrocio di un driver di uscita video e
di un modulo del kernel, che utilizza il ridimensionatore e l'overlay video
delle Matrox G200/G400/G450/G550 per effettuare una conversione dello spazio
colore YUV->RGB e un ridimensionamento video arbitrario.
mga_vid
ha un supporto hardware per VSYNC con triplo
buffering. Funziona sia in una console su framebuffer che dentro X, ma solo con
Linux 2.4.x.
Per una versione del driver per Linux 2.6.x controlla http://attila.kinali.ch/mga/ oppure butta un occhio sul repository Subversion esterno di mga_vid, che si può ottenere tramite
svn checkout svn://svn.mplayerhq.hu/mga_vid
Installazione:
Per usarlo devi innanzitutto compilare drivers/mga_vid.o:
cd drivers make drivers
Poi esegui (come root
)
make install-drivers
che dovrebbe installare il modulo e creare per te il nodo del dispositivo. Carica il driver con
insmod mga_vid.o
Dovresti verificare il rilevamento della dimensione della memoria usando il comando dmesg. Se è errato, usa l'opzione mga_ram_size (prima fai rmmod mga_vid), indicando in MB la dimensione della memoria della scheda:
insmod mga_vid.o mga_ram_size=16
Per far sì che venga caricato/scaricato quando serve, prima inserisci la riga seguente alla fine di /etc/modules.conf:
alias char-major-178 mga_vid
Ora devi (ri)compilare MPlayer, ./configure rileverà /dev/mga_vid e compilerà il driver 'mga'. Si potrà usare da MPlayer con -vo mga se sei su una console matroxfb, oppure -vo xmga se sei sotto XFree86 3.x.x o 4.x.x.
Il driver mga_vid collabora con Xv.
Si può leggere il file del dispositivo /dev/mga_vid per alcune informazioni, per esempio facendo
cat /dev/mga_vid
e ci si può scrivere per modificare la luminosità:
echo "brightness=120" > /dev/mga_vid
Nella stessa directory c'è un'applicazione di test che si chiama mga_vid_test. Se tutto funziona bene, dovrebbe disegnare immagini di 256x256 sullo schermo.