我想在android中无间隙地循环声音。
我尝试使用代码mediaplayer.setLooping(true)
来循环声音,但是当第一个声音结束并且下一个声音开始时,总会有一点停顿。
答案 0 :(得分:16)
尝试将.ogg文件格式用于应用程序中的声音文件。我有同样的问题,经过大量的研究,我尝试了.ogg格式,它在android中没有任何间隙循环。
有关.ogg格式的信息:http://en.wikipedia.org/wiki/.ogg
您可以使用流行的开源应用VLC Media Player轻松地将声音文件从.mp3或您拥有的内容转换为.ogg。
答案 1 :(得分:7)
这是android操作系统中的一个错误:( http://code.google.com/p/android/issues/detail?id=18756
答案 2 :(得分:3)
另外值得注意的是,Jelly Bean(API级别16)添加了无间隙播放。它允许您设置应该用于播放下一个音频流的辅助媒体播放器,只要主播放器尚未播放当前音频。这也可能用于创建无间隙的“循环”。
public void setNextMediaPlayer (MediaPlayer next)
显然,这对大多数市场(目前< 3% of the devices is running JB)没有多大帮助,但值得一提。
答案 3 :(得分:2)
它通常可以正常工作,除非你有一个非常慢的手机。
我会使用像Audacity这样的音频编辑器仔细检查声音文件,以验证它在文件的开头或结尾没有任何静音。