libavi.h File Reference

Go to the source code of this file.

Data Structures

struct  idx1_entry_s
struct  avi_chunk_common_s
struct  avi_chunk_list_s
struct  avi_chunk_idx1_s
struct  avi_chunk_avih_s
struct  avi_chunk_strh_s
struct  avi_chunk_strf_auds_s
struct  avi_chunk_strf_vids_s
union  avi_chunk_strf_u
struct  avi_chunk_strd_s
struct  indx_std_entry_t
struct  indx_field_entry_t
struct  indx_super_entry_t
struct  avi_chunk_indx_s
struct  avi_chunk_STRING_s
union  avi_chunk_u

Defines

#define AVIF_HASINDEX   0x00000010
#define AVIF_MUSTUSEINDEX   0x00000020
#define AVIF_ISINTERLEAVED   0x00000100
#define AVIF_TRUSTCKTYPE   0x00000800
#define AVIF_WASCAPTUREFILE   0x00010000
#define AVIF_COPYRIGHTED   0x00020000
#define AVIIF_LIST   0x00000001L
#define AVIIF_KEYFRAME   0x00000010L
#define AVIIF_NOTIME   0x00000100L
#define AVIIF_COMPUSE   0x0FFF0000L
#define AVIIF_FIXKEYFRAME   0x00001000L
#define AVI_CHUNK_COMMON
#define AVI_CHUNK(p_chk)   (avi_chunk_t*)(p_chk)
#define AVI_INDEX_OF_INDEXES   0x00
#define AVI_INDEX_OF_CHUNKS   0x01
#define AVI_INDEX_IS_DATA   0x80
#define AVI_INDEX_2FIELD   0x01
#define AVI_ChunkRead(s, p_chk, p_father)   _AVI_ChunkRead( s, p_chk, (avi_chunk_t*)p_father )
#define AVI_ChunkCount(p_chk, i_fourcc)   _AVI_ChunkCount( (avi_chunk_t*)p_chk, i_fourcc )
#define AVI_ChunkFind(p_chk, i_fourcc, i_number)   _AVI_ChunkFind( (avi_chunk_t*)p_chk, i_fourcc, i_number )
#define AVIFOURCC_RIFF   VLC_FOURCC('R','I','F','F')
#define AVIFOURCC_ON2   VLC_FOURCC('O','N','2',' ')
#define AVIFOURCC_LIST   VLC_FOURCC('L','I','S','T')
#define AVIFOURCC_JUNK   VLC_FOURCC('J','U','N','K')
#define AVIFOURCC_AVI   VLC_FOURCC('A','V','I',' ')
#define AVIFOURCC_AVIX   VLC_FOURCC('A','V','I','X')
#define AVIFOURCC_ON2f   VLC_FOURCC('O','N','2','f')
#define AVIFOURCC_WAVE   VLC_FOURCC('W','A','V','E')
#define AVIFOURCC_INFO   VLC_FOURCC('I','N','F','O')
#define AVIFOURCC_avih   VLC_FOURCC('a','v','i','h')
#define AVIFOURCC_ON2h   VLC_FOURCC('O','N','2','h')
#define AVIFOURCC_hdrl   VLC_FOURCC('h','d','r','l')
#define AVIFOURCC_movi   VLC_FOURCC('m','o','v','i')
#define AVIFOURCC_idx1   VLC_FOURCC('i','d','x','1')
#define AVIFOURCC_strl   VLC_FOURCC('s','t','r','l')
#define AVIFOURCC_strh   VLC_FOURCC('s','t','r','h')
#define AVIFOURCC_strf   VLC_FOURCC('s','t','r','f')
#define AVIFOURCC_strd   VLC_FOURCC('s','t','r','d')
#define AVIFOURCC_strn   VLC_FOURCC('s','t','r','n')
#define AVIFOURCC_indx   VLC_FOURCC('i','n','d','x')
#define AVIFOURCC_rec   VLC_FOURCC('r','e','c',' ')
#define AVIFOURCC_auds   VLC_FOURCC('a','u','d','s')
#define AVIFOURCC_vids   VLC_FOURCC('v','i','d','s')
#define AVIFOURCC_txts   VLC_FOURCC('t','x','t','s')
#define AVIFOURCC_mids   VLC_FOURCC('m','i','d','s')
#define AVIFOURCC_iavs   VLC_FOURCC('i','a','v','s')
#define AVIFOURCC_ivas   VLC_FOURCC('i','v','a','s')
#define AVIFOURCC_IARL   VLC_FOURCC('I','A','R','L')
#define AVIFOURCC_IART   VLC_FOURCC('I','A','R','T')
#define AVIFOURCC_ICMS   VLC_FOURCC('I','C','M','S')
#define AVIFOURCC_ICMT   VLC_FOURCC('I','C','M','T')
#define AVIFOURCC_ICOP   VLC_FOURCC('I','C','O','P')
#define AVIFOURCC_ICRD   VLC_FOURCC('I','C','R','D')
#define AVIFOURCC_ICRP   VLC_FOURCC('I','C','R','P')
#define AVIFOURCC_IDIM   VLC_FOURCC('I','D','I','M')
#define AVIFOURCC_IDPI   VLC_FOURCC('I','D','P','I')
#define AVIFOURCC_IENG   VLC_FOURCC('I','E','N','G')
#define AVIFOURCC_IGNR   VLC_FOURCC('I','G','N','R')
#define AVIFOURCC_IKEY   VLC_FOURCC('I','K','E','Y')
#define AVIFOURCC_ILGT   VLC_FOURCC('I','L','G','T')
#define AVIFOURCC_IMED   VLC_FOURCC('I','M','E','D')
#define AVIFOURCC_INAM   VLC_FOURCC('I','N','A','M')
#define AVIFOURCC_IPLT   VLC_FOURCC('I','P','L','T')
#define AVIFOURCC_IPRD   VLC_FOURCC('I','P','R','D')
#define AVIFOURCC_ISBJ   VLC_FOURCC('I','S','B','J')
#define AVIFOURCC_ISFT   VLC_FOURCC('I','S','F','T')
#define AVIFOURCC_ISHP   VLC_FOURCC('I','S','H','P')
#define AVIFOURCC_ISRC   VLC_FOURCC('I','S','R','C')
#define AVIFOURCC_ISRF   VLC_FOURCC('I','S','R','F')
#define AVIFOURCC_ITCH   VLC_FOURCC('I','T','C','H')
#define AVIFOURCC_ISMP   VLC_FOURCC('I','S','M','P')
#define AVIFOURCC_IDIT   VLC_FOURCC('I','D','I','T')
#define AVITWOCC_wb   VLC_TWOCC('w','b')
#define AVITWOCC_db   VLC_TWOCC('d','b')
#define AVITWOCC_dc   VLC_TWOCC('d','c')
#define AVITWOCC_pc   VLC_TWOCC('p','c')
#define FOURCC_1   VLC_FOURCC( 1, 0, 0, 0 )
#define FOURCC_DIVX   VLC_FOURCC('D','I','V','X')
#define FOURCC_divx   VLC_FOURCC('d','i','v','x')
#define FOURCC_DIV1   VLC_FOURCC('D','I','V','1')
#define FOURCC_div1   VLC_FOURCC('d','i','v','1')
#define FOURCC_MP4S   VLC_FOURCC('M','P','4','S')
#define FOURCC_mp4s   VLC_FOURCC('m','p','4','s')
#define FOURCC_M4S2   VLC_FOURCC('M','4','S','2')
#define FOURCC_m4s2   VLC_FOURCC('m','4','s','2')
#define FOURCC_xvid   VLC_FOURCC('x','v','i','d')
#define FOURCC_XVID   VLC_FOURCC('X','V','I','D')
#define FOURCC_XviD   VLC_FOURCC('X','v','i','D')
#define FOURCC_DX50   VLC_FOURCC('D','X','5','0')
#define FOURCC_dx50   VLC_FOURCC('d','x','5','0')
#define FOURCC_mp4v   VLC_FOURCC('m','p','4','v')
#define FOURCC_4   VLC_FOURCC( 4, 0, 0, 0 )
#define FOURCC_MPG4   VLC_FOURCC('M','P','G','4')
#define FOURCC_mpg4   VLC_FOURCC('m','p','g','4')
#define FOURCC_DIV2   VLC_FOURCC('D','I','V','2')
#define FOURCC_div2   VLC_FOURCC('d','i','v','2')
#define FOURCC_MP42   VLC_FOURCC('M','P','4','2')
#define FOURCC_mp42   VLC_FOURCC('m','p','4','2')
#define FOURCC_MPG3   VLC_FOURCC('M','P','G','3')
#define FOURCC_mpg3   VLC_FOURCC('m','p','g','3')
#define FOURCC_div3   VLC_FOURCC('d','i','v','3')
#define FOURCC_MP43   VLC_FOURCC('M','P','4','3')
#define FOURCC_mp43   VLC_FOURCC('m','p','4','3')
#define FOURCC_DIV3   VLC_FOURCC('D','I','V','3')
#define FOURCC_DIV4   VLC_FOURCC('D','I','V','4')
#define FOURCC_div4   VLC_FOURCC('d','i','v','4')
#define FOURCC_DIV5   VLC_FOURCC('D','I','V','5')
#define FOURCC_div5   VLC_FOURCC('d','i','v','5')
#define FOURCC_DIV6   VLC_FOURCC('D','I','V','6')
#define FOURCC_div6   VLC_FOURCC('d','i','v','6')
#define FOURCC_AP41   VLC_FOURCC('A','P','4','1')
#define FOURCC_3IV1   VLC_FOURCC('3','I','V','1')
#define FOURCC_3iv1   VLC_FOURCC('2','i','v','1')
#define FOURCC_3IV2   VLC_FOURCC('3','I','V','2')
#define FOURCC_3iv2   VLC_FOURCC('3','i','v','2')
#define FOURCC_3IVD   VLC_FOURCC('3','I','V','D')
#define FOURCC_3ivd   VLC_FOURCC('3','i','v','d')
#define FOURCC_3VID   VLC_FOURCC('3','V','I','D')
#define FOURCC_3vid   VLC_FOURCC('3','v','i','d')
#define FOURCC_H263   VLC_FOURCC('H','2','6','3')
#define FOURCC_h263   VLC_FOURCC('h','2','6','3')
#define FOURCC_U263   VLC_FOURCC('U','2','6','3')
#define FOURCC_I263   VLC_FOURCC('I','2','6','3')
#define FOURCC_i263   VLC_FOURCC('i','2','6','3')
#define FOURCC_H264   VLC_FOURCC('H','2','6','4')
#define FOURCC_h264   VLC_FOURCC('h','2','6','4')
#define FOURCC_VSSH   VLC_FOURCC('V','S','S','H')
#define FOURCC_dvsd   VLC_FOURCC('d','v','s','d')
#define FOURCC_dvhd   VLC_FOURCC('d','v','h','d')
#define FOURCC_dvsl   VLC_FOURCC('d','v','s','l')
#define FOURCC_dv25   VLC_FOURCC('d','v','2','5')
#define FOURCC_dv50   VLC_FOURCC('d','v','5','0')

