web-dev-qa-db-fra.com

Module de synthèse vocale (TTS) qui fonctionne sous Python 3

J'ai essayé PyTTS (obsolète) et PyTTSx (le plus recommandé) et deux solutions Google TTS (gTTS et une autre par un gars du nom de Hung Truong) mais aucune d'entre elles ne fonctionnait sous Python 3.4. It semble qu'ils n'ont pas été portés sur 3.x.

J'ai cherché ici sur StackOverflow et Google, mais toutes les solutions TTS proposées ne fonctionnent pas sous Python 3. Je suis sur Windows 7.

8
Macondo

Un utilisateur sur Reddit a trouvé une solution .

Il s'avère que gTTS fonctionne sous Python 3.x, c'est moi qui importais mal le module.

J'utilisais:

import gtts
blabla = ("Spoken text")
tts = gTTS(text=blabla, lang='en')
tts.save("C:/test.mp3")

Il en résulte l'erreur suivante:

NameError: name 'gTTS' is not defined

Lorsque la bonne façon est:

from gtts import gTTS
blabla = ("Spoken text")
tts = gTTS(text=blabla, lang='en')
tts.save("C:/test.mp3")
7
Macondo

La meilleure solution pour cela est:

pyttsx3


Pyttsx3 est une bibliothèque test multiplateforme hors ligne multiplateforme qui est compatible avec les deux Python 3 et Python 2 et prend en charge plusieurs TTS moteurs.

Je l'ai trouvé très utile et il n'y a pas de retard dans la production sonore contrairement à gTTS qui a besoin d'une connexion Internet pour fonctionner et a également un certain retard.

À installer :

pip install pyttsx3

Voici un exemple de code:

`` ''

import pyttsx3
engine = pyttsx3.init()
engine.say("Hello this is me talking")
engine.setProperty('rate',120)  #120 words per minute
engine.setProperty('volume',0.9) 
engine.runAndWait()

`` ''

3
Natesh bhat

Je viens d'installer gtts 1.0.7 qui a été téléchargé le 2015-10-07

Le code suivant fonctionne pour moi dans Python 3.5:

import subprocess
from gtts import gTTS

audio_file = "hello.mp3"
tts = gTTS(text="Hello World!", lang="en")
tts.save(audio_file)
return_code = subprocess.call(["afplay", audio_file])

Je suis sur un Mac en utilisant le "afply" intégré pour lire le mp3, mais il existe d'autres moyens, par exemple Lecture d'une chanson mp3 sur python

1
Alex