语音音色融合V2 | 大装置帮助中心
跳到主要内容

语音合成-音色融合v2

接口描述(Description)

新版本在原有接口基础上,支持Hex格式输出,接口格式


请求地址(Request URL)

[POST] https://api.sensenova.cn/v1/audio/speech_fusion

请求头(Request Header)

无特殊Header,请参考接口鉴权


请求体(Request Body)

参数名类型是否必填默认值说明
modelstring模型名称: 用于指定语音合成所采用的模型, 当前为 SenseNova-Audio-Fusion-0603。
inputstring合成文本内容: 待转换为语音的文本信息, 支持中文及英文内容输入。
streambooleanFALSE是否返回音频流: 用于控制是否以音频流形式返回合成结果, 适用于实时语音合成场景。布尔值类型, 默认值为 false, 表示返回完整的音频数据。
languagestringZH支持语言: ZH, EN, 默认 ZH
voice_settingobject声音设置
audio_settingobject音频格式设置
timbre_weightsobject融合音色权重 (音色名称: 权重值): 用于自定义混合多种音色的合成效果。各音色的权重值总和建议为 1.0, voice 参数指定的主音色必须包含在该权重列表中。支持最多不超过 4 款音色融合。
output_formatstringhex输出格式: 控输出格式。仅支持非流式, 可选值 hex (原始音频输出), url (输出音频链接)。选择 'url' 输出时, 请将 stream 设置成 false。
  • voice_setting 参数如下:
参数名类型是否必填默认值说明
voicestring主音色名称: 用于指定语音合成时的主要音色, 详见音色列表, 在使用融合音色功能时, 该音色也必须包含在 timbre_weights 中。
speedfloat1语速: 用于设置语音的播放速度, 取值范围为 [0.5, 2.0]。其中, 1.0 表示正常语速, 数值越小语速越慢, 数值越大语速越快。
volumefloat1音量: 用于调节合成语音的响度, 取值范围为 (0, 10], 值越大音量越高。
pitchint0音调: 用于控制合成语音的音高, 取值范围为整数 [-12, 12]。其中, 0 表示保持原始音调, 正值提高音调, 负值降低音调。
  • audio_setting 参数如下:
参数名类型是否必填默认值说明
sample_rateint32000音频采样率, 取值范围 [8000, 16000, 22050, 24000, 32000, 44100]
channelint2音频声道, 支持单声道 1, 双声道 2
bitrateint128000音频码率, 支持 MP3, 取值范围 [32000, 64000, 128000, 256000]
response_formatstringmp3输出结果格式: 可选值 mp3、wav、pcm。
  • timbre_weights 参数如下:
参数名类型是否必填默认值说明
voiceweight融合音色
weightfloat(0, 1.0]融合音色权重

timbre_weights: 融合音色权重为空或不存在,默认是单音色。否则是融合音色。

  • voice 可选音色如下:
Voice ID名称是否支持融合
child_reqing热情孩童
man_zhengqi正气中年
man_weiyan威严霸总
guy_qingshuang清爽帅哥
guy_wenrun温润暖男
male_shenqing深情男友
male_miantian腼腆男友
woman_daihuo带货女神
female_chunzhen纯真少女
female_jiaomei娇媚女友
woman_fengyun风韵少妇
man_qiangyu强欲霸总
guy_shizun清冷师尊
guy_nangong挚爱男攻
female_taimei甜甜台妹
guy_guimi男性闺蜜
female_shumei熟媚女神
man_nuanren暖人青叔
guy_naigou1贴心奶狗
guy_xingui冷御新贵
female_sajiao撒娇甜妹
female_diantai电台女声
female_diantai_b娇俏小妹
female_jiejie明魅御姐
female_jiejie_a爱欲女王
female_jiejie_b柔情女王
girl_banxia娇怜软妹
girl_banxia_a破碎少女
man_cucao冷面硬汉
guy_xingui_b深情病娇
guy_qiangai强爱病娇
guy_shengse生涩奶狗
female_jiaonv_a羞婉娇女
female_ruanmei_a俏萌软妹
oldman_zhangzhe威严长者
woman_xiuse羞涩御姐

响应参数(Response Body)

参数名类型说明
dataobject返回的音频数据
trace_idstring本次请求的唯一标识, 用于定位请求
extra_infoobject附加信息
  • data 参数如下:
参数名类型说明
audiostring音频数据内容或者音频文件 url, 由 output_format 决定
statusint当前音频流状态: 1 表示合成中, 2 表示合成结束
  • extra_info 参数如下:
参数名类型说明
lengthint音频时长, 单位毫秒
sizeint音频文件大小
sample_rateint音频采样率
bitratefloat音频码率, 支持 MP3
channelint音频声道, 支持单声道 1, 双声道 2
response_formatstring输出结果格式: 可选值 mp3、wav、pcm
usage_charactersint计费字符数
word_countint已发音的字符数

请求示例(Request Example)

  • 非流式—多音色—hex
