New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Segfault on Ubuntu 10.10, 11.04 #3
Comments
Same problem in Ubuntu 11.04. Would be nice the have this patched and feed into pypi |
Forgot this was open. Will merge fix soon. |
the posted fix did not work on my Ubuntu 11.04 |
@rodrigob the fix I just committed seems to get pyttsx working for me on Natty. Let me know if it works for you. I do get a large batch of ALSA/Jack errors when espeak initializes, but it happens whether I'm using pyttsx or the espeak command line program directly. I think it's a consequence of running in VMWare Fusion. |
the test now runs fine on my Natty machine. Thanks for the fix !
|
Can you upload this fixed version to PyPi? |
Same problem on debian 6. |
v1.1 with this fix pushed to pypi (finally). |
Hi!
|
Situation:
Cause:
In pyttsx/drivers/espeak.py, in init(), self.getProperty('voice') results in a call to GetCurrentVoice() in _espeak.py, which calls espeak_GetCurrentVoice() in libespeak.so.1. libespeak is returning a valid result with an empty name. EspeakDriver._defaultVoice gets set to None. A subsequent call to self.setProperty() references the None value, and causes a segmentation fault.
Possible solution:
I know nothing of espeak or its API. Mine works, but does not return a 'current voice'. This solved the problem on my machine:
Replace line 37 of espeak.py:
With this block:
This just defaults to english if espeak doesn't return a voice. Text-to-speech works as expected after this modification.
Version information:
Ubuntu Server 10.10
Python 2.7
pyttsx-1.0
libespeak1 version 1.44.05~really-1.44.04-0ubuntu1
The text was updated successfully, but these errors were encountered: