Click here to Skip to main content
15,905,781 members
Please Sign up or sign in to vote.
0.00/5 (No votes)
See more:
According to:
http://msdn.microsoft.com/en-us/library/dd316561(VS.85).aspx
The peak-meter values obtained from the methods in the IAudioMeterInformation interface are floating-point numbers in the normalized range from 0.0 to 1.0. For example, if a PCM stream contains 16-bit samples, and the peak sample value during a particular metering period is —8914, then the absolute value recorded by the peak meter is 8914, and the normalized peak value reported by the IAudioMeterInformation interface is 8914/32768 = 0.272.


However in real life the call never returns 0, but just a tiny fraction (4e-10 for example)

Is this ADC rumble and therefore nothing i can do about it or would changing soundcard get me 0.

I need 0 because my external amplifiers are controlled via an USB interface, my app polls peaklevels of the default endpoint and based on the endpoint switches on the on off the usbchannels and lighting up the amp.

I have second thread polling and if it has got a 0 during a given timeperiod switches the thing off.

I was counting on the fact that when an endpoint was actively engaged the rumble from the source would keep it life, but now i have this awful kludge were i set the parameters for 'is it active' for each audiosource since there is never 0.
Posted

Nothing is going to get you 0 since you're either hearing very quiet white noise in the audio stream or you're getting EMI noise from some source. If you want absolute 0, then you're going to have to pass the data through a filter or just hack off values below a certain threshold.
 
Share this answer
 
Comments
Snoepie 19-Jul-10 3:44am    
Reason for my vote of 4
helpful, concise
tnx, Dave
Confirmed my suspicions and you helped me decide not to buy another audio card. Hacking off values is tricky, pauses in songs give also very low values and the base 'rumble' is never the same value. Working on perfecting the multithreaded kludge now.
 
Share this answer
 

This content, along with any associated source code and files, is licensed under The Code Project Open License (CPOL)



CodeProject, 20 Bay Street, 11th Floor Toronto, Ontario, Canada M5J 2N8 +1 (416) 849-8900