0
의 진폭 얻는 방법 :내가 지금처럼 안드로이드에 마이크의 진폭 레벨을 얻으려고 노력했다 MediaRecorder
MediaRecorder recorder = new MediaRecorder();
recorder.setAudioSource(MediaRecorder.AudioSource.MIC);
Timer timer = new Timer();
timer.scheduleAtFixedRate(new RecorderTask(recorder), 0, 1000);
private class RecorderTask extends TimerTask {
private MediaRecorder recorder;
public RecorderTask(MediaRecorder recorder) {
this.recorder = recorder;
}
public void run() {
Log.v("MicInfoService", "amplitude: " + recorder.getMaxAmplitude());
}
}
불행하게도,이 경우에만 0을 반환 모든 시간을.
이것이 작동하려면 실제로 녹음을 시작해야합니다. 그 맞습니까?
그렇다면 500ms를 기록하고, 진폭을 얻고, 녹음을 중지하고 반복해야합니까?
마지막으로 파일에 녹음해야합니까? 이 오디오 파일을 저장할 필요가 없습니다. 녹음하지 않고 현재 라이브 마이크 입력의 마지막 호출 이후에 현재 진폭 또는 최대 진폭을 얻을 수 없습니까?
감사합니다. 감사합니다.