Browse ModelsViduVidu Q3 Drama Clip

Vidu Q3 Drama Clip

Vidu Q3 Drama Clip

Playground

Try it on WavespeedAI!

Vidu Q3 Drama Clip generates 8-12 second script-driven drama videos from structured assets, including characters, scenes, and tools. It is ideal for compact story scenes, storyboard shots, and focused narrative moments. Ready-to-use REST inference API, best performance, no coldstarts, affordable pricing.

Features

Vidu Q3 Drama Clip

Vidu Q3 Drama Clip generates short 8-12 second drama clips from a script and a structured asset list. It is designed for compact narrative moments where you define the characters, scene, tools, visual references, and output controls in one request.


Why Choose This?

  • Short drama clip generation: Create focused drama fragments from 8 to 12 seconds.
  • Script-driven control: Use content to describe the plot, action, dialogue, camera movement, and visual details for the clip.
  • Structured asset control: Define characters, scenes, and tools with IDs, names, types, reference images, and descriptions.
  • Reference positioning: Use image and placement to control positioning, panorama, or step-based references.
  • Precise duration selection: Choose a fixed duration of 8, 9, 10, 11, or 12 seconds.
  • Narrative workflow: Suitable for storyboard shots, scene-level clips, ads, hooks, and short character-driven video moments.

Properties

PropertyRequiredTypeDescription
nameYesstringTask name.
contentYesstringDrama script or content. Supports up to 5000 characters.
assetsYesarray(object)Asset list. Up to 14 assets are supported; 3-10 are recommended.
assets.idYesstringAsset ID, using numeric strings such as 01, 02, 03.
assets.nameYesstringAsset name, up to 30 characters.
assets.typeYesstring enumAsset type. Supported values: character, scene, tool.
assets.image_uriYesstringReference image for this asset. Supports public image URL or Base64 image data.
assets.descriptionNostringAsset description, such as identity, appearance, age, role, scene details, or tool details.
imageNostringPositioning reference image uploaded by the user.
placementNostring enumPlacement mode: upload, panorama, or step. Default: upload.
qualityNostring enumQuality level: standard or high. Default: high.
durationYesinteger enumFixed clip duration in seconds. Supported values: 8, 9, 10, 11, and 12.
resolutionNostring enumOutput resolution: 720p or 1080p. Default: 1080p.
aspect_ratioNostring enumOutput aspect ratio: 9:16 or 16:9. Default: 9:16.
styleNostringVideo style, such as realistic, 3D modeling, or 2D animation. Limit: 30 characters; punctuation is not recommended.

Image Requirements

  • assets.image_uri supports image URL or Base64 image data.
  • Supported image formats: PNG, JPEG, JPG, and WebP.
  • Base64 input should include the content type prefix, for example: data:image/png;base64,{base64_encode}.
  • Each asset can correspond to one image.
  • Keep image URLs publicly accessible.
  • Keep images within the documented size, aspect ratio, and request body limits.

Pricing

Billing is based on effective video duration at $0.14 per second.

DurationPrice
8s$1.12
9s$1.26
10s$1.40
11s$1.54
12s$1.68

Effective duration is limited to 8-12 seconds. Missing or lower values are billed as 8 seconds; values above 12 seconds are billed as 12 seconds.


How to Use

  1. Enter name for the task.
  2. Write the drama clip script in content.
  3. Add assets for characters, scenes, or tools.
  4. Set each asset ID as 01, 02, 03, and so on.
  5. Upload or provide image_uri for every asset.
  6. Optionally provide a positioning reference image and choose placement.
  7. Select quality, duration, resolution, aspect ratio, and style as needed.
  8. Submit the task and retrieve the generated clip when complete.

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/vidu/q3/drama-clip" \
--header "Content-Type: application/json" \
--header "Authorization: Bearer ${WAVESPEED_API_KEY}" \
--data-raw '{
    "placement": "panorama",
    "duration": 8,
    "resolution": "1080p",
    "aspect_ratio": "9:16"
}'

# 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

ParameterTypeRequiredDefaultRangeDescription
namestringYes--The name of the drama generation task.
contentstringYes--Drama content or script. Supports up to 5000 characters.
assetsarrayYes-1 ~ 14 itemsAsset list. Asset IDs are generated automatically by order as 01, 02, 03, and so on.
imagestringNo-The positioning reference map uploaded by the user.
placementstringNopanoramapanorama, upload, stepupload 、panorama 、 step (Any option is acceptable) The default upload speed is the fastest. The other two fields will only take effect when the upload_image_url is empty. The second one is panoramic reference, generating panoramic images; The third one is sequential reference. Input the four-square grid of the previous shot into the next shot
durationintegerNo88, 9, 10, 11, 12Select the fixed duration for this drama clip. This model is designed for short drama fragments, storyboard shots, and scene-level clips. Supported values are 8, 9, 10, 11, and 12 seconds only. Choose the exact clip length you want to generate.
resolutionstringNo1080p720p, 1080pVideo resolution.
aspect_ratiostringNo9:169:16, 16:9The aspect ratio of the generated media.
stylestringNo--Video style. You can enter styles such as 3D modeling style, 2D animation style, etc. Limited to 30 characters. No punctuation allowed. Default: live action photorealistic.

Response Parameters

ParameterTypeDescription
codeintegerHTTP status code (e.g., 200 for success)
messagestringStatus message (e.g., “success”)
data.idstringUnique identifier for the prediction, Task Id
data.modelstringModel ID used for the prediction
data.outputsarrayArray of URLs to the generated content (empty when status is not completed)
data.urlsobjectObject containing related API endpoints
data.urls.getstringURL to retrieve the prediction result
data.statusstringStatus of the task: created, processing, completed, or failed
data.created_atstringISO timestamp of when the request was created (e.g., “2023-04-01T12:34:56.789Z”)
data.errorstringError message (empty if no error occurred)
data.timingsobjectObject containing timing details
data.timings.inferenceintegerInference time in milliseconds

Result Request Parameters

ParameterTypeRequiredDefaultDescription
idstringYes-Task ID

Result Response Parameters

ParameterTypeDescription
codeintegerHTTP status code (e.g., 200 for success)
messagestringStatus message (e.g., “success”)
dataobjectThe prediction data object containing all details
data.idstringUnique identifier for the prediction, the ID of the prediction to get
data.modelstringModel ID used for the prediction
data.outputsstringArray of URLs to the generated content (empty when status is not completed).
data.urlsobjectObject containing related API endpoints
data.urls.getstringURL to retrieve the prediction result
data.statusstringStatus of the task: created, processing, completed, or failed
data.created_atstringISO timestamp of when the request was created (e.g., “2023-04-01T12:34:56.789Z”)
data.errorstringError message (empty if no error occurred)
data.timingsobjectObject containing timing details
data.timings.inferenceintegerInference time in milliseconds
© 2025 WaveSpeedAI. All rights reserved.