Sync Lipsync 3
Интеграциялау
sync-lipsync/v3
# Run the model; wait up to 20 s for the finished result in the same call
curl -X POST "https://api.doitong.com/v1/run/sync-lipsync/v3?wait=20" \
-H "Authorization: Bearer $DOITONG_API_KEY" \
-H "Content-Type: application/json" \
-d '{
"video": "https://content.doitong.com/video/showcase/v3/avatar/talking_avatar_loop.mp4",
"audio": "https://content.doitong.com/audio/showcase/v3/tools/dub_es.mp3"
}'
# Still "queued" or "running"? Poll with the id from the response:
curl "https://api.doitong.com/v1/requests/REQUEST_ID?wait=20" \
-H "Authorization: Bearer $DOITONG_API_KEY"
const API = "https://api.doitong.com/v1";
const headers = {
"Authorization": "Bearer " + process.env.DOITONG_API_KEY,
"Content-Type": "application/json",
};
// Run the model; wait up to 20 s for the finished result in the same call
let res = await fetch(API + "/run/sync-lipsync/v3?wait=20", {
method: "POST",
headers,
body: JSON.stringify({
"video": "https://content.doitong.com/video/showcase/v3/avatar/talking_avatar_loop.mp4",
"audio": "https://content.doitong.com/audio/showcase/v3/tools/dub_es.mp3"
}),
});
let request = await res.json();
if (!res.ok) throw new Error(request.error.code + ": " + request.error.message);
// Not finished yet: long-poll until it is
while (request.status === "queued" || request.status === "running") {
res = await fetch(API + "/requests/" + request.id + "?wait=20", { headers });
request = await res.json();
}
if (request.status !== "succeeded") throw new Error(JSON.stringify(request.error));
console.log(request.outputs.map((o) => o.url), request.cost.credits + " API credits ($" + request.cost.usd + ")");
import os
import requests
API = "https://api.doitong.com/v1"
headers = {"Authorization": "Bearer " + os.environ["DOITONG_API_KEY"]}
payload = {
"video": "https://content.doitong.com/video/showcase/v3/avatar/talking_avatar_loop.mp4",
"audio": "https://content.doitong.com/audio/showcase/v3/tools/dub_es.mp3",
}
# Run the model; wait up to 20 s for the finished result in the same call
r = requests.post(API + "/run/sync-lipsync/v3", params={"wait": 20}, json=payload, headers=headers)
request = r.json()
if not r.ok:
raise RuntimeError(request["error"]["code"] + ": " + request["error"]["message"])
# Not finished yet: long-poll until it is
while request["status"] in ("queued", "running"):
request = requests.get(API + "/requests/" + request["id"], params={"wait": 20}, headers=headers).json()
if request["status"] != "succeeded":
raise RuntimeError(request["error"])
print([o["url"] for o in request["outputs"]], request["cost"]["credits"], "API credits", "$" + request["cost"]["usd"])
# 1. Connect once (Claude Code; Cursor, VS Code, Claude Desktop: https://doitong.com/kk/developers/docs/mcp)
claude mcp add --transport http doitong-models https://api.doitong.com/v1/mcp \
--header "Authorization: Bearer $DOITONG_API_KEY"
# 2. Your agent calls the "run" tool with:
{
"model_id": "sync-lipsync/v3",
"input": {
"video": "https://content.doitong.com/video/showcase/v3/avatar/talking_avatar_loop.mp4",
"audio": "https://content.doitong.com/audio/showcase/v3/tools/dub_es.mp3"
}
}
Sync Lipsync 3 моделін (sync-lipsync/v3) Doitong API арқылы шақырыңыз. Агенттерге арналған құжаттама: https://doitong.com/kk/developers/models/sync-lipsync/v3.md
POST https://api.doitong.com/v1/run/sync-lipsync/v3?wait=20
Authorization: Bearer $DOITONG_API_KEY
Content-Type: application/json
{
"video": "https://content.doitong.com/video/showcase/v3/avatar/talking_avatar_loop.mp4",
"audio": "https://content.doitong.com/audio/showcase/v3/tools/dub_es.mp3"
}
Жауап күйі "queued" немесе "running" болса, ол "succeeded" болғанша GET https://api.doitong.com/v1/requests/REQUEST_ID?wait=20 арқылы күйін тексеріңіз; файлдар outputs[].url ішінде болады. Дәл іске қосу бағасын алдын ала алу үшін POST https://api.doitong.com/v1/quote/sync-lipsync/v3 сұрауын сол денемен жіберіңіз.
Мысалдағыдай файлдар: 1,334 $ 1 334 API кредиті файлдарыңыз іске қосу алдында өлшенеді Осы бетте іске қосу
Жаңа API кілтіңіз. Ол тек қазір көрсетіледі және кодта, сондай-ақ төмендегі API кілті өрісінде бар. Оны құпия сақтаңыз: браузерде орындалатын кодқа ешқашан енгізбеңіз.
Алғашқы нәтижеңіз осында пайда болады
Төменде сұрау құрып, оны API кілтіңізбен іске қосыңыз. Шығыстар сақтау орнымызға көшіріліп, мәңгі немесе 7 күн тегін сақталады.
Сұрау жасау
Басқару элементтері модель схемасынан жасалады. Оларды өзгерткен сайын код пен баға жаңартылады.
/run/sync-lipsync/v3?wait=20
бағасы → 1,334 $
# Run the model; wait up to 20 s for the finished result in the same call
curl -X POST "https://api.doitong.com/v1/run/sync-lipsync/v3?wait=20" \
-H "Authorization: Bearer $DOITONG_API_KEY" \
-H "Content-Type: application/json" \
-d '{
"video": "https://content.doitong.com/video/showcase/v3/avatar/talking_avatar_loop.mp4",
"audio": "https://content.doitong.com/audio/showcase/v3/tools/dub_es.mp3"
}'
# Still "queued" or "running"? Poll with the id from the response:
curl "https://api.doitong.com/v1/requests/REQUEST_ID?wait=20" \
-H "Authorization: Bearer $DOITONG_API_KEY"
const API = "https://api.doitong.com/v1";
const headers = {
"Authorization": "Bearer " + process.env.DOITONG_API_KEY,
"Content-Type": "application/json",
};
// Run the model; wait up to 20 s for the finished result in the same call
let res = await fetch(API + "/run/sync-lipsync/v3?wait=20", {
method: "POST",
headers,
body: JSON.stringify({
"video": "https://content.doitong.com/video/showcase/v3/avatar/talking_avatar_loop.mp4",
"audio": "https://content.doitong.com/audio/showcase/v3/tools/dub_es.mp3"
}),
});
let request = await res.json();
if (!res.ok) throw new Error(request.error.code + ": " + request.error.message);
// Not finished yet: long-poll until it is
while (request.status === "queued" || request.status === "running") {
res = await fetch(API + "/requests/" + request.id + "?wait=20", { headers });
request = await res.json();
}
if (request.status !== "succeeded") throw new Error(JSON.stringify(request.error));
console.log(request.outputs.map((o) => o.url), request.cost.credits + " API credits ($" + request.cost.usd + ")");
import os
import requests
API = "https://api.doitong.com/v1"
headers = {"Authorization": "Bearer " + os.environ["DOITONG_API_KEY"]}
payload = {
"video": "https://content.doitong.com/video/showcase/v3/avatar/talking_avatar_loop.mp4",
"audio": "https://content.doitong.com/audio/showcase/v3/tools/dub_es.mp3",
}
# Run the model; wait up to 20 s for the finished result in the same call
r = requests.post(API + "/run/sync-lipsync/v3", params={"wait": 20}, json=payload, headers=headers)
request = r.json()
if not r.ok:
raise RuntimeError(request["error"]["code"] + ": " + request["error"]["message"])
# Not finished yet: long-poll until it is
while request["status"] in ("queued", "running"):
request = requests.get(API + "/requests/" + request["id"], params={"wait": 20}, headers=headers).json()
if request["status"] != "succeeded":
raise RuntimeError(request["error"])
print([o["url"] for o in request["outputs"]], request["cost"]["credits"], "API credits", "$" + request["cost"]["usd"])
{
"jsonrpc": "2.0",
"id": 1,
"method": "tools/call",
"params": {
"name": "run",
"arguments": {
"model_id": "sync-lipsync/v3",
"input": {
"video": "https://content.doitong.com/video/showcase/v3/avatar/talking_avatar_loop.mp4",
"audio": "https://content.doitong.com/audio/showcase/v3/tools/dub_es.mp3"
},
"wait_seconds": 20
}
}
}
Осы сұрауды іске қосу
Кілтіңіз осы браузерде қалады: ол тек Doitong API-ге жіберіледі және Remember параметрін белгілеcеңіз ғана localStorage ішінде сақталады. API кілтін алу
Sync Lipsync 3 туралы
Sync Labs компаниясының lipsync-3 моделі бейнедегі адамның ауыз қозғалысын жаңа дауыс жолына сәйкестендіреді, бұл дубляжға, жарнаманы жергіліктендіруге және постөңдеуде жолдарды түзетуге арналған. Аудио мен бейне ұзақтығы әртүрлі болса, кесу, циклмен қайталау, кері бағытта қайталау, үнсіздікпен толықтыру немесе қайта сәйкестендіруді таңдаңыз.
Параметрлер
Канондық атауды немесе төл атауды жіберіңіз, екеуін қатар жібермеңіз. Канондық атаулар
video_urlміндетті
video
audio_urlміндетті
audio
sync_modeміндетті емес
optionsміндетті емес
options.sync_modeміндетті емес
options.model_modeміндетті емес
options.promptміндетті емес
options.temperatureміндетті емес
options.active_speaker_detectionміндетті емес
options.active_speaker_detection.auto_detectміндетті емес
options.active_speaker_detection.v3міндетті емес
options.active_speaker_detection.use_v2міндетті емес
options.active_speaker_detection.frame_numberміндетті емес
options.active_speaker_detection.coordinatesміндетті емес
options.active_speaker_detection.bounding_boxesміндетті емес
options.active_speaker_detection.bounding_boxes_urlміндетті емес
options.active_speaker_detection.face_imageміндетті емес
options.occlusion_detection_enabledміндетті емес
Файл параметрлері жалпыға қолжетімді https:// URL мекенжайын, 10 MB-қа дейінгі data: URI мекенжайын немесе жүктеп салынған файлдың file_url мәнін қабылдайды. Файлдар
Шығыс
{
"id": "req_8k2m4q7x1z9c3v5b6n0p2r4t",
"object": "request",
"model": "sync-lipsync/v3",
"status": "succeeded",
"created_at": "2026-10-20T12:00:00Z",
"started_at": "2026-10-20T12:00:02Z",
"completed_at": "2026-10-20T12:00:09Z",
"queue_position": null,
"cost": {
"credits": 1334,
"usd": "1.334",
"charged": 1334,
"refunded": 0
},
"input": {
"video": "https://content.doitong.com/video/showcase/v3/avatar/talking_avatar_loop.mp4",
"audio": "https://content.doitong.com/audio/showcase/v3/tools/dub_es.mp3"
},
"output": {
"video": {
"url": "https://content.doitong.com/dev-api/2026/10/20/req_8k2m4q7x1z9c3v5b6n0p2r4t/0-output.mp4",
"content_type": "video/mp4",
"file_name": "0-output.mp4",
"file_size": 1843200
}
},
"outputs": [
{
"type": "video",
"url": "https://content.doitong.com/dev-api/2026/10/20/req_8k2m4q7x1z9c3v5b6n0p2r4t/0-output.mp4",
"content_type": "video/mp4",
"file_size": 1843200,
"width": 1280,
"height": 720,
"duration": 5,
"stored": true
}
],
"error": null,
"metrics": {
"inference_seconds": 6.8
},
"urls": {
"self": "https://api.doitong.com/v1/requests/req_8k2m4q7x1z9c3v5b6n0p2r4t",
"cancel": "https://api.doitong.com/v1/requests/req_8k2m4q7x1z9c3v5b6n0p2r4t/cancel"
}
}
Шығыс өрістері
- video
- object {url, content_type, file_name, file_size}Модель жасаған бейне.
Sync 3 модельдерінің басқа нұсқалары
Қосымша модельдер: Ерін синхрондауы және аватарлар
AI агенттеріне: бұл беттің Markdown нұсқасы мына жерде: https://doitong.com/kk/developers/models/sync-lipsync/v3.md. Барлық модельдер мен нұсқаулықтар: https://doitong.com/developers/llms.txt