【转】Android 的AudioTrack.write 掩藏机关

【转】Android 的AudioTrack.write 暗藏机关

在Android的模拟器上测验1.5与1.6系统,发现用write输出波形数据,数据帧的个数必须是偶数。
如果是奇数,线程就stuck在write里面,不返回了。

这里所谓数据帧的个数是这样:

波形数据的字节数 / 基本单元的字节数

基本单元的字节数由初始化时候的AudioFormat来决定。

ENCODING_PCM_16BIT 是2字节
ENCODING_PCM_6BIT  是1字节