Typedefs

typedef idx1_entry_s idx1_entry_t
typedef avi_chunk_common_s avi_chunk_common_t
typedef avi_chunk_list_s avi_chunk_list_t
typedef avi_chunk_idx1_s avi_chunk_idx1_t
typedef avi_chunk_avih_s avi_chunk_avih_t
typedef avi_chunk_strh_s avi_chunk_strh_t
typedef avi_chunk_strf_auds_s avi_chunk_strf_auds_t
typedef avi_chunk_strf_vids_s avi_chunk_strf_vids_t
typedef avi_chunk_strf_u avi_chunk_strf_t
typedef avi_chunk_strd_s avi_chunk_strd_t
typedef avi_chunk_indx_s avi_chunk_indx_t
typedef avi_chunk_STRING_s avi_chunk_STRING_t
typedef avi_chunk_u avi_chunk_t

Functions

int _AVI_ChunkRead (stream_t *, avi_chunk_t *p_chk, avi_chunk_t *p_father)
int _AVI_ChunkCount (avi_chunk_t *, vlc_fourcc_t)
void * _AVI_ChunkFind (avi_chunk_t *, vlc_fourcc_t, int)
int AVI_ChunkReadRoot (stream_t *, avi_chunk_t *p_root)
void AVI_ChunkFreeRoot (stream_t *, avi_chunk_t *p_chk)


