Response from a Windows audio dev who is not on this list
* For some devices, this Configure button is disabled, for others it's
enabled: what determines the enabled/disabed state of the Configure button?
The Configure button is only displayed for endpoints with the ‘Speakers’ or
‘HDMI’ form factors.
* What precisely does Windows do when this Configure button is clicked?
The options in the subsequent "Audio channels" list vary with hardware so I
guess Windows queries data/structures provided/defined by the hardware device
and/or its driver (components) - what/where are these data/structures?
The control panel UI has a list of standard speaker configuration. It simply
sends down a KSPROPERTY_PIN_PROPOSEDDATAFORMAT call to the driver to find out
whether the channel configuration is supported or not (and then makes a
decision on whether to display it in the UI). If the driver does not support
KSPROPERTY_PIN_PROPOSEDDATAFORMAT, then it infers support for these channel
configurations from the advertised data ranges.
This UI exists for the user to configure channel count on an audio endpoint for
cases where the endpoint can support multiple channel configurations.
* I am studying the MS Sysvad sample to understand this: can someone please
point to the appropriate data/structures in this sample so that I can
experiment and see this audio playback device Configure thing in action?
As mentioned above, KSPROPERTY_PIN_PROPOSEDDATAFORMAT is the place to look,
followed by data ranges.
From: Culann mac Cabe<mailto:culann@xxxxxxxxxx>
Sent: Friday, February 7, 2020 3:53 AM
To: wdmaudiodev@xxxxxxxxxxxxx<mailto:wdmaudiodev@xxxxxxxxxxxxx>
Subject: [EXTERNAL] [wdmaudiodev] What does Windows do when Audio Playback
Device's "Configure" button is hit?
Hello wdmaudiodev people
In Windows' Sound Control Panel, there's a "Configure" button which, when
clicked, shows a screen used to configure speaker arrays. Depending on the
hardware scenario, this speaker layout might be 2-channel, or 5.1 or 7.1 etc etc
I have some questions on how all this works:
1. For some devices, this Configure button is disabled, for others it's
enabled: what determines the enabled/disabed state of the Configure button?
2. What precisely does Windows do when this Configure button is clicked?
The options in the subsequent "Audio channels" list vary with hardware so I
guess Windows queries data/structures provided/defined by the hardware device
and/or its driver (components) - what/where are these data/structures?
3. I am studying the MS Sysvad sample to understand this: can someone please
point to the appropriate data/structures in this sample so that I can
experiment and see this audio playback device Configure thing in action?
As much tech detail as possible please!
Thanks in advance.
Culann