我正在尝试创建语音转文本功能,但出现错误:Initializer for conditional binding must have Optional type, not 'AVAudioInputNode'
guard let inputNode = audioEngine.inputNode else {
fatalError("Audio engine has no input node")
}
最佳答案
AVAudioEngine
的inputNode
属性不是可选的。首次访问inputNode时,音频引擎会按需创建单例。它不能为零,因此警卫没有道理。
因此,只需卸下防护罩并按原样使用audioEngine.inputNode
。它不能是nil
。
在使用inputNode
之前,您还必须确保已将其连接到某物:
检查输入节点的输入格式(特别是硬件
格式)以获取非零的采样率和通道数,以查看是否输入
已启用。
(摘自Apple文档)
关于xcode - (快速)用于条件绑定(bind)的初始化程序必须具有 optional 类型,而不是“AVAudioInputNode”,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/46392377/