【发布时间】:2012-11-25 14:47:41
【问题描述】:
MediaStream 的方法 prepareAsync() 的文档说:
准备播放器进行异步播放。设置后 数据源和显示表面,您需要调用 prepare() 或准备异步()。 对于流,你应该调用 prepareAsync(), 立即返回,而不是阻塞直到有足够的数据 已被缓冲。
如果我们使用prepare() 播放流,会出什么问题?我一直在使用prepare(),但从未遇到任何麻烦。
相反,在我自己的情况下,当我使用 'prepareAsync()' 时,流永远不会启动。当我使用 'prepare()' 时,流在缓冲期 (1s-2s) 之后开始并且播放良好。为什么异步方法会发生这种情况?异步准备的表单是否与prepare() 相同?
mPlayer = new MediaPlayer();
mPlayer.setAudioStreamType(AudioManager.STREAM_MUSIC);
mPlayer.setDataSource(STREAM_URL);
mPlayer.prepareAsync();
mPlayer.start();
【问题讨论】:
标签: android streaming android-mediaplayer