.IMC
Jump to navigation
Jump to search
The .IMC file format is used to store audio in Gitaroo Man.
Data types used in this document (all little-endian):
- uint32: unsigned 4-byte integer
Header
offset | size | data |
---|---|---|
+0x00 | 4 | number of subsongs |
After this is a header entry for each subsong:
offset | size | data |
---|---|---|
+0x00 | 16 | null-terminated string: name of subsong |
+0x10 | 4 | uint32: absolute offset of subsong start |
+0x14 | 4 | probably garbage |
+0x18 | 4 | probably garbage |
+0x1C | 4 | uint32: audio loading mode
|
Subsong
The actual audio data is Sony VAG compressed ADPCM.
offset | size | data |
---|---|---|
+0x00 | 4 | uint32: number of channels (as many as 8) |
+0x04 | 4 | uint32: sample rate (Hz) valid sample rates are: 11025, 16000, 22050, 32000, 44100, 48000. Anything else will result in silent audio. |
+0x08 | 4 | uint32: frames per block (multiply by 16 to get block size in bytes) |
+0x0C | 4 | uint32: total number of blocks, for all channels combined |
+0x10 | ? | Sony VAG ADPCM sound data. (Exact size of this section, in bytes, is [frames per block] * 16 * [total number of blocks]) |