Hi, I have a system that is meant to play sound at very high volume (up to 130 dB). In order to check the actual volume inside this system, there are four microphones. These microphones are INMP411 ( http://43zrtwysvxb2gf29r5o0athu.wpengine.netdna-cdn.com/wp-content/uploads/2015/02/INMP411.pdf ) which have a linear response up to 131 dB and a sensitivity of -46 dBV. I receive the PCM buffer (int16) and want to convert it to a dB SPL value. At the moment the stesp I've done are:
1) Divide the maximum output voltage of the microphone by 32767 and multiply it by the PCM RMS value (thus obtaining Voltage RMS)
2) Convert voltage to dB: dB = 20Log(V RMS/V 0)
3) Convert dB to dB SPL: dB SPL = dB -46 +94 +offset - gain amplifier (in my case gain amplifier should be 0)
But something is wrong because the obtained values are very different from the ones of the phonometer that I'm using to calibrate the microphones. I'm not sure about the steps I've done because searching in the net I've found a lot of different "versions" about how to convert from PCM to dB SPL.
Can someone please help me to clarify this concept? Any suggestion is really appreciated!