我最喜欢的广播电台播放mp3格式的广播音频流。在我的Android应用程序中,我可以毫无问题地接收和播放它。
如何实现录音功能?我想将mp3广播流录制到我的Android手机SD卡上。
我尝试了没有任何结果的MediaRecorder类......
Android Developer: MediaRecorder
...
mRecorder = new MediaRecorder();
mRecorder.setAudioSource(MediaRecorder.AudioSource.DEFAULT);
mRecorder.setAudioEncoder(MediaRecorder.AudioEncoder.DEFAULT);
...
不幸的是我不能选择以下内容:
mRecorder.setAudioSource(MediaRecorder.AudioSource.MP3_STREAM);
...; - )
如何录制mp3广播流?感谢您提供任何帮助或代码段......
答案 0 :(得分:18)
完美! “逐字节”读取音频流是解决方案。谢谢!!
这里是我的代码片段:
URL url = new URL("http://myradio,com/stream.mp3");
inputStream = url.openStream();
Log.d(LOG_TAG, "url.openStream()");
fileOutputStream = new FileOutputStream(outputSource);
Log.d(LOG_TAG, "FileOutputStream: " + outputSource);
int c;
while ((c = inputStream.read()) != -1) {
Log.d(LOG_TAG, "bytesRead=" + bytesRead);
fileOutputStream.write(c);
bytesRead++;
}
答案 1 :(得分:8)
也许您应该“逐字节”读取音频流然后将其放入新文件中?像简单的文件复制操作一样,使用inputstream-outputstream。