首页 > 解决方案 > Python语音识别

问题描述

当我运行此代码并说出脚本时返回空列表:

import pyaudio
import pyttsx3
import os
import pyautogui
import speech_recognition as sr
def command():
    r = sr.Recognizer()
    mic = sr.Microphone()
    recog = sr.Recognizer()
    with mic as u_audio:
        print('Speak please')
        r.adjust_for_ambient_noise(u_audio)
        voice = r.listen(u_audio)
    try:
        listening = recog.recognize_google(voice, language = 'en-EN', show_all = True)
        print(listening)
    except Exception as e:
        print('I not understand' + str(e))
        command()

command()

输出:请说 [ ] 我不明白,为什么列表是空的。也许我应该选择麦克风索引。

标签: pythonwindows

解决方案


麦克风是问题

问题可能出在麦克风上,因为我运行了相同的代码,它确实给出了输出,它给出了演讲的所有可能结果。

总之,效率不高。不需要的库会减慢它的速度,这是更新的代码:

import pyttsx3
import speech_recognition as sr

def command():
    r = sr.Recognizer()
    mic = sr.Microphone()
    recog = sr.Recognizer()

    with mic as u_audio:
        r.adjust_for_ambient_noise(u_audio)
        print('Speak please')
        voice = r.listen(u_audio)
    try:
        listening = recog.recognize_google(voice, language = 'en-EN', show_all = True)
        print(listening)

    except Exception as e:
        print('I not understand' + str(e))
        command()

command()

评论结果!


推荐阅读