【语音合成】百度tts调用

3.1 获取百度密钥
  1. 访问:https://console.bce.baidu.com/ai/
  2. 登录百度账号
  3. 点击【语音技术】→【语音合成】
  4. 点击【创建应用】
  5. 填写应用名称(如:听写小程序)
  6. 创建成功后,复制 API KeySecret Key

短文本在线合成

请求方式及参数基本说明

语音合成接口支持 POST 和 GET两种方式, 推荐POST方式请求。 正式地址:http://tsn.baidu.com/text2audiohttps://tsn.baidu.com/text2audio

POST 方式(推荐), 文本不超过120 GBK字节,即60个汉字 或者字母数字。

GET 方式,拼接后的url总长度不多于1000个字符。

如需合成更长文本,推荐使用长文本在线合成。长文本在线合成可将10万字以内文本一次性合成,异步返回音频。支持多种优质音库,将超长文本快速转换 成稳定流畅、饱满真实的音频。适用于阅读听书、新闻播报等客户。

请求方式和参数

上传参数

参数 必选 描述
tex 需要合成的文本内容,采用UTF-8编码。长度限制:不超过60个汉字或字母数字组合。注意:文本在百度服务器转换为GBK编码后,字节数需小于120。如需合成更长文本,建议使用长文本在线合成功能。
tok 开发者access_token,需从开放平台获取(详见上文"鉴权认证机制"部分)
cuid 用户唯一标识符,用于UV值统计。推荐使用能区分用户的设备标识(如MAC地址或IMEI码),长度不超过60个字符
ctp 客户端类型标识,web端固定值为1
lan 语言选项,固定值zh。当前仅支持中英文混合模式
spd 语速调节参数,取值范围0-15,默认值5表示中等语速
pit 音调调节参数,取值范围0-15,默认值5表示中等音调
vol 音量调节参数,取值范围0-15,默认值5表示中等音量(注:0为最小音量值,并非静音)

音库选择参数

参数 可选值 说明
per(基础音库) 度小美=0 度小宇=1 度逍遥(基础)=3 度丫丫=4 基础音库选项
per(精品音库) 度逍遥(精品)=5003 度小鹿=5118 度博文=106 度小童=110 度小萌=111 度米朵=103 度小娇=5 精品音库选项
aue 3为mp3格式(默认); 4为pcm-16k; 5为pcm-8k; 6为wav(内容同pcm-16k); 注意aue=4或者6是语音识别要求的格式,但是音频内容不是语音识别要求的自然人发音,所以识别效果会受影响。

示例代码:

python 复制代码
import requests

API_KEY = "xxxx"
SECRET_KEY = "xxxx"

def main():
        
    url = "https://tsn.baidu.com/text2audio"
    
    payload='tex=%E4%BD%A0%E5%A5%BD%EF%BC%8C%E4%BB%8A%E5%A4%A9%E8%BF%87%E5%BE%97%E6%80%8E%E4%B9%88%E6%A0%B7&tok='+ get_access_token() +'&cuid=8k04do10mFyJCdWp0FYtnTizcgwUjvCO&ctp=1&lan=zh&spd=5&pit=1&vol=1&per=4115&aue=3'
    headers = {
        'Content-Type': 'application/x-www-form-urlencoded',
        'Accept': '*/*',
        'cuid': '6hNM0P4h3xq7tcuG8CLAIddCS2N7xFo8'
    }
    
    response = requests.request("POST", url, headers=headers, data=payload.encode("utf-8"))
    
    response.encoding = "utf-8"
    print(response.text)
    

def get_access_token():
    """
    使用 AK,SK 生成鉴权签名(Access Token)
    :return: access_token,或是None(如果错误)
    """
    url = "https://aip.baidubce.com/oauth/2.0/token"
    params = {"grant_type": "client_credentials", "client_id": API_KEY, "client_secret": SECRET_KEY}
    return str(requests.post(url, params=params).json().get("access_token"))

if __name__ == '__main__':
    main()


解码base64音频数据就可以播放了

const audioUrl = decodeBase64Audio(data.audio_data, data.content_type);

参考官方文档:https://console.bce.baidu.com/support/?timestamp=1776591548702#/api?product=AI&project=%E8%AF%AD%E9%9F%B3%E6%8A%80%E6%9C%AF&parent=%E8%AF%AD%E9%9F%B3%E5%90%88%E6%88%90&api=text2audio&method=post

相关推荐
S1998_1997111609•X2 小时前
Phash的系统通信工程及恶意注入污染蜜罐轮替探测阻断正常通讯协议系统的dog 通用原理及行为阻击至联合国管理清理全栈
安全·百度·哈希算法·量子计算·开闭原则
诸葛务农4 小时前
豆包收费与DeepSeek分级(收费准备?)场景下百度会满血复活吗?
百度·dubbo
KaMeidebaby16 小时前
卡梅德生物技术快报|冻干工艺开发:注射用心肌肽全流程参数优化与工程化方案
前端·其他·百度·新浪微博
S1998_1997111609•X1 天前
哈希树阻断正常系统通信工程进行函数钩子解析
安全·百度·缓存·哈希算法·量子计算
Ew95a55o31 天前
springMVC-RequestMapping注解
dubbo
汤姆yu1 天前
百度文心ERNIE 5.0大模型深度解析
百度·ai·文心一言大模型
KaMeidebaby1 天前
卡梅德生物技术快报|禾本科植物遗传转化:农杆菌介导全流程参数优化与代码化实验方案
其他·百度·新浪微博
KaMeidebaby2 天前
卡梅德生物技术快报|葫芦科植物遗传转化:Fast‑TrACC 工程化优化:葫芦科植物遗传转化效率提升与成本控制
前端·其他·百度·新浪微博
智合同(小智)2 天前
智合同丨“人工智能+”在合同场景落地:国家政策如何重塑企业合规基础设施
百度·智能赋能·智合同·招投标·人工智能+合同·企业合规基础设施·合同审查
吃不胖爹2 天前
主动提交给搜索引擎,例如百度搜索资源平台、Google Search Console:验证站点、提交 sitemap,便于发现和收录
搜索引擎·百度·dubbo