Como fazer o Python falar
Eu poderia usar Festival com subprocessamento mas eu não serei capaz de controlá-lo (ou talvez em modo interativo, mas não será limpo).
Há alguma biblioteca Python TTS? Como uma API para o Festival, eSpeak ... ?11 answers
Por favor, note que isto só funciona com o python 2.x
Deve tentar usar o pacote PyTTSx, uma vez que o PyTTS está desactualizado. O PyTTSx trabalha com a versão lastest python.
Http://pypi.python.org/pypi/pyttsx/1.0 - > a embalagem
Espero que ajude.Um pouco foleiro, mas se você usar um mac você pode passar um comando terminal para a consola de python.
Tente digitar o seguinte no terminal:
$ say 'hello world'
E haverá uma voz do mac que falará isso. Do python tal coisa é relativamente fácil:
import os
os.system("echo 'hello world'")
os.system("say 'hello world'")
O pacote python-espeak está disponível nas distribuições Debian, Ubuntu, Redhat e outras Linux. Ele tem atualizações recentes, e funciona bem.
from espeak import espeak
espeak.synth("Hello world.")
Jonathan Leaders observa que também funciona no Windows, e você pode instalar as vozes mbrola também. Ver o sítio Web espeak em http://espeak.sourceforge.net
Como ouvir a voz do pc no windows
from win32com.client import Dispatch
speak = Dispatch("SAPI.SpVoice")
speak.Speak("Ciao")
Usando a Api do google text-to-speech para criar um mp3 e aqui ele
Depois de ter instalado o módulo gtts no cmd: pip instalar gtts
from gtts import gTTS
import os
tts = gTTS(text="This is the pc speaking", lang='en')
tts.save("pcvoice.mp3")
# to start the file from python
os.system("start pcvoice.mp3")
Um simples Google levou-me a pyTTS, e a alguns documentos sobre isso. Ele parece não mantido e específico para o motor de fala da Microsoft, no entanto.
Pelo menos no Mac OS X, pode usar {[[0]} para chamar o comando {[[1]}, o que é muito divertido para se meter com os seus colegas de trabalho, mas pode não ser muito útil para as suas necessidades.
Parece que o Festival também tem algumas APIs públicas.Festival oferece uma interface baseada no soquete BSD. Isto permite Festival para correr como um servidor e permitir que os programas clientes para acessá-lo. Basicamente, o servidor oferece um novo interpretador de comandos para cada cliente que se liga a ele. O servidor é bifurcado para cada cliente, mas isso é muito mais rápido do que ter que esperar por um processo do Festival para começar do zero. Além disso, o servidor pode rodar em uma máquina maior, oferecendo uma síntese muito mais rápida. linky
Existe também uma API de C++ completa, que poderá ser capaz de fazer sair um módulo Python of (it's fun!). O Festival também oferece uma API C arared-down -- keep scrolling in that document -- which you might be able to throw ctypes
at for a one-off.
Há uma série de maneiras de fazer Python falar tanto em Python3 e Python2, dois grandes métodos são:
- utilizar os
Se estiver no mac, terá o módulo so incorporado no seu computador. Poderá importar o módulo de SO com:
import os
Poderá então usar o sistema operacional para executar os comandos de terminal usando o sistema operacional.comando do sistema:
os.system("Your terminal")
No terminal, a forma como faz o seu computador falar é usando o comando "dizer", assim, para fazer o computador falar você simplesmente uso:
os.system("say 'some text'")
Se quiser usar isto para falar uma variável, pode usar:
os.system("say " + myVariable)
A segunda maneira de fazer o python falar é usar {[[9]}
- O módulo pyttsx
Terá de instalar isto usando
pip isntall pyttsx3
Ou para Python3
pip3 install pyttsx3
Você pode então usar o seguinte código para fazê-lo falar:
import pyttsx3
engine = pyttsx3.init()
engine.say("Your Text")
engine.runAndWait()
Espero que isto ajude! :)
Pode não haver nada 'específico em Python' , mas os desktops KDE e GNOME oferecem texto-para-voz como parte do suporte de acessibilidade, e também oferecem atalhos de biblioteca em python. Pode ser possível usar as ligações python para controlar as bibliotecas desktop para texto para fala.
Se usar a implementação Jython do Python no JVM, o sistemaFreeTTS pode ser utilizável.
Finalmente, OSX e As Janelas têm APIs nativas para texto para fala. Pode ser possível usá-los a partir do python através de ctypes ou outros mecanismos como COM.
Pode usar o espeak a usar o python para o Conversor de texto para voz.
Aqui está um exemplo de código python
from subprocess import call speech="Hello World!" call(["espeak",speech])
P. S: Se o espeak não estiver instalado no seu sistema linux, então terá de o instalar primeiro.
Abrir um terminal (usando ctrl + alt + T) e tipo
sudo apt install espeak
import win32com.client as wincl
speak = wincl.Dispatch("SAPI.SpVoice")
speak.Speak("This is the pc voice speaking")
Também encontrei este vídeo no youtube, por isso, se quiseres, podes arranjar alguém que conheças e fazer a tua própria voz DIY tts.
PYTTSX3 !
THE COMPLETE SOLUTION TO ALL YOU PYTHON TEXT-TO-SPEECH NEEDS
O que:
O Pyttsx3 é um módulo python que é um clone do Módulo pyttsx para o Python 2.x, exceto modificado para funcionar perfeitamente bem nas últimas versões do Python 3!
- Python Package Index para transferências: https://pypi.python.org
- GitHub para fonte, bugs, e Q & A: https://github.com/nateshmbhat/pyttsx3
- Leia o texto completo documentação em: https://pyttsx3.readthedocs.org
Porquê:
É 100% MULTI-PLATAFORMA E FUNCIONA OFFLINE E É ATIVO/AINDA está SENDO DESENVOLVIDO E FUNCIONA COM QUALQUER VERSÃO do PYTHON
Como:
Pode ser facilmente instalado com pip install pyttsx3
e a utilização é a mesma que o pyttsx:
import pyttsx3;
engine = pyttsx3.init();
engine.say("I will speak this text");
engine.runAndWait();