AUS is the format used in the game Megaman Anniversary Collection on the PS2. I can't figure out the header it uses. There is another similar format used in Megaman Anniversary Collection called ASF (and it has NOTHING to do with WMA or WMV files in Windows, just the same file extension). And then yet again the same game has another file format but which has no file extension (nor does the header hint at what the file extension should be as it did in the AUS and ASF files), but the header is very similar to AUS and ASF, but the header is about half as long. Note that these files I believe all use ADPCM to encode the audio data, and that they are all little-endian for multibyte values. To assist in helping to decode these formats' headers, I've included some hex dumps of the headers, and other info when possible.
AUS header
Code:
41 55 53 20 00 02 00 00 00 36 BA 00 01 00 00 00
A3 93 00 00 00 00 00 00 00 36 BA 00 01 00 00 00
I've managed to find what's what on this header.
The string "AUS ".
A 4byte value of unknown purpose that = 0x00020000 (512)
A 4byte value that is the number of samples
A 4byte value that is the number of channels
A 4byte value that is the sample rate
A 4byte value of unknown purpose that = 0
A 4byte value that is the number of samples (a duplicate of what's above)
A 4byte value that is the number of channels (a duplicate of what's above)
The actual audio data in an AUS file starts at offset 0x00000800.
ASF header
Code:
41 53 46 20 00 02 00 00 5C 28 00 00 01 00 00 00
F4 7E 00 00 00 00 00 00 5C 28 00 00 00 00 00 00
I've managed to find what's what on this header too. It's slightly different than the AUS header.
The string "ASF ".
A 4byte value of unknown purpose that = 0x00020000 (512)
A 4byte value that is the number of samples
A 4byte value that is the number of channels
A 4byte value that is the sample rate
A 4byte value of unknown purpose that = 0
A 4byte value that is the number of samples (a duplicate of what's above)
A 4byte value of unknown purpose that = 0
A 4byte value of unknown purpose that is different in each file, but it appears that only the first 2bytes get used so it could be a 2byte value, but given the pattern, it is probably a 4byte value (just never gets high enough to use the top 2 bytes).
The actual audio data in an ASF file starts at offset 0x00000030.
Header of unnamed and extensionless audio file format
Code:
20 10 00 00 02 00 00 00 A8 93 00 00
This one is much less intuitive, and I really need help with it. With the above formats I just need filling in of a few unknowns. With this I need some serious help, as the header hardly contains anything I can figure out.
A 4byte value of unknown purpose that is different in each file (but I assume it has something to do with the length of the audio data)
A 4byte value of unknown purpose that = 0x00020000 (512)
A 4byte value that is the sample rate of the audio data
The actual audio data in a file of this unknown format starts at offset 0x00000800.
With ASF files I could replace the ASF header with the equivalent AUS header, and move the location of the data to offset 0x00000800 in the file. It would then play in Foobar2000 with the proper plugin for AUS files. This doesn't work with this stranger format though. Instead, while it does play, it has an audible glitch every half a second to a second during most of the playback. Changing the number of channels and the sample rate doesn't fix it. So something is significantly different here, and I'm hoping that more complete understanding of the header can help me.
Thanks for any assistance you guys can give me.