view drivers/README.Matrox @ 30857:77ce62f13d42

Use the high-level QuickTime decoding APIs (DecompressSequenceFrameS and friends) instead of the unsupported, internal ones (ImageCodecBeginBand etc.). This is a prerequisite for, among others, Apple ProRes 4:2:2 support, and simplifies the file by quite a bit. Tested on Linux with all existing QuickTime codecs I could get to work in the first place; qt261, qtavui, qtsvq3 have no change. qtcvid appears to not give bit-exact the same output as before, but it looks just the same in playback to me. qt3ivx stops crashing on exit (so works better than before). With some extra patches and a codecs.conf entry, ProRes 4:2:2 also works, including on Linux. Since codec initialization is now actually done on decoder init instead of on first frame, fallback should also work a bit better (although usually, qtvideo is last in the chain). Also made the decoder complain explicitly if the demuxer data is not there (ie., the user tried to run without -demuxer mov). This patch is a cleaned up version of what Andrew Wason (rectalogic A rectalogic D com) posted to mplayer-dev-eng in June.
author sesse
date Mon, 15 Mar 2010 12:05:56 +0000
parents 544914dadb52
children 0ad2da052b2e
line wrap: on
line source

The code in this directory is the old mga_vid driver for Linux kernels
prior to 2.6. It does _not_ compile for version 2.6.x.

For Linux kernel 2.6.x please get the newest version of the 2.6 port from
http://attila.kinali.ch/mga/


mga_vid  -  MGA G200/G400 YUV Overlay kernel module

	Author:
		Aaron Holtzman <aholtzma@ess.engr.uvic.ca>, Oct 1999

	Contributions by:
		Fredrik Vraalsen <vraalsen@cs.uiuc.edu>
		Alan Cox <alan@lxorguk.ukuu.org.uk>

                       WARNING  -----  WARNING

This code messes with your video card and your X server. It will probably
lock up your box, format your hard drive, and cause your brand new G400
MAX to spout 6 inch flames. You have been warned.

                       WARNING  -----  WARNING

What does this code do?

	 mga_vid is a kernel module that utilitizes the Matrox G200/G400/G550
	 video scaler/overlay unit to perform YUV->RGB colorspace conversion
	 and arbitrary video scaling.

	 mga_vid is also a monster hack.

How does mga_vid work?

	This kernel module sets up the BES (backend scaler) with appropriate
	values based on parameters supplied via ioctl. It also maps a chunk of
	video memory into userspace via mmap. This memory is stolen from X
	(which may decide to write to it later). The application can then write
	image data directly to the framebuffer (if it knows the right padding,
	etc).


How do I know if mga_vid works on my system?

	There is a test application called mga_vid_test. This test code should
	draw some nice 256x256 images for you if all is working well.