Skip to content

Commit 716efb1

Browse files
authored
Merge pull request larymak#35 from KanakamSasikalyan/main
pyttsx3
2 parents d4a8592 + 7cea7e6 commit 716efb1

File tree

11 files changed

+104
-0
lines changed

11 files changed

+104
-0
lines changed

pyttsx3/README.md

Lines changed: 17 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,17 @@
1+
# pyttsx3
2+
![image](https://user-images.githubusercontent.com/67740644/124582719-e767ae80-de6f-11eb-9ef6-1663ae149e32.png)
3+
4+
## *Description
5+
pyttsx3 is a text-to-speech conversion library in Python.<br />
6+
Unlike alternative libraries, it works offline, and is compatible with both Python 2 and 3.
7+
8+
## *Installation
9+
`$ pip install pyttsx3 <br />
10+
11+
## Note
12+
If you recieve errors such as No module named win32com.client, No module named win32 <br />
13+
or No module named win32api, you will need to additionally install pypiwin32.<br />
14+
15+
16+
17+

pyttsx3/Using pyttsx3.docx

20.9 KB
Binary file not shown.

pyttsx3/change_voices.py

Lines changed: 8 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,8 @@
1+
#Changing voices
2+
import pyttsx3
3+
engine = pyttsx3.init()
4+
voices = engine.getProperty('voices')
5+
for voice in voices:
6+
engine.setProperty('voice', voice.id)
7+
engine.say('The quick brown fox jumped over the lazy dog.')
8+
engine.runAndWait()

pyttsx3/driver.py

Lines changed: 19 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,19 @@
1+
#Running a driver event loop
2+
import pyttsx3
3+
engine = pyttsx3.init()
4+
def onStart(name):
5+
print 'starting', name
6+
def onWord(name, location, length):
7+
print 'word', name, location, length
8+
def onEnd(name, completed):
9+
print 'finishing', name, completed
10+
if name == 'fox':
11+
engine.say('What a lazy dog!', 'dog')
12+
elif name == 'dog':
13+
engine.endLoop()
14+
engine = pyttsx3.init()
15+
engine.connect('started-utterance', onStart)
16+
engine.connect('started-word', onWord)
17+
engine.connect('finished-utterance', onEnd)
18+
engine.say('The quick brown fox jumped over the lazy dog.', 'fox')
19+
engine.startLoop()

pyttsx3/events.py

Lines changed: 15 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,15 @@
1+
#This Example based on Listening for events
2+
#Listening for events
3+
import pyttsx3
4+
def onStart(name):
5+
print 'starting', name
6+
def onWord(name, location, length):
7+
print 'word', name, location, length
8+
def onEnd(name, completed):
9+
print 'finishing', name, completed
10+
engine = pyttsx3.init()
11+
engine.connect('started-utterance', onStart)
12+
engine.connect('started-word', onWord)
13+
engine.connect('finished-utterance', onEnd)
14+
engine.say('The quick brown fox jumped over the lazy dog.')
15+
engine.runAndWait()

pyttsx3/external.py

Lines changed: 9 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,9 @@
1+
#Using an external event loop
2+
import pyttsx3
3+
engine = pyttsx3.init()
4+
engine.say('The quick brown fox jumped over the lazy dog.', 'fox')
5+
engine.startLoop(False)
6+
# engine.iterate() must be called inside externalLoop()
7+
externalLoop()
8+
engine.endLoop()
9+

pyttsx3/speak.py

Lines changed: 6 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,6 @@
1+
import pyttsx3 #import pyttsx3 module
2+
engine = pyttsx3.init() #pyttsx3.init() factory function to get a reference to a pyttsx3.Engine instance
3+
engine.say('Hello World')
4+
engine.say('Hello GitHub')
5+
engine.say('Hello Python Project Scripts')
6+
engine.runAndWait()

pyttsx3/speech_rate.py

Lines changed: 7 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,7 @@
1+
#Changing speech rate
2+
import pyttsx3
3+
engine = pyttsx3.init()
4+
rate = engine.getProperty('rate')
5+
engine.setProperty('rate', rate+50)
6+
engine.say('The quick brown fox jumped over the lazy dog.')
7+
engine.runAndWait()

pyttsx3/utterance.py

Lines changed: 10 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,10 @@
1+
#Interrupting an utterance
2+
import pyttsx3
3+
def onWord(name, location, length):
4+
print 'word', name, location, length
5+
if location > 10:
6+
engine.stop()
7+
engine = pyttsx3.init()
8+
engine.connect('started-word', onWord)
9+
engine.say('The quick brown fox jumped over the lazy dog.')
10+
engine.runAndWait()

pyttsx3/voice.py

Lines changed: 6 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,6 @@
1+
#This Example based on Saving voice to a file
2+
3+
import pyttsx3 #import pyttsx3
4+
engine = pyttsx3.init()
5+
engine.save_to_file('Hello World' , 'test.mp3') #saving voice to file
6+
engine.runAndWait()

0 commit comments

Comments
 (0)