Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

python text to speech using pyttsx

I want to use my raspberry pi to announce some text. i have installed pyttsx but not able to use it.i am using python2.7

my program:

import pyttsx engine= pyttsx.init() engine.setProperty('rate',70) voices=engine.getProperty('voices') for voice in voices:     print "Using voice:", repr(voice)     engine.setProperty('voice',voice.id)     engine.say("Hello Hello Hello") engine.runAndWait() 

but i am getting this error:

Traceback (most recent call last): File "/home/pi/announce.py", line 2, in <module> engine= pyttsx.init() File "/usr/local/lib/python2.7/dist-packages/pyttsx-1.1-     py2.7.egg/pyttsx/__init__.py", line 39, in init eng = Engine(driverName, debug) File "/usr/local/lib/python2.7/dist-packages/pyttsx-1.1- py2.7.egg/pyttsx/engine.py", line 45, in __init__  self.proxy = driver.DriverProxy(weakref.proxy(self), driverName, debug)  File "/usr/local/lib/python2.7/dist-packages/pyttsx-1.1-p   y2.7.egg/pyttsx/driver.py", line 64, in __init__   self._module = __import__(name, globals(), locals(), [driverName])   File "/usr/local/lib/python2.7/dist-packages/pyttsx-1.1-py2.7.egg/pyttsx/drivers/espeak.py", line 19, in <module>    import _espeak    File "/usr/local/lib/python2.7/dist-packages/pyttsx-1.1-py2.7.egg/pyttsx/drivers/_espeak.py", line 24, in <module>    dll = cdll.LoadLibrary('libespeak.so.1')    File "/usr/lib/python2.7/ctypes/__init__.py", line 443, in LoadLibrary     return self._dlltype(name)    File "/usr/lib/python2.7/ctypes/__init__.py", line 365, in __init__    self._handle = _dlopen(self._name, mode) OSError: libespeak.so.1: cannot open shared object file: No such file or directory 
like image 571
user007 Avatar asked Sep 10 '15 10:09

user007


People also ask

What is Pyttsx in Python?

pyttsx is a Python package supporting common text-to-speech engines on Mac OS X, Windows, and Linux.

Which is best gTTS or pyttsx3?

Try to use pyttsx3 2.5, according the documentation: gTTS which works perfectly in python3 but it needs internet connection to work since it relies on google to get the audio data. But Pyttsx is completely offline and works seemlesly and has multiple tts-engine support.

What is import pyttsx3 in Python?

pyttsx3 is a text-to-speech conversion library in Python. Unlike alternative libraries, it works offline and is compatible with both Python 2 and 3. An application invokes the pyttsx3. init() factory function to get a reference to a pyttsx3. Engine instance.


1 Answers

It's because you don't have espeak installed on your system. That's why it is giving error

libespeak.so.1 error: no such file or directory found.

Try to install espeak using:

sudo apt-get update && sudo apt-get install espeak 
like image 75
ashutosh benni Avatar answered Sep 17 '22 15:09

ashutosh benni