Skip to content

RTAudio reports different capabilities for identical USB hardware on Linux and Windows 10 (ALSA/WASAPI) #446

@g40

Description

@g40

This is a Windows issue, not RTAudio. This is more a question about mitigation.

When querying a USB interface (chipset is https://www.ti.com/product/PCM2902), GetMixFormat() always reports a 1 channel input device rather the preferred, and available, stereo option.

When enumerating devices and capabilities the WASAPI backend creates an IAudioClient instance and then calls GetMixFormat(): https://github.com/g40/rtaudio/blob/master/RtAudio.cpp#L5164.

Questions:

  1. Does the problem with Windows misreporting the channel count prohibit subsequent stereo capture ?
  2. Would it be useful to do a more exhaustive probe of the device capabilities? Possibly using IsFormatSupported() and friends.
  3. Is there any interest in a patch?

[1] Linux/Mint/ALSA - looks correct.

~/src/audio/loopback$ ./loopback -l
0x00000081 Default ALSA Device In: 64 Out: 64 true true
0x00000082 PulseAudio Sound Server In: 32 Out: 32 false false
0x00000083 HDA Intel PCH (ALC3204 Analog) In: 2 Out: 2 false false
0x00000084 HDA Intel PCH (HDMI 0) In: 0 Out: 8 false false
0x00000085 HDA Intel PCH (HDMI 1) In: 0 Out: 8 false false
0x00000086 HDA Intel PCH (HDMI 2) In: 0 Out: 8 false false
0x00000087 USB Audio CODEC (USB Audio) In: 2 Out: 2 false false

[2] Windows 10 22H2 x64

>loopback -l
0x00000081 Speakers (2- USB Audio CODEC ) In: 0 Out: 2 false false
0x00000086 Microphone (2- USB Audio CODEC ) In: 1 Out: 0 false false

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions