Microsoft Audio/Video Interleaved
Jump to navigation
Jump to search
Uses RIFF tree for structure.
RIFF
General structure for all RIFF nodes:
Nodes can be data or LIST, data structure is:
4 bytes name (a.k.a. FourCC) 4 bytes length, 32 bit integer in little-endian length bytes data optionally 1 byte padding if length is odd
LIST structure is:
4 bytes string "LIST" 4 bytes length, 32 bit integer in little-endian 4 bytes name length bytes data - data is a list of nodes. optionally 1 byte padding if length is odd
An entire RIFF file has the structure:
4 bytes string "RIFF" 4 bytes length, 32 bit integer in little-endian 4 bytes name length bytes data - data is a list of nodes.
AVI
An AVI has this RIFF structure:
RIFF: name: `AVI ' (space at end) LIST: name: `hdrl' DATA: name: `avih', len: 56 LIST: name: `strl' DATA: name: `strh', len: 56 DATA: name: `strf' LIST: name: `strl' DATA: name: `strh', len: 56 DATA: name: `strf' LIST: name: `INFO' optional info LIST: name: `movi' DATA: name: `00dc' DATA: name: `01wb' ... DATA: name: `idx1'