首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >Python speech_recognition pyaudio错误

Python speech_recognition pyaudio错误
EN

Stack Overflow用户
提问于 2018-08-07 21:18:18
回答 2查看 1.6K关注 0票数 0

我正在编写一段python代码来检测我的麦克风,但是speech_recognition无法检测我的输入设备。

代码语言:javascript
复制
import speech_recognition as sr
mic_index = 11
    for index, name in enumerate(sr.Microphone.list_microphone_names()):
        if("USB Device" in name):
            mic_index = index
            break

但它给了我错误。因此,我通过运行命令python -m speech_recognition检查了我的Speech Recognition模块,得到了以下错误:

代码语言:javascript
复制
Traceback (most recent call last):

File "/home/arqam/anaconda3/lib/python3.6/runpy.py", line 193, in _run_module_as_main
    "__main__", mod_spec)
  File "/home/arqam/anaconda3/lib/python3.6/runpy.py", line 85, in _run_code
    exec(code, run_globals)
  File "/home/arqam/anaconda3/lib/python3.6/site-packages/speech_recognition/__main__.py", line 4, in <module>
    m = sr.Microphone()
  File "/home/arqam/anaconda3/lib/python3.6/site-packages/speech_recognition/__init__.py", line 86, in __init__
    device_info = audio.get_device_info_by_index(device_index) if device_index is not None else audio.get_default_input_device_info()
  File "/home/arqam/anaconda3/lib/python3.6/site-packages/pyaudio.py", line 949, in get_default_input_device_info
    device_index = pa.get_default_input_device()
OSError: No Default Input Device Available

我检查了IO设备编号和pyAudio文件位置,它给出了以下位置:

代码语言:javascript
复制
>>> pa.get_device_count()
0
>>> pyaudio.pa.__file__
'/home/arqam/anaconda3/lib/python3.6/site-packages/_portaudio.cpython-36m-x86_64-linux-gnu.so'

我已经看过所有堆栈溢出的答案,花了一整天的时间来解决这个问题,但仍然找不到答案。

EN

回答 2

Stack Overflow用户

发布于 2022-02-10 07:28:35

我也得到了同样的错误。您的语音识别模块可能未正确下载。要解决这个问题,你应该在Google上搜索“非官方Python二进制文件”。单击第一个链接。您将看到一个包含大量python模块.wheel文件的网页。使用'ctrl+f‘查找pyaudio链接。点击它,你会看到一堆pyaudio文件。然后,您需要找到支持您的python版本的轮子文件。安装它。然后打开保存该控制盘文件的文件夹。在那里打开powershell或cmd窗口,并写入pip install (轮子文件的名称)。然后你的pyaudio就会被下载,它应该开始工作了!

票数 0
EN

Stack Overflow用户

发布于 2018-11-03 22:24:03

下面的例子为我解决了这个问题。

使用Anaconda:

安装pyaudiospeechrecognition

此外,确保您的麦克风是激活的,并检查您的音频输入设备。

使用这个简单的代码:

代码语言:javascript
复制
import speech_recognition as sr

# obtain audio from the microphone r = sr.Recognizer() with sr.Microphone() as source:
    print("Say something!")
    audio = r.listen(source)
    enter code here
    try:
        text = r.recognize_google(audio)
        print('You said: {}'.format(text))
    except:
        print('Sorry google could not recognize your voice')
票数 -1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/51727805

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档