ItsMods

Full Version: Black Ops Sound Format
You're currently viewing a stripped down version of our content. View the full version with proper formatting.
There have been many discussions about the Black Ops Sound Format and we're still wondering about how to import our own sounds. I been doing research of my own and was able to come up with this information.
- Black Ops sound files are basically headerless WAV files.
- They are encoded with the Microsoft ADPCM codec (codec ID: 2)
- The endianess of the files are Little Endian
- They all have a constant bitrate of 361kbps, a sampling rate of 48KHz (sometimes varies) and a bit depth of 4 bits.
- There seems to be some data at the start of the headerless files for example at 0xC there is hex data that appears as '02 00' which could represent the amount of channels.
- The actual 'data' that appears after the SubChunk2Size value* in a normal WAV file can be found at 0x830 all the way to the end of the headerless WAV file.

* which can be found at 0x30 in the headerless WAV

I've been unsuccessful in reproducing a Black Ops sound file with my own sound files but I was wondering what you guys knew about them. Hopefully someone can figure it out using this information. :3

---------
Header Analysis

Offset : Size : Description
0 ------ 4 ----- Unknown, always seems to be '01 00 00 00'
4 ------ 4 ----- Unknown, something to do with file size (seems to be 32KB off or something?)
8 ------ 4 ----- Sample Rate
12 ----- 4 ----- Number of channels
16 ----- 32 ---- Unknown, always seems to be '30 08 00 00 00 06 01 00 00 30 08 00 06 00 00 00 03 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00'
48 ----- 4 ----- SubChunk2Size (Number of Samples * Number of Channels * Bits Per Sample / 8) - Note that Bits Per Sample is always 4 for Black Ops WAV files
52 ----- 2044 - Just a whole bunch of zeros
2096 -- * ----- Data, the actual sound data
I knew about the headerless wavs.Didnt know about the codec. Tried some things (headertools) also didnt have succes.
(09-14-2011, 08:51)master131 Wrote: [ -> ]2096 -- * ----- Data, the actual sound data

soooo why cant we just change the part that you call 'the actual data' to our data?
Because if the header information is incorrect or the WAV we create is encoded with different information then the game probably won't read it properly.
Code:
4 ------ 4 ----- Unknown, something to do with file size (seems to be 32KB off or something?)

that is the file size minus the header Smile


Yeah, though so. :3 Thanks for you input.