繁体   English   中英

学习核心音频第8章示例未运行

[英]Learning Core Audio Chapter 8 Example not running

我只是在加快核心音频的速度,并且正在浏览Adamson和Avila撰写的“学习核心音频”中的所有示例。

第一个不起作用的示例(使用示例代码和网站上的项目)在第8章中。它根本不起作用。

有时但并非每次运行程序时,我也会在最后一行收到错误

AUGraphClose(player.graph);

CH08_AUGraphInput(9781,0x7fff78ee8960)malloc: *对象0x104003600错误:未分配释放的指针*在malloc_error_break中设置一个断点进行调试

我只是想看看是否有人遇到了这个问题,因为我开始弄清楚可能出了什么问题。

好的,我通过偶然使用断点设法调试了这一点。

似乎时间戳的mTimestamp字段未正确写入第一个输出回调。 在第一次调用时,它始终显示为0。在第一次调用后,它的大小与输入时间戳中的值相似,该值远大于0。结果是,从第一个样本计算出的inToOutSampleTimeOffset不是一个有意义的值,它弄乱了环形缓冲区。

为了解决这个问题,我添加了

if (inTimeStamp->mSampleTime > 0.0) {

在第97行,并阻止了其余功能的执行。 现在它可以工作了,尽管确实开始令人恐惧。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM