[wdmaudiodev] Re: Few questions about core Audio APIs in Vista

  • From: Frank Yerrace <Frank.Yerrace@xxxxxxxxxxxxx>
  • To: "wdmaudiodev@xxxxxxxxxxxxx" <wdmaudiodev@xxxxxxxxxxxxx>
  • Date: Mon, 4 Dec 2006 12:35:33 -0800

By the way, Andrew, you mentioned IAudioVolumeLevel so I assume you are using 
the DeviceTopology API. If you are using the DeviceTopology API for only main 
volume control, you should instead use the EndpointVolume API 
http://msdn.microsoft.com/library/en-us/CoreAud/htm/endpointvolumeapi.asp. This 
will relieve your software from having to analyze different hardware solutions 
and also take advantage of any software volume control that the audio system 
might implement on behalf of the hardware. Also, in general we hope very few 
apps manipulate the endpoint volume levels. If they do, this should be directly 
tied to UI.

Frank Yerrace
Microsoft Corporation

This posting is provided "AS IS" with no warranties, and confers no rights.

-----Original Message-----
From: wdmaudiodev-bounce@xxxxxxxxxxxxx 
[mailto:wdmaudiodev-bounce@xxxxxxxxxxxxx] On Behalf Of Mitchell Rundle
Sent: Monday, December 04, 2006 9:51 AM
To: wdmaudiodev@xxxxxxxxxxxxx
Subject: [wdmaudiodev] Re: Few questions about core Audio APIs in Vista

A1.  Sorry, but there is no public method for enumerating all of the audio 
sessions.

A2.  Most hardware volume controls have .5, 1 or 1.5dB steps.  Whether the 
hardware returns the actual volume level (e.g. -5dB) or the last value set 
(e.g. -5.02dB) depends on the driver, but in general you should expect that the 
level will be a multiple of *pfStepping.

Regards,
Mitch Rundle
Microsoft

This posting is provided "AS IS" with no warranties, and confers no rights.

-----Original Message-----
From: wdmaudiodev-bounce@xxxxxxxxxxxxx 
[mailto:wdmaudiodev-bounce@xxxxxxxxxxxxx] On Behalf Of Andrew Mindrin
Sent: Thursday, November 30, 2006 11:09 PM
To: wdmaudiodev@xxxxxxxxxxxxx
Subject: [wdmaudiodev] Few questions about core Audio APIs in Vista

Hi,

The questions are:

Q1. Enumerating all audio sessions
----------------------------------
I need to enumerate all audio sessions in Vista to take control over
them like Sndvol.exe. Is there a way? I need that to create custom
volume control software.

I've tried to play with WASAPI, but it is possible only to create new
session or to open a sessions of current process created by high-level
API.

Q2. Volume levels in Vista
--------------------------
I've noticed that some sound drivers for Vista doesn't support precise
volume setup. E.g. with the latest driver from Creative (2.11.0000) when
I set volume by using IAudioVolumeLevel::SetLevel to e.g. -5.02 dB and
then has read it by using IAudioVolumeLevel::GetLevel, the result is -5
dB instead of -5.02 dB. Is this driver bug or volume level in Vista can
be set\read only with a step returned by GetLevelRange method (pfStepping
parameter)? If this is not a bug, how to set\read precise levels?

Many thanks,
Andrew

******************

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

URL to WDMAUDIODEV page:
http://www.wdmaudiodev.com/

******************

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

URL to WDMAUDIODEV page:
http://www.wdmaudiodev.com/

******************

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

URL to WDMAUDIODEV page:
http://www.wdmaudiodev.com/

Other related posts: