首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >AudioQueue不工作窗口小型化

AudioQueue不工作窗口小型化
EN

Stack Overflow用户
提问于 2013-12-11 15:16:35
回答 1查看 79关注 0票数 0

我正在做VOIP应用程序,为了语音捕捉和播放,我正在使用AudioQueue框架,面对一个有线问题,

每当应用程序窗口变得小型化,它不会播放音频的一小部分秒,直到窗口没有得到小型化。

我觉得这是因为在主线程中运行了AudioQueue,我尝试过在其他线程中运行audioQueue,但是AudioQueue不能工作。

如何解决这个问题,有什么建议吗?

或者..。当用户按下“最小化”按钮,当声音发生时,我可以处理和拒绝缩小通知,有任何方法可以处理通知吗?我得到了关闭和其他活动的委托方法,但不适合按下“最小化”按钮。

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2014-01-07 14:02:20

谢谢你看它

通过在回放音频队列中使用CFRunloop就可以解决这个问题,

代码语言:javascript
复制
OSStatus status = AudioQueueStart(mQueue,NULL);


NSLog(@" Start AudioQueue returns %d",(int)status);

if ( status != noErr) {
    NSLog(@"AudioQueueStart Error ");
    mIsRunning = TRUE;
}

do {                                               // 5
    CFRunLoopRunInMode (                           // 6
                        kCFRunLoopDefaultMode,                     // 7
                        0.25,                                      // 8
                        false                                      // 9
                        );

} while (mIsRunning);

CFRunLoopRunInMode (                               // 10
                    kCFRunLoopDefaultMode,
                    1,
                    false
                    );

使用这一行代码,我可以从线程启动audioQueue。

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

https://stackoverflow.com/questions/20522832

复制
相关文章

相似问题

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