Our sound cards provide hardware peak meters on playback and record. Using the IDeviceTopology interface, I can find the meters and read them successfully, but with the IAudioMeterInformation interface, GetChannelsPeakValues returns E_INVALIDARG if I set u32ChannelCount to 2 (even though IAudioEndpointVolume::GetChannelCount returns 2). The only way I can get GetChannelsPeakValues to return S_OK is to set u32ChannelCount to 0, and of course if I do that I don't get any meter readings returned. I understand this interface will provide virtual meters if the hardware doesn't have them, and that seems to work. Has anyone managed to get IAudioMeterInformation to work on a device that has hardware peak meters? Jeff Pages Innes Corporation Pty Ltd