[wdmaudiodev] Re: Understanding USB Feature Unit Descriptors

Got it, thanks so much!

----- Original Message -----
From: Tim Roberts <timr@xxxxxxxxx>
Date: Friday, January 14, 2011 3:28 pm
Subject: [wdmaudiodev] Re: Understanding USB Feature Unit Descriptors
To: "wdmaudiodev@xxxxxxxxxxxxx" <wdmaudiodev@xxxxxxxxxxxxx>

> RYAN ALLAN wrote:
> >
> > I do agree that a device applying that must gain would be absurd.
> > My amplifier is able to attenuate the signal in 1 dB 
> increments from 0
> > to -90 dB.
> 
> Then your MIN should be A600, your MAX should be 0000, and your RES
> should be 0100.  That's the RIGHT answer.
> 
> > I would like to use the full -127db to +127db scale though, as 
> I am
> > trying to fit it to an existing volume mapping table.
> 
> But your sentence doesn't make any sense.  You don't HAVE a 
> -127 dB to
> +127 dB scale.  You have a -90 dB to 0 dB scale.  Tell 
> Windows that.  An
> audio application that sets the volume to 0 dB should get the same
> audible results on every audio device.  When everyone does 
> the kind of
> magic remapping that you're doing, that becomes absolutely impossible.
> 
> > The existing table takes a volume value from 0 - 255 and maps 
> it to my
> > amplifier's +0 to -90db range.
> > I figured that if the Windows OS was able to provide me with a 
> volume> value in the range of -127db to +127db, I could take the 2's
> > complement of that value and be left with a volume value in 
> the range
> > 0 - 255.
> 
> ...none of which has any any relation to reality.  You 
> shouldn't be
> using a table.  You should be using dB.
> 
> > In XP this works great. The OS sends me volume values: 0x7FFF, 6FFF,
> > 5FFF, 4FFF, 3FFF, 2FFF, 1FFF, 0FFF, 0000, F000, E000, D000, C000,
> > B000, A000, 9000, 8000, I take the 2's complement of these values,
> > look at the MSB, and am left with my 0x00 - 0xFF range (I am just
> > looking for a raw number, don't care about db).
> 
> YOU might not care, but Vista and Windows 7 do.  That's the 
> crux of the
> problem.  Professional audio applications want to be able 
> to work in
> real dB, not in some fake range.  What you're doing is 
> subverting that.
> 
> > From Tim's summary, I got that Windows XP didn't care what my 
> GET_MIN,> GET_MAX, and GET_RES values were, and gave me the full 
> range. However,
> > Windows Vista/7 do care and try to limit the values to a realistic
> > range. Is this the case?
> 
> Sort of.  It's more accurate to say that XP does not 
> enforce a physical
> meaning for the numbers you advertise.  Vista does.
> 
> -- 
> Tim Roberts, timr@xxxxxxxxx
> Providenza & Boekelheide, Inc.
> 
> ******************
> 
> WDMAUDIODEV addresses:
> Post message: mailto:wdmaudiodev@xxxxxxxxxxxxx
> Subscribe:    mailto:wdmaudiodev-
> request@xxxxxxxxxxxxx?subject=subscribeUnsubscribe:  
> mailto:wdmaudiodev-request@xxxxxxxxxxxxx?subject=unsubscribe
> Moderator:    mailto:wdmaudiodev-
> moderators@xxxxxxxxxxxxx
> URL to WDMAUDIODEV page:
> http://www.wdmaudiodev.com/
> 
> 

--
Ryan Allan


Other related posts: