Bytedance Seedance V1 Lite I2V 720p
Playground
Try it on WavespeedAI!ByteDance Seedance Lite i2v 720p creates coherent multi-shot image-to-video clips with smooth, stable motion and prompt fidelity. Ready-to-use REST inference API, best performance, no coldstarts, affordable pricing.
Features
Seedance v1 Lite I2V 720p — bytedance/seedance-v1-lite-i2v-720p
Seedance v1 Lite I2V 720p generates short videos from a single reference image plus a motion-focused prompt. Upload a starting image, describe what happens (subject action + camera behavior), and the model animates the scene while keeping the input image as the visual anchor. You can also provide an optional last_image to better control how the clip ends.
Key capabilities
- Image-to-video generation anchored to a reference image (720p output)
- Optional last_image for smoother ending continuity and better narrative “landing”
- Prompt-controlled motion (character actions, environmental effects, camera beats)
- Optional camera_fixed mode when you want motion without camera movement
Use cases
- Character animation from a single keyframe (actions, expressions, subtle body motion)
- Short story beats for trailers, storyboards, and concept previews
- Product or object animation with controlled motion and stable framing
- Start-to-end guided shots using last_image for more predictable outcomes
Pricing
| Duration | Price per video |
|---|---|
| 5s | $0.16 |
| 10s | $0.32 |
| 15s | $0.48 |
| 20s | $0.64 |
Inputs
- image (required): starting reference image (first-frame anchor)
- prompt (required): motion and scene direction
- last_image (optional): end-frame reference to guide the finishing state
Parameters
- prompt: describes subject action, environment motion, and camera direction
- image: input image (upload or URL)
- last_image: optional end reference image (upload or URL)
- duration: video length in seconds
- aspect_ratio: output aspect ratio selection
- camera_fixed: whether to lock the camera position
- seed: random seed (-1 for random; fixed value for reproducible results)
- safety checker: enabled filtering for safer generations (if available in your UI)
Prompting guide (I2V)
Write prompts like a director’s beat sheet:
- Subject action: what changes over time (stands up, looks around, runs forward, picks up an item)
- Camera: close-up, push-in, follow, orbit, rack focus (or keep it fixed)
- Environment: wind, fog, particles, light effects, background motion
- Continuity: explicitly say what must remain consistent (identity, colors, scene layout)
Example prompts
- A fox stands up and looks around, then runs forward and finds a glowing gem. Close-up of the fox picking up the jewel, cinematic lighting, gentle snow particles, smooth motion.
- A hero product on a table. Slow push-in, subtle highlight movement across the surface, light dust motes, clean studio look, camera_fixed enabled.
- A character turns toward the camera and smiles. Hair sways lightly in the wind, warm sunset backlight, shallow depth of field, natural motion.
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/bytedance/seedance-v1-lite-i2v-720p" \
--header "Content-Type: application/json" \
--header "Authorization: Bearer ${WAVESPEED_API_KEY}" \
--data-raw '{
"duration": 5,
"camera_fixed": false,
"seed": -1
}'
# 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 |
|---|---|---|---|---|---|
| prompt | string | No | - | The positive prompt for the generation.max length 2000 | |
| image | string | Yes | - | Input image supports both URL and Base64 format; Supported image formats include .jpg/.jpeg/.png; The image file size cannot exceed 10MB, and the image resolution should not be less than 300*300px. | |
| last_image | string | No | - | - | End image, supports both URL and Base64 format. |
| duration | integer | No | 5 | 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12 | The duration of the generated media in seconds. |
| aspect_ratio | string | No | - | 21:9, 16:9, 4:3, 1:1, 3:4, 9:16 | The aspect ratio of the generated media. |
| camera_fixed | boolean | No | false | - | Whether to fix the camera position. |
| seed | integer | No | -1 | -1 ~ 2147483647 | The random seed to use for the generation. -1 means a random seed will be used. |
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 |