Task: Video Dubbing - Lip Sync
Overview
- Method:
POST - Path:
/kling/v1/videos/lip-sync - Content-Type:
application/json
Authentication
- Header:
Authorization: Bearer <token>
Example Request (main fields)
| Parameter | Type | Required | Description |
|---|---|---|---|
| input.video_id | string | Conditional | Video ID, or use input.video_url instead |
| input.video_url | string | Conditional | Video URL, or use input.video_id instead |
| input.mode | string | Yes | text2video / audio2video |
| input.text | string | Conditional | Required for text2video mode, max 120 characters |
| input.voice_id | string | Conditional | Required for text2video mode, voice style ID |
| input.voice_language | string | Conditional | Required for text2video mode, zh / en |
| input.voice_speed | number | Conditional | Required for text2video mode, range 0.8-2.0 |
| input.audio_type | string | Conditional | Required for audio2video mode, file / url |
| input.audio_file | string | Conditional | Required for audio2video + file, Base64 encoded |
| input.audio_url | string | Conditional | Required for audio2video + url |
| callback_url | string | No | Callback URL |
curl Example
bash
curl -X POST "https://api.gpt.ge/kling/v1/videos/lip-sync" \
-H "Content-Type: application/json" \
-H "Authorization: Bearer sk-xxxx" \
-d '{
"input": {
"video_id": "c01bbafe-712e-4a00-8265-fe7b4e9b17bf",
"mode": "text2video",
"text": "The sky roars loudly, I make a dazzling entrance",
"voice_id": "chat1_female_new-3",
"voice_language": "zh"
}
}'Success Response Example (200)
json
{
"code": 0,
"message": "SUCCEED",
"request_id": "ClpejWduJGYAAAAAAUvWMw",
"data": {
"task_id": "ClpejWduJGYAAAAAAUvWMw",
"task_status": "submitted",
"created_at": 1736058335197,
"updated_at": 1736058335197,
"task_result": {
"images": [],
"videos": null
}
}
}