2
저는 Android 프로그래밍 및 오디오 시각화를 처음 사용합니다. MediaPlayer
및 Visualizer
클래스를 사용하여 간단한 오디오 비주얼 라이저를 만들고 싶습니다. 내 문제는, 뭔지 모르겠다 wave form data
정말입니다. 오디오를 시각화하기 위해 사용해야합니까? 아래 코드를 사용하고 있습니다. 문제는 파일의 처음 10-12 초 동안 오디오 만 시각화한다는 것입니다. 그 후에 더 많은 데이터를 캡처 할 수 없습니다. 나는 어디로 잘못 갔는가?Visualizer 객체의 onWaveFormDataCapture 결과를 처리하는 방법은 무엇입니까?
public void attachVisualizer()
{
Visualizer vis = new Visualizer(mPlayer.getAudioSessionId());
vis.setCaptureSize(Visualizer.getCaptureSizeRange()[0]);
vis.setDataCaptureListener(new Visualizer.OnDataCaptureListener() {
public void onWaveFormDataCapture(Visualizer visualizer, byte[] bytes, int samplingRate) {
int sum = 0;
for(int i = 0; i < bytes.length; i++) {
sum += bytes[i];
}
if(sum > 8000) {
// Do something which uses mPlayer.getCurrentPosition() in mathematics
}
}
public void onFftDataCapture(Visualizer visualizer, byte[] fft, int samplingRate) {}
}, Visualizer.getMaxCaptureRate() , true, false);
vis.setEnabled(true);
}
편집
그리고 내 마음에 또 다른 질문은, 어떻게 주어진 오디오 세그먼트에 포함 된 시간의 길이를 기록 할입니까?
의 전시를. 나는 서비스에서 바이트를 설정하고있다. –