2012-07-27 85 views
0

我读到Android MediaPlayer支持音频链接。Android MediaPlayer链接

我正在播放一个连续的MIDI文件,我希望它们之间没有延迟(连续播放)。

我目前使用的:setOnCompletionListener

月食模拟器并没有真正有一个明显的滞后。但是我在一个华硕变压器上(这是相当快的)尝试了我的应用程序,但它有一个更大的延迟。我试着用Android 4.0.3。

我应该用另一种方法播放下一首歌吗?

+2

Android 4.1(Jellybean)添加了音频链接支持。 – Michael 2012-07-27 08:20:11

+0

这就是我认为......嗯......好吧,所以新设备应该更好地工作,谢谢! – dorien 2012-08-01 17:56:51

回答

3

的果冻豆版本说明提到,现在的MediaPlayer支持的“音频链接”功能,但不指定实际的API实现。这就是说,如果你看看上的MediaPlayer的开发者参考,你会发现,有一个名为“setNextMediaPlayer”可作为Android的16(果冻豆)的新方法:

Read About setNextMediaPlayer() Here

我不很确定,但我相信这是发行说明所指的。

更正:setNextMediaPlayer在发行说明中提到这里 http://developer.android.com/about/versions/android-4.1.html 在标题'Gapless Playback'下。

3

我认为你应该尝试使用SoundPool类而不是MediaPlayer。因为与MediaPlayer对象相比,SoundPool是一个轻量级对象。

这里的Soundpool的一个例子,

http://blog.nelsondev.net/?p=207

而且据说是的Soundpool最优选小声音文件和更快的播放能力。

这里是一篇关于MediaPlayer和SoundPool的文章。

http://www.vogella.com/articles/AndroidMedia/article.html

这里是另一个链接,基于它的一个问题,

Soundpool or media player?

+1

谢谢,但我似乎读了有没有办法知道什么时候声音完成播放(如开始下一个):http://stackoverflow.com/questions/4436055/android-soundpool-get-notified-when-播放结束,这在连续尝试播放声音方面有缺点 – dorien 2012-07-31 14:24:48