mgavideo README

Copyright (C) 1999-2000 Ryan Drake (stiletto@mediaone.net)

Read the file: COPYING

Extended by:
Mike Bernson <mike@mlb.org>
Merrick Johnson <inkling@nop.org>
Benoit Matthieu <benoit.mathieu2@libertysurf.fr>
Leon van Stuivenberg <leonvs@iae.nl>
Gernot Ziegler <gz@lysator.liu.se>

Special thanks for helping go to:
Johan Thelmen <jth@linux.nu>
Ricky Beam <jfbeam@bluetopia.net>
David Barth <dbarth@besancon.net>

New from last release:
----------------------

        Read the CHANGELOG.

What you get in this tarball:
-----------------------------

        aiee.h      - Needed for msp3400.c (copied from bttv-6.2)
	audiochip.h

	i2c-algo-ks - A modified version of i2c-algo-bit from kernel 2.4.0

        i33.c       - MJPEG Codec control
	i33.h       	               

        i34.c       - DVD Codec control
	i34.h       	               

        ks0127.c    - Interface to the KS0127 video decoder chip used on
        ks0127.h      Matrox Rainbow Runner-G series and Marvel cards.

        maven.c     - Skeleton driver for the Maven TV-out.  Currently does
        maven.h       nothing but detect the chip.

	mgabes.c    - Backend scaler
	mgabes.h

	mgabus.c    - video/codec bus control
	mgabus.h

        mgacap.c    - Capture related (ioctl)
	
	mgaclk.c    - Some video clock functions
	mgaclk.h
	
	mgacodec.c  - Driver Codec interface
	mgacodec.h
	
	mgacore.c   - Core interface (irq,buffer,proc)
	mgacore.h
	
	mgadvd.c    - Videodevice for dvd playback
	mgadvd.h

	mgagrab.c   - Backend scaler control and image conversion
	mgagrab.h
	
	mgai2c.c    - I2C bus interface
	mgai2c.h
	
	mgajpg.c    - Videodevice for mjpeg recording/playback

        mgavideo.c  - Interface to the G100 and G200's video extension
        mgavideo.h    registers.  It also registers itself as an i2c
                      bus, and includes an api for sending commands to each
                      of the devices on the i2c.
	
	mgayuv.c    - 
	mgayuv.h
	
        msp3400.c   - The sound processor
        msp3400.h

        iv4l1       - Shell script to install kernel modules for the mgavideo.
        rv4l1       - Remove kernel modules
	update      - Remove then install

	tvnorm.h    - Used by zr36060.c and mgavideo.c
	
	videodev.c       - Video4Linux API
	videodev_mjpeg.h   Mjpeg extentions

        zr36060.c   - Zoran MJPEG chip driver
        zr36060.h


        CHANGELOG   - Read this to find out what changed since the last release.
        COPYING     - The GPL
	INSTALL     - Building/installing the driver
        Makefile    - Used to build the modules.
        README      - You're looking at it!
        VERSION     - Contains the name of the latest driver release version.

Usage tips
----------
	xawtv & 24 bit displays
	  To get xawtv working in 24 bit display mode you have to use the
	  xawtv -b 24 option. Otherwise xawtv gets this wrong.

	XVideo
	  The XVideo support in XFree86 4.0.1 and onward can conflict with
	  the driver. Use "xawtv -noxv -noscale" to avoid using XVideo, or
	  put "xawtv.xv: false" into your .Xdefaults file.

	For SVideo output on the tvout:
		echo "output svideo" > /proc/mgavideo/mga0/maven

Known Bugs:
-----------
	G400 MJPEG Recording & Playback
	  Status of RRG on G400 unknown; Marvel should work for PAL and NTSC.

	G200 & RRG
	  MJPEG PAL recording/playback
	  Decimation=1 (buffer overflows)

	XFree86
	  Mouse poiner and console font will be garbled if the X server is not
	  set to use 4MB less memory than available. To do this check your X server
	  configuration (/etc/X11/XF86Config) that the line
	  VideoRam   4096 is there for G200 with 8MB or
  	  VideoRam   8096 for G400 with 16MB if you want MTRR to work (else 12288)
		
	  An example:
	  Section "Device"
	      Identifier      "MGA G200"
	      VendorName      "Matrox"
	      BoardName       "Marvel G200"
	      VideoRam        4096
	  EndSection

	  Also, if you get garbled video when using the DVD add-on, you
	  might want to try this option (thanks to dag@bakke.com) :

		Option     "NoHal" "on"


Known to work:
--------------
	G200
	  Watching TV with xawtv
	  MJPEG recording/playback

	G200 & RRG	
	  Watching TV with xawtv
	  MJPEG recording/playback

	G400 Marvel
	  Watching TV with xawtv
	  MJPEG recording/playback

	G200 & DVD Add-on
	  VOB/MPEG playback
	  trick play partially working
	  
	G200 (non-Marvel) & DVD Add-on
	  some cards work

	G450 eTV
          Some reports that it works. This card doesn't have hardware
          mjpeg support, so only TV watching supported for now.

What needs to be done:
----------------------

        Work on Maven support.  (Mike Bernson)

	better support for DVD Add-on

        Development is on The Marvel/Linux page
        http://marvel.sourceforge.net/

        Download the latest code with CVS
	cvs -d:pserver:anonymous@cvs.marvel.sourceforge.net:/cvsroot/marvel login
	cvs -z3 -d:pserver:anonymous@cvs.marvel.sourceforge.net:/cvsroot/marvel co driver

        To update the code later use "cd driver" and "cvs up"

Extra:
------

        Anyone know if the Maven TVOut spec is available anywhere?

	http://www.samsungelectronics.com/semiconductors/System_LSI/Consumer_Multimedia/Digital_Video_Encoder_n_Decoder/KS0127B/DS_KS0127B.PDF

	
Programs known to work
----------------------
	Xawtv version 3.21
	http://www.strusel007.de/linux/xawtv/index.html

	There's a patch for XawTV available that removes some bttv specific
	workarounds which aren't needed for this driver.
	Thanks to Jeffrey H. Ingber for providing this patch!
	
	Get it at:
	ftp://mjpeg.sourceforge.net/pub/mjpeg/


	lavrec, lavplay
	http://sourceforge.net/projects/mjpeg/
	
	mzplay (DVD)
	Should be in the apps/dvd directory.
	See also http://www.nop.org/inkling/


Johan Thelmen <jth@linux.nu> &
Gernot Ziegler <gz@lysator.liu.se>
(based on the original README by
 Ryan Drake <stiletto@mediaone.net>)

