我嘗試了PyTTS(不推薦)和PyTTSx(最值得推薦)和兩個Google TTS解決方案(gTTS和另一個名爲Hung Truong的人),但沒有他們在Python 3.4下工作。看來他們還沒有被移植到3.x.在Python 3下工作的文本到語音轉換(TTS)模塊
我搜索在這裏StackOverflow上和谷歌,但所有提出的TTS解決方案不起作用的Python 3下我在Windows 7
我嘗試了PyTTS(不推薦)和PyTTSx(最值得推薦)和兩個Google TTS解決方案(gTTS和另一個名爲Hung Truong的人),但沒有他們在Python 3.4下工作。看來他們還沒有被移植到3.x.在Python 3下工作的文本到語音轉換(TTS)模塊
我搜索在這裏StackOverflow上和谷歌,但所有提出的TTS解決方案不起作用的Python 3下我在Windows 7
用戶在Reddit上found a solution。
原來,gTTS在Python 3.x下工作,這是我導入模塊錯誤。
我用的是:
import gtts
blabla = ("Spoken text")
tts = gTTS(text=blabla, lang='en')
tts.save("C:/test.mp3")
導致以下錯誤:
NameError: name 'gTTS' is not defined
當正確的做法是:
from gtts import gTTS
blabla = ("Spoken text")
tts = gTTS(text=blabla, lang='en')
tts.save("C:/test.mp3")
而不是使用一個模塊,你可以使用谷歌文本到-Speech API。您可以輕鬆地使用此URL通過一個簡單的HTTP請求生成一個wav文件,並得到它:
http://www.translate.google.com/translate_tts?tl=en&q=Hello%20World
我剛安裝了這是在2015年10月7日
下面的代碼上傳的GTT 1.0.7在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])
我在內置的使用Mac「afply 「播放MP3,但還有其他方式,例如Playing mp3 song on python
如果你打算在OS X上使用子進程,爲什麼不是t subprocess.call([「say」,「Hello World!」]) –
的最好的解決辦法是:
Pyttsx3是離線的跨平臺測試到語音庫,它是既的Python 3兼容Python 2並支持多個TTS引擎。
我發現它非常有用,並且不會產生任何延遲,不像gTTS需要互聯網連接才能正常工作,並且也有一些延遲。
pip install pyttsx3
```
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()
```
如果使用Windows,請安裝pypiwin32以及'python -m pip install pypiwin32' –
谷歌確實保護與驗證碼這個鏈接:( – Maecky