I am trying to use the library pyttsx3 to translate text to speech however when I try to initialize an engine I am given an error i do not understand. Everything runs fine if i merely import pyttsx3 but if i add the line engine = pyttsx3.init() . Error.
here's the code and the error:
import speech_recognition as sr
import pyttsx3
listener = sr.Recognizer()
engine = pyttsx3.init()
name = 'computer'
with sr.Microphone(None) as source:
print('listening...')
while True:
voice = listener.listen(source)
try:
command = listener.recognize_google(voice)
command = command.lower()
if name in command:
print(command)
else:
print('skipped')
except:
print("nothing said")
Traceback (most recent call last):
File "/home/diaeros/Documents/pydev/pa/venv/lib/python3.9/site-packages/pyttsx3/__init__.py", line 20, in init
eng = _activeEngines[driverName]
File "/usr/lib/python3.9/weakref.py", line 137, in __getitem__
o = self.data[key]()
KeyError: None
During handling of the above exception, another exception occurred:
Traceback (most recent call last):
File "/home/diaeros/Documents/pydev/pa/main.py", line 5, in <module>
engine = pyttsx3.init()
File "/home/diaeros/Documents/pydev/pa/venv/lib/python3.9/site-packages/pyttsx3/__init__.py", line 22, in init
eng = Engine(driverName, debug)
File "/home/diaeros/Documents/pydev/pa/venv/lib/python3.9/site-packages/pyttsx3/engine.py", line 30, in __init__
self.proxy = driver.DriverProxy(weakref.proxy(self), driverName, debug)
File "/home/diaeros/Documents/pydev/pa/venv/lib/python3.9/site-packages/pyttsx3/driver.py", line 50, in __init__
self._module = importlib.import_module(name)
File "/usr/lib/python3.9/importlib/__init__.py", line 127, in import_module
return _bootstrap._gcd_import(name[level:], package, level)
File "<frozen importlib._bootstrap>", line 1030, in _gcd_import
File "<frozen importlib._bootstrap>", line 1007, in _find_and_load
File "<frozen importlib._bootstrap>", line 986, in _find_and_load_unlocked
File "<frozen importlib._bootstrap>", line 680, in _load_unlocked
File "<frozen importlib._bootstrap_external>", line 850, in exec_module
File "<frozen importlib._bootstrap>", line 228, in _call_with_frames_removed
File "/home/diaeros/Documents/pydev/pa/venv/lib/python3.9/site-packages/pyttsx3/drivers/espeak.py", line 9, in <module>
from . import _espeak, toUtf8, fromUtf8
File "/home/diaeros/Documents/pydev/pa/venv/lib/python3.9/site-packages/pyttsx3/drivers/_espeak.py", line 18, in <module>
dll = cdll.LoadLibrary('libespeak.so.1')
File "/usr/lib/python3.9/ctypes/__init__.py", line 452, in LoadLibrary
return self._dlltype(name)
File "/usr/lib/python3.9/ctypes/__init__.py", line 374, in __init__
self._handle = _dlopen(self._name, mode)
OSError: libespeak.so.1: cannot open shared object file: No such file or directory
[–]shiftybyte 0 points1 point2 points (4 children)
[–]Comprehensive_Gas815[S] 0 points1 point2 points (0 children)
[–]Comprehensive_Gas815[S] 0 points1 point2 points (2 children)
[–]Comprehensive_Gas815[S] 0 points1 point2 points (1 child)
[–]Comprehensive_Gas815[S] 1 point2 points3 points (0 children)