根据android中的状态图,MediaPLayer将在准备好后启动。我计划实现一个必须接收最少内容的应用程序,并启动播放器。但是玩家正在等待,直到准备阶段收到全部内容。
Ex:总内容长度:10kb,计划在缓冲区达到2kb后启动播放器。播放器要等待2kb缓冲区准备好并且必须启动播放器。
算法: 1.开始从服务器下载内容 2.如果准备好缓冲区2kb,则启动播放器,否则向用户显示旋转进度(n / w延迟) 3.重复2直到全部内容10kb到达。
我能用MediaPLayer实现上述算法吗?
答案 0 :(得分:0)
您无法使用MediaPlayer执行此操作,因为它会在指示“已准备好”之前完全控制缓冲量。
如果您有可用的PCM数据,则可以在指示时使用AudioRecord类进行播放。否则,如果你可以瞄准果冻豆(谁能做到这一点!) ,您可以使用新的MediaCodec API。