Ich versuche eine Python-App zu erstellen, die Audio aufnehmen und mit PyAudio, SpeechRecognition und PocketSphinx in englischen Text übersetzen kann. Ich laufe auf einem Mac OS X El Capitan, Version 10.11.2.Python pocketsphinx RequestError: fehlendes PocketSphinx-Modul: stelle sicher, dass PocketSphinx korrekt eingerichtet ist
Nach einem Tutorial wie this one und anderen, habe ich PyAudio Version 0.2.9, SpeechRecognition sowie PocketSphinx heruntergeladen. Ich habe sie in einer Conda-Umgebung installiert. Ich habe die Anweisungen von diesem site befolgt, um brew install swig git python
auf meinem OS X zu verwenden, hoffend, dass es helfen würde.
Dies ist mein Code:
# Load packages
import speech_recognition as sr
import sphinxbase
import pocketsphinx
# obtain audio from the microphone
r = sr.Recognizer()
with sr.Microphone() as source:
print("Say something!")
audio = r.listen(source)
# write audio to a WAV file
with open("microphone-results.wav", "wb") as f:
f.write(audio.get_wav_data())
Bisher Dinge funktionieren groß. Ich kann meine WAV-Datei problemlos aufnehmen und abspielen. Aber hier ist, wo die Dinge schief gehen ...
r = sr.Recognizer()
with sr.AudioFile('microphone-results.wav') as source:
audio = r.record(source) # read the entire audio file
try:
print("You said " + r.recognize_sphinx(audio))
except LookupError: # speech is unintelligible
print("Could not understand audio")
Wenn ich diesen Code ausführen, erhalte ich: RequestError: missing PocketSphinx module: ensure that PocketSphinx is set up correctly.
habe ich installiert und pocket Sphinxbase sowohl global als auch in virtuellen Conda ENVs, aber ohne Erfolg. Die Dokumentation zu diesem Fehler in Google/SO-Posts ist nahe bei null, also bin ich mir nicht sicher, was passiert. Jede Hilfe/Beratung würde sehr geschätzt werden. Hier
ist eine Liste meiner installierten Pakete und deren Versionen für meine Conda virtuellen Umgebung:
# packages in environment at /Users/nathancheever/anaconda/envs/audio_2:
#
appnope 0.1.0 py27_0
backports-abc 0.4 <pip>
backports.ssl-match-hostname 3.4.0.2 <pip>
backports_abc 0.4 py27_0
decorator 4.0.9 py27_0
freetype 2.5.5 0
ipykernel 4.3.1 py27_0
ipython 4.1.2 py27_2
ipython-genutils 0.1.0 <pip>
ipython_genutils 0.1.0 py27_0
ipywidgets 4.1.1 py27_0
jinja2 2.8 py27_0
jsonschema 2.4.0 py27_0
jupyter 1.0.0 py27_2
jupyter-client 4.2.2 <pip>
jupyter-console 4.1.1 <pip>
jupyter-core 4.1.0 <pip>
jupyter_client 4.2.2 py27_0
jupyter_console 4.1.1 py27_0
jupyter_core 4.1.0 py27_0
libpng 1.6.17 0
markupsafe 0.23 py27_0
mistune 0.7.2 py27_1
nbconvert 4.1.0 py27_0
nbformat 4.0.1 py27_0
notebook 4.1.0 py27_2
openssl 1.0.2g 0
path.py 8.1.2 py27_1
pexpect 4.0.1 py27_0
pickleshare 0.5 py27_0
pip 8.1.1 py27_1
ptyprocess 0.5 py27_0
pyaudio 0.2.9 <pip>
pygments 2.1.3 py27_0
pyqt 4.11.4 py27_1
python 2.7.11 0
pyzmq 15.2.0 py27_0
qt 4.8.7 1
qtconsole 4.2.1 py27_0
readline 6.2 2
setuptools 20.6.7 py27_0
simplegeneric 0.8.1 py27_0
singledispatch 3.4.0.3 py27_0
sip 4.16.9 py27_0
six 1.10.0 py27_0
speechrecognition 3.4.2 <pip>
sphinxbase 0.8 <pip>
sqlite 3.9.2 0
ssl_match_hostname 3.4.0.2 py27_0
terminado 0.5 py27_1
tk 8.5.18 0
tornado 4.3 py27_0
traitlets 4.2.1 py27_0
wheel 0.29.0 py27_0
zlib 1.2.8 0
Nachricht sagt alles, du alte sphinxbase entfernen müssen und pocket Paket installieren. –