Seite 1 von 1
Fehlermeldung
Verfasst: Mittwoch 28. Juli 2021, 14:18
von Bio Salami
Hi,
ich programmiere momentan einen Sprachasistenten und habe Probleme mit vorlegendem Skript:
Code: Alles auswählen
import speech_recognition as sr
import time
import pyttsx3
r= sr.Recognizer()
voice = pyttsx3.init()
voice.setProperty('rate', 130)
def record_audio():
with sr.Microphone() as source:
print("wait for order")
audio = r.listen(source, timeout=20, phrase_time_limit=4)
voice_data = ''
try:
print("send order to Server")
voice_data = r.recognize_google(audio, language="de-DE",)
print("order detected! " + voice_data)
except sr.UnknownValueError:
print("order not understood")
# bingo_speak("Endschuldige das habe ich nicht verstanden")
except sr.RequestError:
print("server not accessible")
bingo_speak("Meine Server sind gerade nicht erreichbar")
return voice_data
def bingo_speak(text):
print("say: " + text)
voice.say(text)
voice.runAndWait()
def respond(voice_data):
if 'Projekt' in voice_data:
exit()
time.sleep(1)
while 1:
voice_data = record_audio()
respond(voice_data)
Beim ausführen entstehen eine menge Fehlermeldungen mit denen ich nichts anfangen kann.
Meist wird angezeigt das ich einige APIs nicht importiert habe. Hilfe wäre nett
Re: Fehlermeldung
Verfasst: Mittwoch 28. Juli 2021, 16:13
von YAPD
Hi,
könntest du genauer beschreiben, welche Fehlermeldungen du erhältst, bzw. diese posten ?
Vielen Dank !
YAPD
Re: Fehlermeldung
Verfasst: Mittwoch 28. Juli 2021, 16:13
von rogerb
@Bio Salami,
Ich weiß zwar nicht welche Fehlermeldungen du bekommst, aber das SpeechRecognition Package scheint PyAudio zu benötigen.
Du kannst versuchen, es nach zu installieren. Bei mir hat das aber leider nicht funktioniert.
PyAudio wurde wohl nur bis Python 3.6 unterstützt.
Ist vielleicht besser, du suchst dir ein anderes Sprachpaket.
Re: Fehlermeldung
Verfasst: Mittwoch 28. Juli 2021, 16:22
von YAPD
Genau das angesprochene Problem hatte ich auch bei der Ausführung deines Codes !
Es kreidet auch die C++ Version an. Keine Ahnung, ob du das Problem auch hattest.
Viele Grüße
YAPD
Re: Fehlermeldung
Verfasst: Mittwoch 28. Juli 2021, 17:00
von YAPD
Hey BioSalami,
Also das mit der Unterstützung bis 3.6 scheint nicht richtig zu sein.
Folgende 2 Schritte und PyAudio wurde installiert

