首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >录制音频时使用AudioQueueServices回调的意外行为

录制音频时使用AudioQueueServices回调的意外行为
EN

Stack Overflow用户
提问于 2010-03-26 04:23:45
回答 1查看 220关注 0票数 1

我正在使用AudioQueueServices记录一个连续的数据流。我的理解是,只有在缓冲区填充数据时才会调用回调。在实践中,第一个回调有一个完整的缓冲区,第二个回调是3/4满,第三个回调是满的,第四个回调是3/4满,等等。这些缓冲区是8000包(录音8khz音频)-所以我应该得到1s的音频回拨每次。我已经确认我的音频队列缓冲区大小是正确的(并且在某种程度上被行为所证实)。我做错了什么?我应该在AudioQueueNewInput中用不同的RunLoop做些什么吗?我试过了,但这似乎没什么区别.

顺便说一句,如果我在调试器中运行,每个回调都会有8000个示例--这让我觉得这是一个线程/计时问题。

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2010-03-31 13:56:26

显然,从与其他人的讨论-和缺乏反应,这种行为是按照设计(或打破,但不可能被修复),即使不正确的记录。所做的工作是在必要时在回调中适当地缓冲您的示例,而不是期望缓冲区已满。如果您只是将数据写入文件,这根本不是问题,但是如果您希望对回调中大小一致的音频数据块进行操作,那么您必须自己确保这种一致性。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/2521132

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档