利用python进行语音合成

学习经验分享

  • 第一步:打开pythhon代码软件,创建一个目录
  • 第二步:在目录中创建一个python文件
    以下是python代码
from aip import AipSpeech
import requests
import json

# 复制粘贴 APPID、AK、SK这3个值并以此初始化对象
APP_ID = '59391253'
API_KEY = 'wugX8bIKPpCPtQpAFUBP8GMA'
SECRET_KEY = 'bWqbKmyk9oMEuK3mN5X6IjWRD6WySPRt'
client = AipSpeech(APP_ID, API_KEY, SECRET_KEY)

# 准备文本及存放路径
text = '欢迎来赣南医科'  # 文字部分也可以从磁盘读取,或者是从图片中识别
filePath = "MyVoice.mp3"  # 音频文件存放路径,确保没有多余的空格
# 设置语音合成的参数

option = {
    'spd': 4,  # 语速
    'pit': 6,  # 音调
    'vol': 5,  # 音量
    'per': 0,  # 发音人选择, 0为女声,1为男声,3为童声,4为情感合成-度逍遥
}

# 调用语音合成接口
result = client.synthesis(text, 'zh', 1,option)

# 识别正确返回语音二进制 错误则返回dict 参照下面错误码
 if not isinstance(result, dict):
    with open('audio.mp3', 'wb') as f:
        f.write(result)
 else:
     print(result)

# 语音合成
try:
    result = client.synthesis(text, 'zh', 1, {'vol': 5})

    # 检查result,确保是元组并且包含语音数据
    if isinstance(result, tuple) and len(result) == 2 and isinstance(result[0], bytes):
        # 写入文件
        with open(filePath, 'wb') as audio_file:
            audio_file.write(result[0])
        print("成功保存为", filePath)
    else:
        print("失败")
except Exception as e:
    print("发生异常:", e)

  • 第三步:代码进行运行后在左侧目录中可以看见一个 mp.3文件

注意 此方法对于转换的文字字长有限制大概是七个字。

因为在百度AI的语音合成(TTS)服务中,通常会有一个字符长度的限制,以确保服务的性能和稳定性。

  • 第四步 打开mp.3文件 选择任意语音播放器即可进行播放

注意:播放时文件会被播放器占用,使用不能对代码进行修改请添加图片描述

运行时会报错,意思是文件正在被使用:如果 ‘audio.mp3’ 文件当前正被另一个程序(比如音乐播放器)使用,你可能无法获得写入权限。确保没有其他程序正在使用这个文件。

  • 所以如果要对代码进行修改,要确保 ‘audio.mp3’ 文件没有被其他程序使用。
  • 2
    点赞
  • 5
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值