【问题标题】:Python speech recognition very slowPython语音识别很慢
【发布时间】:2019-02-02 10:33:57
【问题描述】:

我目前正在开发一个智能助手程序(基本上它只是听用户说什么,并在此基础上对代码做一些事情)。直到今天,当我切换到笔记本电脑时,它都可以正常工作。该程序不会打印出任何错误,但也不会打印出我所说的内容。我正在使用 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)

【问题讨论】:

  • 你说你改用笔记本电脑了?与其他运行速度很快的机器相比,它有可能成为遗物吗?你确定你的音频输入在这台笔记本电脑上工作并且 Python 可以访问声源吗?
  • 嗯,这台机器没什么好吹嘘的,但我认为这不是问题,因为它的工作只是录制和发送音频。我已经大胆地检查了我的麦克风,但我不确定如何检查 Python 是否可以访问。
  • 根据您的操作系统,pavucontrol 可以在 recording 选项卡下显示 Python 在录制时使用的设备。这假设您正在运行 PulseAudio 作为声源的主要驱动程序。此外,如果机器比 2000 年新,它应该不是问题。较旧的 CPU 可能很难跟上处理、记录和处理数据的速度。但事实并非如此。
  • 顺便说一句,您使用哪个 API 来进行处理?
  • 我使用google的speech API进行语音检测,我将代码贴在问题中。

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


【解决方案1】:

我发现问题出在笔记本电脑的麦克风上。插入 Blue Snowball 后,语音识别运行良好。我通过进入 pavucontrol 并在 recording 选项卡下选择 Blue Snowball 来强制程序使用 Blue Snowball。

【讨论】:

  • 如果您对结果感到满意,请确保您接受自己的答案。
  • 是的,我会的,只是要等待 18 小时的延迟。
【解决方案2】:

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

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2021-07-15
    • 1970-01-01
    • 2022-12-11
    • 2021-07-04
    • 2021-11-21
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多