Thanks for the information. I will do the floating point math in the driver to multiply the audio signal with volume level as Robert mentioned. I am assuming I should be enclosing the multiplication code in * KeSaveFloatingPointState* and *KeRestoreFloatingPointState*. Also I will need to convert data from floating point to integer - I hope this works fine. cheers, Neetu On Mon, Jun 27, 2011 at 7:14 AM, Frank Yerrace <Frank.Yerrace@xxxxxxxxxxxxx>wrote: > What Tim and Robert are saying is correct. If your driver exposes a > volume property, then your driver is responsible for actually implementing > the volume adjustment on the audio signal. Normally this is done by the > driver programming some hardware to affect gain levels in some way (faithful > to the values passed to the property SET).**** > > ** ** > > Frank Yerrace**** > > Microsoft Corporation**** > > ** ** > > *From:* wdmaudiodev-bounce@xxxxxxxxxxxxx [mailto: > wdmaudiodev-bounce@xxxxxxxxxxxxx] *On Behalf Of *Neetu Sand > *Sent:* Saturday, June 25, 2011 3:02 AM > > *To:* wdmaudiodev@xxxxxxxxxxxxx > *Subject:* [wdmaudiodev] Re: Setting KSPROPERTY_AUDIO_VOLUMELEVEL**** > > ** ** > > Hi Rob, > > > Thanks for your response. I am not multiplying in CopyTo. I didn't see this > anywhere in DDK documentation so I was under impression that once you return > proper volume value in property handler, OS does this for you in audio > layers. > > If this is the case case then I should be able to achieve, what I trying > to. > > cheers, > Neetu**** > > On Sat, Jun 25, 2011 at 12:57 PM, Robert Bielik <robert.bielik@xxxxxxxxxx> > wrote:**** > > Neetu Sand skrev 2011-06-25 06:01:**** > > ** ** > > Yes, this is what I am trying to do - expose a volume property with a range > between -96dB to 0 dB. Do you think I should expose some other values for > the range? > > When I expose property handle for volume control, I implement it with Get, > Set and BasicSupport. I get calls for all three of them - In Set I cache the > value, in get I return the cached value and in BasicSupport I return the > range that I am trying to expose. > > However this results in no changes to volume i.e. slider moves but no > audible changes in the volume level. This is puzzling so please tell me what > is wrong in my implementation.**** > > ** ** > > I'm not sure I'm missing something here, but shouldn't you actually USE the > volume value to get an audible change ? Like multiply your audio data with > the calculated volume level factor (in > CopyTo) ? (I.e. if you set the control to -6dB you should multiply your > audio data with 0.5) > > The exposed volume node in your topology is only there to tell Windows that > you HAVE a volume control, and which range it has. It doesn't actually DO > anything besides that. Making sure that volume is actually changed is up to > you. > > Regards > /Rob**** > > > ****************** > > 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/**** > > ** ** >