如何用python实现文本转语音功能

首先,安装python第三方库: pip install gTTS

gTTS(Google Text-to-Speech), 这个库是Google的Text-to-Speech API的一个接口,提供了一种简单的方式来生成听起来自然的语言,gTTS支持多种语言和方言,使得它能够广泛用于多语言应用程序中。

ini 复制代码
# 导入gTTS库, 用于文本到语音的转换
from gtts import gTTS
import os


# 定义文本到语音转换的函数
def text_to_speech(text, lang='zh-cn'): # 默认设置为中文语言
    # 使用gTTS创建语音对象,需要传入文本和语言代码
    tts = gTTS(text=text, lang=lang)
    # 定义保存语音文件的文件名,这里保存在当前目录下
    filename = 'speech.mp3'
    # 保存语音文件
    tts.save(filename)
    # 返回保存的文件名,以便后续使用
    return filename


# 示例文本,这里是一段中文文本
text = "大家好,我是一个程序员"
# 调用text_to_speech函数,将文本转换为语音,并指定使用中文
filename = text_to_speech(text, 'zh-cn')
# 打印出保存的文件路径,确认文件已经生成
print(f"Generated speech saved to {filename}")
os.system("start speech.mp3")

将所需要转换的所有文本写入text.txt文件中,并放在当前文件目录下,使用gTTS转换成语音:

python 复制代码
# 导入gTTS库
from gtts import gTTS
import os

# 要转换的文本

with open("text.txt", "r") as f:
    text = f.read()
# 创建gTTS对象,指定文本和语言
tts = gTTS(text, lang='zh')

# 保存为音频文件
tts.save("output.mp3")

# 播放音频文件
os.system("start output.mp3")

遇到的一些问题:

gtts.tts.gTTSError: Failed to connect. Probable cause: Unknown

报错解释:

gtts.tts.gTTSError: Failed to connect. Probable cause: Unknown 这个错误来自 gTTS 库,这通常表示在尝试连接到一个服务(例如文本转语音服务)时失败了。具体原因未知,可能是网络问题、服务不可用、错误的服务地址或其他未知原因。

解决方法:

  1. 检查网络连接:确保你的设备可以正常访问互联网。
  2. 服务状态:检查相关的在线文本转语音服务是否正常运行,比如 Google 的文本转语音服务。
  3. 更新库:确保你的 gTTS 库是最新版本,可以通过pip进行更新。
  4. 代理设置:如果你在使用代理,确保代理设置正确。
  5. 服务地址:检查 gTTS 库是否使用了正确的服务地址。

分析一下最有可能是网络问题导致的,可以多试几次。

相关推荐
言之。18 分钟前
Django REST Framework响应类Response详解
后端·python·django
Abadbeginning26 分钟前
FastSoyAdmin centos7云服务器+宝塔部署
vue.js·后端·python
kida_yuan1 小时前
【从零开始】13. 数据增强(Data Augmentation)
数据结构·python·nlp
封奚泽优1 小时前
班级互动小程序(Python)
python·deepseek
MediaTea2 小时前
Python:math 库函数手册(双曲函数)
开发语言·python
枫叶V2 小时前
用 FastAPI 实现大文件分片上传与断点续传(含可运行示例与客户端脚本,仅供参考)
python·fastapi
神仙别闹2 小时前
基于 Python + redis + flask 的在线聊天室
redis·python·flask
Python私教2 小时前
Django全栈班v1.01 Python简介与特点 20250910
后端·python·django
我想吃烤肉肉2 小时前
leetcode-python-2154将找到的值乘以 2
python·算法·leetcode