注册

对口型

⚠️ 测试中

POST https://api.quickrouter.ai/kling/v1/videos/advanced-lip-sync 在线调试 →
Authorization

在 Header 添加参数 Authorization,其值为 Bearer 之后拼接 Token

示例: Authorization: Bearer ********************

请求参数

Header 参数
Content-Type string
可选
示例: application/json
Authorization string
可选
示例: Bearer {{YOUR_API_KEY}}
Body 参数 application/json
session_id string
必需
会话ID,会基于对口型人脸识别接口生成
face_choose array [object]
必需
指定人脸对口型;包括人脸ID、口型参考等内容等;暂时仅支持指定单人对口型
face_id string
必需
人脸ID由人脸识别接口返回
audio_id string
可选
通过试听接口生成的音频的ID仅支持使用30天内生成的、时长不短于2秒且不超过60秒的音频/audio_id、sound_file参数二选一,不能同时为空,也不能同时有值
sound_file string
可选
音频文件 支持传入音频Base64编码或图音频URL(确保可访问) 音频文件支持.mp3/.wav/.m4a,文件大小不超过5MB,格式不匹配或文件过大会返回错误码等信息 仅支持使用时长不短于2秒且不长于60秒的音频 audio_id、sound_file参数二选一,不能同时为空,也不能同时有值 系统会校验音频内容,如有问题会返回错误码等信息
sound_start_time integer
必需
音频裁剪起点时间;以原始音频开始时间为准,开始时间为0分0秒,单位ms;起点之前的音频会被裁剪,裁剪后音频不得短于2秒
sound_end_time integer
必需
音频裁剪终点时间 终点时间不得晚于原始音频总时长
sound_insert_time integer
必需
裁剪后音频插入时间 插入音频的时间范围与该人脸可对口型时间区间至少重合2秒时长 插入音频的开始时间不得早于视频开始时间,插入音频的结束时间不得晚于视频结束时间
sound_volume integer
必需
音频音量大小;值越大,音量越大 取值范围:[0, 2]
original_audio_volume integer
必需
原始视频音量大小;值越大,音量越大取值范围:[0, 2];原视频无声时,当前参数无效果
external_task_id string
可选
callback_url string
可选
示例
{
    "session_id": "825465778199224380",
    "face_choose": [
        {
            "face_id": "-1",
            "audio_id": "825451760499568680",
            "sound_file": "",
            "sound_start_time": 0,
            "sound_end_time": 5000,
            "sound_insert_time": 1000,
            "sound_volume": 1,
            "original_audio_volume": 1
        }
    ],
    "external_task_id": "",
    "callback_url": ""
}

请求示例代码

curl --location --request POST 'https://api.quickrouter.ai/kling/v1/videos/advanced-lip-sync' --header 'Authorization: Bearer YOUR_API_KEY' --header 'Content-Type: application/json' --data-raw '{
    "session_id": "825465778199224380",
    "face_choose": [
        {
            "face_id": "-1",
            "audio_id": "825451760499568680",
            "sound_file": "",
            "sound_start_time": 0,
            "sound_end_time": 5000,
            "sound_insert_time": 1000,
            "sound_volume": 1,
            "original_audio_volume": 1
        }
    ],
    "external_task_id": "",
    "callback_url": ""
}'
var myHeaders = new Headers();
myHeaders.append("Authorization", "Bearer YOUR_API_KEY");
myHeaders.append("Content-Type", "application/json");

var raw = JSON.stringify({
  "session_id": "825465778199224380",
  "face_choose": [
    {
      "face_id": "-1",
      "audio_id": "825451760499568680",
      "sound_file": "",
      "sound_start_time": 0,
      "sound_end_time": 5000,
      "sound_insert_time": 1000,
      "sound_volume": 1,
      "original_audio_volume": 1
    }
  ],
  "external_task_id": "",
  "callback_url": ""
});

var requestOptions = {
  method: 'POST',
  headers: myHeaders,
  body: raw,
  redirect: 'follow'
};

fetch("https://api.quickrouter.ai/kling/v1/videos/advanced-lip-sync", requestOptions)
  .then(response => response.text())
  .then(result => console.log(result))
  .catch(error => console.log('error', error));
import http.client
import json

conn = http.client.HTTPSConnection("api.quickrouter.ai")
payload = json.dumps({
  "session_id": "825465778199224380",
  "face_choose": [
    {
      "face_id": "-1",
      "audio_id": "825451760499568680",
      "sound_file": "",
      "sound_start_time": 0,
      "sound_end_time": 5000,
      "sound_insert_time": 1000,
      "sound_volume": 1,
      "original_audio_volume": 1
    }
  ],
  "external_task_id": "",
  "callback_url": ""
})
headers = {
  'Authorization': 'Bearer YOUR_API_KEY',
  'Content-Type': 'application/json'
}
conn.request("POST", "/kling/v1/videos/advanced-lip-sync", payload, headers)
res = conn.getresponse()
data = res.read()
print(data.decode("utf-8"))

返回响应

响应参数 application/json
object string
可选
示例
{}