1
我用AVAudioEngine来录制用户说话,我想实现当用户暂停或停止说话超过X秒时,会播放刚才录制的句子。如何在使用AVAudioEngine录制麦克风时检测到用户停止通话?
但是我怎么能在录音过程中检测到这种说话的停顿?在AVAudioEngine中找不到有用的API,有什么想法帮助我?
我用AVAudioEngine来录制用户说话,我想实现当用户暂停或停止说话超过X秒时,会播放刚才录制的句子。如何在使用AVAudioEngine录制麦克风时检测到用户停止通话?
但是我怎么能在录音过程中检测到这种说话的停顿?在AVAudioEngine中找不到有用的API,有什么想法帮助我?
你可以在里面
private let speechRecognizer = SFSpeechRecognizer(locale: Locale.init(identifier: "en-US"))! speechRecognizer.recognitionTask(with: recognitionRequest, resultHandler: { (result, error) in
}) 块设置定时器。 在调用speechRecognizer.recognitionTask
时设置开始时间,并在每个后续请求内部定时器后检查当前时间与开始时间之间的差异。如果差异高于X秒,则执行任何您想要的操作。