一、在HAL层捕获PCM数据并存盘
static ssize_t out_write(struct audio_stream_out *stream, const void* buffer,
size_t bytes)
{
//add by tank
FILE *tankai;
tankai = fopen("/data/buffer","a+");
if(tankai == NULL) {
ALOGD("TK------>>>file can not open!\n");
exit(0);
}
ALOGD("TK------>>>>stream is 0x%lx",tankai);
fwrite(in_buffer,1,bytes,tankai);
fclose(tankai);
//end tank
ret = pcm_write(out->pcm, in_buffer, out_frames * frame_size);
}
这样,当有数据需要播放时;就会被保存在/data/目录下的buffer文件中。
二、使用Cool Edit查看
1.下载Cool Edit
2.使用
我们的数据格式如下:采样率——48000HZ,量化位数——16bit,声道——立体声。
步骤一:
步骤二:
3.音频数据波形图(前边为待接听时的声音,后边为QQ通话声音)
从上图可以看出:QQ音频振幅较小。