Let’s start by assuming it’s a bug; please file a problem report in Feedback
Hub, including “recreate my problem” logs of a failed attempt to query
IAudioMeterInformation::GetChannelsPeakValues with KSPROPERTY_AUDIO_PEAKMETER2.
From: wdmaudiodev-bounce@xxxxxxxxxxxxx <wdmaudiodev-bounce@xxxxxxxxxxxxx> on
behalf of Eugene Muzychenko <reg.wad@xxxxxxxxxxxxxx>
Sent: Thursday, June 20, 2019 11:24:09 AM
Subject: [wdmaudiodev] IAudioMeterInformation::GetChannelsPeakValues error if
driver supports more than 2 channels
Trying to understand why Windows 10 does not show peak signal levels
in the endpoint properties window for my driver endpoints, I faced
with the strange behavior.
If the driver supports just two channels for the pin and peak meter
node, all works fine.
If the driver supports more than two channels (for example, 8),
KSPROPERTY_AUDIO_PEAKMETER2 is repeatedly requested for all
filters/channels, but there is no peak display in the window.
Making a small IAudioMeterInformation test, I found that
IAudioMeterInformation::GetMeteringChannelCount returns number of
supported channels properly, then
KSPROPERTY_AUDIO_PEAKMETER2 to query a peak of each channel, but
always returns E_INVALIDARG.
E_INVALIDARG is returned regardless of number of channels specified in the
call GetChannelsPeakValues. The call succeeds only if I decrease
the number of channels supported by the driver, to two.
Should such behavior be considered a bug, or there are some
BTW, if I disable KSPROPERTY_AUDIO_PEAKMETER2 support, Audio Engine
issues KSPROPERTY_AUDIO_PEAKMETER requests, and all works fine for any
number of supported channels.
Post message: mailto:wdmaudiodev@xxxxxxxxxxxxx
URL to WDMAUDIODEV page: