1
/***************************************************************************
2
avifmt2.h - description
5
copyright : (C) 2001 by mean
6
email : fixounet@free.fr
8
This part of header is ripped directly from wine project
9
See http://winehq.com to see more of their great work
11
***************************************************************************/
13
/***************************************************************************
15
* This program is free software; you can redistribute it and/or modify *
16
* it under the terms of the GNU General Public License as published by *
17
* the Free Software Foundation; either version 2 of the License, or *
18
* (at your option) any later version. *
20
***************************************************************************/
24
#if !defined( WIN32_CLASH) || !defined(CYG_MANGLING)
32
uint32_t biCompression;
34
uint32_t biXPelsPerMeter;
35
uint32_t biYPelsPerMeter;
37
uint32_t biClrImportant;
38
} BITMAPINFOHEADER, *PBITMAPINFOHEADER, *LPBITMAPINFOHEADER;
40
BITMAPINFOHEADER bmiHeader;
42
} BITMAPINFO, *LPBITMAPINFO;
45
void printBih(BITMAPINFOHEADER *bi);
47
Thanks to avery lee */
48
#define AVI_INDEX_OF_CHUNKS 0X01
52
typedef struct _avistdindex_chunk {
53
/* uint32_t fcc; // �ix##�
56
uint16_t wLongsPerEntry; // must be sizeof(aIndex[0])/sizeof(DWORD)
57
uint8_t bIndexSubType; // must be 0
58
uint8_t bIndexType; // must be AVI_INDEX_OF_CHUNKS
59
uint32_t nEntriesInUse; //
60
uint32_t dwChunkId; // �##dc� or �##db� or �##wb� etc..
61
/* QUADWORD qwBaseOffset; // all dwOffsets in aIndex array are
64
uint32_t qw1,qw2; // MN.
65
uint32_t dwReserved3; // must be 0
67
} AVISTDINDEX, * PAVISTDINDEX;
71
#define AVI_KEY_FRAME 0x10
72
#define AVI_B_FRAME 0x4000 // hopefully it is not used..
75
#include "ADM_audio/ADM_audiodef.h"
77
void Endian_AviMainHeader(MainAVIHeader *m);
78
void Endian_BitMapInfo( BITMAPINFOHEADER *b);
79
void Endian_AviStreamHeader(AVIStreamHeader *s);
80
void Endian_WavHeader(WAVHeader *w);
81
//void Endian_BitMapHeader( BITMAPHEADER *b);