Define Documentation

#define AVI_CHUNK ( p_chk   )     (avi_chunk_t*)(p_chk)

#define AVI_CHUNK_COMMON

Value:

vlc_fourcc_t i_chunk_fourcc;    \
    uint64_t i_chunk_size;          \
    uint64_t i_chunk_pos;           \
    union  avi_chunk_u *p_next;    \
    union  avi_chunk_u *p_father;  \
    union  avi_chunk_u *p_first;   \
    union  avi_chunk_u *p_last;

#define AVI_ChunkCount ( p_chk,
i_fourcc   )     _AVI_ChunkCount( (avi_chunk_t*)p_chk, i_fourcc )

#define AVI_ChunkFind ( p_chk,
i_fourcc,
i_number   )     _AVI_ChunkFind( (avi_chunk_t*)p_chk, i_fourcc, i_number )

#define AVI_ChunkRead ( s,
p_chk,
p_father   )     _AVI_ChunkRead( s, p_chk, (avi_chunk_t*)p_father )

#define AVI_INDEX_2FIELD   0x01

#define AVI_INDEX_IS_DATA   0x80

#define AVI_INDEX_OF_CHUNKS   0x01

#define AVI_INDEX_OF_INDEXES   0x00

#define AVIF_COPYRIGHTED   0x00020000

