python - 没有输出?(Python语音识别)
问题描述
我已经看过超过 5 年关于如何使用语音识别模块的教程,但是当我尝试它们时,我没有得到任何输出!
import speech_recognition as sr
root = sr.Recognizer()
with sr.Microphone() as source :
print('Listening:')
audio = root.listen(source)
text = root.recognize_google(audio)
print(text)
这是我的代码。它会打印Listening:
,但如果我与它交谈,则不会打印更多内容。我确定我的麦克风没问题,因为我测试了 Windows 默认语音识别并且它没有错误地工作。我还安装了所需的所有库,所以我认为这也不是什么大问题。
解决方案
我认为你应该给listen()
函数一个持续时间,以便识别器可以解析你的说法。
该
phrase_time_limit
参数是在停止和返回达到时间限制之前处理的短语部分之前允许短语继续的最大秒数。生成的音频将是在时间限制内截断的短语。- 基于官方文档
import speech_recognition as sr
root = sr.Recognizer()
with sr.Microphone(device_index=0) as source:
print("Speak:")
audio = root.listen(source, phrase_time_limit=5.0) # in seconds
# or you can try this ...
# audio = root.record(source, duration = 5.0)
print("You said " + root.recognize_google(audio))
推荐阅读
- gitlab - GitKraken 不允许我在 GitLab 上打开我的私人存储库
- regex - 有没有办法在固定条件的基础上对动态字符串进行分组
- html - 如何使用 Wix Iframe 将提交重定向到父窗口?
- javascript - 从数据库中填充选择框并添加重复行
- reactjs - 如何在 onclick 上进行调度和功能
- java - 获取 MismatchedInputException:在将 JSON 解析为结果对象时无法反序列化 Object 的实例
- php - 如何在 PHP 中合并选定的数组元素?
- mysql - 如何打破 While 循环 - 出现错误:语法错误:缺少“冒号”
- python - Cloud Firestore 中存储的数据值不正确
- r - 在 R 中的 ggplot 2 中使用更多数据帧