EA SAGE Audio Files

From MultimediaWiki
Revision as of 17:57, 26 August 2010 by Jonwil (talk | contribs)
(diff) ← Older revision | Latest revision (diff) | Newer revision → (diff)
Jump to navigation Jump to search

This format is found on certain .cdata files used for audio inside the *.BIG resource files of Command & Conquer 3,Red Alert 3 and Command & Conquer 4. Using a program such as bigextract.exe from SDK Extras you can open the *.BIG files of these games and access the .cdata files. Other .cdata files contain other data such as textures.

The file begins with a 16-byte header. All numbers are encoded in big endian. If bytes 0 and 1 are 0x0000, it means that the audio file is a streamed audio file and the actual header data is stored elsewhere in the game data.

byte  0      codec type
             0 = not used
             1 = not used
             2 = no compression (ID in the code is P6B0)
             3 = XBOX 360 XMA audio (ID in the code is EXm0)
             4 = EA XAS ADPCM (ID in the code is Xas1)
             5 = One version of EALayer3 MPEG Layer 3 audio variant (ID in the code is EL31)
             6 = One version of EALayer3 MPEG Layer 3 audio variant (ID in the code is L32P)
             7 = One version of EALayer3 MPEG Layer 3 audio variant (ID in the code is L32S)
byte  1      related to channel count. Seems to be set to
             (channel count - 1) * 4 so 0 = mono, 4 = stereo, 
             0xC = 4 channels and 0x14 = 5.1 (i.e. 6 channels)
bytes 2-3    sample rate
bytes 4-7    total samples
bytes 8-11   total file size (bytes)
bytes 12-16  total samples

Notes

Thanks to KMX at Derelict Studios for finding out the initial information on this format as it applies to C&C3.