在Android中使用音频

时间:2013-08-21 19:17:21

标签: android speech-recognition speech

我在Android上的语音识别应用程序上工作,我想知道如何将音频作为字节流读取并播放它。我目前使用以下代码开始和停止录制。

 void startRecording()
    {
        mFileName = Environment.getExternalStorageDirectory().getAbsolutePath();
        mFileName += "/audiorecordtest.mp3";
        mRecorder = new MediaRecorder();
        mRecorder.setAudioSource(MediaRecorder.AudioSource.MIC);
        mRecorder.setOutputFormat(MediaRecorder.OutputFormat.THREE_GPP);
        mRecorder.setOutputFile(mFileName);
        mRecorder.setAudioEncoder(MediaRecorder.AudioEncoder.AMR_NB);

        try {
            mRecorder.prepare();
        } catch (IOException e) {
            Log.e(LOG_TAG, "prepare() failed");
        }

        mRecorder.start();
    }

    private void stopRecording()
    {
        mRecorder.stop();
        mRecorder.release();
    }

1 个答案:

答案 0 :(得分:0)

如果您想要原始字节,则应使用AudioRecord进行录制,并使用AudioTrack进行播放。 MediaRecord将提供编码的音频格式。

如果您搜索AudioRecord,网上有很多例子,所以我不会详细介绍,但这并不复杂。