Skip to content

Vidu Premium MV V2

Vidu Premium MV V2 is an explicitly selected MV Fast generation protocol. It adds performance-aware modes while keeping existing integrations on OneClick V1 by default.

generation.performanceModeIntended outputReference requirementPublished generation rate
singSinger-focused vocal performance1-2 ordered singer portraits24 Vidu credits / second
sing_performVocal plus wider performance shots1-2 ordered singer portraits24 Vidu credits / second
performInstrumental or stage performanceCaller references or an automatically generated Visual Board21 Vidu credits / second
danceDance-focused motionCaller references or an automatically generated Visual Board24 Vidu credits / second

All four modes are fixed at 720p and accept an effective source duration from 10 to 300 seconds. The current public rate is 2 OmnAPI credits per Vidu credit; call POST /api/v1/mv/quote for the final customer-specific amount.

Singing modes use generation.lipReferenceImages as an ordered list. The first item is Singer 1 and the optional second item is Singer 2. When the explicit list is omitted, characterImage can supply the single Singer 1 portrait. Images must be distinct, publicly reachable HTTP(S) URLs and no larger than 10MB each.

perform and dance do not accept singer portraits. Supply 1-6 referenceImages for direct scene guidance, or omit them to let OmnAPI create a Visual Board before managed generation.

Check V2 independently from OneClick V1:

Terminal window
curl 'https://api.omnapi.com/api/v1/mv/fast/availability?managedVersion=premium-v2' \
-H "x-api-key: $OMNAPI_KEY"

The response echoes managedVersion. unknown and unavailable block paid create before credits are deducted. degraded allows create but indicates that delivery may take longer or fail more often than usual.

Premium V2 quote fields live at the top level of the quote request:

Terminal window
curl -X POST https://api.omnapi.com/api/v1/mv/quote \
-H "x-api-key: $OMNAPI_KEY" \
-H "Content-Type: application/json" \
-d '{
"mode": "fast",
"managedVersion": "premium-v2",
"performanceMode": "sing_perform",
"durationSec": 60,
"resolution": "720p"
}'

Do not send the OneClick V1 quote fields quality or lipSync with Premium V2. The selected performanceMode already determines the generation schedule.

Terminal window
curl -X POST https://api.omnapi.com/api/v1/mv/preflight \
-H "x-api-key: $OMNAPI_KEY" \
-H "Content-Type: application/json" \
-d '{
"mode": "fast",
"source": {
"type": "audio",
"audioUrl": "https://example.com/song.mp3",
"durationSec": 60
},
"referenceImages": ["https://example.com/stage-reference.png"],
"prompt": "cinematic live performance with expressive close-ups",
"aspectRatio": "9:16",
"resolution": "720p",
"subtitles": false,
"generation": {
"managedVersion": "premium-v2",
"performanceMode": "sing_perform",
"lipReferenceImages": [
"https://example.com/singer-1.png",
"https://example.com/singer-2.png"
]
}
}'

Preflight verifies the source duration and all public image URLs, then returns preflightId and creditsRequired without charging.

Send the same media and generation fields, then add the preflight id and an idempotency key:

Terminal window
curl -X POST https://api.omnapi.com/api/v1/mv \
-H "x-api-key: $OMNAPI_KEY" \
-H "Idempotency-Key: mv-premium-v2-001" \
-H "Content-Type: application/json" \
-d '{
"preflightId": "019f...",
"mode": "fast",
"source": {
"type": "audio",
"audioUrl": "https://example.com/song.mp3",
"durationSec": 60
},
"referenceImages": ["https://example.com/stage-reference.png"],
"prompt": "cinematic live performance with expressive close-ups",
"aspectRatio": "9:16",
"resolution": "720p",
"subtitles": false,
"generation": {
"managedVersion": "premium-v2",
"performanceMode": "sing_perform",
"lipReferenceImages": [
"https://example.com/singer-1.png",
"https://example.com/singer-2.png"
]
},
"maxCredits": 3000
}'

Omit top-level lipSync and generation.quality: they are OneClick V1 fields and Premium V2 rejects them before charging.

Poll GET /api/v1/tasks/{taskId} or use task webhooks. Then read GET /api/v1/mv/{mvId} and refresh the finished MP4 with GET /api/v1/mv/{mvId}/final.

The MV view identifies the protocol that actually ran:

{
"mode": "fast",
"generation": {
"resolution": "720p",
"managedVersion": "premium-v2",
"performanceMode": "sing_perform"
}
}

Premium V2 create and automatic final delivery are the supported default. Scene edit and explicit compose are separate rollout capabilities with separate prices. Read MVView.capabilities before presenting those actions; a deployment that has not enabled them returns 503 without creating a paid operation.

If a Premium V2 task reaches a technical terminal failure without a deliverable result, OmnAPI refunds the charged create amount automatically. A usable output or a subjective quality concern does not qualify as an automatic no-deliverable refund. Read MVView.billing, MVView.costSummary, or the Task receipt for the settlement result.

See the MV Fast quickstart for the shared quote/preflight/create/poll/download lifecycle and the MV API guide for every endpoint and response field.