我现在想如何在python中将文本转换为语音。
在.NET中我使用
Dim SAPI
Msg = 'Hi this is a test'
SAPI = CreateObject("sapi.spvoice")
SAPI.Speak(Msg)
答案 0 :(得分:2)
我知道在这里回答真的很晚了,但我想我会在这里发帖,因为我在TTS
使用SAPI
进行python
转换的解决方案,这是OP'原始问题。
对于在SAPI
中使用python
寻找解决方案的其他人来说,这可能很有用。
from win32com.client import constants, Dispatch
Msg = "Hi this is a test"
speaker = Dispatch("SAPI.SpVoice") #Create SAPI SpVoice Object
speaker.Speak(Msg) #Process TTS
del speaker #Delete speaker object and free up memory
答案 1 :(得分:1)
您可以通过pyttsx模块实现它。它使用默认的MS语音识别系统。
import pyttsx
engine = pyttsx.init()
engine.say("Your Message")
engine.runAndWait()
答案 2 :(得分:0)
您可以使用gTTS模块来做到这一点。它将文本转换为语音。 您需要使用的第二个模块是playsound来播放转换后的文本。
from gtts import gTTS #pip install gtts
import playsound #pip install playsound
import os
my_aud = gTTS("hello how are you") #converts the text into speech
my_aud.save('demo.mp3') #save the file with .mp3 extension
playsound('demo.mp3') #to play it
os.remove('demo.mp3')
答案 3 :(得分:0)
import pyttsx3
speaker=pyttsx3.init()
speaker.say("Your message")
speaker.runAndWait()
答案 4 :(得分:0)
# pip install pywin32
# pip install pyttsx3
import pyttsx3
pyttsx3.speak('Hello Woeld')
答案 5 :(得分:0)
这里是我自己创建的男声和女声功能。
只需定义一个文件名并保存即可。
现在您可以将其导入到另一个文件中并反复使用。
pip install pyttsx3
import pyttsx3
def femaleVoice(text):
print("Program : "+text)
engine = pyttsx3.init()
voices = engine.getProperty('voices')
engine.setProperty('voice', voices[-1].id)
engine.say(text)
engine.runAndWait()
def maleVoice(text):
print("Program : "+text)
pyttsx3.speak(text)
femaleVoice("There we go.")#Text
maleVoice("There we go.")