语音合成
更新时间:2025-04-22
百度智能云提供了易于调用的API,可将输入的文本合成为语音。
海量音色可供您选择,更有基于大模型全新升级的语音音色,不仅拥有更高的自然度,还能够依据上下文,智能预测文本的情绪、语调等信息,进而自动匹配与之相应的情感表达。
您可前往能力体验页试听发音人音色。详细音色列表请参见音色列表。音色分为基础/精品/臻品 三类,分别对应不同的计费价格。大模型音色与臻品音色的价格相同。
语音合成为您准备了免费测试资源,已完成实名认证的账号,进入控制台后可自动领取免费测试资源,可以前往资源列表页查看资源领取情况。
模型列表
支持短文本合成、长文本合成两种合成模式,分别对应时效性要求较高的实时语音交互场景(如智能设备语音交互),和需要大量生成音频文件的场景(如有声小说)。
识别模型 | 模型介绍 | 请求地址 | 适用场景 |
---|---|---|---|
短文本合成 | 基于HTTP请求的REST API接口,将文本转换为可以播放的音频文件。最长支持1024字节(约500个汉字)的文本。 | https://tsn.baidu.com/text2audio | 适用于智能设备语音交互等时效性要求高的场景。 |
长文本合成 | 可以将10万字以内文本一次性合成,异步返回音频。支持多种优质音库,将超长文本快速转换成稳定流畅、饱满真实的音频。 | https://aip.baidubce.com/rpc/2.0/tts/v1/create | 适用于阅读听书、视频配音等文字量大、时效性要求低的场景。 |
快速开始
使用前请参考API Key认证鉴权 获取 API Key ,用于语音合成服务的认证鉴权。
短文本合成
多音字可以通过标注自行定义发音。格式如:重(chong2)报集团。
目前只有中英文混合这一种语言,优先中文发音。示例: " I bought 3 books” 发音 “three”; “ 3 books are bought” 发音 “three”; “我们买了 3 books” 发音“三”
以下为使用curl请求接口的示例:
Plain Text
1curl --location --request POST 'https://tsn.baidu.com/text2audio' \
2--header 'Authorization: Bearer bce-v3/ALTAK-*********/614fb**********' \
3--header 'Content-Type: application/x-www-form-urlencoded' \ ##注意传入格式需要是x-www-form-urlencoded
4--data-urlencode 'tex=今天的天气真不错' \ ##待合成的文本
5--data-urlencode 'cuid=baidu_workshop' \ ##用户自定义id
6--data-urlencode 'ctp=1' \ ##固定填入1
7--data-urlencode 'lan=zh' \ ##固定填入zh
8--data-urlencode 'per=5003' ##发音人id。全部发音人id列表请见文档顶部音色列表
长文本合成
Plain Text
1curl --location --request POST 'https://aip.baidubce.com/rpc/2.0/tts/v1/create' \
2--header 'Authorization: Bearer bce-v3/ALTAK-*********/614fb**********' \
3--header 'Content-Type: application/json' \
4--data-raw '{
5 "text": [
6 "今年上半年我国工业行业面临的内外部环境还是比较严峻复杂的",
7 "段落2",
8 "段落3"
9 ],
10 "format": "mp3-16k",
11 "voice": 4193,
12 "lang": "zh",
13 "speed": 5,
14 "enable_subtitle": 2,
15 "break": 0
16}'
长文本合成为异步接口,发送合成请求后,需要通过结果查询接口查询当前状态和获取最终的转写结果。结果查询接口的调用示例如下:
Plain Text
1curl --location --request POST 'https://aip.baidubce.com/rpc/2.0/tts/v1/query' \
2--header 'Authorization: Bearer bce-v3/ALTAK-*********/614fb**********' \
3--header 'Content-Type: application/json' \
4--data-raw '{
5 "task_ids": ["67d3e1529048979001b6f020"]
6}'