[wdmaudiodev] Re: Multichannel test playback in Win10

  • From: Eugene Muzychenko <eugene@xxxxxxxxxxxxxx>
  • To: Matthew van Eerde <wdmaudiodev@xxxxxxxxxxxxx>
  • Date: Thu, 29 Oct 2015 10:22:24 +0600

Hello Matthew,

The zero channel mask is odd; I would have expected 5.1 for the
6-channel format, and 7.1 for the 8-channel format.

Thank you for the analysis. I see zero channel mask in my own logs but
it is set by Windows via KSPROPERTY_AUDIO_CHANNEL_CONFIG. Initially,
the driver sets channel mask 0x63f for both DAC and ADC nodes but
later Windows sets it to zero for DAC node.

1. Uninstall your driver (this should remove all the endpoint stores)
2. Reinstall your driver
3. Let AudioEndpointBuilder do its format support probing

Oops. I never reinstalled the driver after each binary rebuild if
filter topology and/or INF file remain unchanged. Changing something
in driver's code and rebuilding the binary, I simply replaced .sys
file and restarted the driver. Prior to Win10, I had no problems with
such algorithm.

As I reinstalled the driver, all multichannel tests are performed

The only strange thing is that supported format list contains the "8
channel, 16 bit, 48000 Hz" (without the quality label) item that is
the last in format list and used as default. If I change default
format to another else, close and reopen property pages, this item
disappears from the list.

But if I decrease supported number of channels, reinstall the driver
and then increase number of supported channels again
(KSEVENT_PINCAPS_FORMATCHANGE is generated by the driver), test tone
playback still failed for new number of channels.

In Win7/8, there are no such issues. Only in Win10.

BTW, why Endpoint Builder doesn't use
each possible format instead?



WDMAUDIODEV addresses:
Post message: mailto:wdmaudiodev@xxxxxxxxxxxxx
Subscribe: mailto:wdmaudiodev-request@xxxxxxxxxxxxx?subject=subscribe
Unsubscribe: mailto:wdmaudiodev-request@xxxxxxxxxxxxx?subject=unsubscribe
Moderator: mailto:wdmaudiodev-moderators@xxxxxxxxxxxxx


Other related posts: