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  */
00006 
00007 #ifndef __IM_FORMAT_AVI_H
00008 #define __IM_FORMAT_AVI_H
00009 
00010 #if     defined(__cplusplus)
00011 extern "C" {
00012 #endif
00013 
00014 /** \defgroup avi AVI - Windows Audio-Video Interleaved RIFF
00015  * \section Description
00016  * 
00017  * \par
00018  * Windows Copyright Microsoft Corporation.
00019  * \par
00020  * Access to the AVI format uses Windows AVIFile library. Available in Windows Only. \n
00021  * When writing a new file you must use an ".avi" extension, or the Windows API will fail. \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. 
00025  * In Lua call require"imlua_avi". \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) [unsed if compression=CUSTOM]
00066       KeyFrameRate IM_INT (1) (write only) [key frame frequency, if 0 not using key frames, default 15, unsed if compression=CUSTOM]
00067       DataRate IM_INT (1) (write only) [kilobits/second, default 2400, unsed if compression=CUSTOM]
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. \n
00080  * In Lua, when using require"imlua_avi" this function will be automatically called.
00081  * \ingroup avi */
00082 void imFormatRegisterAVI(void);
00083 
00084 #if defined(__cplusplus)
00085 }
00086 #endif
00087 
00088 #endif

Generated on Thu Oct 1 11:40:01 2009 for IM by  doxygen 1.6.1