Kwaivgi Kling V2.6 Std Motion Control
Playground
Try it on WavespeedAI!Kling 2.6 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.
Features
Kling V2.6 Standard Motion Control
Transfer motion from any video onto your character with Kling V2.6 Motion Control. Upload a reference image of your subject and a motion video — the model generates your character performing those exact movements. Perfect for dance videos, action sequences, and character animation.
Why It Looks Great
- Precise motion transfer: Accurately maps movements from reference video to your character.
- Character preservation: Maintains your subject’s identity and appearance.
- Audio retention: Option to keep the original video’s sound.
- Extended duration: Supports videos up to 30 seconds.
- Orientation control: Specify character facing direction for better results.
- Prompt Enhancer: Refine scene descriptions for enhanced output.
Parameters
| Parameter | Required | Description |
|---|---|---|
| image | Yes | Reference image of your character/person. |
| video | Yes | Motion reference video to transfer movements from. |
| character_orientation | Yes | Direction character is facing (front, side, back). |
| prompt | No | Additional scene description or style guidance. |
| negative_prompt | No | Elements to avoid in the generated video. |
| keep_original_sound | No | Retain audio from the original motion video. |
How to Use
- Upload character image — a clear image of your subject.
- Upload motion video — the video with movements to transfer.
- Select character orientation — Generate the orientation of the characters in the video, which can be selected to match the image or the video.
- Write prompt (optional) — add scene details or style guidance.
- Add negative prompt (optional) — specify what to avoid.
- Toggle audio — check to keep original video sound.
- Run — click the button to generate.
- Download — preview and save your video.
Pricing
Per 3-second billing based on video duration. Minimum 3 seconds, maximum 30 seconds.
| Duration | Calculation | Cost |
|---|---|---|
| 3 seconds (min) | 3 ÷ 3 × $0.21 | $0.21 |
| 6 seconds | 6 ÷ 3 × $0.21 | $0.42 |
| 10 seconds | 10 ÷ 3 × $0.21 | $0.70 |
| 15 seconds | 15 ÷ 3 × $0.21 | $1.05 |
| 30 seconds (max) | 30 ÷ 3 × $0.21 | $2.10 |
Best Use Cases
- Dance Videos — Transfer choreography onto any character.
- Action Sequences — Apply stunts and movements to your subjects.
- Character Animation — Animate illustrated or AI-generated characters.
- Content Creation — Create viral-ready videos with custom performers.
- Virtual Influencers — Bring virtual characters to life with real motion.
- Music Videos — Sync character movements to music performances.
Example Workflows
- Upload anime character + dance video → Anime character performs the dance
- Upload portrait photo + workout video → Person performs exercise routine
- Upload mascot image + wave gesture → Mascot waves naturally
- Upload product character + presentation motion → Animated product spokesperson
Character Orientation Guide
| Orientation | When to Use |
|---|---|
| Front | Character facing camera directly |
| Side | Character in profile view |
| Back | Character facing away from camera |
Pro Tips for Best Results
- Use clear, well-lit character images with visible full body or upper body.
- Match character orientation to their actual pose in the image.
- Motion videos with clear, distinct movements work best.
- Keep original sound for dance videos synced to music.
- Use prompts to add environmental context or style details.
- Shorter clips (3-10s) often produce more consistent results.
Notes
- Minimum video duration is 3 seconds; maximum is 30 seconds.
- If using URLs, ensure they are publicly accessible.
- Processing time scales with video duration.
- Best results come from motion videos with clear human movements.
More Models to Try
-
Kling V2.6 Pro Motion Control — Professional-grade motion transfer that maps movements from any reference video onto your character with superior quality and precision.
-
Wan 2.2 Animate — Transform static images into dynamic videos with AI-powered animation, bringing photos and illustrations to life with natural motion.
-
Wan 2.2 Fun Control — Creative pose and motion control for image-to-video generation, enabling playful character animations with customizable movements.
Authentication
For authentication details, please refer to the Authentication Guide.
API Endpoints
Submit Task & Query Result
# Submit the task
curl --location --request POST "https://api.wavespeed.ai/api/v3/kwaivgi/kling-v2.6-std/motion-control" \
--header "Content-Type: application/json" \
--header "Authorization: Bearer ${WAVESPEED_API_KEY}" \
--data-raw '{
"keep_original_sound": true
}'
# Get the result
curl --location --request GET "https://api.wavespeed.ai/api/v3/predictions/${requestId}/result" \
--header "Authorization: Bearer ${WAVESPEED_API_KEY}"
Parameters
Task Submission Parameters
Request Parameters
| Parameter | Type | Required | Default | Range | Description |
|---|---|---|---|---|---|
| image | string | Yes | - | Supported image formats:.jpg /.jpeg /.png The size of the image file should not exceed 10MB, the width and height of the image should be no less than 300px, and the aspect ratio of the image should be between 1:2.5 and 2.5:1 | |
| video | string | Yes | - | Supported video formats:.mp4/.mov The size of the video file should not exceed 10MB, the width and height of the video should be no less than 300px, and the aspect ratio of the video should be between 1:2.5 and 2.5:1 | |
| character_orientation | string | Yes | - | image, video | Generate the orientation of the characters in the video, which can be selected to match the image or the video. |
| prompt | string | No | - | The positive prompt for the generation. | |
| negative_prompt | string | No | - | The negative prompt for the generation. | |
| keep_original_sound | boolean | No | true | - | Whether to retain the original video sound |
Response Parameters
| Parameter | Type | Description |
|---|---|---|
| code | integer | HTTP status code (e.g., 200 for success) |
| message | string | Status message (e.g., “success”) |
| data.id | string | Unique identifier for the prediction, Task Id |
| data.model | string | Model ID used for the prediction |
| data.outputs | array | Array of URLs to the generated content (empty when status is not completed) |
| data.urls | object | Object containing related API endpoints |
| data.urls.get | string | URL to retrieve the prediction result |
| data.has_nsfw_contents | array | Array of boolean values indicating NSFW detection for each output |
| data.status | string | Status of the task: created, processing, completed, or failed |
| data.created_at | string | ISO timestamp of when the request was created (e.g., “2023-04-01T12:34:56.789Z”) |
| data.error | string | Error message (empty if no error occurred) |
| data.timings | object | Object containing timing details |
| data.timings.inference | integer | Inference time in milliseconds |
Result Request Parameters
| Parameter | Type | Required | Default | Description |
|---|---|---|---|---|
| id | string | Yes | - | Task ID |
Result Response Parameters
| Parameter | Type | Description |
|---|---|---|
| code | integer | HTTP status code (e.g., 200 for success) |
| message | string | Status message (e.g., “success”) |
| data | object | The prediction data object containing all details |
| data.id | string | Unique identifier for the prediction, the ID of the prediction to get |
| data.model | string | Model ID used for the prediction |
| data.outputs | string | Array of URLs to the generated content (empty when status is not completed). |
| data.urls | object | Object containing related API endpoints |
| data.urls.get | string | URL to retrieve the prediction result |
| data.status | string | Status of the task: created, processing, completed, or failed |
| data.created_at | string | ISO timestamp of when the request was created (e.g., “2023-04-01T12:34:56.789Z”) |
| data.error | string | Error message (empty if no error occurred) |
| data.timings | object | Object containing timing details |
| data.timings.inference | integer | Inference time in milliseconds |