I built a wrapper that attached the voice clip to every job. It worked on every tier except one.
2K text-to-video takes no audio at all. Not "ignores it" — rejects the combination. The wrapper was fine; my mental model of the model was wrong, and it took a field-by-field table to fix it.
References are the difference between "a woman in a red coat" and the woman you cast. They are also the part of a request that changes shape by tier and mode while the error message stays generic.
Where each reference type is allowed
| Reference images | Reference audio | |
|---|---|---|
| 480P image-to-video | up to 9 | up to 3 |
| 768P image-to-video | up to 9 | up to 3 |
| 960P image-to-video | up to 9 | up to 3 |
| 1080P image-to-video | up to 9 | up to 3 |
| 1440P multimode | up to 9 | up to 3 |
| 2K image-to-video | up to 9 (first 5 free, then 3 credits each) | up to 3 |
| 2K text-to-video | none | none |
Audio is free on every lane that accepts it. Images are free up to five, then three credits each on 2K.
Audio conditions, it does not synchronise
A reference clip shapes pacing, energy and whether the shot reads as a conversation or a montage. It does not give you frame-accurate mouth shapes, and there is no dedicated lip-sync mode to select on this model.
Plan accordingly. If exact dialogue synchronisation is the requirement, render the visual and place the line in post — the deterministic steps for that cost no generation credits. If the requirement is "this scene breathes like this", three clips at fifteen megabytes are the cheapest directorial control in the model.
Budgeting the image set
Five free images is a real allowance. A workable split for a character shot:
- Face — one clean, evenly lit frontal.
- Full figure — proportion and wardrobe.
- Two or three quarters — the angle you intend to render.
- Detail — the prop, the logo, the fabric.
- Environment — palette and light, not a place to live in.
Images six to nine should add information, not repetition: a second lighting state, a different wardrobe the character appears in later, a second character.
The call
curl https://api.callirra.com/v1/videos \
-H "Authorization: Bearer $CALLIRRA_API_KEY" \
-H "Content-Type: application/json" \
-d '{
"model": "minimax-h3",
"mode": "image_to_video",
"prompt": "she turns from the window; the coat catches the light",
"resolution": "1080P",
"duration_seconds": 6,
"aspect_ratio": "16:9",
"frame_images": ["https://your-cdn.example/face.jpg"],
"input_references": ["https://your-cdn.example/figure.jpg"],
"audio_input": ["https://your-cdn.example/line.mp3"]
}'The first image is the subject; the rest are context. That ordering matters more than the count.
Where it goes wrong
Nine near-identical images. More references is not more control, it is more averaging. The face drifts toward a composite of everything you sent.
Audio on a prompt-only 2K job. Rejected — that lane has no audio.
Expecting the audio to cut the picture. It conditions the render; it does not edit to a beat.
A reference set that argues with the prompt. "Blue jacket" plus three brown-jacket references produces a decision, not a compromise you will like.
FAQ
Do reference images cost credits? First five are free on every tier; on 2K, images six through nine are three credits each.
Is audio billed? No.
Does reference audio create lip sync? No. Place dialogue in post if you need exact synchronisation.
What formats does audio accept? MP3 and WAV, up to 15 MB per clip, up to three clips.
Can text-to-video take images? On most tiers no; 2K text-to-video takes neither images nor audio.
The reference panel and its per-tier limits are in Callirra's H3 generator. If a reference set behaves differently from this on a lane you use, the job configuration is the useful thing to send.