Как рассчитать мощность звука на микрофоне в децибелах
Пожалуйста, помогите мне рассчитать децибелы от микрофона телефона. Микрофон имеет getMaxAmplitude()
функция. Как я могу использовать его для расчета децибел? Я читал на некоторых форумах, что формула расчета децибел power_db = 20 * log10(amplitude / reference_amplitude)
, Но я не понимаю, как найти reference_amplitude
,
2 ответа
Децибелы - это единица, широко используемая для определения некоторого количества относительно чего-то другого. Существует несколько различных типов измерений в децибелах, в зависимости от того, что вы пытаетесь описать относительно сигнала, который вы получаете.
Прочтите эту ссылку, чтобы начать, она объясняет все, что вам нужно знать гораздо лучше, чем я!
В звуке значения децибел относятся к уровню звукового давления 20 мкПа (20 микропаскалей). Таким образом, в вашем случае reference_amplitude будет амплитудой, генерируемой вашим микрофоном в присутствии звукового поля с уровнем 20 мкПа.
На практике, чтобы найти этот уровень, микрофоны часто калибруют (используя калибратор микрофона) с сигналом определенного точно известного уровня (часто около 94 дБ). Амплитуда в результате этого калибровочного сигнала затем может быть использована для вычисления амплитуды для опорного сигнала (предполагается, что отклик микрофона линейным).