AudioKit - 无法让 AKClipRecorder 工作

AudioKit - can't get AKClipRecorder working

我正在尝试实现录制某些东西(麦克风或振荡器或任何其他输入)的能力,我需要它在录制完成后立即执行回调方面尽可能准确,所以我想ClipRecorder 可以在这里帮助我。这段代码进入一个简单的视图控制器的 viewDidLoad 函数,代码执行并到达结尾,但剪辑记录器的回调从未执行。

你能告诉我我做错了什么吗?我对 AudioKit 很陌生,所以这可能是我对事物的误解。这是代码:

AKSettings.bufferLength = .shortest
AKSettings.defaultToSpeaker = true
try! AKSettings.setSession(category: .playAndRecord)

let oscillator = AKOscillator()
let oscMixer = AKMixer(oscillator)
AudioKit.output = oscMixer
AudioKit.start()

oscillator.start()

let clipRecorder = AKClipRecorder(node: oscMixer)

do{
    AKLog("1")
    try clipRecorder.recordClip(time: 0, duration: 2, tap: nil, completion: { url, something, err in
        AKLog("recorded clip")
        oscillator.stop()
    })
    AKLog("2")
} catch let error as ClipRecordingError {
    print("\(String(describing: error.errorDescription))")
} catch {
    print("something general")
}

打印日志 1,2,'recorded clip' 不打印。

非常感谢!

您必须致电 clipRecorder.play() 或 clipRecorder.play(at:)。