diff --git a/android/src/main/java/com/rnim/rn/audio/AudioRecorderManager.java b/android/src/main/java/com/rnim/rn/audio/AudioRecorderManager.java index f6cecf65..9d0e6e3d 100644 --- a/android/src/main/java/com/rnim/rn/audio/AudioRecorderManager.java +++ b/android/src/main/java/com/rnim/rn/audio/AudioRecorderManager.java @@ -315,10 +315,22 @@ public void run() { if (!isPaused) { WritableMap body = Arguments.createMap(); body.putDouble("currentTime", stopWatch.getTimeSeconds()); + int maxAmplitude = 0; + if (recorder != null) { + maxAmplitude = recorder.getMaxAmplitude(); + + } + double dB = -160; + double maxAudioSize = 32767; + if (maxAmplitude > 0){ + dB = 20 * Math.log10(maxAmplitude / maxAudioSize); + } + + body.putInt("currentMetering", (int) dB); sendEvent("recordingProgress", body); } } - }, 0, 1000); + }, 0, 250); } private void stopTimer(){