:
Ausgabe :
wait for order
send order to Server
order not understood
wait for order
send order to Server
order not understood
wait for order
send order to Server
order not understood
...
Hab gerade kein Mikro angeschlossen
VG
YAPD
Re: Fehlermeldung
Verfasst: Mittwoch 28. Juli 2021, 17:23
von __blackjack__
Vielleicht hat Google etwas an der API geändert. Klappt es eventuell mit einem anderen Backend?
Re: Fehlermeldung
Verfasst: Mittwoch 28. Juli 2021, 17:36
von rogerb
@YAPD,
Also das mit der Unterstützung bis 3.6 scheint nicht richtig zu sein.
Ähhh, naja. Also es ist schonmal gut dass es geklappt hat. Und das sollte auch so funktionieren, denke ich.
Ich hatte auch nach der Seite
https://www.lfd.uci.edu/~gohlke/pythonlibs/#pyaudio
gesucht, aber ehrlich gesagt nicht mehr gefunden.
Das letzte offizielle Release von pyAudio ist aber tatsächlich von 2017. Es mag auch sein dass es noch Seiten gibt, die inoffiziell Binaries für solche ausgelaufenen Pakete zur Verfügung stellen.
Es ist aber dann leider oft so dass es keinerlei Support mehr gibt und dass die Community sich schon neuen, moderneren Paketen zugewandt hat.
Re: Fehlermeldung
Verfasst: Donnerstag 5. August 2021, 12:32
von Bio Salami
Danke dass ihr alle so schnell Geantwortet habt. Mit den APIs habe ich keine Probleme und in einem Anderen Skript habe ich sie auch schon mehrfach genutzt. Meine Fehlermeldungen sehen so aus:
Code: Alles auswählen
PS C:\Users\Laurin\Documents\Sprachasistent\Skripte 2> py keyword.py
Traceback (most recent call last):
File "C:\Users\Laurin\Documents\Sprachasistent\Skripte 2\keyword.py", line 1, in <module>
import speech_recognition as sr
File "C:\Users\Laurin\AppData\Local\Programs\Python\Python39\lib\site-packages\speech_recognition\__init__.py", line 8, in <module> import subprocess
File "C:\Users\Laurin\AppData\Local\Programs\Python\Python39\lib\subprocess.py", line 49, in <module>
import signal
File "C:\Users\Laurin\AppData\Local\Programs\Python\Python39\lib\signal.py", line 3, in <module>
from functools import wraps as _wraps
File "C:\Users\Laurin\AppData\Local\Programs\Python\Python39\lib\functools.py", line 18, in <module>
from collections import namedtuple
File "C:\Users\Laurin\AppData\Local\Programs\Python\Python39\lib\collections\__init__.py", line 36, in <module>
from keyword import iskeyword as _iskeyword
File "C:\Users\Laurin\Documents\Sprachasistent\Skripte 2\keyword.py", line 3, in <module>
import pyttsx3
File "C:\Users\Laurin\AppData\Local\Programs\Python\Python39\lib\site-packages\pyttsx3\__init__.py", line 1, in <module>
from .engine import Engine
File "C:\Users\Laurin\AppData\Local\Programs\Python\Python39\lib\site-packages\pyttsx3\engine.py", line 1, in <module>
from . import driver
File "C:\Users\Laurin\AppData\Local\Programs\Python\Python39\lib\site-packages\pyttsx3\driver.py", line 2, in <module>
import traceback
File "C:\Users\Laurin\AppData\Local\Programs\Python\Python39\lib\traceback.py", line 5, in <module>
import linecache
File "C:\Users\Laurin\AppData\Local\Programs\Python\Python39\lib\linecache.py", line 11, in <module>
import tokenize
File "C:\Users\Laurin\AppData\Local\Programs\Python\Python39\lib\tokenize.py", line 32, in <module>
import re
File "C:\Users\Laurin\AppData\Local\Programs\Python\Python39\lib\re.py", line 315, in <module>
@functools.lru_cache(_MAXCACHE)
AttributeError: partially initialized module 'functools' has no attribute 'lru_cache' (most likely due to a circular import)
PS C:\Users\Laurin\Documents\Sprachasistent\Skripte 2>
Re: Fehlermeldung
Verfasst: Donnerstag 5. August 2021, 12:49
von YAPD
Hey Biosalami,
hast du die 2 von mir angesprochenen Befehle ausgeführt ?
Bei mir wurde anschließend das Programm korrekt ausgeführt, ohne
Fehlermeldungen. Sollte sich der Code wirklich auf das beschränken,
was du gepostet hast, muss der Fehler woanders liegen.
VG
YAPD
Re: Fehlermeldung
Verfasst: Donnerstag 5. August 2021, 13:13
von __blackjack__
@Bio Salami: Nenne Dein Modul mal nicht `keyword`, weil dass dann das `keyword`-Modul aus der Standardbibliothek verdeckt, was aber irgendwo indirekt von den Importen in Deinem Modul verwendet wird, und zu der gezeigten Ausnahme führt.
Re: Fehlermeldung
Verfasst: Donnerstag 5. August 2021, 17:23
von Bio Salami
__blackjack__ Danek das hat mir geholfen. Jetzt funktioniert alles!