4.1.2 Client Audio Formats and Version PDU

The following is an annotated dump of a Client Audio Formats and Version PDU.

 00000000 07 00 90 00 03 00 00 00 ff ff ff ff 00 f7 f9 00  ................
 00000010 00 00 05 00 28 05 00 7c 01 00 02 00 22 56 00 00  ....(..|...."V..
 00000020 88 58 01 00 04 00 10 00 00 00 06 00 02 00 22 56  .X............"V
 00000030 00 00 44 ac 00 00 02 00 08 00 00 00 07 00 02 00  ..D.............
 00000040 22 56 00 00 44 ac 00 00 02 00 08 00 00 00 02 00  "V..D...........
 00000050 02 00 22 56 00 00 27 57 00 00 00 04 04 00 20 00  .."V..'W...... .
 00000060 f4 03 07 00 00 01 00 00 00 02 00 ff 00 00 00 00  ................
 00000070 c0 00 40 00 f0 00 00 00 cc 01 30 ff 88 01 18 ff  ..@.......0.....
 00000080 11 00 02 00 22 56 00 00 b9 56 00 00 00 04 04 00  ...."V...V......
 00000090 02 00 f9 03
  
 07 -> SNDPROLOG::Type = SNDC_FORMATS (7)
 00 -> SNDPROLOG::bPad = 0
 90 00 -> SNDPROLOG::BodySize = 0x90 = 144 bytes
  
 03 00 00 00 -> CLIENT_AUDIO_VERSION_AND_FORMATS::dwFlags = 0x00000003
 0x03
 = 0x01 | 
   0x02
 = TSSNDCAPS_ALIVE | 
   TSSNDCAPS_VOLUME
 ff ff ff ff -> CLIENT_AUDIO_VERSION_AND_FORMATS::dwVolume = 0xffffffff
 00 f7 f9 00 -> CLIENT_AUDIO_VERSION_AND_FORMATS::dwPitch = 0x00f9f700
 00 00 -> CLIENT_AUDIO_VERSION_AND_FORMATS::wDGramPort = 0
 05 00 -> CLIENT_AUDIO_VERSION_AND_FORMATS::wNumberOfFormats = 5
 28 -> CLIENT_AUDIO_VERSION_AND_FORMATS::cLastBlockConfirmed = 0x28
 05 00 -> CLIENT_AUDIO_VERSION_AND_FORMATS::wVersion = 5
 7c -> CLIENT_AUDIO_VERSION_AND_FORMATS::bPad = 0x7c
 01 00 02 00 22 56 00 00 88 58 01 00 04 00 10 00 00 00 -> AUDIO_FORMAT
   01 00 -> AUDIO_FORMAT::wFormatTag = WAVE_FORMAT_PCM (1)
   02 00 -> AUDIO_FORMAT::nChannels = 2
   22 56 00 00 -> AUDIO_FORMAT::nSamplesPerSec = 0x5622 = 22050
   88 58 01 00 -> AUDIO_FORMAT::nAvgBytesPerSec = 0x15888 = 88200
   04 00 -> AUDIO_FORMAT::nBlockAlign = 0x0004 = 4
   10 00 -> AUDIO_FORMAT::wBitsPerSample = 0x10 = 16
   00 00 -> AUDIO_FORMAT::cbSize = 0
 06 00 02 00 22 56 00 00 44 ac 00 00 02 00 08 00 00 00 -> AUDIO_FORMAT
   06 00 -> AUDIO_FORMAT::wFormatTag = WAVE_FORMAT_ALAW (6)
   02 00 -> AUDIO_FORMAT::nChannels = 2
   22 56 00 00 -> AUDIO_FORMAT::nSamplesPerSec = 0x5622 = 22050
   44 ac 00 00 -> AUDIO_FORMAT::nAvgBytesPerSec = 0xac44 = 44100
   02 00 -> AUDIO_FORMAT::nBlockAlign = 2
   08 00 -> AUDIO_FORMAT::wBitsPerSample = 8
   00 00 -> AUDIO_FORMAT::cbSize = 0
 07 00 02 00 22 56 00 00 44 ac 00 00 02 00 08 00 00 00 -> AUDIO_FORMAT
   07 00 -> AUDIO_FORMAT::wFormatTag = WAVE_FORMAT_MULAW (7)
   02 00 -> AUDIO_FORMAT::nChannels = 2
   22 56 00 00 -> AUDIO_FORMAT::nSamplesPerSec = 0x5622 = 22050
   44 ac 00 00 -> AUDIO_FORMAT::nAvgBytesPerSec = 0xac44 = 44100
   02 00 -> AUDIO_FORMAT::nBlockAlign = 2
   08 00 -> AUDIO_FORMAT::wBitsPerSample = 8
   00 00 -> AUDIO_FORMAT::cbSize = 0
 02 00 02 00 22 56 00 00 27 57 00 00 00 04 04 00 20 00 f4 03 07 00 00 01 00 00 00 02 00 ff 00 00 00 00 c0 00 40 00 f0 00 00 00 cc 01 30 ff 88 01 18 ff -> AUDIO_FORMAT
   02 00 -> AUDIO_FORMAT::wFormatTag = WAVE_FORMAT_ADPCM (2)
   02 00 -> AUDIO_FORMAT::nChannels = 2
   22 56 00 00 -> AUDIO_FORMAT::nSamplesPerSec = 0x5622 = 22050
   27 57 00 00 -> AUDIO_FORMAT::nAvgBytesPerSec = 0x5727 = 22311
   00 04 -> AUDIO_FORMAT::nBlockAlign = 0x400 = 1024
   04 00 -> AUDIO_FORMAT::wBitsPerSample = 4
   20 00 -> AUDIO_FORMAT::cbSize = 0x20 = 32
   f4 03 07 00 00 01 00 00 00 02 00 ff 00 00 00 00 c0 00 40 00 f0 00 00 00 cc 01 30 ff 88 01 18 ff -> data
 11 00 02 00 22 56 00 00 b9 56 00 00 00 04 04 00 02 00 f9 03 -> AUDIO_FORMAT
   11 00 -> AUDIO_FORMAT::wFormatTag = 0x11 = WAVE_FORMAT_DVI_ADPCM (17)
   02 00 -> AUDIO_FORMAT::nChannels = 2
   22 56 00 00 -> AUDIO_FORMAT::nSamplesPerSec = 0x5622 = 22050
   b9 56 00 00 -> AUDIO_FORMAT::nAvgBytesPerSec =0x56b9 = 22201 
   00 04 -> AUDIO_FORMAT::nBlockAlign = 0x400 = 1024
   04 00 -> AUDIO_FORMAT::wBitsPerSample = 4
   02 00 -> AUDIO_FORMAT::cbSize = 2
   f9 03 -> AUDIO_FORMAT::data