Bytedance Seedance V1.5 Pro Text To Video Fast
Playground
Try it on WavespeedAI!Seedance 1.5 Pro Fast (Text-to-Video) generates cinematic, live-action–leaning clips from text with strong prompt adherence, expressive motion, and stable aesthetics. It supports 4–12s duration control, multiple aspect ratios, and reproducible generation via seeds—ideal for ads and short-drama workflows.
Features
bytedance/seedance-1.5-pro-t2v
Seedance 1.5 Pro (T2V) is ByteDance Seed’s production-oriented text-to-video model built for cinematic realism, strong prompt adherence, and high expressive motion. It is designed for ad creatives and short-drama workflows where aesthetic stability, emotion-rich acting, and controllable duration matter.
Key Features
-
High-quality prompt alignment
Accurately follows detailed scene descriptions, shot instructions, and emotional tone, producing coherent clips with stable subject and scene intent. -
Expressive motion and emotion
Natural motion amplitude and strong rhythm; fine-grained facial expressions and emotional delivery, suitable for drama-like performances and high-impact ads. -
Strong aesthetics with live-action realism
A “natural, live-action” leaning look with stable lighting, composition, and color harmony for premium-looking outputs. -
Rich effects via prompting
The base model supports a wide variety of visual effects achievable directly through prompting, enabling template-like creative effects without extra tooling. -
Flexible duration control (4–12 seconds)
Specify any integer duration from 4s to 12s. Supports Smart Duration (-1) where the model selects an appropriate length within the same range. -
Aspect ratio control
Choose eitheradaptive(model selects the best ratio from the prompt) or explicitly set one of:
16:9,9:16,4:3,3:4,1:1,21:9.
Parameters
-
prompt(required)
Text description of the scene, style, subject actions, camera motion, and overall mood. -
duration
Integer seconds in[4, 12]. Use-1for Smart Duration (model decides within[4, 12]). -
resolution
One of720p,1080p. -
fps
Fixed at24. -
ratio
Useadaptive(model selects a suitable ratio) or set one of:16:9,9:16,4:3,3:4,1:1,21:9. -
fixed_camera
Boolean. Iftrue, the camera remains fixed; iffalse, camera motion is driven by the prompt. -
seed
Integer. Controls randomness; the same seed tends to produce more similar outputs. Set-1to cancel random seed.
Use Cases
- Performance-heavy ad creatives: emotion-forward acting beats with stable visual quality.
- Live-action style short drama clips: realistic lighting/composition and coherent storytelling moments.
- Template-like VFX content: prompt-driven effects for fast experimentation and iteration.
Notes
- For the cleanest motion, keep prompts specific but not overloaded: limit the number of primary subjects and simultaneous actions, especially in short clips.
- If you see shaky composition or drifting framing, set
camera_fixed = trueand describe motion using subject movement rather than camera movement. - When using
duration = -1, write prompts with a clear narrative “end beat” (a natural stopping point) so the model has a reason to conclude.
Related Models
- ByteDance Seedance V1 Pro Fast (Text-to-Video) – Faster Seedance variant for quick iterations and previews.
- ByteDance Seedance V1 Pro (T2V 480p) – A lower-res option for budget-friendly testing and rapid prompt iteration.
- WaveSpeedAI HunyuanVideo-1.5 (Text-to-Video) – Lightweight T2V model with strong motion coherence and efficient inference.
- WaveSpeedAI HunyuanVideo (T2V) – Another T2V option for broader experimentation across styles and pacing.
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.5-pro/text-to-video-fast" \
--header "Content-Type: application/json" \
--header "Authorization: Bearer ${WAVESPEED_API_KEY}" \
--data-raw '{
"aspect_ratio": "16:9",
"duration": 5,
"resolution": "720p",
"generate_audio": true,
"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 | Yes | - | The positive prompt for the generation. | |
| aspect_ratio | string | No | 16:9 | 21:9, 16:9, 4:3, 1:1, 3:4, 9:16 | The aspect ratio of the generated media. |
| duration | integer | No | 5 | 4 ~ 12 | The duration of the generated media in seconds. |
| resolution | string | No | 720p | 720p, 1080p | Video resolution. |
| generate_audio | boolean | No | true | - | Whether to generate audio. |
| 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 |