【发布时间】:2019-08-28 20:54:32
【问题描述】:
初始化 AKMicrohone 时应用程序崩溃。
- Objective-C
- AudioKit :4.8
-(void)setupFrequencyDetector{
@try {
AKSettings.audioInputEnabled = true;
//self.mic = [[AKMicrophone alloc]initWith:[[AVAudioFormat alloc]initWithCommonFormat:AVAudioPCMFormatFloat32 sampleRate:44100 channels:2 interleaved:true]];
self.mic = [[AKMicrophone alloc]initWith:[[AVAudioFormat alloc]initStandardFormatWithSampleRate:AVAudioPCMFormatFloat32 channels:2]];
self.tracker = [[AKFrequencyTracker alloc]init:self.mic hopSize:4096 peakCount:20];
self.silence = [[AKBooster alloc]init:self.tracker gain:0];
AudioKit.output = self.silence;
} @catch (NSException *exception) {
NSLog(@"Exception :%@",exception.description);
} @finally {}
}
例外:必需条件为假:format.sampleRate == hwFormat.sampleRate AudioKit+StartStop.swift:start():34:无输出节点 尚未设置,不会进行任何处理。
【问题讨论】:
-
当您只提供一种方法时,很难肯定地给您答案。该错误似乎暗示您从未设置输出,所以
setupFrequencyDetector甚至在 AudioKit 启动之前被调用?最好提供一个显示此错误的项目的 GitHub 链接。 -
没有别的了。 1.在仅限 Objective-C 的项目中安装“AudioKit”。 2. 导入音频套件。 3. 定义“AKMicrophone、AKFrequencyTracker & AKBooster”的属性。 4.在viewDidAppear(:)中调用这个函数。