Androidのマイクからの音のdb値を計算しようとしています。Audio Record クラスを使用して、マイクから 16 ビット PCM データを取得しました。
//init a recorder instance
recorder = new AudioRecord(MediaRecorder.AudioSource.MIC,ECORDER_SAMPLERATE, RECORDER_CHANNELS,RECORDER_AUDIO_ENCODING, bufferSize);
recorder.startRecording();
// and then read 16 bit PCM data
recorder.read(data, 0, bufferSize);
このデータの値の範囲は -32768 ~ 32767 (符号付き 2^16) です。
これらは量子化された値だと思いますが、対応する電圧値が何であるかを知りたいのですが、アンドロイドのマイクの電圧値の範囲は何ですか? すべてのスマートフォンで多かれ少なかれ同じですか?
例: マイク出力が 0 ~ +5 V の場合、32767 は +5 V DC に対応します。