Algunos envoltorios simples alrededor de Espeak Ng pretendían hacer que el uso de este excelente TTS para la forma de onda y la generación de IPA lo sea lo más conveniente posible.
El público objetivo es desarrolladores que desean usar espeak ng as-is para la síntesis del habla en su aplicación Python en los sistemas operativos GNU/Linux.
Los comentarios constructivos, parches y solicitudes de extracción son muy bienvenidos.
Primero, importe el envoltorio de motores Espeakng:
from espeakng import ESpeakNGAhora para una salida TTS directa simple:
esng = ESpeakNG ()
esng . say ( 'Hello World!' )Pitch y velocidad inferiores:
esng . pitch = 32
esng . speed = 150
esng . say ( 'Hello World!' )Prueba un idioma diferente:
esng . voice = 'german'
esng . say ( 'Hallo Welt!' )especificar fonemas en lugar de palabras:
esng . voice = 'en-us'
esng . say ( "[[h@l'oU w'3:ld]]" )Del texto:
import wave
import StringIO
esng . voice = 'en-us'
wavs = esng . synth_wav ( 'Hello World!' )
wav = wave . open ( StringIO . StringIO ( wavs ))
print wav . getnchannels (), wav . getframerate (), wav . getnframes ()resultado:
1 22050 24210
l = esng . voicesresultado:
>>> l [0]
{'Pty': '5', 'Language': 'Af', 'Gender': 'M', 'Age': '-', 'Voice_Name': 'Afrikaans', 'Archivo': 'GMW/AF'}
>>> L [1]
{'Pty': '5', 'Language': 'Am', 'Gender': '-', 'Age': '-', 'Voice_Name': 'Amharic', 'Archivo': 'Sem/Am'}
>>> L [2]
{'Pty': '5', 'Language': 'An', 'Gender': 'M', 'Age': '-', 'Voice_Name': 'Aragonese', 'File': 'Roa/An'}
... ipa = esng . g2p ( 'Hello World!' , ipa = 2 )resultado:
>>> Imprimir IPA həlˈo͡ʊ wˈɜːld
https://github.com/espeak-ng/espeak-ng [espeak ng]
Python 2 o 3
espeak-ng binario instalado y en ruta
Mi propio código es Apache-2.0 con licencia a menos que se indique lo contrario en los encabezados de derechos de autor del script.
Guenter Bartsch <[email protected]>