我需要在我的应用中无延迟地播放音乐。在android< 4.0我使用了媒体播放器,一切顺利。在android> 4.0相同的代码无法循环而没有重要的滞后。
所以我尝试使用SoundPool。如果我使用
int NO_LOOP=0;
sp.play(ID, 1, 1, 0, NO_LOOP, 1);
声音播放没有问题,但如果我使用
int LOOP=-1;
sp.play(ID, 1, 1, 0, LOOP, 1);
它不起作用,并显示此消息:
08-21 05:12:48.243: E/AudioTrack(15035): AudioFlinger could not create track, status: -12
08-21 05:12:48.243: E/SoundPool(15035): Error creating AudioTrack
有什么问题?我该如何解决这个问题?
答案 0 :(得分:0)
要进行无间隙循环,必须使用1mb以下的WAV文件。否则循环的-1设置将导致您的文件无法播放。
这很有效,只是测试了它。