curl --location 'https://api.sensenova.cn/v1/audio/speech_fusion' \
--header 'Authorization: Bearer {your api key}' \
--header 'Content-Type: application/json' \
--data '{
"model": "SenseNova-Audio-Fusion-0603",
"input": "明月几时有,把酒问青天。",
"stream": false,
"language": "zh",
"voice_setting": {
"voice": "female_chunzhen",
"speed": 1.0,
"volume": 1.0,
"pitch": 0
},
"audio_setting": {
"sample_rate": 32000,
"channel": 2,
"bitrate": 128000,
"response_format": "mp3"
},
"timbre_weights": [
{ "voice": "female_chunzhen", "weight": 0.7 },
{ "voice": "female_taimei", "weight": 0.3 }
],
"output_format": "hex"
}'

  • 非流式—单音色—hex
curl --location 'https://api.sensenova.cn/v1/audio/speech_fusion' \
--header 'Authorization: Bearer {your api key}' \
--header 'Content-Type: application/json' \
--data '{
"model": "SenseNova-Audio-Fusion-0603",
"input": "明月几时有,把酒问青天。",
"stream": false,
"language": "zh",
"voice_setting": {
"voice": "female_chunzhen",
"speed": 1.0,
"volume": 1.0,
"pitch": 0
},
"audio_setting": {
"sample_rate": 32000,
"channel": 2,
"bitrate": 128000,
"response_format": "mp3"
},
"output_format": "hex"
}'

响应示例(Response Example)

  • 非流式—hex
{
"data":
{
"audio": "base64:AAAAGGZ0... (truncated)",
"status": 2
},
"trace_id": "c4a1e0f3-9d6b-4f68-8a5a-1b2c3d4e5f67",
"extra_info":
{
"length": 2450,
"size": 123456,
"sample_rate": 32000,
"channel": 2,
"bitrate": 128000,
"response_format": "mp3",
"usage_characters": 12,
"word_count": 10
}
}

  • 非流式—url
{
"data":
{
"audio": "https://aoss.cn-sh-01.sensecoreapi-oss.cn/xxxxxx",
"status": 2
},
"trace_id": "c4a1e0f3-9d6b-4f68-8a5a-1b2c3d4e5f67",
"extra_info":
{
"length": 2450,
"size": 123456,
"sample_rate": 32000,
"channel": 2,
"bitrate": 128000,
"response_format": "mp3",
"usage_characters": 12,
"word_count": 10
}
}

请求示例(Request Example)

  • 流式—多音色
curl --location 'https://api.sensenova.cn/v1/audio/speech_fusion' \
--header 'Authorization: Bearer {your api key}' \
--header 'Content-Type: application/json' \
--data '{
"model": "SenseNova-Audio-Fusion-0603",
"input": "明月几时有,把酒问青天。",
"stream": true,
"language": "zh",
"voice_setting": {
"voice": "female_chunzhen",
"speed": 1.0,
"volume": 1.0,
"pitch": 0
},
"audio_setting": {
"sample_rate": 32000,
"channel": 2,
"bitrate": 128000,
"response_format": "mp3"
},
"timbre_weights": [
{ "voice": "female_chunzhen", "weight": 0.7 },
{ "voice": "female_taimei", "weight": 0.3 }
],
"output_format": "hex"
}'

  • 流式—单音色
curl --location 'https://api.sensenova.cn/v1/audio/speech_fusion' \
--header 'Authorization: Bearer {your api key}' \
--header 'Content-Type: application/json' \
--data '{
"model": "SenseNova-Audio-Fusion-0603",
"input": "明月几时有,把酒问青天。",
"stream": true,
"language": "zh",
"voice_setting":
{
"voice": "female_chunzhen",
"speed": 1.0,
"volume": 1.0,
"pitch": 0
},
"audio_setting":
{
"sample_rate": 32000,
"channel": 2,
"bitrate": 128000,
"response_format": "mp3"
},
"output_format": "hex"
}'

响应示例(Response Example)

  • 流式—First chunk
data:{
"data": {
"audio": "hex encoded audio_chunk1",
"status": 1
},
"trace_id": "c4a1e0f3-9d6b-4f68-8a5a-1b2c3d4e5f67",
"extra_info": {
"length": 0,
"size": 0,
"sample_rate": 0,
"channel": 0,
"bitrate": 0,
"response_format": "",
"usage_characters": 0,
"word_count": 0
}
}

  • 流式—Second chunk
data:{
"data": {
"audio": "hex encoded audio_chunk2",
"status": 1
},
"trace_id": "c4a1e0f3-9d6b-4f68-8a5a-1b2c3d4e5f67",
"extra_info": {
"length": 0,
"size": 0,
"sample_rate": 0,
"channel": 0,
"bitrate": 0,
"response_format": "",
"usage_characters": 0,
"word_count": 0
}
}

  • 流式—Final chunk
data:{
"data": {
"audio": "hex encoded audio",
"status": 2
},
"trace_id": "c4a1e0f3-9d6b-4f68-8a5a-1b2c3d4e5f67",
"extra_info": {
"length": 2450,
"size": 123456,
"sample_rate": 32000,
"channel": 2,
"bitrate": 128000,
"response_format": "mp3",
"usage_characters": 12,
"word_count": 10
}
}

  • 流式—返回结束
data: [DONE]