IM: im_format_avi.h Source File

IM - Imaging Libray

im_format_avi.h

Go to the documentation of this file.
00001 /** \file
00002  * \brief Register the AVI Format
00003  *
00004  * See Copyright Notice in im_lib.h
00005  * $Id: Exp $
00006  */
00007 
00008 #ifndef __IM_FORMAT_AVI_H
00009 #define __IM_FORMAT_AVI_H
00010 
00011 #if defined(__cplusplus)
00012 extern "C" {
00013 #endif
00014 
00015 /** \defgroup avi AVI - Windows Audio-Video Interleaved RIFF
00016  * \section Description
00017  * 
00018  * \par
00019  * Windows Copyright Microsoft Corporation.
00020  * \par
00021  * Internal Implementation, Windows Only. \n
00022  * You must link the application with "im_avi.lib" 
00023  * and you must call the function \ref imFormatRegisterAVI once 
00024  * to register the format into the IM core library. \n
00025  * Depends also on the VFW library (vfw32.lib).
00026  * When using the "im_avi.dll" this extra library is not necessary. \n
00027  * If using Cygwin or MingW must link with "vfw_ms32.a" and "vfw_avi32.a".
00028  * \par
00029  * See \ref im_format_avi.h
00030  *
00031  * \section Features
00032  *
00033 \verbatim
00034     Data Types: Byte
00035     Color Spaces: RGB, MAP and Binary (Gray saved as MAP)
00036     Compressions (installed in Windows XP by default):
00037       NONE     - no compression [default]
00038       RLE      - Microsoft RLE (8bpp only)
00039       CINEPACK - Cinepak Codec by Radius
00040       MSVC     - Microsoft Video 1 (old)
00041       M261     - Microsoft H.261 Video Codec
00042       M263     - Microsoft H.263 Video Codec
00043       I420     - Intel 4:2:0 Video Codec (same as M263)
00044       IV32     - Intel Indeo Video Codec 3.2 (old)
00045       IV41     - Intel Indeo Video Codec 4.5 (old)
00046       IV50     - Intel Indeo Video 5.1
00047       IYUV     - Intel IYUV Codec
00048       MPG4     - Microsoft MPEG-4 Video Codec V1 (not MPEG-4 compliant) (old)
00049       MP42     - Microsoft MPEG-4 Video Codec V2 (not MPEG-4 compliant)
00050       CUSTOM   - (show compression dialog)
00051       DIVX     - DivX 5.0.4 Codec (DivX must be installed)
00052       (others, must be the 4 charaters of the fourfcc code)
00053     Can have more than one image. 
00054     Can have an alpha channel (only for RGB)
00055     Internally the components are always packed.
00056     Lines arranged from top down to bottom or bottom up to top. But are saved always as bottom up.
00057     Handle() returns PAVIFILE.
00058  
00059     Attributes:
00060       FPS IM_FLOAT (1) (should set when writing, default 15)
00061       AVIQuality IM_INT (1) [1-10000, default -1] (write only)
00062       KeyFrameRate IM_INT (1) (write only) [key frame frequency, if 0 not using key frames, default 15]
00063       DataRate IM_INT (1) (write only) [kilobits/second, default 2400]
00064 
00065     Comments:
00066       Reads only the first video stream. Other streams are ignored.
00067       All the images have the same size, you must call imFileReadImageInfo/imFileWriteImageInfo 
00068         at least once.
00069       For codecs comparsion and download go to:
00070         http://graphics.lcs.mit.edu/~tbuehler/video/codecs/
00071         http://www.fourcc.org
00072 \endverbatim
00073  * \ingroup format */
00074  
00075 /** Register the AVI Format 
00076  * \ingroup avi */
00077 void imFormatRegisterAVI(void);
00078 
00079 #if defined(__cplusplus)
00080 }
00081 #endif
00082 
00083 #endif