mga_vid
is a combination of a video output driver and
a Linux kernel module that utilizes the Matrox G200/G400/G450/G550 video
scaler/overlay unit to perform YUV->RGB colorspace conversion and arbitrary
video scaling.
mga_vid
has hardware VSYNC support with triple
buffering. It works on both a framebuffer console and under X, but only
with Linux 2.4.x.
For a Linux 2.6.x version of this driver check out http://attila.kinali.ch/mga/ or have a look at the external Subversion repository of mga_vid which can be checked out via
svn checkout svn://svn.mplayerhq.hu/mga_vid
Installation:
To use it, you first have to compile drivers/mga_vid.o:
make drivers
Then run (as root
)
make install-drivers
which should install the module and create the device node for you. Load the driver with
insmod mga_vid.o
You should verify the memory size detection using the dmesg command. If it's bad, use the mga_ram_size option (rmmod mga_vid first), specify card's memory size in MB:
insmod mga_vid.o mga_ram_size=16
To make it load/unload automatically when needed, first insert the following line at the end of /etc/modules.conf:
alias char-major-178 mga_vid
Now you have to (re)compile MPlayer, ./configure will detect /dev/mga_vid and build the 'mga' driver. Using it from MPlayer goes by -vo mga if you have matroxfb console, or -vo xmga under XFree86 3.x.x or 4.x.x.
The mga_vid driver cooperates with Xv.
The /dev/mga_vid device file can be read for some info, for example by
cat /dev/mga_vid
and can be written for brightness change:
echo "brightness=120" > /dev/mga_vid
There is a test application called mga_vid_test in the same directory. It should draw 256x256 images on the screen if all is working well.