#define AVIF_HASINDEX   0x00000010

#define AVIF_ISINTERLEAVED   0x00000100

#define AVIF_MUSTUSEINDEX   0x00000020

#define AVIF_TRUSTCKTYPE   0x00000800

#define AVIF_WASCAPTUREFILE   0x00010000

#define AVIFOURCC_auds   VLC_FOURCC('a','u','d','s')

#define AVIFOURCC_AVI   VLC_FOURCC('A','V','I',' ')

#define AVIFOURCC_avih   VLC_FOURCC('a','v','i','h')

#define AVIFOURCC_AVIX   VLC_FOURCC('A','V','I','X')

#define AVIFOURCC_hdrl   VLC_FOURCC('h','d','r','l')

#define AVIFOURCC_IARL   VLC_FOURCC('I','A','R','L')

#define AVIFOURCC_IART   VLC_FOURCC('I','A','R','T')

#define AVIFOURCC_iavs   VLC_FOURCC('i','a','v','s')

#define AVIFOURCC_ICMS   VLC_FOURCC('I','C','M','S')

#define AVIFOURCC_ICMT   VLC_FOURCC('I','C','M','T')

#define AVIFOURCC_ICOP   VLC_FOURCC('I','C','O','P')

#define AVIFOURCC_ICRD   VLC_FOURCC('I','C','R','D')

#define AVIFOURCC_ICRP   VLC_FOURCC('I','C','R','P')

#define AVIFOURCC_IDIM   VLC_FOURCC('I','D','I','M')

#define AVIFOURCC_IDIT   VLC_FOURCC('I','D','I','T')

#define AVIFOURCC_IDPI   VLC_FOURCC('I','D','P','I')

#define AVIFOURCC_idx1   VLC_FOURCC('i','d','x','1')

#define AVIFOURCC_IENG   VLC_FOURCC('I','E','N','G')

#define AVIFOURCC_IGNR   VLC_FOURCC('I','G','N','R')

#define AVIFOURCC_IKEY   VLC_FOURCC('I','K','E','Y')

#define AVIFOURCC_ILGT   VLC_FOURCC('I','L','G','T')

#define AVIFOURCC_IMED   VLC_FOURCC('I','M','E','D')

#define AVIFOURCC_INAM   VLC_FOURCC('I','N','A','M')

#define AVIFOURCC_indx   VLC_FOURCC('i','n','d','x')

#define AVIFOURCC_INFO   VLC_FOURCC('I','N','F','O')

#define AVIFOURCC_IPLT   VLC_FOURCC('I','P','L','T')

#define AVIFOURCC_IPRD   VLC_FOURCC('I','P','R','D')

#define AVIFOURCC_ISBJ   VLC_FOURCC('I','S','B','J')

#define AVIFOURCC_ISFT   VLC_FOURCC('I','S','F','T')

#define AVIFOURCC_ISHP   VLC_FOURCC('I','S','H','P')

