簡體   English   中英

Android Media Recorder-片段錄制音頻

[英]Android Media Recorder - Record Audio in Pieces

我有一個以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設置為記錄下一個文件。 請注意,這將不會產生一系列完美的文件,這是一個(好的?)機會。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM