2013-03-20 160 views
6

我可以使用puttsx将文本转换为Python语音。我可以使用麦克风(耳机)将音频录制到mp3文件中。如何在python中将文本转换为语音(mp3文件)?

我想要做的是将文本转换为mp3文件。
有没有办法将使用pyttsx播放的音频存储到内存或unicode字符串。

任何人都可以帮助我将音频存储到内存,或者我可以如何将该字符串转换为mp3文件。

回答

2

我不知道pyttsx,但不久前我用Google TTS API从文本生成MP3。

你可以从this code snippet了解它是如何工作的。 Google TTS的免费版本仅限于每个请求的一定数量的字母,因此我建议将文本拆分为句子并为每个句子创建一个文件。

如果您需要帮助,请告诉我。

+0

非常感谢,Throsten – 2013-03-20 08:37:26

+0

我会在我结束第一次尝试这种技术。如果我遇到任何问题,都会要求你帮忙。 – 2013-03-20 08:38:08

+0

当然,没问题。 – 2013-03-20 09:02:13

2

为了从文本文件中的音频文件,我使用此代码我希望它可以帮助你

from comtypes.client import CreateObject 
from comtypes.gen import SpeechLib  
engine = CreateObject("SAPI.SpVoice") 
stream = CreateObject("SAPI.SpFileStream") 
infile = "SHIVA.txt" 
outfile = "SHIVA-audio.wav" 
stream.Open(outfile, SpeechLib.SSFMCreateForWrite) 
engine.AudioOutputStream = stream 
f = open(infile, 'r') 
theText = f.read() 
f.close() 
engine.speak(theText) 
stream.Close() 
+0

comtypes仅适用于Windows。 – ddisqq 2016-09-14 17:22:49