ios AVAudioEngine和AVAudioPlayer. setVoiceProcessingEnabled低音量输出

70gysomp  于 11个月前  发布在  iOS
关注(0)|答案(1)|浏览(152)

正如标题所示,我使用AVAudioEngine进行SF语音识别输入,AVAudioPlayer进行声音输出。
苹果在这个talk中说,setVoiceProcessingEnabled函数非常有用地取消了从扬声器到麦克风的输出。我在AVAudioInputNode和AVAudioOutputNode上设置了VoiceProcessing。
当运行xcode时,speechonnitionEnabled:YES抛出以下错误:

throwing 18,446,744,073,709,551,615
  from AU (0x13bf98dd0): auou/vpio/appl, render err: 18,446,744,073,709,551,615

字符串
设置节点时没有错误,即使系统音量打开,但音量很低,它似乎也能正常工作。对此,任何解决方案都将非常感谢。
我尝试了各种AVAudioEngine节点设置。一个设置有混音器节点,一个没有。我希望音频水平与系统音量相结合。

wtzytmuj

wtzytmuj1#

是否在输入和输出节点上启用了语音处理?
以下是我尝试过的,它起作用了(有点):

audioInputNode=engine.inputNode 
    audioInputNode.volume=0
    do{
        try audioInputNode.setVoiceProcessingEnabled(true)
    }
    catch{
        print("Could not enable voice processing in audioinputnode")
    }
    let outputNode = engine.outputNode
    do{
        try outputNode.setVoiceProcessingEnabled(true)
    }
    catch{
        print("Could not enable voice processing in output")
    }

字符串
我说工作“有点”,因为当我记录麦克风输入,从扬声器的声音肯定是抵消了,但麦克风音频记录到一个文件是有点波涛汹涌

相关问题