AudioTrack报错:track 0xb8d56f40 disabled due to previous underrun, restarting
在android使用AudioTrack在线播放音频,播放音频是出现卡顿现场,同时打印出以下错误:
track 0xb8d56f40 disabled due to previous underrun, restarting
播放器是按一定的速率播放音频,当缓冲区未完全按时填充数据时(即buffer underrun)就会报此错误。
解决方法:
- 往buffer加入数据的速率要足够块
- 只有在buffer有数据时才调用play方法
- 如果使用的场景运行暂停,可以在buffer的数据还没有完成填充完成时,先调用stop