Skip to content
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

save_to_file doesn't work when using dummy driver #199

Open
P4RZ1V4L-93 opened this issue Jul 14, 2021 · 3 comments
Open

save_to_file doesn't work when using dummy driver #199

P4RZ1V4L-93 opened this issue Jul 14, 2021 · 3 comments
Labels

Comments

@P4RZ1V4L-93
Copy link

P4RZ1V4L-93 commented Jul 14, 2021

I'm trying to run pyttsx in replit.com and when using engine = pyttsx.init() it gives

Traceback (most recent call last):
  File "/opt/virtualenvs/python3/lib/python3.8/site-packages/pyttsx3/__init__.py", line 20, in init
    eng = _activeEngines[driverName]
  File "/usr/lib/python3.8/weakref.py", line 131, in __getitem__
    o = self.data[key]()
KeyError: None

During handling of the above exception, another exception occurred:

Traceback (most recent call last):
  File "main.py", line 7, in <module>
    engine = pyttsx3.init()
  File "/opt/virtualenvs/python3/lib/python3.8/site-packages/pyttsx3/__init__.py", line 22, in init
    eng = Engine(driverName, debug)
  File "/opt/virtualenvs/python3/lib/python3.8/site-packages/pyttsx3/engine.py", line 30, in __init__
    self.proxy = driver.DriverProxy(weakref.proxy(self), driverName, debug)
  File "/opt/virtualenvs/python3/lib/python3.8/site-packages/pyttsx3/driver.py", line 50, in __init__
    self._module = importlib.import_module(name)
  File "/usr/lib/python3.8/importlib/__init__.py", line 127, in import_module
    return _bootstrap._gcd_import(name[level:], package, level)
  File "<frozen importlib._bootstrap>", line 1014, in _gcd_import
  File "<frozen importlib._bootstrap>", line 991, in _find_and_load
  File "<frozen importlib._bootstrap>", line 975, in _find_and_load_unlocked
  File "<frozen importlib._bootstrap>", line 671, in _load_unlocked
  File "<frozen importlib._bootstrap_external>", line 848, in exec_module
  File "<frozen importlib._bootstrap>", line 219, in _call_with_frames_removed
  File "/opt/virtualenvs/python3/lib/python3.8/site-packages/pyttsx3/drivers/espeak.py", line 9, in <module>
    from . import _espeak, toUtf8, fromUtf8
  File "/opt/virtualenvs/python3/lib/python3.8/site-packages/pyttsx3/drivers/_espeak.py", line 18, in <module>
    dll = cdll.LoadLibrary('libespeak.so.1')
  File "/usr/lib/python3.8/ctypes/__init__.py", line 451, in LoadLibrary
    return self._dlltype(name)
  File "/usr/lib/python3.8/ctypes/__init__.py", line 373, in __init__
    self._handle = _dlopen(self._name, mode)
OSError: libespeak.so.1: cannot open shared object file: No such file or directory

so i used engine = pyttsx3.init('dummy')
engine.say('hello') works but when using engine.save_to_file('heelo' , 'hello.mp3')
it gives error

Ignoring exception in command play:
Traceback (most recent call last):
  File "/opt/virtualenvs/python3/lib/python3.8/site-packages/discord/ext/commands/core.py", line 85, in wrapped
    ret = await coro(*args, **kwargs)
  File "main.py", line 23, in play
    engine.save_to_file('hello', 'hello.mp3')
  File "/opt/virtualenvs/python3/lib/python3.8/site-packages/pyttsx3/engine.py", line 119, in save_to_file
    self.proxy.save_to_file(text, filename, name)
  File "/opt/virtualenvs/python3/lib/python3.8/site-packages/pyttsx3/driver.py", line 162, in save_to_file
    self._push(self._driver.save_to_file, (text, filename), name)
AttributeError: 'DummyDriver' object has no attribute 'save_to_file'

The above exception was the direct cause of the following exception:

Traceback (most recent call last):
  File "/opt/virtualenvs/python3/lib/python3.8/site-packages/discord/ext/commands/bot.py", line 939, in invoke
    await ctx.command.invoke(ctx)
  File "/opt/virtualenvs/python3/lib/python3.8/site-packages/discord/ext/commands/core.py", line 863, in invoke
    await injected(*ctx.args, **ctx.kwargs)
  File "/opt/virtualenvs/python3/lib/python3.8/site-packages/discord/ext/commands/core.py", line 94, in wrapped
    raise CommandInvokeError(exc) from exc
discord.ext.commands.errors.CommandInvokeError: Command raised an exception: AttributeError: 'DummyDriver' object has no attribute 'save_to_file'
@itsmedeepak
Copy link

I'm facing same issue.
please help

@bqtd
Copy link

bqtd commented May 11, 2022

You can install pyttsx3==2.71 to solve this problem, I did and succeeded

@alisolanki
Copy link

Facing the same issue, I have installed the latest version of pyttsx also tried downgrading it to pyttsx3==2.71 both didn't work

@willwade willwade added the bug label Oct 18, 2024
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Projects
None yet
Development

No branches or pull requests

5 participants