文档OriHub
音频模型调用
语音合成和音乐生成都是异步任务;TTS 先挑音色,音乐要带歌词。
音频模型分两类:语音合成(TTS,文字转语音)和音乐生成。协议跟图片、视频一样 —— 提交任务拿 task_id,再轮询到出结果。
这一页讲怎么挑模型、怎么用;每个接口的完整参数在创建语音合成任务、创建音乐生成任务、查询音色列表、克隆音色。
提交任务
curl https://api.lk888.ai/v1/media/generate \
-H "Authorization: Bearer $OPENAI_API_KEY" \
-H "Content-Type: application/json" \
-d '{
"model": "gem-3.1-tts",
"prompt": "大家好,欢迎收听本期节目",
"params": { "voice_id": "Zephyr" }
}'
{ "code": 200, "data": { "task_id": 12345 }, "msg": "Task created successfully" }
轮询结果
curl "https://api.lk888.ai/v1/skills/task-status?task_id=12345" \
-H "Authorization: Bearer $OPENAI_API_KEY"
间隔 5 秒,is_final = true 停。成品在 result_url(.mp3 / .wav),result_type 是 audio,cost 是结算金额。
音色
TTS 的 voice_id 不是自己编的,先查再用:
curl "https://api.lk888.ai/v1/skills/voices" \
-H "Authorization: Bearer $OPENAI_API_KEY"
返回的 voices 数组里每个音色带 voice_id、name、type(preset 预设 / cloned 克隆)、model、demo_audio,有的还带 gender、description、language。
按模型过滤:
| 过滤 | 拿到什么 |
|---|---|
?model=gem-2.5-tts ?model=gem-3.1-tts |
GEM 预设音色(同族共享) |
?model=speech-2.8 |
你自己克隆的音色 |
?model=vidu-jieshuoman |
Vidu 漫剧预设音色,带 language 标明支持的语言 |
不带 model |
全部 |
查到的 voice_id 放进请求体的 params.voice_id。GEM 系会自己转成内部的 voice_name,speech-2.8 和 vidu-jieshuoman 直接用 voice_id。
克隆自己的音色
只有 speech-2.8 支持:
curl https://api.lk888.ai/v1/skills/voices/clone \
-H "Authorization: Bearer $OPENAI_API_KEY" \
-H "Content-Type: application/json" \
-d '{
"audio_url": "https://example.com/my-voice-sample.mp3",
"name": "我的音色"
}'
audio_url得是公网可访问的音频直链(上游支持的格式);也可以内联 base64,只支持 MP3 / WAV / M4A,解码后 ≤20MB- 克隆扣 0.1 算力点;第一次用这个音色合成时还要额外扣 18.8 算力激活费,两笔独立
- 音色名每人唯一,≤50 字
- 新克隆的音色默认 7 天有效,第一次用来生成后转永久;过期的不会出现在列表里
- 样本建议 10–60 秒,单人、清晰、无杂音 —— 效果主要取决于样本
音乐模型要带歌词
music-2.5 和 music-2.5+ 在歌曲模式下(is_instrumental 不设成 instrumental),params 里必须带 lyrics,否则报 lyrics cannot be empty:
{
"model": "music-2.5",
"prompt": "A upbeat pop song about city nights",
"params": {
"is_instrumental": "song",
"lyrics": "[Verse]\nCity lights are shining bright tonight\nWe are dancing till the morning light",
"bitrate": "256000",
"sample_rate": "44100"
}
}
支持的模型
8 个,两类:
- Doubao 语音合成 2.0
- Gemini-2.5-TTS
- Gemini-3.1-TTS
- Hailuo 语音克隆 2.8
- Hailuo 音乐生成 2.5
- Hailuo 音乐生成 2.5+
- Suno 音乐生成 4.5
- Suno 音乐生成 6
特别注意
- 参数名各模型不同 —— 先查
GET /v1/skills/models/{name}:豆包用emotion/emotion_scale/speech_rate/format,GEM 用model_version,音乐用bitrate/sample_rate/is_instrumental/lyrics - Suno 和 Hailuo 音乐差别:Suno 支持伴奏续写和卡拉OK字幕,Suno V6 与 Hailuo 2.5+ 支持纯音乐
- 提交前查余额 ——
GET /v1/skills/balance。克隆音色也扣点 - 一个请求建一个任务,没有 count 参数
- 失败看
error_code:内容违规 / 参数不对 / 余额不足 / 超额 / 密钥配置 —— 重发还是失败;线路没了 / 上游抽风 / 服务端错误 —— 等一下可以重试 - 分组路由由密钥的调度策略决定,请求体里的
channel_group和请求头X-Channel-Group都不改路由