All Projects → gooofy → py-espeak-ng

gooofy / py-espeak-ng

Licence: Apache-2.0 License
Some simple wrappers around eSpeak NG intended to make using this excellent TTS for waveform and IPA generation as convenient as possible.

Programming Languages

python
139335 projects - #7 most used programming language
Makefile
30231 projects

Projects that are alternatives of or similar to py-espeak-ng

Aeneas
aeneas is a Python/C library and a set of tools to automagically synchronize audio and text (aka forced alignment)
Stars: ✭ 1,942 (+7092.59%)
Mutual labels:  tts, espeak, espeak-ng
JSpeak
A Text to Speech Reader Front-end that Reads from the Clipboard and with Exceptionable Features
Stars: ✭ 16 (-40.74%)
Mutual labels:  tts, espeak
voxpopuli
Python wrapper for Espeak and Mbrola, for simple local TTS
Stars: ✭ 21 (-22.22%)
Mutual labels:  espeak, tts-engines
soundoftext
API & Web Client for soundoftext.com
Stars: ✭ 41 (+51.85%)
Mutual labels:  tts, tts-api
vasisualy
Vasisualy it's a simple Russian voice assistant written on Python for GNU/Linux, Windows and Android.
Stars: ✭ 33 (+22.22%)
Mutual labels:  tts, tts-engines
ms-ra-forwarder
A free online TTS API
Stars: ✭ 397 (+1370.37%)
Mutual labels:  tts, tts-api
FastSpeech2
PyTorch Implementation of FastSpeech 2 : Fast and High-Quality End-to-End Text to Speech
Stars: ✭ 163 (+503.7%)
Mutual labels:  tts, tts-engines
tts
Table Top Simulator Mod for Star Wars: Legion
Stars: ✭ 32 (+18.52%)
Mutual labels:  tts
LVCNet
LVCNet: Efficient Condition-Dependent Modeling Network for Waveform Generation
Stars: ✭ 67 (+148.15%)
Mutual labels:  tts
ForgetMeNot
A flashcard app for Android.
Stars: ✭ 234 (+766.67%)
Mutual labels:  tts
TTS tf
WIP Tensorflow implementation of https://github.com/mozilla/TTS
Stars: ✭ 14 (-48.15%)
Mutual labels:  tts
Sinsy-NG
(discontinued) 🎵The Formant-Based All Language Singing Voice Syntheis System: Sinsy-NG
Stars: ✭ 15 (-44.44%)
Mutual labels:  espeak-ng
dctts-pytorch
The pytorch implementation of DC-TTS
Stars: ✭ 73 (+170.37%)
Mutual labels:  tts
ttslearn
ttslearn: Library for Pythonで学ぶ音声合成 (Text-to-speech with Python)
Stars: ✭ 158 (+485.19%)
Mutual labels:  tts
pygtrans
谷歌翻译, 支持 APIKEY 一口气翻译十万条
Stars: ✭ 60 (+122.22%)
Mutual labels:  tts
Parallel-Tacotron2
PyTorch Implementation of Google's Parallel Tacotron 2: A Non-Autoregressive Neural TTS Model with Differentiable Duration Modeling
Stars: ✭ 149 (+451.85%)
Mutual labels:  tts
Tacotron2-PyTorch
Yet another PyTorch implementation of Tacotron 2 with reduction factor and faster training speed.
Stars: ✭ 118 (+337.04%)
Mutual labels:  tts
EbookReader
The EbookReader Android App. Support file format like epub, pdf, txt, html, mobi, azw, azw3, html, doc, docx,cbz, cbr. Support tts.
Stars: ✭ 37 (+37.04%)
Mutual labels:  tts
Text-to-Speech-Landscape
No description or website provided.
Stars: ✭ 31 (+14.81%)
Mutual labels:  tts
spoken-word
Spoken Word
Stars: ✭ 46 (+70.37%)
Mutual labels:  tts

py-espeak-ng

Some simple wrappers around eSpeak NG intended to make using this excellent TTS for waveform and IPA generation as convenient as possible.

Target audience are developers who would like to use eSpeak NG as-is for speech synthesis in their Python application on GNU/Linux operating systems.

Constructive comments, patches and pull-requests are very welcome.

Examples

Direct TTS Audio Output

First, import the ESpeakNG engine wrapper:

from espeakng import ESpeakNG

now for some simple direct TTS output:

esng = ESpeakNG()
esng.say('Hello World!')

lower pitch and speed:

esng.pitch = 32
esng.speed = 150
esng.say('Hello World!')

try a different language:

esng.voice = 'german'
esng.say('Hallo Welt!')

specify phonemes instead of words:

esng.voice = 'english-us'
esng.say("[[h@l'oU w'3:ld]]")

Synthesize Wave File without Playing It

From Text:

import wave
import StringIO

esng.voice = 'english-us'
wavs = esng.synth_wav('Hello World!')
wav = wave.open(StringIO.StringIO(wavs))
print wav.getnchannels(), wav.getframerate(), wav.getnframes()

result:

1 22050 24210

List Available Voices

l = esng.voices

result:

>>> l[0]
{'pty': '5', 'language': 'af', 'gender': 'M', 'age': '--', 'voice_name': 'afrikaans', 'file': 'gmw/af'}
>>> l[1]
{'pty': '5', 'language': 'am', 'gender': '-', 'age': '--', 'voice_name': 'amharic', 'file': 'sem/am'}
>>> l[2]
{'pty': '5', 'language': 'an', 'gender': 'M', 'age': '--', 'voice_name': 'aragonese', 'file': 'roa/an'}
...

Grapheme to Phoneme (G2P) Conversion

ipa = esng.g2p ('Hello World!', ipa=2)

result:

>>> print ipa
həlˈo͡ʊ wˈɜːld

Requirements

  • Python 2 or 3

  • espeak-ng binary installed and in PATH

License

My own code is Apache-2.0 licensed unless otherwise noted in the script’s copyright headers.

Author

Guenter Bartsch <[email protected]>

Note that the project description data, including the texts, logos, images, and/or trademarks, for each open source project belongs to its rightful owner. If you wish to add or remove any projects, please contact us at [email protected].