Bytedance Seedance V1.5 Pro Text To Video Fast
Playground
Try it on WavespeedAI!Seedance 1.5 Pro Fast (Text-to-Video) converts text prompts into cinematic, live-action-leaning videos with strong prompt adherence, expressive yet stable motion, and consistent aesthetics. It supports 4–12s duration control, multiple aspect ratios (9:16, 1:1, 16:9), and 720p/1080p output with seed-reproducible results—ideal for ads, trailers, and short-drama beats. Built for stable production use with a ready-to-use REST API, no cold starts, and predictable pricing.
Features
ByteDance Seedance V1.5 Pro Text-to-Video Fast
Seedance V1.5 Pro Text-to-Video Fast is ByteDance’s production-oriented text-to-video model on WaveSpeedAI. It generates short, cinematic clips from a single natural-language prompt with strong prompt adherence and expressive motion, optimized for fast iteration across common aspect ratios.
Key capabilities
- Text-to-video generation from one prompt for fast concept-to-clip workflows
- Strong prompt adherence for subject, action, environment, lighting, and mood
- Expressive motion with stable aesthetics suited to cinematic short-form outputs
- Aspect ratio options for vertical, square, and widescreen delivery
- Optional audio generation with a simple toggle
- Seed control for reproducible iterations and controlled variations
Parameters
| Parameter | Description |
|---|---|
| prompt* | The positive prompt describing what to generate (subject + action + scene + mood). |
| aspect_ratio | Output aspect ratio: 21:9, 16:9, 4:3, 1:1, 3:4, 9:16. |
| duration | Output duration in seconds (available values depend on the endpoint UI/validator). |
| resolution | Output resolution: 720p or 1080p. |
| generate_audio | Whether to generate audio (true/false). |
| camera_fixed | Whether to lock camera position (true/false). |
| seed | Random seed (-1 for random; set a fixed integer for repeatable results). |
How to use
-
Write a clear prompt describing the subject, action, and scene.
-
Choose an aspect_ratio that matches your target platform (9:16 for shorts, 16:9 for YouTube, 1:1 for feeds).
-
Set duration (start short for iteration, then increase once you like the look).
-
Pick resolution:
- 720p for faster drafts
- 1080p for final output detail
-
Toggle generate_audio on if you want sound included, or off if you’ll add audio in post.
-
Use camera_fixed if you want a locked shot and less framing drift.
-
Set seed for reproducible reruns, or keep -1 for fresh variations.
Prompt tips
Write prompts like a director’s brief:
- Subject: who/what is on screen
- Action: what happens next (use clear verbs)
- Scene: where it happens + time + lighting
- Camera: framing and movement (only if needed)
- Style: mood and visual language (optional)
Practical tips:
- Prefer simple, direct sentences first. Add detail only when you need tighter control.
- This workflow works best with positive instructions (describe what you want, not long avoid-lists).
- If you want stronger motion, use intensity words like subtle, energetic, rapid, slow, high energy.
- For multi-step actions, list them in order: walks in → pauses → looks up → smiles.
Pricing
Effective rates
| Resolution | Generate audio | Price per 5 seconds | Price per second |
|---|---|---|---|
| 720p | true | $0.20 | $0.04 |
| 720p | false | $0.10 | $0.02 |
| 1080p | true | $0.30 | $0.06 |
| 1080p | false | $0.15 | $0.03 |
Example costs
| Duration | Resolution | Generate audio | Cost per run |
|---|---|---|---|
| 5s | 720p | true | $0.20 |
| 5s | 720p | false | $0.10 |
| 12s | 720p | true | $0.48 |
| 5s | 1080p | true | $0.30 |
| 5s | 1080p | false | $0.15 |
| 12s | 1080p | true | $0.72 |
Notes
- Start with 720p and shorter duration for quick iteration, then switch to 1080p for finals.
- If framing drifts, try camera_fixed = true and move the action onto the subject instead of the camera.
- Keeping the same seed makes small prompt changes easier to compare.
Related Models
- Seedance V1.5 Pro (Text-to-Video) — Non-fast variant for steadier outputs when speed is less critical.
- Seedance V1 Pro Fast (Text-to-Video) — Fast alternative for rapid previews and lightweight iteration.
- HunyuanVideo-1.5 (Text-to-Video) — Efficient T2V model with strong motion coherence for cost-effective generation.
- Alibaba Wan 2.5 (Text-to-Video Fast) — Fast T2V option for broad style exploration and high-volume testing.
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 |