#define AVIFOURCC_ISMP   VLC_FOURCC('I','S','M','P')

#define AVIFOURCC_ISRC   VLC_FOURCC('I','S','R','C')

#define AVIFOURCC_ISRF   VLC_FOURCC('I','S','R','F')

#define AVIFOURCC_ITCH   VLC_FOURCC('I','T','C','H')

#define AVIFOURCC_ivas   VLC_FOURCC('i','v','a','s')

#define AVIFOURCC_JUNK   VLC_FOURCC('J','U','N','K')

#define AVIFOURCC_LIST   VLC_FOURCC('L','I','S','T')

#define AVIFOURCC_mids   VLC_FOURCC('m','i','d','s')

#define AVIFOURCC_movi   VLC_FOURCC('m','o','v','i')

#define AVIFOURCC_ON2   VLC_FOURCC('O','N','2',' ')

#define AVIFOURCC_ON2f   VLC_FOURCC('O','N','2','f')

#define AVIFOURCC_ON2h   VLC_FOURCC('O','N','2','h')

#define AVIFOURCC_rec   VLC_FOURCC('r','e','c',' ')

#define AVIFOURCC_RIFF   VLC_FOURCC('R','I','F','F')

#define AVIFOURCC_strd   VLC_FOURCC('s','t','r','d')

#define AVIFOURCC_strf   VLC_FOURCC('s','t','r','f')

#define AVIFOURCC_strh   VLC_FOURCC('s','t','r','h')

#define AVIFOURCC_strl   VLC_FOURCC('s','t','r','l')

#define AVIFOURCC_strn   VLC_FOURCC('s','t','r','n')

#define AVIFOURCC_txts   VLC_FOURCC('t','x','t','s')

#define AVIFOURCC_vids   VLC_FOURCC('v','i','d','s')

#define AVIFOURCC_WAVE   VLC_FOURCC('W','A','V','E')

#define AVIIF_COMPUSE   0x0FFF0000L

#define AVIIF_FIXKEYFRAME   0x00001000L

#define AVIIF_KEYFRAME   0x00000010L

#define AVIIF_LIST   0x00000001L

#define AVIIF_NOTIME   0x00000100L

#define AVITWOCC_db   VLC_TWOCC('d','b')

#define AVITWOCC_dc   VLC_TWOCC('d','c')

#define AVITWOCC_pc   VLC_TWOCC('p','c')

#define AVITWOCC_wb   VLC_TWOCC('w','b')

#define FOURCC_1   VLC_FOURCC( 1, 0, 0, 0 )

#define FOURCC_3iv1   VLC_FOURCC('2','i','v','1')

#define FOURCC_3IV1   VLC_FOURCC('3','I','V','1')

#define FOURCC_3iv2   VLC_FOURCC('3','i','v','2')

#define FOURCC_3IV2   VLC_FOURCC('3','I','V','2')

#define FOURCC_3ivd   VLC_FOURCC('3','i','v','d')

#define FOURCC_3IVD   VLC_FOURCC('3','I','V','D')

#define FOURCC_3vid   VLC_FOURCC('3','v','i','d')

#define FOURCC_3VID   VLC_FOURCC('3','V','I','D')

#define FOURCC_4   VLC_FOURCC( 4, 0, 0, 0 )

#define FOURCC_AP41   VLC_FOURCC('A','P','4','1')

#define FOURCC_div1   VLC_FOURCC('d','i','v','1')

#define FOURCC_DIV1   VLC_FOURCC('D','I','V','1')

#define FOURCC_div2   VLC_FOURCC('d','i','v','2')

#define FOURCC_DIV2   VLC_FOURCC('D','I','V','2')

#define FOURCC_DIV3   VLC_FOURCC('D','I','V','3')

#define FOURCC_div3   VLC_FOURCC('d','i','v','3')

#define FOURCC_div4   VLC_FOURCC('d','i','v','4')

#define FOURCC_DIV4   VLC_FOURCC('D','I','V','4')

#define FOURCC_div5   VLC_FOURCC('d','i','v','5')

#define FOURCC_DIV5   VLC_FOURCC('D','I','V','5')

#define FOURCC_div6   VLC_FOURCC('d','i','v','6')

