python文字转音频
时间: 2025-02-22 12:14:13 浏览: 80
### 如何使用Python将文字转换成音频文件
#### 使用gTTS库实现文字转语音
为了将文本转化为语音并保存为音频文件,可以采用`gTTS`(Google Text-to-Speech)库。此库允许创建多语言的自然发音语音输出[^2]。
```python
from gtts import gTTS
import os
text = "你好,欢迎来到编程世界"
language = 'zh'
output = gTTS(text=text, lang=language, slow=False)
# 保存生成的声音到mp3文件中
output.save("welcome.mp3")
# 可选:播放该MP3文件(仅限Linux)
os.system("mpg123 welcome.mp3")
```
这段代码展示了如何利用`gTTS`对象指定要转化的文字串及其对应的语言编码;接着调用`.save()`函数可将合成后的语音存储至本地磁盘作为MP3格式文件。最后还提供了一种简单的方法用于即时预览所生成的内容(注意这一步依赖于操作系统自带的支持工具)。
#### 利用pyttsx3离线工作
对于那些希望构建无需联网即可工作的应用程序来说,则可以选择`pyttsx3`库。它是一个跨平台兼容性强且易于使用的解决方案,适用于Windows、macOS和Linux系统上的开发人员[^4]。
```python
import pyttsx3
engine = pyttsx3.init() # 创建实例化对象
voices = engine.getProperty('voices')
for voice in voices:
print(f"ID: {voice.id}, Name:{voice.name}")
engine.setProperty('rate', 150) # 设置语速
engine.setProperty('volume', 0.7) # 调整音量大小
engine.setProperty('voice', voices[0].id) # 更改说话人的声音特性
def speak(text):
""" 将给定字符串参数中的内容朗读出来 """
engine.say(text)
engine.runAndWait()
speak("这是一个测试消息")
```
上述脚本首先获取当前可用的所有发音人列表,并打印其基本信息以便用户选择最适合自己需求的那个。之后设置了几个重要的属性值如讲话速度(`rate`)、响度(`volume`)还有具体的发声者身份(`voice`)。定义好的`speak()`辅助函数接收一段纯文本输入并通过内置扬声器发出相应的声音提示。
阅读全文
相关推荐



















