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

Remove FFMPEG, rework onSynth in espeak to finish correctly #348

Merged
merged 8 commits into from
Oct 28, 2024

Conversation

willwade
Copy link
Collaborator

@willwade willwade commented Oct 25, 2024

I stupidly did this on my master branch. Here is the same PR on a branch

Please consider Draft until someone confirms works as expected in Linux (Works on WIndows and MacOS)

Test with

import pyttsx3

engine = pyttsx3.init('espeak')
engine.say("oh my, goodness this is a long piece of text and I don't know what to do with it - it even has punctuation")
engine.runAndWait()

You should hear how it reads ie whole string ending "with it" . On current released versions it will stop at "what to do"

engine = pyttsx3.init('espeak')
engine.save_to_file('Hello World', 'test.wav')
engine.runAndWait()

before: would silently fail. Now saves to test.wav

NB: Im aware if you have characters in your text that arent letters (eg ;,!') it will stop at that string. Figuring out a workaround to this to not leave to the user.. or even better a fix for that Now fixed

@willwade willwade mentioned this pull request Oct 25, 2024
@willwade
Copy link
Collaborator Author

yay tested on linux locally. going to merge....

@willwade willwade merged commit 12145bc into nateshmbhat:master Oct 28, 2024
11 checks passed
@catherine-rb
Copy link

Hi Will, this is now playing the full sentence! :)
On the first test ("Sally" and "the quick brown fox"), still only the second sentence is read.

@willwade
Copy link
Collaborator Author

Hi Will, this is now playing the full sentence! :) On the first test ("Sally" and "the quick brown fox"), still only the second sentence is read.

Yay! But say again? Second sentence isn’t working?

I think you’re saying if you do two say calls only first one is read ..so merged but can’t do a release just yet!

@catherine-rb
Copy link

Actually only the second one is read.

@willwade
Copy link
Collaborator Author

Actually only the second one is read.

Ok. I at least know what this is. I just fixed the same problem in the avsynth engine.

@cclauss we need to add a test to our test suite of two say() calls then runandwait - otherwise this gets missed

@catherine-rb
Copy link

catherine-rb commented Oct 28, 2024 via email

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

save_to_file MP3 Header incompatible with ffmpeg
2 participants