#define FOURCC_DIV6   VLC_FOURCC('D','I','V','6')

#define FOURCC_divx   VLC_FOURCC('d','i','v','x')

#define FOURCC_DIVX   VLC_FOURCC('D','I','V','X')

#define FOURCC_dv25   VLC_FOURCC('d','v','2','5')

#define FOURCC_dv50   VLC_FOURCC('d','v','5','0')

#define FOURCC_dvhd   VLC_FOURCC('d','v','h','d')

#define FOURCC_dvsd   VLC_FOURCC('d','v','s','d')

#define FOURCC_dvsl   VLC_FOURCC('d','v','s','l')

#define FOURCC_dx50   VLC_FOURCC('d','x','5','0')

#define FOURCC_DX50   VLC_FOURCC('D','X','5','0')

#define FOURCC_h263   VLC_FOURCC('h','2','6','3')

#define FOURCC_H263   VLC_FOURCC('H','2','6','3')

#define FOURCC_h264   VLC_FOURCC('h','2','6','4')

#define FOURCC_H264   VLC_FOURCC('H','2','6','4')

#define FOURCC_i263   VLC_FOURCC('i','2','6','3')

#define FOURCC_I263   VLC_FOURCC('I','2','6','3')

#define FOURCC_m4s2   VLC_FOURCC('m','4','s','2')

#define FOURCC_M4S2   VLC_FOURCC('M','4','S','2')

#define FOURCC_mp42   VLC_FOURCC('m','p','4','2')

#define FOURCC_MP42   VLC_FOURCC('M','P','4','2')

#define FOURCC_mp43   VLC_FOURCC('m','p','4','3')

#define FOURCC_MP43   VLC_FOURCC('M','P','4','3')

#define FOURCC_mp4s   VLC_FOURCC('m','p','4','s')

#define FOURCC_MP4S   VLC_FOURCC('M','P','4','S')

#define FOURCC_mp4v   VLC_FOURCC('m','p','4','v')

#define FOURCC_mpg3   VLC_FOURCC('m','p','g','3')

#define FOURCC_MPG3   VLC_FOURCC('M','P','G','3')

#define FOURCC_mpg4   VLC_FOURCC('m','p','g','4')

#define FOURCC_MPG4   VLC_FOURCC('M','P','G','4')

#define FOURCC_U263   VLC_FOURCC('U','2','6','3')

#define FOURCC_VSSH   VLC_FOURCC('V','S','S','H')

#define FOURCC_XviD   VLC_FOURCC('X','v','i','D')

#define FOURCC_XVID   VLC_FOURCC('X','V','I','D')

#define FOURCC_xvid   VLC_FOURCC('x','v','i','d')


Typedef Documentation

typedef struct avi_chunk_avih_s avi_chunk_avih_t

typedef struct avi_chunk_common_s avi_chunk_common_t

typedef struct avi_chunk_idx1_s avi_chunk_idx1_t

typedef struct avi_chunk_indx_s avi_chunk_indx_t

typedef struct avi_chunk_list_s avi_chunk_list_t

typedef struct avi_chunk_strd_s avi_chunk_strd_t

typedef struct avi_chunk_strf_auds_s avi_chunk_strf_auds_t

typedef union avi_chunk_strf_u avi_chunk_strf_t

typedef struct avi_chunk_strf_vids_s avi_chunk_strf_vids_t

typedef struct avi_chunk_strh_s avi_chunk_strh_t

typedef struct avi_chunk_STRING_s avi_chunk_STRING_t

typedef union avi_chunk_u avi_chunk_t

typedef struct idx1_entry_s idx1_entry_t


Function Documentation

int _AVI_ChunkCount ( avi_chunk_t ,
vlc_fourcc_t   
)

void* _AVI_ChunkFind ( avi_chunk_t ,
vlc_fourcc_t  ,
int   
)

int _AVI_ChunkRead ( stream_t ,
avi_chunk_t p_chk,
avi_chunk_t p_father 
)

void AVI_ChunkFreeRoot ( stream_t ,
avi_chunk_t p_chk 
)

int AVI_ChunkReadRoot ( stream_t ,
avi_chunk_t p_root 
)


Generated on Wed Aug 13 08:03:23 2008 for VLC by  doxygen 1.5.1