https://pythonjishu.com/tzzjavbepoesojm/
下面是另一个示例:
pip install pyttsx3 pip install gtts
将一个变量中的中文文本转换为语音,并使用 pyaudio 播放出来。
因为 pyaudio 库在 Windows 环境下可能会有问题,所以建议在 Linux 或 Mac 环境下测试。
import pyttsx3
import pyaudio
# 初始化 TTS 引擎
engine = pyttsx3.init()
engine.setProperty("rate", 150) # 设置语速
engine.setProperty("volume", 0.8) # 设置音量
# 定义待朗读的中文文本
text = "世界上没有垃圾,只有被人滥用的资源。"
# 设置 TTS 引擎的语言为中文
engine.setProperty("voice", "zh")
# 进行语音合成
engine.say(text)
engine.runAndWait()
# 播放合成的音频
chunk = 1024
p = pyaudio.PyAudio()
stream = p.open(format=p.get_format_from_width(2),
channels=1,
rate=44100,
output=True)
with open("temp.wav", "wb") as file:
engine.save_to_wav(file)
with open("temp.wav", "rb") as file:
data = file.read(chunk)
while data:
stream.write(data)
data = file.read(chunk)
stream.stop_stream()
stream.close()
p.terminate()
其他实例
如果需要保存mp3
from gtts import gTTS
# 读取文件中的文本内容
with open("example.txt", "r") as file:
text = file.read()
# 设置语言类型为英文,语速为1.5倍
tts = gTTS(text, lang='en', slow=False)
# 保存音频
tts.save("example.mp3")