stream式传输audio文件并对其进行caching

我想streamaudioMP3文件,然后通过Android媒体播放器播放,另外我也caching这个文件 ,这样媒体播放器不必stream最近播放的曲目。

我已经尝试过使用prepareAsync方法,但是它不能访问缓冲区内容,所以我决定自己将audio文件stream式传输给媒体播放器进行播放。 我已经通过在这里遵循这篇文章实现这一点,但是这种方法有一个问题,即在将文件传输到媒体播放器时,它会进入错误模式,导致我的播放器行为不一致。

当媒体播放器进入错误模式时,它不会自动出现,所以我不得不创build一个新的媒体播放器,然后重新提供下载的文件,这种解决方法会导致用户在播放歌曲时感觉到不希望的暂停。

那么,有没有人改进了上面的链接给出的代码版本? 或者他们知道这个问题的更好的解决scheme, 或者是实际上有一个库在Androidstream媒体audio文件?

谢谢

Related of "stream式传输audio文件并对其进行caching"

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