[英]Text-to-speech (TTS) module that works under Python 3
我已經嘗試過 PyTTS(已棄用)和 PyTTSx(最推薦的)和兩個 Google TTS 解決方案(gTTS 和另一個名為 Hung Truong 的人的解決方案),但它們都沒有在 Python 3.4 下工作。 似乎它們還沒有被移植到 3.x。
我在 StackOverflow 和 Google 上搜索過,但所有提議的 TTS 解決方案都不能在 Python 3 下運行。我在 Windows 7 上。
Reddit 上的一位用戶找到了解決方案。
原來 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")
最好的解決方案是:
Pyttsx3 是一個離線跨平台文本轉語音庫,兼容Python 3 和 Python 2 ,支持多種 TTS 引擎。
我發現它非常有用,並且與gTTS不同, gTTS 需要互聯網連接才能工作並且也有一些延遲,因此聲音制作沒有延遲。
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()
我剛剛安裝了 2015-10-07 上傳的 gtts 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,但還有其他方式,例如在 python 上播放 mp3 歌曲
您可以使用 Google Text-to-Speech API,而不是使用模塊。 你可以很容易地使用這個 URL 來生成一個 wav 文件並通過一個簡單的 HTTP 請求來獲取它:
http://www.translate.google.com/translate_tts?tl=en&q=Hello%20World
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.