A mic output level is in volts, not just dB which is only relative. To convert
the mic's output voltage to dB SPL, you have to know the mic's
sensitivity, for example 8 mV/Pa. A quality mic manufacturer would provide this
data.
First divide the mic's output voltage by its sensitivity to give a level in
sound pressure in units of Pascals (N/m^2). Then compute the SPL in dB where
the reference level of 0 dB SPL = 20 uPa. The mic has to be followed by a
preamp to give plenty of voltage gain (Av) so that you can measure the voltage
easily.
So the whole formula is:
dB SPL = 20 * log10 { [ (preamp output voltage / Av) / mic's sensitivity] /
20 uPa ].
Hope this helps.
Gene Goff
Ashly Audio, Inc.
Reply by sven...@ymail.com●September 30, 20082008-09-30
I have a mic that outputs its level in decibels (the range this mic outputs
seems to be >between around -55db to 0db) and would like to find an
algorithm that converts this value
>into decibel SPL.
>
>I have done some research and have used this formula that seems to do the basic
job, but the
>values it outputs dont seem to be very accurate.
>
>Here is the formula im using now dbspl(db) = 20*log10(
(10^(db/10)/.000002))
>
>where db is the decibel output value of the mic.
>
>Thanks for any help!
>
Hi!
First you need to know what is the reference value that the mic uses for the
levels. It sounds (as your max is 0dB) that it might be the maximum value of the
dynamic range of the mic, i.e. Lmic *log10(vmic/vmax). Where vmic is the voltage
from the mic and vmax is the upper limit of the range. Sound pressure levels are
defined as SPL *log10(peff/pref), where pref is 20 myPa, and peff is the rms
value of the measured pressure. Thus you need to calibrate your mic to find out
what the relation between peff and Lmic is. Assuming peff=vmic: SPL
*log10(10^(Lmic/20)*vmax/pref). With the formula you are using now you assume
that your microphone (or rather analyzer) outputs pressure levels with 1 Pa as
the reference value.
J
Reply by jsnuff1●September 29, 20082008-09-29
I have a mic that outputs its level in decibels (the range this mic outputs
seems to be
between around -55db to 0db) and would like to find an algorithm that converts
this value
into decibel SPL.
I have done some research and have used this formula that seems to do the basic
job, but the
values it outputs dont seem to be very accurate.
Here is the formula im using now dbspl(db) = 20*log10(
(10^(db/10)/.000002))