【问题标题】:pause SFSpeechRecognizer on button click在按钮单击时暂停 SFSpeechRecognizer
【发布时间】:2020-06-10 12:53:09
【问题描述】:

您好,我正在创建Call Recording App,我正在使用AVAduioPlayer 通过应用程序播放录音,并将音频转录为文本使用SFSpeechRecognizer 下面是我用于播放音频并使用以下代码转录的代码

func requestSpeectAuth(){
        SFSpeechRecognizer.requestAuthorization { authStatus in
            if authStatus == SFSpeechRecognizerAuthorizationStatus.authorized{
                if let path = Bundle.main.url(forResource: "audio", withExtension: "m4a"){
                    print(path)
                    do {
                        let sound = try AVAudioPlayer(contentsOf: path)
                        self.audiPlayer = sound
                        sound.play()
                    } catch {
                        print("Error")
                    }
                    let reconizer = SFSpeechRecognizer()
                    let request = SFSpeechURLRecognitionRequest(url: path)
                    self.recpnizer?.recognitionTask(with: request){ (result,error) in
                        if let error = error{
                            print(error.localizedDescription)
                        }else{
                            print(result?.bestTranscription.formattedString)
                            self.txtView.text = result?.bestTranscription.formattedString
                        }
                    }
                }
            }
        }
    }

我成功地做到了,但是现在当我当时暂停音频时,我需要停止转录有什么方法可以在按钮单击时停止 SFSpeechRecognizer 然后请帮助我

【问题讨论】:

    标签: ios swift sfspeechrecognizer


    【解决方案1】:

    当您调用 installTap 时,会有一个块让您将音频缓冲区附加到识别请求,只是在您要暂停时不要将音频附加到缓冲区。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2016-05-07
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2015-05-24
      相关资源
      最近更新 更多