做在线音乐播放的时候,需要边下载边播放,这样的话中间最少卡一次(最顺利的情况也要prepare并且start两次),请问谁有这方面经验,可以让整首歌播放下来不卡的

解决方案 »

  1.   

    下载一部分存 到本地文件,然后setDataSource(path)指定到该文件进行播放,此时还在继续下载并且往本地文件写。
    监听到第一段播放结束事件的时候, 开始prepare当前的本地文件, 然后seek到之前播放结束的部分开始播放, 这个过程会卡一下,我不知道有没更好解决办法
      

  2.   

    PC机上可用HTTPSERVER下载播放,手机开发中是否也可以使用这方法,不太清楚
      

  3.   

    你可以下个豆瓣电台客户端看看。源码好像没有,不过google code的api是有的,也许可以借鉴一下
      

  4.   

    你没有缓存机制吗?这样做在线的啊,当然你直接从mediaplayer处理可能无法控制
      

  5.   

    研究opencore的rtsp/http streaming node实现吧,呵呵
      

  6.   

    你有解码库吗?有自己的解码库的话,编进ANDROID里头,用JNI将MPEG4数据解成YUV格式,再转成BMP,直接画到surface上
    效率是最关键的问题,另外,要做文件缓冲,不能都放内存里。还有,声音视频同步也是个大麻烦
      

  7.   

    这方法看起来可以,但是LZ你试过大文件没有?  另外,PREPARE的资源消耗非常大,包括一系列的初始化CODEC,打开设备等,这些都不能忽视的。