天天看点

iPhone/iPad开发札记 2012/03/29

1. 声音问题处理

* 搞定混音

从12:00 - 13:30,一直没有声音。

其间,对bits-per-packet进行了调整,变成8*4=32,仍然没有声音。

Q:是否音量开关为0了?

Q:inBusNumber = 0 or 1 ???

另,录音的声音有明显断续,估计和采集时使用的bit/sample与发送端要求的的不符有关,或者sendVideoData对数据的解释不正确。

* 录音主要问题总结

基本连贯,有时有断续

北景音比较大

在主持人启动了声音后,似乎就会出现回声,并且不连贯的问题会更明显,并会出现300ms延时。

音频模块工作的时候,CPU占用非常高

* 研究AQPlayer接收到的音频数据,使用以下代码

//getAudioData(0, audioData, numBytes);

unsigned char buf[320];

getAudioData(0, buf, numBytes);

short *srcSamplePtr = (short *)buf;

short *destSamplePtr = (short *)audioData; 

for (int i=0; i<160; i++) {

destSamplePtr[i] = srcSamplePtr[i];

}

结论1:指针类型转换(short *)对声音数据没有影响 结论2:数据中有大量的非0值,故肯定能够有声音。

继续阅读