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