背景
新增一个流媒体音频播放功能,由海思端发往Windows解码播放;
ACC解码时遇到问题,解出来PCM数据均为噪音,遂使用fwrite写原始数据文件排查;
错误
采集、编码、发送端自测都没问题;
Windows接收端对比发送前的数据,发现多了很多0x0d的数据,看似随机出错!!!
原因
文件打开方式漏加"b",二进制格式;
Windows下不以二进制打开会当字符处理,自动将0x0a(回车)前面加上0x0d(换行)!
int err = fopen_s(&pcmFile, "audio.pcm", "wb");
if (err == 0) {
printf("The file test.aac was opened\n");
}
else {
printf("The file test.aac was not opened err[%d]\n", err);
}
切记!阴沟翻船一般是小地方!!!
著作权归作者所有。商业转载请联系作者获得授权,非商业转载请注明出处!
更多精彩内容,欢迎访问一只海星的主页