Music: Difference between revisions

From LEGO Island Wiki
Jump to navigation Jump to search
(Created page with "== Technical Information == Music is stored in Lego Island SI files. SI files are derivatives of the {{Wikipedia|Resource Interchange File Format}} best known as the basis of...")
 
No edit summary
Line 1: Line 1:
== Technical Information ==
== Technical Information ==
Music is stored in Lego Island SI files. SI files are derivatives of the {{Wikipedia|Resource Interchange File Format}} best known as the basis of AVI and WAV files.
Music is stored in Lego Island SI files. SI files are derivatives of the {{Wikipedia|Resource Interchange File Format}} best known as the basis of AVI and WAV files.
All music appears to be 11025Hz Mono Signed 16-bit.


Music appears to begin with a <code>MxDa</code> and is split into chunks of <code>MxCh</code>. The <code>MxDa</code> header contains information about the PCM audio in the <code>MxCh</code> chunks.
Music appears to begin with a <code>MxDa</code> and is split into chunks of <code>MxCh</code>. The <code>MxDa</code> header contains information about the PCM audio in the <code>MxCh</code> chunks.

Revision as of 02:29, 18 April 2019

Technical Information

Music is stored in Lego Island SI files. SI files are derivatives of the Resource Interchange File Format best known as the basis of AVI and WAV files.

All music appears to be 11025Hz Mono Signed 16-bit.

Music appears to begin with a MxDa and is split into chunks of MxCh. The MxDa header contains information about the PCM audio in the MxCh chunks.

MxDa Header Specification

Bytes Offset Description
MxDa 0 Identifier
MxCh 4 Chunk Header
Audio Format 26 2-byte Integer (Little Endian) - 1 = PCM, others indicate some form of compression
Number of Channels 28 2-byte Integer (Little Endian) - 1 = Mono, 2 = Stereo
Sample Rate 30 4-byte Integer (Little Endian)
Byte Rate 34 4-byte Integer (Little Endian) Is equal to Sample Rate * Number of Channels * BitsPerSample/8
Bytes per Sample 36 2-byte Integer (Little Endian) - is equal to Number of Channels * BitsPerSample/8
Bits per Sample per Channel 38 2-byte Integer (Little Endian) - 8 = 8-bits, 16 = 16-bits, etc.