昨天调节AVFoundation 框架时遇到的category设置错误的导致的bug提示如下:
(enable 1, outf< 2 ch, 0 Hz, Float32, non-inter> inf< 2 ch, 0 Hz, Float32, non-inter>)
2018-07-12 20:38:31.880 XXXX[332:18006] 20:38:31.880 ERROR: [0x1a1e74000] 308: input bus 0 sample rate is 0
2018-07-12 20:38:31.880 XXXXX[332:18006] 20:38:31.880 ERROR: [0x1a1e74000] AVAudioEngineGraph.mm:2510: PerformCommand: error -10875
其实这是我的麦克风不能做输入源导致的错误。
在Appdelegate中:
AVAudioSession *session = [AVAudioSession sharedInstance];
[session setCategory:AVAudioSessionCategoryPlayback error:nil];
这个是允许后台播放的模式,在这里其实不是很适用。其实要想适用audioKit框架,务必保证模式是PlayAndRecord。
尽管这是一个默认模式,但是协同开发中还是会有同事把它给成别的设置。
问题二:今天遇到一个提前释放的问题
It is possible that this object was over-released, or is in the process of deallocation.
其实这根本不是提前释放的问题,这只是一个懒加载与dealloc方法里面不能创建对象原则发生冲突的问题。
在dealloc 中报错 It is possible that this object was over-released, or is in the process of deallocation.
问题代码:
[self.popView removeFromSuperview];
self.popView = nil;
分析原因,因为我没有使用到self.popView,self.popView在dealloc中会先初始化,这时候就报错了。
解决方法:
[_popView removeFromSuperview];
self.popView = nil;
以上参考于博客'
网友评论