| Description: |
This is an ImageJ Plugin for analyzing the basic structure of RIFF (AVI) files.
The AVI format looks like this:
RIFF AVI RIFF HEADER, AVI CHUNK
| LIST hdrl MAIN AVI HEADER
| | avih AVI HEADER
| | LIST strl STREAM LIST(s) (One per stream)
| | | strh STREAM HEADER (Required after above; fourcc type is 'vids' for video stream)
| | | strf STREAM FORMAT (for video: BitMapInfo; may also contain palette)
| | | strd OPTIONAL -- STREAM DATA (ignored in this plugin)
| | | strn OPTIONAL -- STREAM NAME (ignored in this plugin)
| | | indx OPTIONAL -- MAIN 'AVI 2.0' INDEX
| LIST movi MOVIE DATA
| | ix00 partial video index of 'AVI 2.0', usually missing in AVI 1 (ix01 would be for audio)
| | [rec] RECORD DATA (one record per frame for interleaved video; optional, unsupported in this plugin)
| | |-dataSubchunks RAW DATA: '??wb' for audio, '??db' and '??dc' for uncompressed and
| | compressed video, respectively. "??" denotes stream number, usually "00" or "01"
| idx1 AVI 1 INDEX ('old-style'); may be missing in very old formats
RIFF AVIX 'AVI 2.0' only: further chunks
| LIST movi more movie data, as above, usually with ix00 index
Any number of further chunks (RIFF tags) may follow
Items ('chunks') with one fourcc (four-character code such as 'strh') start with two 4-byte words:
the fourcc and the size of the data area.
Items with two fourcc (e.g. 'LIST hdrl') have three 4-byte words: the first fourcc, the size and the
second fourcc. Note that the size includes the 4 bytes needed for the second fourcc.
Chunks with fourcc 'JUNK' can appear anywhere and should be ignored.
|