Ios &引用;AudioKit v5主版本“;与麦克风音高抽头相撞
我使用“AudioKit v5 main”来实现录制功能。 录音功能工作正常,但当我试图点击麦克风的输入时,它崩溃了 代码是:Ios &引用;AudioKit v5主版本“;与麦克风音高抽头相撞,ios,swift,audiokit,Ios,Swift,Audiokit,我使用“AudioKit v5 main”来实现录制功能。 录音功能工作正常,但当我试图点击麦克风的输入时,它崩溃了 代码是: class ViewController: UIViewController { let engine = AudioEngine() var silence: Fader! var boostMic: Fader! var tracker: PitchTap! var recorder: NodeRecorder! v
class ViewController: UIViewController {
let engine = AudioEngine()
var silence: Fader!
var boostMic: Fader!
var tracker: PitchTap!
var recorder: NodeRecorder!
var player = AudioPlayer()
var mixer = Mixer()
override func viewDidLoad() {
super.viewDidLoad()
guard let mic = engine.input else {
debugPrint("error")
return
}
boostMic = Fader(mic, gain: 5)
tracker = PitchTap(boostMic, handler: { (pitch, amp) in
DispatchQueue.main.async {
debugPrint("amp: \(amp.first!.description)")
}
})
do {
recorder = try NodeRecorder(node: boostMic)
} catch {
debugPrint(error.localizedDescription)
}
silence = Fader(boostMic, gain: 0)
mixer.addInput(silence)
mixer.addInput(player)
engine.output = mixer
Settings.audioInputEnabled = true
do {
try engine.start()
tracker.start()
NodeRecorder.removeTempFiles()
try recorder.record()
} catch {
debugPrint(error.localizedDescription)
}
}
}
崩溃期间输出的错误有:
[avae] AVAEInternal.h:76 required condition is false: [AVAEGraphNode.mm:817:CreateRecordingTap: (nullptr == Tap())]
*** Terminating app due to uncaught exception 'com.apple.coreaudio.avfaudio', reason: 'required condition is false: nullptr == Tap()'
开发环境如下:
macOS 10.15.7
代码12.2(12B45b)
AudioKit v5主分支
使用实际的iPhoneX进行测试
有没有办法避免崩溃?我通过修改AudioKit框架解决了这个问题。我通过修改AudioKit框架解决了这个问题