我正在开发一个同时播放和录制音频的简单桌面应用。一切进展顺利,直到我以某种方式处理了一个错误 - 现在每当我尝试拨打AVAudioEngine
inputNode
或mainMixer
时,它都会抛出错误。< / p>
我的标头中有一个属性@property (nonatomic, readonly) AVAudioEngine *engine;
,并且在我的init
方法实现中,以下代码引发inputNode
调用:
if (self = [super init]) {
_engine = [[AVAudioEngine alloc] init];
AVAudioInputNode *node = [_engine inputNode];
}
return self;
在调用堆栈顶部的所有异常结果上设置断点,如下所示:
#0 0x00007fff8ba19ab7 in __cxa_throw ()
#1 0x0000000108123779 in AUHAL::GetAudioChannelLayout(unsigned int, unsigned int, AudioChannelLayout*, unsigned char&) ()
#2 0x00000001081183c6 in AUBase::DispatchGetPropertyInfo(unsigned int, unsigned int, unsigned int, unsigned int&, unsigned char&) ()
#3 0x00000001081cdf66 in AUMethodGetPropertyInfo(void*, unsigned int, unsigned int, unsigned int, unsigned int*, unsigned char*) ()
我之前有过这个工作,所以我假设我忘记了一些明显的事情?
答案 0 :(得分:1)
好的,因此出于某种原因,删除All Exceptions
断点解决了这个问题。
XCode或AVFoundation中存在错误,或者我不知道如何使用XCode。