语音技术 · 同步接口(V1/V2/V3)
文字转语音API(TTS)接入指南
文字转语音API把文本合成为可播放、可下载的音频文件。V1适合基础合成;V2支持多角色音色、方言、语速、音量和音调调节;V3使用与V2相同的请求参数,提供高稳定MP3合成与按字数阶梯计费。V2会优先使用默认合成通道,通道不可用时自动切换到高稳定备用通道。
接口速览
以下信息来自轻语API开放平台生产环境接口元数据,可直接用于技术选型评估。
| 接口地址 | POST /data/api/fetchVoiceByText(V1)/ POST /data/api/fetchVoiceByText_v2(V2)/ POST /data/api/fetchVoiceByText_v3(V3) |
|---|---|
| 计费 | V1、V2以控制台实时价格为准;V3为15个字符以内6钻石,超出后每增加10个字符加3钻石,不足10个字符按10个字符计。V2切换至高稳定备用通道时按V3规则计费。 |
| 频率限制 | V1、V2为100次/分钟;V3为60次/分钟 |
| 超时时间 | V1、V2为30秒;V3为120秒 |
| 鉴权方式 | apikey(注册后获取) |
| 内容类型 | application/json |
请求参数
| 参数名 | 必填 | 类型 | 说明 |
|---|---|---|---|
apikey | 必填 | string | 用户的apikey,身份凭证 |
text | 必填 | string | 用于生成语音文件的内容;V3最多5000个Unicode字符,按字符数计费 |
role | 选填(V2/V3) | string | 角色声音,如"国语|女|颜颜"、"国语|男|小明"、"方言|女|宁宁"等,默认"国语|女|颜颜" |
rate | 选填(V2/V3) | string | 语速:low1-low5减慢,normal正常,fast1-fast5加快 |
volume | 选填(V2/V3) | string | 音量:low1-low5降低,normal正常,fast1-fast5增大 |
pitch | 选填(V2/V3) | string | 音调:low1-low5降低,normal正常,fast1-fast5升高 |
响应示例
V2 成功响应(HTTP 200)
{
"code": 200,
"msg": "操作成功",
"data": {
"url": "https://5555api.com/files/media/voice/tts_xxx.wav"
}
}
V3 成功响应(HTTP 200)
{
"code": 200,
"msg": "操作成功",
"data": {
"url": "https://5555api.com/files/media/profile/upload/media/tts_xxx.mp3",
"characterCount": 12,
"chargedJindou": 6
}
}
调用示例
cURL 示例
# V1 基础合成
curl -X POST 'https://5555api.com/data/api/fetchVoiceByText' \
-H 'Content-Type: application/json' \
-d '{"apikey":"YOUR_APIKEY","text":"欢迎使用轻语API文字转语音接口"}'
# V2 多角色合成(语速加快、音调升高)
curl -X POST 'https://5555api.com/data/api/fetchVoiceByText_v2' \
-H 'Content-Type: application/json' \
-d '{"apikey":"YOUR_APIKEY","text":"今天天气真不错","role":"国语|女|悦悦","rate":"fast1","pitch":"fast1"}'
# V3 高稳定合成(请求参数与V2一致)
curl -X POST 'https://5555api.com/data/api/fetchVoiceByText_v3' \
-H 'Content-Type: application/json' \
-d '{"apikey":"YOUR_APIKEY","text":"欢迎使用轻语API文字转语音接口","role":"国语|女|颜颜","rate":"normal","volume":"normal","pitch":"normal"}'
JavaScript 示例
const body = {
apikey: 'YOUR_APIKEY',
text: '欢迎使用轻语API文字转语音接口',
role: '国语|女|悦悦', // V2/V3 可选
rate: 'normal', // 语速,V2/V3 可选
volume: 'normal', // 音量,V2/V3 可选
pitch: 'normal' // 音调,V2/V3 可选
};
const resp = await fetch('https://5555api.com/data/api/fetchVoiceByText_v3', {
method: 'POST',
headers: { 'Content-Type': 'application/json' },
body: JSON.stringify(body)
});
const result = await resp.json();
if (result.code === 200 && result.data.url) {
new Audio(result.data.url).play(); // 直接播放合成语音
console.log('本次扣除钻石:', result.data.chargedJindou);
}
Python 示例
import requests
resp = requests.post(
'https://5555api.com/data/api/fetchVoiceByText_v3',
json={
'apikey': 'YOUR_APIKEY',
'text': '欢迎使用轻语API文字转语音接口',
'role': '国语|男|小明',
'rate': 'fast1'
}
)
result = resp.json()
if result['code'] == 200:
print('音频地址:', result['data']['url'])
应用场景
有声内容与配音
公众号文章、小说、科普内容一键转语音,多角色音色适合短剧和播客配音。
语音通知与播报
订单状态、告警信息、排队叫号实时合成播报,接入电话或音箱渠道。
无障碍与教育
课件、题库自动朗读,视障用户辅助阅读,语言学习发音示范。
常见问题
文字转语音API的V1、V2和V3有什么区别?
V1(fetchVoiceByText)只传text即可合成;V2(fetchVoiceByText_v2)支持角色音色、语速、音量和音调调节;V3(fetchVoiceByText_v3)使用同一组参数,提供高稳定MP3合成,并按字数阶梯计费。
V2支持哪些角色声音?
支持国语男女声(颜颜、悦悦、小明、小强、小刚等)与方言角色(宁宁等),role参数格式为"国语|女|颜颜"三段式。
V3如何计费?
15个字符以内扣6钻石;从第16个字符开始,每增加10个字符加3钻石,不足10个字符按10个字符计。响应中的characterCount和chargedJindou可用于核对本次计费。
合成结果是什么格式?
V3返回MP3音频文件的网络地址,以及本次计费字符数和扣除钻石数;V1和V2也同步返回可播放、可下载的音频地址。
一次能合成多长的文本?
V3单次最多支持5000个Unicode字符;长文本建议分段合成后再拼接音频。
语速音量音调怎么调?
V2和V3的rate/volume/pitch参数取值为low1-low5(减小/降低)、normal(默认)、fast1-fast5(增大/升高),不传则为normal。
可以在小程序或App里调用吗?
可以。接口为标准HTTP POST + JSON,任何能发HTTP请求的环境都能调用;建议apikey放在服务端转发,避免在前端明文暴露。