Kwaivgi Kling V1 Ai Multi Shot
Playground
Try it on WavespeedAI!Kling v1 ai-multi-shot delivers top-tier image-to-image generation with smooth motion, cinematic visuals, accurate prompt adherence, and native audio for ready-to-share clips. Ready-to-use REST inference API, best performance, no cold starts, affordable pricing.
Features
Kling v1 AI Multi-Shot
Kling v1 AI Multi-Shot automatically generates multiple dynamic camera angles and perspectives from a single image input. Create professional multi-shot sequences with cinematic camera movements, smooth transitions, and consistent visual quality across all generated shots.
Model Highlights
- Automatic multi-angle shot generation from a single image
- Cinematic camera movements and transitions
- Consistent lighting and composition across all shots
- Professional-grade visual quality
- Ready-to-use output for immediate deployment
Input Requirements
- Supported formats: JPG, JPEG, PNG
- Maximum file size: 10MB
- Minimum dimensions: 300px (width and height)
- Aspect ratio range: 1:2.5 to 2.5:1
Use Cases
- Product videos with multiple viewing angles
- Character showcases with dynamic perspectives
- Real estate virtual tours
- E-commerce product demonstrations
- Marketing videos with professional camera work
- Social media content with cinematic quality
Price
- Per generation – $0.70
How to Use
- Prepare your source image meeting the input requirements
- Submit the image via REST API endpoint
- Receive multiple shot variations with different camera angles
- Use the generated multi-shot sequence in your projects
API Integration
Simple REST API integration with straightforward image input. No complex parameters needed – the model automatically generates optimal multi-shot sequences based on your input image.
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-v1/ai-multi-shot" \
--header "Content-Type: application/json" \
--header "Authorization: Bearer ${WAVESPEED_API_KEY}" \
--data-raw '{
"enable_base64_output": false
}'
# 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 | |
| enable_base64_output | boolean | No | false | - | If enabled, the output will be encoded into a BASE64 string instead of a URL. This property is only available through the API. |
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 |