2013-02-26 86 views
10

我想流音频MP3文件,然后通过Android的媒体播放器玩再加上我也要缓存文件,让媒体播放器不必流,用于最近播放轨道。流媒体音频文件和缓存它

我尝试过使用prepareAsync方法,但它没有给我缓冲区内容的访问权限,所以我决定自己传输音频文件,然后将它传递给媒体播放器进行播放。我已经通过以下文章实现了这一点here但是这种方法存在问题,即在将文件传输到媒体播放器时,它会进入错误模式,从而导致我的播放器行为不一致。

当媒体播放器进入其错误模式时,它不会自动出现,因此我不得不创建新的媒体播放器,然后重新提供它下载的文件,此解决方法会导致用户遇到不希望的暂停在歌曲中播放。

那么,有没有人改进了以上link给出的代码版本? 他们是否知道这个问题的更好的解决方案是否有一个库用于在android中流式传输音频文件?

感谢

+0

从“MediaPlayer”的角度来看,抽象为“DataSource”的输入源应该能够在拉模式下工作。从上面的评论中,'MediaPlayer'将从你的流媒体源中提取数据。你能否确认你的源代码支持拉式操作模式?你能分享你面临的错误吗? – Ganesh 2013-02-27 00:05:44

+0

@Ganesh我不熟悉拉模式,你可以解释它,或者你可以提到任何实现或解释媒体播放器拉模型的链接 – prateek 2013-02-27 06:30:16

回答

0

链接你提供看起来像一个不太理想的解决方案(更不用提过时)。你可能需要的是一个本地代理服务器,它可以在MediaPlayer获取之前访问字节数据。请参阅我的回答here了解更多解释。