Python语音识别非常慢

时间:2019-02-02 10:33:57

标签: python python-3.x speech-recognition

我目前正在开发一个智能助手程序(基本上是刚听用户说的话,并基于该做一些事的代码)。直到今天,当我切换到笔记本电脑时,它的工作情况都还不错。该程序不会打印出任何错误,但它也不会打印出我说的话。我正在使用Python Speech Recognition库版本3.8.1。有人知道该库的替代方法吗?如果是,请尝试说明如何“即时”使用它(无需先记录文件,然后再将其发送到服务器,更像是实时语音)。

编辑:我忘了说它在后,我使用Python 3

编辑:这是代码:

#!/usr/bin/env python3

import speech_recognition as sr


global x


def speech():

    try:
        with sr.Microphone() as source:
            global x
            r = sr.Recognizer()
            audio = r.listen(source)
            x = r.recognize_google(audio)
    except sr.UnknownValueError:
        print("No clue what you said, listening again... \n")
        speech()


if __name__ == '__main__':
    print('Listening and printing what I heard: \n')
    speech()
    print(x)

3 个答案:

答案 0 :(得分:0)

我发现问题出在笔记本电脑的麦克风上。插入“蓝色雪球”后,语音识别效果很好。我进入pavucontrol并在 recording 标签下选择Blue Snowball,迫使程序使用Blue Snowball。

答案 1 :(得分:0)

另一个原因可能是您的麦克风电平过高或过低, 在这两种情况下,speech_recognition 都会得到太少的音频或太多的音频。看看你的系统设置。对我有帮助,希望对你有帮助。

答案 2 :(得分:-2)

将语音识别导入为 sr

全局 x

定义语音():

try:
    with sr.Microphone() as source:
        global x
        r = sr.Recognizer()
        audio = r.listen(source)
        x = r.recognize_google(audio)
except sr.UnknownValueError:
    print("No clue what you said, listening again... \n")
    speech()

在此处输入代码

if name == 'ma​​in': 打印('听并打印enter code here我听到的:\n') 演讲() 打印(x)enter code here