Kwaivgi Kling V2.6 Pro Motion Control
Playground
Try it on WavespeedAI!Kling 2.6 Pro Motion Control turns reference motion clips (dance, action, gesture) into smooth, realistic animations. Upload a character image (or source video) and a motion video; the model transfers the movement while preserving identity and temporal consistency. Ready-to-use REST API with fast response, native-audio option, no cold starts, and affordable pricing.
Features
Kling v2.6 Pro Motion Control
Kling v2.6 Pro Motion Control is Kuaishou’s advanced motion transfer model that animates a reference image by applying the movement from a reference video. Upload a character image and a motion clip (like a dance or action sequence), and the model extracts the motion path to generate smooth, realistic video where your subject performs those exact movements.
Key capabilities
-
Motion extraction and transfer
Upload a 3 to 30-second reference video showing any movement (dance, walk cycle, martial arts, gestures), and the model captures the full motion sequence frame-by-frame to apply it to your image. -
Full-body motion accuracy
The system captures detailed movements including posture, limb positions, and complex actions, ensuring smooth and natural-looking animation even for fast or intricate sequences. -
Flexible character orientation control
Choose whether the final video follows the reference image’s aspect ratio and composition (“image” mode) or the reference video’s framing (“video” mode), with duration limits adjusted accordingly. -
Audio preservation option
Retain the original audio from your reference video or generate silent output, giving you control over the final soundscape. -
Prompt-guided refinement
Use text prompts to adjust scene details, styling, lighting, and atmosphere while maintaining the core motion transfer from the reference video.
Parameters and how to use
- image: (required) The reference image showing the subject you want to animate
- video: (required) The reference video containing the motion sequence to transfer
- character_orientation: (required) Controls output framing and duration limits
- prompt: Text description to refine scene details, style, and atmosphere
- keep_original_sound: Whether to preserve audio from the reference video
- negative_prompt: Elements to avoid in the generated video
How to use
- Prompt
Describe the scene setting, visual style, lighting, and atmosphere you want while the motion is being transferred. The model will apply your reference video’s movement to your reference image, so focus your prompt on environmental details rather than the action itself.
Example: “cinematic lighting, shallow depth of field, urban street background, golden hour, film grain”
Media requirements
Images
- Max file size: 10 MB
- Tip: Use clear, well-lit images showing the full subject for best motion transfer results
Videos
- Duration limits depend on character_orientation setting (see below)
Other parameters
-
character_orientation – (required) Choose one:
- image – Output matches the reference image’s framing and composition.
- video – Output matches the reference video’s framing and composition. Reference video can be up to 30 seconds.
-
keep_original_sound – Boolean, defaults to true
- true – Preserve audio from the reference video
- false – Generate silent video output
-
negative_prompt – Optional text to specify unwanted elements like “blurry, distorted, watermark, low quality, flickering”. Max 2,500 characters.
After you finish configuring the parameters, click Run, preview the result, and iterate if needed.
Pricing
| Duration (s) | Billed Duration (s) | Total Price (USD) |
|---|---|---|
| 5 | 5 | $0.560 |
| 10 | 10 | $1.120 |
| 15 | 15 | $1.680 |
| 30 | 30 | $3.360 |
Notes
Best practices:
- For complex movements like dance or martial arts, use reference videos between 3 and 10 seconds showing clear, unobstructed motion
- Ensure your reference image shows the subject in good lighting with minimal occlusion
- Start with the default settings and use prompts primarily for scene styling rather than motion instructions
- The model works best when the reference image subject and reference video subject are similar in type (e.g., both human characters)
Use cases:
- Animate character illustrations with real dance choreography or action sequences
- Create product demonstration videos by transferring human gestures to animated mascots
- Generate character performance clips for storyboarding and concept work
- Produce social media content by applying trending motion clips to custom characters
Related Models
-
Kling v2.6 Pro Image-to-Video – Generate videos from a single image with prompt-driven motion and optional native audio.
-
Kling v2.6 Pro Text-to-Video – Create videos entirely from text prompts with cinematic visuals and audio–video co-generation.
-
Kling Omni Video O1 Reference-to-Video – Maintain subject identity across frames using multi-reference inputs for character-consistent video generation.
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-pro/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 | The duration of the generated media in seconds. |
| 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 |