Kling Omni Video O3
kwaivgi/kling-video-o3/video-edit
Kling Omni Video O3 Reference-to-Video generates creative videos using character, prop, or scene references from multiple viewpoints. Extracts subject features and creates new video content while maintaining identity consistency across frames. Supports audio generation. Ready-to-use REST API, best performance, no cold starts, affordable pricing.
Examples
Parameters
| Name | Type | Default | Constraints | Description |
|---|---|---|---|---|
| imagesImages | image_upload | — | image/* · 1–7 items | Reference images. With a reference video: image elements ≤ 4; without a reference video: ≤ 7 |
| promptPrompt | textarea | — | ≤ 5000 chars | The positive prompt for the generation. |
| resolutionGeneration Mode | select | 720P | 720P | 1080P | |
| soundSound | boolean | false | — | Whether to generate audio for the video. |
| keep_original_soundKeep Original Sound | boolean | true | — | Whether to keep the original sound from the reference video. |
| multi_shotMulti Shot | boolean | — | — | Whether to generate multi-shot video When true: the prompt parameter is invalid. When false: the shot_type and multi_prompt parameters are invalid |
| shot_typeShot Type | select | — | customize | intelligence | Shot type for the generation. |
| multi_promptMulti Prompt | array<object> | — | — | List of multi-prompt elements for the generation. |
| ↳durationDuration | number | 5 | — | The duration of this shot in seconds. |
| ↳promptPrompt | text | — | — | The prompt for this shot. |
API
Call this model through one unified REST API. Get a key on the API Keys page.
cURL
# 1) Submit — returns { "task_uuid": "..." }
curl -X POST "https://www.namifusion.com/api/v1/marketplace/run/kwaivgi/kling-video-o3/video-edit" \
-H "Authorization: Bearer YOUR_API_KEY" \
-H "Content-Type: application/json" \
-d '{
"input": {
"images": [
"https://assets-public.namifusion.com/marketplace/images/2026-04-14/54456cddb7de.png"
],
"prompt": "Use reference image 1 as the female character and reference.",
"resolution": "720P",
"sound": false,
"keep_original_sound": false,
"shot_type": "intelligence"
}
}'
# 2) Poll until status is "completed", then read the output URLs
curl "https://www.namifusion.com/api/v1/marketplace/run/tasks/TASK_UUID" \
-H "Authorization: Bearer YOUR_API_KEY"Python
import time, requests
API_KEY = "YOUR_API_KEY"
HEADERS = {"Authorization": f"Bearer {API_KEY}"}
# 1) Submit
resp = requests.post(
"https://www.namifusion.com/api/v1/marketplace/run/kwaivgi/kling-video-o3/video-edit",
headers=HEADERS,
json={
"input": {
"images": [
"https://assets-public.namifusion.com/marketplace/images/2026-04-14/54456cddb7de.png"
],
"prompt": "Use reference image 1 as the female character and reference.",
"resolution": "720P",
"sound": False,
"keep_original_sound": False,
"shot_type": "intelligence"
}
},
)
resp.raise_for_status() # 401/402/429/5xx stop here instead of polling a bad task
task = resp.json()
# 2) Poll until a terminal state (completed / failed / cancelled).
# This model is allowed up to 300s server-side.
deadline = time.time() + 360
while task.get("status") not in ("completed", "failed", "cancelled"):
if time.time() > deadline:
raise TimeoutError(f"still {task.get('status')} — keep the task_uuid and poll later")
time.sleep(3)
poll = requests.get(f"https://www.namifusion.com/api/v1/marketplace/run/tasks/{task['task_uuid']}", headers=HEADERS)
poll.raise_for_status()
task = poll.json()
print(task["status"], task.get("output"))JavaScript
const API_KEY = "YOUR_API_KEY";
const HEADERS = { Authorization: `Bearer ${API_KEY}` };
// 1) Submit
const resp = await fetch("https://www.namifusion.com/api/v1/marketplace/run/kwaivgi/kling-video-o3/video-edit", {
method: "POST",
headers: { ...HEADERS, "Content-Type": "application/json" },
body: JSON.stringify({
"input": {
"images": [
"https://assets-public.namifusion.com/marketplace/images/2026-04-14/54456cddb7de.png"
],
"prompt": "Use reference image 1 as the female character and reference.",
"resolution": "720P",
"sound": false,
"keep_original_sound": false,
"shot_type": "intelligence"
}
}),
});
if (!resp.ok) throw new Error(`submit failed: ${resp.status} ${await resp.text()}`);
let task = await resp.json();
// 2) Poll until a terminal state (completed / failed / cancelled).
// This model is allowed up to 300s server-side.
const deadline = Date.now() + 360 * 1000;
while (!["completed", "failed", "cancelled"].includes(task.status)) {
if (Date.now() > deadline) throw new Error(`still ${task.status} — keep the task_uuid and poll later`);
await new Promise((r) => setTimeout(r, 3000));
const poll = await fetch(`https://www.namifusion.com/api/v1/marketplace/run/tasks/${task.task_uuid}`, { headers: HEADERS });
if (!poll.ok) throw new Error(`poll failed: ${poll.status}`);
task = await poll.json();
}
console.log(task.status, task.output);Documentation
Kling Video O3 Video Edit
Advanced Video Modification via Natural Language
Kling Omni Video O3 Video Edit empowers developers to modify existing videos using natural language instructions. By combining a source video with precise text prompts, the model can alter styles, swap elements, or adjust specific actions while maintaining the original video's structural integrity. Optimized for professional creative pipelines, it offers a cost-effective solution for rapid video iteration and post-production.
🚀 Key Features
- Instruction-Based Editing: Transform videos by simply describing the changes you want to see.
- Temporal Consistency: Ensures that edits remain fluid and consistent across the entire duration of the clip.
- Style & Element Swapping: Change the environment, clothing, or artistic style of a video without manual frame-by-frame editing.
- Duration Alignment: The edited output length automatically matches the duration of the source video.
- Fixed Aspect Ratio: Maintains the original aspect ratio of the source video for maximum fidelity.
- Audio Preservation: Option to keep the original soundtrack while the visual content is being modified.
🛠️ Technical Specifications
| Parameter | Type | Required | Default | Range/Options | Description |
|---|---|---|---|---|---|
| prompt | string | Yes | - | - | Text instructions describing the edits or changes |
| video | string | Yes | - | - | The source video URL (3–10 seconds) |
| negative_prompt | string | No | - | - | Descriptions of elements to avoid in the edit |
| keep_original_sound | boolean | No | True | - | Retain original sound from the source video |
| shot_type | string | No | customize | customize, intelligent | Editing mode for generation |
💰 Pricing
| Attribute | 720P | 1080P |
|---|---|---|
| Video Edit + Silent | 0.1260 | 0.1680 |
| Video Edit + Original Sound | 0.1540 | 0.1960 |
Billing Rules:
- All prices are in USD.
- Billing is based on the duration of the input video.
- Rates are determined by output resolution and audio status.
- Supported duration: 3–10 seconds.
💡 Best Use Cases
- Post-Production: Quickly adjust colors, lighting, or background elements in existing footage.
- E-commerce & Ads: Update product videos with new seasonal styles or localized text/elements.
- Social Media Trends: Apply viral artistic styles or filters to personal videos using text prompts.
- Film & Animation: Iteratively refine character appearances or environmental details during the concept phase.
🔗 Related Models
- Kling Video O3 Text-to-Video: Generate videos from scratch using text prompts.
- Kling Video O3 Image-to-Video: Animate static images into dynamic videos.
- Kling Video O3 Reference-to-Video: Generate videos with high character consistency using reference images.
Related models
VT Lip Sync
VT Lip Sync synchronizes mouth movements for a translated video by using the translated target video, translated audio, translated subtitle timing, and the original source video with its original subtitle timing.
Kling Omni Video O3
Kling Omni Video O3 Reference-to-Video generates creative videos using character, prop, or scene references from multiple viewpoints. Extracts subject features and creates new video content while maintaining identity consistency across frames. Supports audio generation. Ready-to-use REST API, best performance, no cold starts, affordable pricing.
Kling Omni Video O1 Reference-to-Video
Kling Omni Video O1 Reference-to-Video generates creative videos using character, prop, or scene references from multiple viewpoints. Extracts subject features and creates new video content while maintaining identity consistency across frames. Ready-to-use REST API, best performance, no cold starts, affordable pricing.
Kling Omni Video O1 Reference-to-Video
Kling Omni Video O1 Reference-to-Video generates creative videos using character, prop, or scene references from multiple viewpoints. Extracts subject features and creates new video content while maintaining identity consistency across frames. Ready-to-use REST API, best performance, no cold starts, affordable pricing.
Kling 3.0 Standard
Kling 3.0 Standard Motion Control transfers motion from reference videos to animate still images. Upload a character image and a motion clip (dance, action, gesture), and the model extracts the movement to generate smooth, realistic video. Ready-to-use REST inference API, best performance, no cold starts, affordable pricing.
seedance-2-0 reference-to-video
The "Reference-to-Video" feature of Seedance 2.0 is the ultimate solution for visual stylistic unity. It precisely extracts artistic styles, lighting tones, or compositional intents from reference materials and seamlessly integrates them into newly generated videos, ensuring a highly consistent visual language for your creative series.
Alibaba WAN 2.6
Alibaba WAN 2.6 Reference-to-Video seamlessly transforms character, prop, or scene references—supporting both single and multi-view inputs—into high-quality video sequences. It excels at preserving identity, style, and layout while delivering fluid, coherent motion. Experience peak performance via our production-ready REST API, featuring zero cold starts and cost-effective pricing.