Android:如何录制mp3广播(音频)流

问题描述 投票:9回答:3

我最喜欢的广播电台以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广播流?感谢您的帮助或代码段...

android stream mp3 record radio
3个回答
8
投票

也许您应该按字节读取音频流,然后将其放入新文件中?就像简单的文件复制操作一样,使用inputstream-outputstream。


20
投票

完美!解决方案是“逐字节”读取音频流。谢谢!

这里是我的代码段:

        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++;
        }

0
投票

@ user4500的答案仅适用于mp3音频流。如何录制其他流音频格式(如.aac)?

© www.soinside.com 2019 - 2024. All rights reserved.