Expand description
§riff-io
Rust crate for reading and writing Resource Interchange File Format (RIFF) files, such as Audio Video Interleave (AVI) and Waveform Audio File Format (WAV).
§Looking For New Maintainers
I am no longer maintaining this crate and would be happy to transfer it to new maintainers.
§Features
- Provides access to file metadata containing the file structure (lists and chunks)
- Ability to read bytes from any position in the file
- Uses memory-mapped files for efficiency.
- Cross-platform: Tested on Windows, Mac, and Linux.
§Example
The example shows the file structure of the specified RIFF file.
cargo run --example view example.AVI
Sample output:
LIST 'hdrl'
CHUNK 'avih' offset=32 size=56
LIST 'strl'
CHUNK 'strh' offset=108 size=56
CHUNK 'strf' offset=172 size=1064
CHUNK 'indx' offset=1244 size=32248
LIST 'odml'
CHUNK 'dmlh' offset=33512 size=248
CHUNK 'JUNK' offset=33768 size=12
LIST 'movi'
CHUNK 'ix00' offset=33800 size=32248
CHUNK '00db' offset=66056 size=3818112
CHUNK 'JUNK' offset=3884176 size=368
...
CHUNK '00db' offset=164261384 size=3818112
CHUNK 'JUNK' offset=168079504 size=368
CHUNK 'idx1' offset=168079880 size=1528
§Resources
Structs§
- A chunk of data
- Meta-data for a list
- RIFF file
Enums§
- Entry in a RIFF file, which can be a list or a chunk of data. Lists can be nested
Traits§
Type Aliases§
- Four-character code