[wdmaudiodev] Get Volume Property for MIDI Miniport

  • From: Art Edwards <snowdog0@xxxxxxxxxxxx>
  • To: wdmaudiodev@xxxxxxxxxxxxx
  • Date: Tue, 15 Oct 2002 10:16:31 -0400

I have yet another inquiry about the Mixer API and how calls to it are 
translated into KS incantations.

When an application calls the Mixer API to obtain volume settings for a 
line, my driver usually receives the following ioctl:

     IOCTL_KS_PROPERTY accompanied by:
         Property.Set   = KSPROPSETID_Audio;
         Property.Id    = KSPROPERTY_AUDIO_VOLUMELEVEL;
         Property.Flags = KSPROPERTY_TYPE_GET ;

The driver *doesn't* receive one of these when an application requests MIDI 
volume though.  When the Mixer API is used to query the current MIDI 
volume, the number that's returned seems to come from a key in the 
registry.  In my case, the key is:

HKLM\System\CurrentControlSet\Control\DeviceClasses\{6994ad04-93ef-11d0-a3cc 
-00a0c9223196}\-blah, blah, blah-\Device Parameters\Mixer\3\Controls\0

The result is a mixer application will likely set the position of its MIDI 
volume control incorrectly.  When the control is moved, the driver receives 
a KSPROPERTY_TYPE_GET ioctl. The driver and application(s) remain synced up 
thereafter.

As you might guess, this is only a problem when the driver is initially 
loaded.  On its first load, the driver inits its volumes to a (driver 
defined) default value.  Most of these defaults are  passed to the Mixer 
API via the KSPROPERTY_TYPE_GET request.

So, here's my question:  Is this expected ?  Or, might my driver be doing 
something that would prevent it from receiving GET requests while still 
receiving SET requests for MIDI volume ?


Art Edwards

Art's <http://members.localnet.com/~snowdog0/Resume>resume.
Art's <http://www.soniqboom.net>band (a.k.a. Soniq Boom).

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

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.de/

Other related posts:

  • » [wdmaudiodev] Get Volume Property for MIDI Miniport