IM: im_format_avi.h Source File

IM - An Imaging Tool

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: im_format_avi.h,v 1.5 2006/05/16 13:57:17 scuri 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  * Access to the AVI format uses Windows AVIFile library. Available in Windows Only. \n
00022  * When writing a new file you must use an ".avi" extension, or the Windows API will fail. \n
00023  * You must link the application with "im_avi.lib" 
00024  * and you must call the function \ref imFormatRegisterAVI once 
00025  * to register the format into the IM core library. \n
00026  * Depends also on the VFW library (vfw32.lib).
00027  * When using the "im_avi.dll" this extra library is not necessary. \n
00028  * If using Cygwin or MingW must link with "-lvfw32". 
00029  * Old versions of Cygwin and MingW use the "-lvfw_ms32" and "-lvfw_avi32". 
00030  * \par
00031  * See \ref im_format_avi.h
00032  *
00033  * \section Features
00034  *
00035 \verbatim
00036     Data Types: Byte
00037     Color Spaces: RGB, MAP and Binary (Gray saved as MAP)
00038     Compressions (installed in Windows XP by default):
00039       NONE     - no compression [default]
00040       RLE      - Microsoft RLE (8bpp only)
00041       CINEPACK - Cinepak Codec by Radius
00042       MSVC     - Microsoft Video 1 (old)
00043       M261     - Microsoft H.261 Video Codec
00044       M263     - Microsoft H.263 Video Codec
00045       I420     - Intel 4:2:0 Video Codec (same as M263)
00046       IV32     - Intel Indeo Video Codec 3.2 (old)
00047       IV41     - Intel Indeo Video Codec 4.5 (old)
00048       IV50     - Intel Indeo Video 5.1
00049       IYUV     - Intel IYUV Codec
00050       MPG4     - Microsoft MPEG-4 Video Codec V1 (not MPEG-4 compliant) (old)
00051       MP42     - Microsoft MPEG-4 Video Codec V2 (not MPEG-4 compliant)
00052       CUSTOM   - (show compression dialog)
00053       DIVX     - DivX 5.0.4 Codec (DivX must be installed)
00054       (others, must be the 4 charaters of the fourfcc code)
00055     Can have more than one image. 
00056     Can have an alpha channel (only for RGB)
00057     Internally the components are always packed.
00058     Lines arranged from top down to bottom or bottom up to top. But are saved always as bottom up.
00059     Handle(0) returns NULL. imBinFile is not supported.
00060     Handle(1) returns PAVIFILE.
00061     Handle(2) returns PAVISTREAM.
00062  
00063     Attributes:
00064       FPS IM_FLOAT (1) (should set when writing, default 15)
00065       AVIQuality IM_INT (1) [1-10000, default -1] (write only)
00066       KeyFrameRate IM_INT (1) (write only) [key frame frequency, if 0 not using key frames, default 15]
00067       DataRate IM_INT (1) (write only) [kilobits/second, default 2400]
00068 
00069     Comments:
00070       Reads only the first video stream. Other streams are ignored.
00071       All the images have the same size, you must call imFileReadImageInfo/imFileWriteImageInfo 
00072         at least once.
00073       For codecs comparsion and download go to:
00074         http://graphics.lcs.mit.edu/~tbuehler/video/codecs/
00075         http://www.fourcc.org
00076 \endverbatim
00077  * \ingroup format */
00078  
00079 /** Register the AVI Format 
00080  * \ingroup avi */
00081 void imFormatRegisterAVI(void);
00082 
00083 #if defined(__cplusplus)
00084 }
00085 #endif
00086 
00087 #endif