Я создаю приложение для Android, которое должно начать запись звука, когда записанный звук превышает определенный порог.Как анализировать значение, возвращаемое mediaRecorder.getMaxAmplitude() в Android
Я исследовал и выяснил, что метод getMaxAmplitude() класса MediaRecorder дает оценку громкости шума как меры звукового давления. Он возвращает значение от 0 до +32767.
Вот код, который я написал.
MediaRecorder mediaRecorder = new MediaRecorder();
while(True){
if (mediaRecorder.getMaxAmplitude() > THRESHOLD)
System.out.println("Recording sound");
else
System.out.println("Sound recording not above the threshold level);
}
у меня есть проблема, выясняя значение ПОРОГ, так как нет никакого стандартного блока для значения, возвращаемого функцией getMaxAmplitude(). Было бы предпочтительно, чтобы кто-то мог предложить преобразование из значения, возвращаемого функцией getMaxAmplitude(), в децибел (дБ) или любой другой полезный блок.
Даже я пытаюсь найти ответ на этот вопрос. Если я придумаю один, я отправлю его в качестве ответа. – aditya