Windows Media Audio Pro

From MultimediaWiki
Jump to navigation Jump to search
The printable version is no longer supported and may have rendering errors. Please update your browser bookmarks and please use the default browser print function instead.

The next generation of Windows Media audio codecs.

Extra data layout

This is a rough guess of the extra data from the asf container (little endian order).

byte 1-2    Bits per sample (wBitsPerSample) (http://msdn2.microsoft.com/en-us/library/ms791274.aspx)
byte 3-6    Channel mask (dwChannelMask) (http://msdn2.microsoft.com/en-us/library/ms790436.aspx)
byte 7-14   Not used
byte 15-16  Decoding flags, bitfield used for calculating samples per frame amongst others (int16_t)
byte 17-18  Probably some flags for low bitrate files.

Example extradata dump of a 5.1 file:

[[18] [0]] [[3f] [0] [0] [0]] [0] [0] [0] [0] [0] [0] [0] [0] [[e0] [0]] [0] [0]

Example extradata dump of a stereo file:

[[18] [0]] [[3] [0] [0] [0]] [0] [0] [0] [0] [0] [0] [0] [0] [[e0] [0]] [0] [0]

Example extradata dump of a low bitrate stereo file:

[[10] [0]] [[3] [0] [0] [0]] [0] [0] [0] [0] [0] [0] [0] [0] [[e0] [0]] [[42] [c0]]

Channel configuration

Wma pro uses the dwChannelMask for channel configuration.

SPEAKER_FRONT_LEFT             0x00001
SPEAKER_FRONT_RIGHT            0x00002
SPEAKER_FRONT_CENTER           0x00004
SPEAKER_LOW_FREQUENCY          0x00008
SPEAKER_BACK_LEFT              0x00010
SPEAKER_BACK_RIGHT             0x00020
SPEAKER_FRONT_LEFT_OF_CENTER   0x00040
SPEAKER_FRONT_RIGHT_OF_CENTER  0x00080
SPEAKER_BACK_CENTER            0x00100
SPEAKER_SIDE_LEFT              0x00200
SPEAKER_SIDE_RIGHT             0x00400
SPEAKER_TOP_CENTER             0x00800
SPEAKER_TOP_FRONT_LEFT         0x01000
SPEAKER_TOP_FRONT_CENTER       0x02000
SPEAKER_TOP_FRONT_RIGHT        0x04000
SPEAKER_TOP_BACK_LEFT          0x08000
SPEAKER_TOP_BACK_CENTER        0x10000
SPEAKER_TOP_BACK_RIGHT         0x20000