DEV Community

Cover image for 960P: fewer pixels than 1080P, same price, 50% more runtime
chet100
chet100

Posted on Originally published at callirra.com

960P: fewer pixels than 1080P, same price, 50% more runtime

I spent an afternoon convinced I had found a pricing bug.

MiniMax H3 has six output tiers on Callirra. Five of them are easy to reason about: 480P for drafts, 768P for publishing, 1080P for delivery, 1440P for preset-driven work, 2K for the widest feature set. The sixth sits between 768P and 1080P, costs the same as 1080P, produces fewer pixels than 1080P, and only accepts image-to-video.

That tier is 960P. The product labels it cinematic quality, and almost every write-up of the model skips it entirely. So here is what it actually returns, when the trade makes sense, and the three ways it bites a pipeline that assumes all tiers behave alike.

I work on Callirra, so the numbers below are our published rates and our own output measurements rather than an independent benchmark. The rate card is public; the arithmetic is checkable.

What 960P actually returns

960P 1080P (standard)
Output raster 1728×960 1920×1056
Credits per output second 3 3
Maximum duration 15 s 10 s
Text to video no yes
Image to video yes yes
Reference images up to 9 up to 9
Reference audio up to 3 up to 3
First and last frame no no
Seed rejected accepted

Two rows decide almost every real choice: you get 50% more runtime for the same money, and you lose text-to-video.

Why a smaller raster is not the cheaper raster

1728×960 is 1.66 megapixels. 1920×1056 is 2.03. So this is not a budget raster sold at a premium — it is a different conditioning path.

The intended job is: take a still with references, keep the subject, move it, and keep moving for longer than ten seconds. That is why the label is cinematic quality rather than HD, and why the price sits at the 1080P rate. You are buying reference conditioning and duration headroom, not pixels.

Arrive expecting "1080P, but smaller" and the pricing looks like a mistake. Arrive knowing it is the reference-led lane and it reads as deliberate.

Reproducing the check

The number worth verifying yourself is the duration, because that is the part that changes what you can build. Take a still you already have references for and submit the same job twice — once at standard 1080P asking for 12 seconds, once at 960P with the same 12 seconds.

curl https://api.callirra.com/v1/videos \
  -H "Authorization: Bearer $CALLIRRA_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{
    "model": "minimax-h3",
    "prompt": "slow push through a rain-lit market, neon reflections",
    "resolution": "960P",
    "duration_seconds": 12,
    "aspect_ratio": "16:9"
  }'
Enter fullscreen mode Exit fullscreen mode

The 960P job is accepted. The standard 1080P job comes back as a validation error, because that lane stops at ten seconds. Nothing is charged for the rejected job — validation happens before the reservation — which is the polite version of a ceiling you did not know existed.

That difference is the reason the tier exists at all: a slow push, an unbroken character beat, a loop for a hero section. All of them want more than ten seconds, and standard 1080P will not give you them.

The three places it bites

A pipeline that stamps a seed on every job. 960P does not ignore a seed, it rejects one. If your wrapper adds seed: 42 to be safe, every 960P request fails while every other tier succeeds — the kind of bug that looks like a broken tier.

A prompt-only job. There is no text-to-video scene here. An idea with no still cannot run.

A paired-frame job. First and last frame are available on 480P, 768P and the 2K image-to-video lane. Not 960P, not 1080P, not 1440P. Assume every image-to-video tier takes two frames and three of six say no.

When 960P is the wrong purchase

You need text-to-video: it cannot help at all. You need to land on an exact last frame: it cannot either. And if the delivery spec is literally 1920×1080, note that neither 1728×960 nor standard 1080P's 1920×1056 is that number — plan a resize step instead of discovering it at upload.

A workflow that uses the tier properly

Draft at 768P until the composition is right: two credits a second, and you can throw away as many takes as you like. When a shot is selected, re-render it at 960P if it needs a longer continuous take with references, or at standard 1080P if it needs text-to-video or the wider aspect set. Both cost three credits a second, so the decision is about runtime and conditioning, not budget.

FAQ

Is 960P cheaper than 1080P? No. Both are three credits per output second.

Can I use it for text-to-video? No; it is image-to-video only.

Why was my seed rejected? The tier refuses seeds rather than ignoring them. Reproducibility comes from the reference image.

Does it look worse than 1080P? It has fewer pixels. Whether that matters depends on delivery — 1728×960 scales to 1920×1080 with far less invention than 768P does.

The full rate card, with output dimensions and the ten-second cost for all six tiers, is on Callirra's H3 page. If you measure a 960P output whose raster or duration disagrees with this post, send the file — that is a correction I would rather make than defend.

Top comments (6)

Collapse
 
jesseships profile image
Jesse Griffin • • Edited

Good catch on the pipeline assumptions. Seed rejection especially — that's the kind of thing that breaks silently.

Collapse
 
price_76 profile image
Sam Price • • Edited

Curious whether the 15s cap is a model limit or a queue/pricing choice — that would change how I'd batch these.

Collapse
 
stackmasteraliza profile image
Aliza Ali •

Validation before reservation is the quiet hero here: a rejected over-length 1080P job costing nothing is what makes it safe to probe the ceilings yourself. It does argue for max duration being a column on the pricing table rather than something you discover through a validation error, because for longer clips 960P isn't a worse 1080P. It's the only same-price tier that fits. Fun to watch a suspected pricing bug turn out to be a different product.

Collapse
 
parker_58 profile image
Taylor Parker • • Edited

The 1728×960 raster plus reference conditioning is an interesting trade. 50% more runtime for the same credits is the part that actually matters.

Collapse
 
byte_henderson profile image
Quinn Henderson • • Edited

So 960P is really 'reference conditioning + duration headroom', not a cheaper raster. That reframing makes the pricing make sense.

Collapse
 
logan_works profile image
Logan Jenkins • • Edited

The text-to-video loss is the real catch here — easy to miss if you assume every tier is interchangeable.