创建语音克隆任务
启动一个语音克隆任务。您可以直接上传音频文件,也可以提供现有音频文件的 URL。
请求信息
- 方法:
POST - 端点:
/api/instant/create-task - 内容类型:
multipart/form-data或application/json
请求参数
| 参数 | 类型 | 必需 | 描述 |
|---|---|---|---|
audio | 文件 (二进制) | 是* | 用于语音克隆的音频文件。支持的格式包括 WAV、MP3 和 M4A。仅支持 multipart/form-data 格式。您必须提供 audio 或 audio_url 之一。 |
audio_url | string | 是* | 用于语音克隆的公开可访问的音频文件 URL (WAV, MP3, M4A)。支持 multipart/form-data 和 application/json 两种格式。您必须提供 audio 或 audio_url 之一。 |
text | string | 是 | 您希望以克隆语音合成的文本。 |
api_key | string | 是 | 您的唯一 API 密钥,用于认证和访问。此密钥用于验证您的请求并将其链接到您的用户帐户。 |
model | string | 否 | 语音克隆模型版本。可选值:v1、v2、v-mul。默认值为 v2。不同模型在音质、处理速度和多语言支持上有所差异。 |
speed_ratio | float | 否 | 语速比例,范围 0.5-2.0,默认值为 1.0 |
pitch_ratio | float | 否 | 音调偏移,范围 -10 到 10 半音,默认值为 0 |
volume_ratio | float | 否 | 音量比例,范围 0.1-2.0,默认值为 1.0 |
emotion_control | object | 否 | 情感控制参数(仅 V2 模型支持)。支持多种情感控制模式,详见下方说明 |
*注意:
audio和audio_url参数二选一,至少提供其中一个- 使用
application/json格式时,只能使用audio_url参数 - 使用
multipart/form-data格式时,两个参数都支持
响应
成功响应
{
"task_id": "1406bf34-735c-4b21-98ac-a135b2afb1c8",
"status": "pending"
}错误响应
- 400 Bad Request: 缺少必需参数(例如
api_key,或audio/audio_url均未提供)
示例请求
使用音频文件
curl -X POST https://aivoiceclonefree.com/api/instant/create-task \
-F "[email protected]" \
-F "text=这是一段很长的文本,适合使用异步接口处理..." \
-F "api_key=your_api_key_here"使用音频URL
curl -X POST https://aivoiceclonefree.com/api/instant/create-task \
-F "audio_url=https://example.com/sample.mp3" \
-F "text=这是一段很长的文本,适合使用异步接口处理..." \
-F "api_key=your_api_key_here"使用指定模型
curl -X POST https://aivoiceclonefree.com/api/instant/create-task \
-F "[email protected]" \
-F "text=这是一段很长的文本,适合使用异步接口处理..." \
-F "api_key=your_api_key_here" \
-F "model=v2"使用音频处理参数
curl -X POST https://aivoiceclonefree.com/api/instant/create-task \
-F "[email protected]" \
-F "text=这是一段很长的文本,适合使用异步接口处理..." \
-F "api_key=your_api_key_here" \
-F "model=v2" \
-F "speed_ratio=1.2" \
-F "pitch_ratio=2" \
-F "volume_ratio=1.5"使用 JSON 格式(配合 audio_url)
curl -X POST https://aivoiceclonefree.com/api/instant/create-task \
-H "Content-Type: application/json" \
-d '{
"audio_url": "https://example.com/sample.mp3",
"text": "这是一段很长的文本,适合使用异步接口处理...",
"api_key": "your_api_key_here",
"model": "v2",
"speed_ratio": 1.2,
"pitch_ratio": 2,
"volume_ratio": 1.5
}'模型选择说明
API 支持三种语音克隆模型,您可以根据需求选择:
| 模型 | 描述 | 适用场景 |
|---|---|---|
v2 | 第二代模型(默认),平衡音质和处理速度 | 推荐用于大多数场景,提供高质量的语音克隆效果 |
v1 | 第一代模型,较快的处理速度 | 适合对处理速度有较高要求的场景 |
v-mul | 多语言模型,支持跨语言语音克隆 | 适合需要多语言支持的应用场景 |
注意:如果不指定 model 参数,系统将默认使用 v2 模型。
情感控制参数 (emotion_control)
仅 V2 模型支持情感控制功能,通过 emotion_control 对象传递。可以在 JSON 格式的请求中直接传递。
情感控制模式
| 模式 | mode 值 | 说明 | 额外参数 |
|---|---|---|---|
| 参考音频相同 | same_as_reference | 使用参考音频的情绪(默认) | 无 |
| 参考音频 | reference_audio | 使用指定的参考音频控制情绪 | reference_audio_url |
| 向量控制 | vector | 使用8维情感向量控制情绪 | vector 对象 |
| 文本描述 | text | 使用文本描述控制情绪 | text 字符串 |
| 随机情绪 | random | 随机生成情绪 | 无 |
8维情感向量 (vector 模式)
使用向量模式时,可以精确控制8种情感的强度,每个值范围为 0.0-1.0:
{
"joy": 0.5, // 喜 (0.0-1.0)
"anger": 0.0, // 怒 (0.0-1.0)
"sorrow": 0.0, // 哀 (0.0-1.0)
"fear": 0.0, // 惧 (0.0-1.0)
"excitement": 0.3, // 兴奋 (0.0-1.0)
"depression": 0.0, // 低落 (0.0-1.0)
"surprise": 0.2, // 惊喜 (0.0-1.0)
"calm": 0.0 // 平静 (0.0-1.0)
}情感控制示例
使用向量控制情感(快乐+兴奋)
curl -X POST https://aivoiceclonefree.com/api/instant/create-task \
-H "Content-Type: application/json" \
-d '{
"audio_url": "https://example.com/sample.mp3",
"text": "今天天气真好!",
"api_key": "your_api_key_here",
"model": "v2",
"emotion_control": {
"mode": "vector",
"vector": {
"joy": 0.8,
"excitement": 0.6,
"surprise": 0.3,
"calm": 0.2
}
}
}'使用文本描述控制情感
curl -X POST https://aivoiceclonefree.com/api/instant/create-task \
-H "Content-Type: application/json" \
-d '{
"audio_url": "https://example.com/sample.mp3",
"text": "这真是太棒了!",
"api_key": "your_api_key_here",
"model": "v2",
"emotion_control": {
"mode": "text",
"text": "excited and happy"
}
}'使用参考音频控制情感
curl -X POST https://aivoiceclonefree.com/api/instant/create-task \
-H "Content-Type: application/json" \
-d '{
"audio_url": "https://example.com/sample.mp3",
"text": "我感到非常开心",
"api_key": "your_api_key_here",
"model": "v2",
"emotion_control": {
"mode": "reference_audio",
"reference_audio_url": "https://example.com/emotion-ref.wav"
}
}'任务状态说明
创建任务后,您会收到一个 task_id 和初始状态 pending。可能的状态值:
| 状态 | 描述 |
|---|---|
pending | 任务已提交,等待处理 |
processing | 任务正在处理中 |
completed | 任务已完成 |
failed | 任务处理失败 |
下一步
任务创建成功后:
最佳实践
- 文本长度: 建议单次任务文本长度不超过10000字符
- 音频质量: 使用高质量的音频样本可以获得更好的克隆效果
- 请求格式:
- 使用
multipart/form-data: 可以直接上传音频文件(audio参数)或使用音频URL(audio_url参数) - 使用
application/json: 只能使用音频URL(audio_url参数)
- 使用
- API限制: 注意API调用频率限制,避免过于频繁的请求
Last updated on