My main goal is to change the volume on one sound card based on the decibel level of the audio on another sound card (both on the same computer). Is it possible to detect the DB level?
PS: I am writing this in C#
My main goal is to change the volume on one sound card based on the decibel level of the audio on another sound card (both on the same computer). Is it possible to detect the DB level?
PS: I am writing this in C#
This is possible, but not easy. The decibell sound pressure level (SPL) is going to depend on your speakers, external amplifiers, and microphones as much as the soundcard. Converting from the numbers that you give your sound card (in a wav file, for example) to dB SPL is almost entirely a question of how well you can calibrate your entire system. The problem is that the calibration requires special equipment, most notably a sound level meter; and if you don't have one of these, I don't know of any way to estimate the values you would need to know.
(This assumes that what you mean by decibells is the sound pressure level, which is often measured in dB. dB, though, is just a particular formulation of a logarithmic scale, so many different things can be reported in dB.)