【发布时间】:2017-02-27 06:42:09
【问题描述】:
我使用AVAudioEngine记录用户说话,我想实现当用户暂停或停止说话超过X秒时,将播放刚刚录制的句子。
但是如何在录制过程中检测到这种谈话暂停?还没有在 AVAudioEngine 中找到有用的 API,有什么想法可以帮助我吗?
【问题讨论】:
标签: ios audio-recording avaudioengine
我使用AVAudioEngine记录用户说话,我想实现当用户暂停或停止说话超过X秒时,将播放刚刚录制的句子。
但是如何在录制过程中检测到这种谈话暂停?还没有在 AVAudioEngine 中找到有用的 API,有什么想法可以帮助我吗?
【问题讨论】:
标签: ios audio-recording avaudioengine
你可以在里面设置定时器
private let speechRecognizer = SFSpeechRecognizer(locale: Locale.init(identifier: "en-US"))! speechRecognizer.recognitionTask(with: recognitionRequest, resultHandler: { (result, error) in
})
堵塞。
在调用speechRecognizer.recognitionTask 时设置开始时间,并在计时器内的每个后续请求后检查当前时间与开始时间之间的差值。如果差值高于 X 秒,则随心所欲。
【讨论】: