Skip to main content

Topic: WASAPI, PlayPcmWin and foobar2000 (Read 3183 times) previous topic - next topic

0 Members and 1 Guest are viewing this topic.
WASAPI, PlayPcmWin and foobar2000
Hi! I use PlayPcmWin (64-bit) to determine what sample formats does my soundcard support.

Here is what I've got:
Code: [Select]
PlayPcmWin 4.0.37.0 64bit
wasapi.Init() 00000000
wasapi.DoDeviceEnumeration(Play) 00000000
wasapi.InspectDevice()
DeviceFriendlyName=Динамики (Creative SB X-Fi)
DeviceIdString={0.0.0.00000000}.{4e1c4df9-ab0e-4083-b353-c12d0c0f20aa}
++-------------++-------------++-------------++-------------++-------------++-------------++-------------++-------------++
|| 44kHz i16V16|| 48kHz i16V16|| 88kHz i16V16|| 96kHz i16V16||176kHz i16V16||192kHz i16V16||352kHz i16V16||384kHz i16V16||
|| OK 00000000 || OK 00000000 || OK 00000000 || OK 00000000 || OK 00000000 || OK 00000000 || NA 88890008 || NA 88890008 ||
++-------------++-------------++-------------++-------------++-------------++-------------++-------------++-------------++
|| 44kHz i24V24|| 48kHz i24V24|| 88kHz i24V24|| 96kHz i24V24||176kHz i24V24||192kHz i24V24||352kHz i24V24||384kHz i24V24||
|| NA 88890008 || NA 88890008 || NA 88890008 || NA 88890008 || NA 88890008 || NA 88890008 || NA 88890008 || NA 88890008 ||
++-------------++-------------++-------------++-------------++-------------++-------------++-------------++-------------++
|| 44kHz i32V24|| 48kHz i32V24|| 88kHz i32V24|| 96kHz i32V24||176kHz i32V24||192kHz i32V24||352kHz i32V24||384kHz i32V24||
|| OK 00000000 || OK 00000000 || OK 00000000 || OK 00000000 || OK 00000000 || OK 00000000 || NA 88890008 || NA 88890008 ||
++-------------++-------------++-------------++-------------++-------------++-------------++-------------++-------------++
|| 44kHz i32V32|| 48kHz i32V32|| 88kHz i32V32|| 96kHz i32V32||176kHz i32V32||192kHz i32V32||352kHz i32V32||384kHz i32V32||
|| OK 00000000 || OK 00000000 || OK 00000000 || OK 00000000 || OK 00000000 || OK 00000000 || NA 88890008 || NA 88890008 ||
++-------------++-------------++-------------++-------------++-------------++-------------++-------------++-------------++
|| 44kHz f32V32|| 48kHz f32V32|| 88kHz f32V32|| 96kHz f32V32||176kHz f32V32||192kHz f32V32||352kHz f32V32||384kHz f32V32||
|| NA 88890008 || NA 88890008 || NA 88890008 || NA 88890008 || NA 88890008 || NA 88890008 || NA 88890008 || NA 88890008 ||
++-------------++-------------++-------------++-------------++-------------++-------------++-------------++-------------++


Does it mean that my soundcard doesn't support playback of 24-bit integer  through WASAPI Exclusive and I should use i32V24 or i32v32? And what means 32-bit output in foobar2000 (WASAPI Exclusive) - 32 bit integer or 24 bit padded to 32?

Thanks!
  • Last Edit: 01 February, 2013, 05:31:15 AM by Steve Forte Rio

WASAPI, PlayPcmWin and foobar2000
Reply #1
Does anyone know something about it???

  • Case
  • [*][*][*][*][*]
  • Developer (Donating)
WASAPI, PlayPcmWin and foobar2000
Reply #2
It means your soundcard supports 24-bit and 32-bit PCM playback when driver gets data in 32 bits. It just doesn't like the odd 24-bit data format. Nothing is lost there as 32-bit data is more efficient anyway. The 24-bit mode with WASAPI is 24-bit or 24-bit padded to 32, depending on what sound card drivers accept (source). The 32-bit mode is float and it reverts to 32-bit PCM if driver doesn't support it (source).

WASAPI, PlayPcmWin and foobar2000
Reply #3
Many thanks!