我在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();
}
答案 0 :(得分:0)
如果您想要原始字节,则应使用AudioRecord
进行录制,并使用AudioTrack
进行播放。 MediaRecord
将提供编码的音频格式。
如果您搜索AudioRecord,网上有很多例子,所以我不会详细介绍,但这并不复杂。