簡體   English   中英

語音識別出錯 python

[英]Getting error with speech recognition python

import SpeechRecognition as sp

def takeCommand():
    r = sp.Recognizer()
    with sp.Microphone() as source:
        print("Listening....")
        r.pause_threshold = 1
        audio = r.listen(source)
    try:
        print("Recognising...")
        query = r.recognize_google(audio,language="en-in")
        print(query)
    except Exception as e:
        print(e)
        speak("say that again please")
        return None

    return query
takeCommand()'''

這是返回錯誤,例如

'''

/usr/bin/python3 /home/shanu/Documents/Pygame/Sierra_AI_Assistant/sierra.py
ALSA lib pcm_dmix.c:1089:(snd_pcm_dmix_open) unable to open slave
aplay: main:830: audio open error: Device or resource busy
ALSA lib pcm_dmix.c:1089:(snd_pcm_dmix_open) unable to open slave
aplay: main:830: audio open error: Device or resource busy
ALSA lib pcm_dmix.c:1089:(snd_pcm_dmix_open) unable to open slave
aplay: main:830: audio open error: Device or resource busy
ALSA lib pcm_dmix.c:1089:(snd_pcm_dmix_open) unable to open slave
aplay: main:830: audio open error: Device or resource busy
ALSA lib pcm_dmix.c:1089:(snd_pcm_dmix_open) unable to open slave
aplay: main:830: audio open error: Device or resource busy
ALSA lib pcm_dmix.c:1089:(snd_pcm_dmix_open) unable to open slave
ALSA lib pcm.c:2642:(snd_pcm_open_noupdate) Unknown PCM cards.pcm.rear
ALSA lib pcm.c:2642:(snd_pcm_open_noupdate) Unknown PCM cards.pcm.center_lfe
ALSA lib pcm.c:2642:(snd_pcm_open_noupdate) Unknown PCM cards.pcm.side
ALSA lib pcm_route.c:869:(find_matching_chmap) Found no matching channel map
ALSA lib pcm_oss.c:377:(_snd_pcm_oss_open) Unknown field port
ALSA lib pcm_oss.c:377:(_snd_pcm_oss_open) Unknown field port
ALSA lib pulse.c:242:(pulse_connect) PulseAudio: Unable to connect: Connection refused

ALSA lib pulse.c:242:(pulse_connect) PulseAudio: Unable to connect: Connection refused

ALSA lib pcm_usb_stream.c:486

    :(_snd_pcm_usb_stream_open) Invalid type for card
    ALSA lib pcm_usb_stream.c:486:(_snd_pcm_usb_stream_open) Invalid type for card
    ALSA lib pcm_dmix.c:1089:(snd_pcm_dmix_open) unable to open slave
    ALSA lib pcm_dmix.c:1089:(snd_pcm_dmix_open) unable to open slave
    Listening....
    python3: src/hostapi/alsa/pa_linux_alsa.c:3641: PaAlsaStreamComponent_BeginPolling: Assertion `ret == self->nfds' failed.

我安裝了正確的庫,還嘗試理解 pyaudio 等任何東西來擺脫這個,昨天我在 pysttx3 上遇到了同樣的事情,但它通過重新啟動筆記本電腦得到了解決,但這不起作用。

您的代碼應如下所示:

import speechRecognition as sr

def takeCommand():
    r = sr.Recognizer()
    with sr.Microphone() as source:
       print("Listening...")
       r.pause_threshold = 1
       audio = r.listen(source)
    try:
       print("Recognizing...")    
       query = r.recognize_google(audio, language='en-in') #Using google for voice recognition.
       print(f"User said: {query}\n")  #User query will be printed.

    except Exception as e:
       # print(e)    
       print("Say that again please...")   #Say that again will be printed in case of improper voice 
       return "None" #None string will be returned
    return query

首先,通過在終端中輸入以下內容來導入庫 -

pip install speechRecognition

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM