MediaStream
的方法的文档prepareAsync()
说:
异步准备播放器进行播放。设置数据源和显示表面后,您需要调用 prepare() 或 prepareAsync()。对于流,您应该调用 prepareAsync(),它会立即返回,而不是阻塞直到缓冲了足够的数据。
如果我们用于播放流,会出现什么问题?prepare()
我一直在使用prepare()
,我从来没有遇到任何麻烦。
相反,在我自己的情况下,当我使用 'prepareAsync()'时,流永远不会开始。当我使用“prepare()”时,流在缓冲期(1s-2s)之后开始并且播放良好。为什么异步方法会发生这种情况?async prepare 的形式是否与 for 相同prepare()
?
mPlayer = new MediaPlayer();
mPlayer.setAudioStreamType(AudioManager.STREAM_MUSIC);
mPlayer.setDataSource(STREAM_URL);
mPlayer.prepareAsync();
mPlayer.start();