[wdmaudiodev] modes vs. gains: caching?

  • From: Mark Cookson <mark_cookson@xxxxxxxx>
  • To: wdmaudiodev <wdmaudiodev@xxxxxxxxxxxxx>
  • Date: Mon, 12 Jun 2006 13:40:01 -0500

We¹re having a little trouble dealing with a Windows mixer corner case in a
control panel.

We¹re building a somewhat odd audio device which has a single audio input
socket which may operate in one of two modes at any given time. The mode is
selectable via software, but it could just as easily be selectable by
hardware. Each mode has a slightly different gain structure. Marketing has
decided that the product should remember the gain for each mode, and when
the user switches between from mode A to mode B, the panel should likewise
update its single fader from the gain of mode A to the gain of mode B.

The trouble is that when the panel queries the Windows mixer control for the
gain in mode A, changes to mode B, and queries again for the gain, the
driver appears to be prepared to report gain B, but the panel obtains gain A
as if the mode had not been switched. We suspect there is some caching going
on such that the Windows mixer does not realize we¹ve changed the mode ? and
even if it did it wouldn¹t know what that change meant anyway ? and it¹s
trying to save somebody time by not querying the driver again for its gain.
Is this correct? If so, it would seem our mini-driver needs to send some
kind of message up through the audio stack to invalidate the cache, but we
don¹t know what that message might be.

In any case, does anybody have any ideas how to solve this problem which
doesn¹t involve trying to talk Marketing out of this feature? :-)

Mark Cookson
Software Tech Lead
M-Audio, a part of Avid
225 Locust St.
Hudson, WI 54016


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: