Data Structures | |
struct | AVI_CHUNK |
A chunk of the avi file. More... | |
struct | AVI_INDEX |
All the index of the movie. More... | |
struct | AVI_INDEX_ENTRY |
Each index entry of the file. More... | |
struct | AVI_MAIN_HEADER |
Main header of the avi file. More... | |
struct | AVI_MOVIE |
AVI movie. More... | |
struct | AVI_STREAM |
Contain all the information necessary to handle a stream. More... | |
struct | AVI_STREAM_DATA |
Information about the aditional data for stream format. More... | |
struct | AVI_STREAM_FORMAT |
Information about the format of one stream of the file. More... | |
struct | AVI_STREAM_HEADER |
Stream header, with information about one stream of the file. More... | |
Defines | |
#define | FCC_RIFF AL_ID('F', 'F', 'I', 'R') |
First code in the avi. | |
#define | FCC_AVI AL_ID(' ', 'I', 'V', 'A') |
After 'RIFF', this is need to be a valid avi file. | |
#define | FCC_LIST AL_ID('T', 'S', 'I', 'L') |
Start of the list of chunks. | |
#define | FCC_hdrl AL_ID('l', 'r', 'd', 'h') |
Start the list of headers. | |
#define | FCC_avih AL_ID('h', 'i', 'v', 'a') |
Main avi header. | |
#define | FCC_strl AL_ID('l', 'r', 't', 's') |
List of stream informations. | |
#define | FCC_strh AL_ID('h', 'r', 't', 's') |
Header of the stream. | |
#define | FCC_strf AL_ID('f', 'r', 't', 's') |
Stream format. | |
#define | FCC_strd AL_ID('d', 'r', 't', 's') |
Additional stream data (not used). | |
#define | FCC_movi AL_ID('i', 'v', 'o', 'm') |
List of frames in the movie. | |
#define | FCC_idx1 AL_ID('1', 'x', 'd', 'i') |
Index of the movie. | |
#define | FCC_vids AL_ID('s', 'd', 'i', 'v') |
Type of the stream of video. | |
#define | FCC_auds AL_ID('s', 'd', 'u', 'a') |
Type of the stream of audio. | |
#define | FCC_JUNK AL_ID('K', 'N', 'U', 'J') |
Just for align data. | |
#define | FCC_DIVX AL_ID('x', 'v', 'i', 'd') |
FCC of DivX codec. | |
#define | FCC_XVID AL_ID('d', 'i', 'v', 'x') |
FCC of XviD codec. | |
#define | FCC_DIVX_OTHER AL_ID('f', 'v', 'i', 'd') |
One of my DivX movies has this codec. | |
Functions | |
AVI_MOVIE * | avi_open (const char *name) |
Opens the file name and verifies if it is a valid avi. | |
void | avi_destroy (AVI_MOVIE *avi) |
Frees the memory allocated and close the file. | |
AVI_CHUNK * | avi_chunk_read_header (AVI_MOVIE *avi) |
Reads the fcc, size and sub-type of the next chunk in the file. | |
AVI_CHUNK * | avi_chunk_read (AVI_MOVIE *avi) |
Reads the fcc, size, sub-type and data of the next chunk in the file. | |
void | avi_chunk_destroy (AVI_CHUNK *ac) |
Frees the memory allocated to a chunk. | |
void | avi_chunk_skip (AVI_MOVIE *avi) |
Skip the next chunk. | |
int | avi_read_frame_video (AVI_MOVIE *avi, int frame) |
Read a frame of video. |
You can use this module separately of MJpgAlleg, to implement your own AVI library.
|
Frees the memory allocated to a chunk. The avi is a valid AVI_MOVIE pointer.
|
|
Reads the fcc, size, sub-type and data of the next chunk in the file. The subtype is read for RIFF and LIST fcc. The avi is a valid AVI_MOVIE pointer.
|
|
Reads the fcc, size and sub-type of the next chunk in the file. The subtype is read for RIFF and LIST fcc. The avi is a valid AVI_MOVIE pointer.
|
|
Skip the next chunk. The avi is a valid AVI_MOVIE pointer.
|
|
Frees the memory allocated and close the file. The avi is a valid AVI_MOVIE pointer
|
|
Opens the file name and verifies if it is a valid avi. This function will see if it's a valid RIFF file, of type AVI, and will load the header of the avi, the stream info, the offset of movi list and the index of the file
|
|
Read a frame of video. Stores the data in the buffer of video stream and the size of frame in frame_size. The avi is a valid AVI_MOVIE pointer, and frame is the number of the frame to read.
|