在Peices中录制音频

我有一个以amr_nb格式编码并以amr格式输出文件的应用程序。 我希望将录制的文件分解为一系列每个2 KB的amr文件。 没有线索如何实现这一目标。

这是在点击记录按钮时调用的函数

private void startRecording(){recorder = new MediaRecorder();

    recorder.setAudioSource(MediaRecorder.AudioSource.MIC);
    recorder.setOutputFormat(MediaRecorder.OutputFormat.AMR_NB);
    recorder.setAudioEncoder(MediaRecorder.AudioEncoder.AMR_NB);
    recorder.setOutputFile(getFilename());

    recorder.setOnErrorListener(errorListener);
    recorder.setOnInfoListener(infoListener);

    try {
        recorder.prepare();
        recorder.start();
    } catch (IllegalStateException e) {
        e.printStackTrace();
    } catch (IOException e) {
        e.printStackTrace();
    }
}

这里是点击停止按钮时调用的方法,

private void stopRecording() {
    if (null != recorder) {
        recorder.stop();
        recorder.reset();
        recorder.release();

        recorder = null;
    }
}

http://developer.android.com/reference/android/media/MediaRecorder.html#setMaxFileSize(long)

然后将您的监听器注册到达到最大文件大小时进行回调的MediaRecorder,然后设置MediaRecorder以记录下一个文件。 请注意有一个(好?)的机会,它不会产生一系列无间隙文件。

链接地址: http://www.djcxy.com/p/5265.html

上一篇: Record Audio in Peices

下一篇: Android MediaRecorder Multiple Files