问题描述: 当使用AudioKit的NodeRecorder录制音频时,可能会遇到以下错误消息: "AudioKit NodeRecorder failed to capture audio: file read returned zero frames."
解决方法: 这个错误通常是由于录制音频的节点没有正确配置导致的。以下是一些可能的解决方法:
import AudioKit
// 初始化AudioKit
AudioKit.initialize()
// 设置输入和输出
let input = AKMicrophone()
let output = AKMixer(input)
// 启动AudioKit引擎
try AudioKit.start()
import AudioKit
// 设置录制节点
let recorder = try AKNodeRecorder(node: input)
// 添加录制节点到AudioKit引擎
try AudioKit.engine.attach(recorder)
// 连接录制节点到输出
try AudioKit.engine.connect(input, to: recorder, format: nil)
try AudioKit.engine.connect(recorder, to: output, format: nil)
import AudioKit
// 启动录制节点
try recorder.record()
import AudioKit
// 停止录制节点
recorder.stop()
通过检查并确保正确设置录制节点和路由,您应该能够解决这个问题并成功录制音频。