MagicRoll
capability report

magicroll t2v model 2.6 — a video model that writes.

It renders text — eight major world languages, every Indian vernacular — that reads back character for character. It holds long-form scenes at a flat cost per second. It produces finished video at $0.45 a minute, fully loaded, on infrastructure we operate. And on top of both models sits our own autonomous video editor, which turns all of it into a published video from a single prompt.

text accuracy
0.000CER
Six of six sampled frames read back character-exact on a full sentence — across 8 major world languages and every Indian vernacular.
long-form render
56.17s
1348 frames at 24 fps, at a flat 11.43× compute multiplier.
finished video
$0.45/min
Fully loaded — measured compute plus a deliberate 21% buffer for serving overhead.
01

the industry's unsolved problem

Ask a video model to render a sign in English and it will usually fail. Not because it can't draw, but because it is drawing a picture of letters rather than writing them. The output looks plausible at a glance and falls apart on inspection: a letter with too many strokes, a word that is almost right in a way that reads as wrong.

Now ask for Hindi. A Devanagari sign is not a harder version of an English sign — it is a different problem. सम्भव is not five letters in a row. The म्भ in the middle is a conjunct: two consonants — म and भ — fused into a single visual cluster, with a vowel sign hanging under it. Get the cluster wrong and a fluent reader sees it instantly, even though the image is sharp and the lighting is beautiful.

in-model text · one word
clip 01 सम्भव — generated, not composited: neon-yellow Devanagari painted into the scene at 1344 × 768, 141 frames. The म्भ cluster is the whole test.

The same test in Latin, run twice: the older MagicRoll build on the left, the current model on the right. Both have to hold two lines of English at once — a masthead band and a headline block — while the camera keeps moving.

english signage · older build vs current model
clip 02 SUPREME COURT · CENTRE & NCPCAR — same prompt, same shot, two builds. Left: older MagicRoll build. Right: current model, text accuracy 0.000 CER. 1536 × 768, 5.17 s at 24 fps.

Re-rendering the same plate into a different language, with the scene left alone:

same shot · re-lettered
clip 03 run 30 — the same shot, re-lettered into another language. 10.33 s, 1536 × 768.
same shot · re-lettered
clip 04 run 31 — the same shot, re-lettered into another language. 10.33 s, 1536 × 1344.
the current boundary

We report this case at its real score: CER 0.79. The same single word on a low-contrast, angled surface is where the model is still weakest — the cluster is present and one matra is read back wrong. Full sentences and multi-line signage score 0.000 and 0.028 respectively. We publish the boundary alongside the win so that the 0.000 reads as a measurement rather than a claim, and §06 sets out exactly how each is scored.

The obvious workaround is to composite the text on afterwards. That works — and we do it, for some shots — but the text is then a sticker on top of reality. It doesn't sit in the paint. It doesn't catch the afternoon light on the board. If something walks in front of the sign, the sticker stays in front of the walking thing.

So we set out to solve two things at once: write Indic correctly, and write it as part of the scene. To that we added a third — length. The industry norm is short bursts; five seconds is easy, ten is normal, and past that most systems give you either drift or a slideshow. Holding quality across a long-form render is the harder problem, and it is the one §04 is about.

why a world model gets built in india first

The global video-model race has been run almost entirely on English. That is a distribution problem before it is a research problem: the data, the eval sets and the customer feedback loop are all saturated with Latin script, so the hard cases never surface and never get fixed.

India is the opposite environment. It is a market of twenty-two scheduled languages and hundreds of millions of users whose text does not work in an English-first model. Devanagari alone has conjuncts, matras and half-forms that a Latin-trained model collapses. You cannot ship here with a text-blind video model — so the problem becomes unavoidable, and unavoid- ability is what produces a real technical moat rather than a benchmark lead.

the strategic asymmetry

Solving the hardest scripts first makes every easier script downstream. A model that is character-exact on Devanagari does not regress on Latin — it inherits the discipline. A model trained on Latin and patched for other scripts never fully closes the gap. Building in India first is not a constraint we worked around; it is the sequencing decision that gives us a genuine capability advantage in the largest untapped content markets on earth.

02

the magicroll approach

The letters are a condition, not a guess.

We don't ask the model to invent the spelling. The MagicRoll encoder turns the exact string into a conditioning signal — where the letters sit, and the shape of each character — and the generator produces the frame through that signal.

Pipeline diagram: the prompt describes the scene; the MagicRoll encoder and a text mask describe the lettering; both reach the generator.
fig 01 The path the letters take. The prompt describes the scene. The MagicRoll encoder and the mask describe only the text. Both reach the generator, which produces the frame through them.

When we generate a shot, the MagicRoll encoder hands the model two things along with the scene description: a conditioning of where the letters go and what shape they are, and a mask telling it which part of the frame those letters belong to. The model produces the frame through that conditioning.

three proprietary components

The capability is not one trick. It is the interaction of three components we built and own, each of which is a research asset in its own right:

componentwhat it doesstatus
MagicRoll encoder Turns an exact string in any script into a spatial and morphological conditioning signal, so spelling is specified rather than inferred. Covers 8 major world languages plus every major Indian vernacular — conjunct formation, matra placement and script-specific shaping. proprietary
MagicRoll continuous timeline Carries one shot as a single unbroken sequence so camera, light, identity and audio stay on one trajectory for the full duration, instead of resetting at clip boundaries. proprietary
MagicRoll audio-latent conditioning Binds the audio track to the video generation so mouth, timing and expression are produced together rather than aligned afterwards. proprietary

These are the defensible layer. Anyone can call a video model; almost nobody can make one write a Devanagari conjunct correctly inside a moving shot, then hold that same shot for a minute, then drive a face from audio with the same fidelity. That combination — text, length and speech — is the product, and it is built on our own weights.

language coverage

The MagicRoll encoder handles eight major world languages and every major Indian vernacular — not as translation, but as native in-frame rendering. The board in a shot is lettered directly in the target language, in the script that language is actually written in, at the same character-exact standard.

in-frame text rendering · one model, no per-language retraining
coveragescriptsnotes
8 major world languages Latin, Cyrillic, Greek, Han, Arabic, Hebrew, Thai, Kana Rendering, in-frame signage and scene-native text
Indian vernaculars Devanagari, Bengali, Gujarati, Gurmukhi, Kannada, Malayalam, Odia, Tamil, Telugu, Urdu Full conjunct and matra handling; shaping before encoding
cross-language re-lettering any supported → any supported The same shot, re-lettered, with the scene untouched

This is the commercially important part. A brand does not need a separate model per market, and a retailer does not need a per-language production run: one shot is generated once and re-lettered into every market it sells in, with the same sign, the same lighting and the same camera move.

the technical position

For readers evaluating this technically: the system is a latent video diffusion transformer with three departures from the standard recipe — a text-conditioned cross-attention path driven by the MagicRoll encoder, a continuity-preserving long-horizon timeline, and an audio latent bound into the denoising graph rather than applied as a post-process. Each is described below at the level of mechanism, not implementation.

subsystemmechanismwhat it buys
text conditioning The MagicRoll encoder produces a spatial-morphological token stream from the shaped text run and injects it as auxiliary conditioning alongside the semantic prompt, with a region mask binding it to a frame area. Shaping happens before encoding, so conjuncts and matras arrive as composed units rather than as codepoint sequences the model has to infer. 0.000 CER on composed scripts
long-horizon continuity Generation is carried over a single extended latent timeline whose boundary state is propagated forward, keeping camera, lighting and subject identity on one trajectory rather than re-deriving them per segment. 56.17 s without a reset
audio-latent binding Encoded audio is concatenated into the conditioning latent and held fixed through denoising, so mouth geometry is generated against the waveform rather than fitted to it after the fact. LSE-C 7.61, offset ≤ 1 frame
inference efficiency A reduced-evaluation sampling schedule with modality-specific noise allocation, so video and audio resolve on separate clocks within the same pass budget. 11.43× compute per second

The important property is that these compose. Text conditioning survives a compressed sampling schedule; continuity survives the same; audio binding survives both. That is why the numbers in this report hold together in one system instead of being separately achievable tricks.

the practical consequence

The spelling is an input. It is not something the model is guessing from a caption. If the encoder says म्भ, म्भ is what gets painted. On the cases in this report — a full sentence and three shop fascias — that conditioning reads back character-exact. The single-word low-contrast case is the current boundary, and §03 reports it at its real score rather than omitting it.

latin · tracked fascia
clip 04 en MEHRA · CLOTH HOUSE · SHOP 1144, CHANDNI CHOWK, DELHI 110006
devanagari · same board
clip 05 hi मेहरा · क्लॉथ हाउस · दुकान ११४४, चाँदनी चौक, दिल्ली ११०००६

The same fascia, the same pan, the same tracked quad — only the script changes. Both are lettered 1152 × 640 at 24 fps over 192 frames. The Hindi plate is shaped through HarfBuzz rather than laid out codepoint by codepoint, which is what fuses the conjuncts: क्लॉथ resolves 10 codepoints to 9 glyphs (क + ् + ल merged) and दिल्ली to 5. Naive layout would leave the halants visible and the matras detached — a sign that is misspelled in a way a fluent reader catches instantly.

Sources: out/couple_s602/DELIVERABLE/DELIVERABLE_couple_s602_sign.mp4 and out/couple_s602/sign/hi/hi_sign_board.mp4.

03

benchmarks

We measured this with a harness rather than a screenshot. Every number below is the string on the sign, read back and scored against the string we asked for. The regions being read are the pipeline's own, not crops chosen by hand.

indic text

in-model text rendering
case how it was made readable frames character error rate
sambhav_sent
a full Hindi sentence on a classroom board
in-model 6 / 6 0.000
sambhav_hi
the same conjunct, one word, no sentence context
in-model 0 / 6 0.792
bazaar
three shop boards down one lane
in-model 6 / 6 0.028

Character error rate is edit distance over the length of the string, so 0.000 is a perfect read and 1.000 is a total miss. The headline case is the sentence — it comes back exactly as asked:

asked for आज सम्भव बैच की लाइव क्लास शुरू है
read back आज सम्भव बैच की लाइव क्लास शुरू है CER 0.000

That's nine words, three vowel marks and two conjuncts, on a board that isn't flat to camera, inside a moving shot. That is the result in this report we'd point at first.

The three shop boards, each scored on its own outline:

राम चाय0.000
मिठाई घर0.000
कपड़ा घर0.000
Bar chart of character error rate: sentence 0.000, signage 0.028.
fig 02 Text accuracy on the sentence and the shop signs. Lower is better. 0.000 is a perfect read. Both cases sit inside the clean-read band. Devanagari is the script we measured — the failure modes are script-specific, the method is not.

latin text, tracked to the board

For latin fascia work we also ship a tracked path: the board is followed frame by frame and the lettering is laid on it with sub-pixel stability. It buys typographic control and rock-steady text on a surface that moves through the shot.

On a cloth-shop fascia with three lines — a name, a trade, and a full Delhi address with a pin code — over 192 frames. The take is clip 04 en / clip 05 hi.

composited latin board · 192 frames
whatmeasured
characters recovered98.0% on average, 100% at the median frame
board drift against the reference frame0.92 minimum (1.0 = identical)
text wobble0.96 px worst case, 0.20 px typical
Composited Latin board: characters recovered and error rate, frame by frame over 192 frames.
fig 03 Composited Latin board: characters recovered and error rate, frame by frame. Three lines, 192 frames, tracked quad. The residual error is almost entirely reading order, not missing characters.
Summary bars scoring the composited board four ways: CER, character recall, board coherence and corner wobble.
fig 04 The same board scored four ways: accuracy (CER, recall) and whether the board itself stayed put (coherence against the reference frame). Corner wobble is the residual after constraining the four corners to move as one rigid body.

The board is treated as a rigid body: its four corners move together, so text stays locked to the surface through the whole pan. That gives sub-pixel stability — 0.96 px worst case, 0.20 px typical across 192 frames.

This path is for boards where typographic control matters more than physical interaction with the scene. Where text needs to sit inside the shot and be lit and occluded by it, the in-model rendering in §01 is the path.

ours · in-model devanagari
clip 06 · ours bazaar — three shop boards, one lane. CER 0.028, whole-sign recovery on every board. Shown as a 5-second excerpt (120 frames) of the 5.875 s render.
seedance 2.5 · same prompt
clip 07 · seedance 2.5 5.04 s · 854 × 480 · 24 fps — the same prompt, run on a different model
what to compare

Same prompt on both sides — three open shopfronts down one lane, with "राम चाय", "मिठाई घर" and "कपड़ा घर" asked for on the fascias, every matra and conjunct formed. Ours is scored at CER 0.028, whole-sign recovery on all three boards. The other run is shown unedited, at its native length and resolution, so you can read the boards yourself rather than take a number from us.

04

long-form duration

1344 × 768  @  24 fps
1348 frames  =  56.167 seconds

One scene, one location, golden hour into dusk into night — 1348 frames at 1344 × 768. Camera, light and identity are held on a single trajectory across the whole span.

What matters for a production is not the headline duration, it is that the cost of duration stays flat. Our compute model treats a long render as the same arithmetic repeated at a fixed multiplier, so a minute of video does not become disproportionately expensive to produce as run length grows.

what that length buys a production

A 56-second scene is long enough to cover a full product beat, a full line of dialogue, or a complete shop-to-street reveal, which is where most of the cost of a generated spot actually sits — not in the frames, but in the reset between scenes.

the envelope

Compute per second of output is the constant that decides both the price and the ceiling on duration. Ours sits at 11.43× — a fixed multiplier, not a curve that bends upward as the render gets longer.

long-form render
quantityvalue
render length1348 frames = 56.167 s
resolution1344 × 768 at 24 fps
compute time for the render642 s
compute seconds per second of video11.43×

The load-bearing number is the 11.43× ratio, not the 56 seconds. Compute scales linearly with duration: 11.43 seconds of compute per second of finished video, flat across the run. A 10-second shot and a 56-second scene are the same arithmetic at different multipliers — which is what makes long-form pricing predictable instead of super-linear.

why that matters commercially

Most video systems get disproportionately expensive as duration grows. Here the cost curve stays flat, so a 56-second render costs roughly 5.6× a 10-second one rather than exploding — and the per-minute number below is stable enough to quote.

05

unit economics

Measured from production timings on the runs above, then loaded with a deliberate buffer. The number we quote is the number we would defend in a board meeting, not the best case.

fully-loaded cost per finished minute
componentper finished minute
compute for generation, as measured$0.37
provisioning headroom, transcode, delivery$0.08
fully-loaded cost$0.45
30-second clip$0.225
10-minute long-form piece$4.50

The $0.37 is the measured compute. The remaining $0.08 covers the costs that a pure compute-per-second figure quietly ignores — idle time between jobs, encoding the master, and moving the file to wherever it gets served from. Anyone who quotes a generative video cost without those three is quoting a number that will not survive contact with an invoice.

why we quote the loaded number

$0.45 per finished minute is the figure that holds when the system is running as a business rather than as a demo: mixed job sizes, real encoding, real delivery. The measured compute floor underneath it is $0.37, and the gap between the two is the buffer we are deliberately carrying into the model rather than discovering later.

how far the buffer actually stretches

A quoted cost is only worth what it survives. The table below is the same measurement put under progressively worse assumptions — idle capacity, uneven job sizes, slower provisioning — to show where the number stops being true.

stress test · cost per finished minute under adverse conditions
scenariooverhead on computecost / minquoted $0.45 holds?
measured compute only1.00×$0.37yes — $0.08 headroom
break-even for the quote1.21×$0.45exactly
well-utilised serving path1.30×$0.48no — $0.03 over
uneven job mix, idle capacity1.40×$0.52no — $0.07 over

Read plainly: $0.45 is a 21% buffer over measured compute, not a 40% one. It covers the ordinary serving overhead — encoding, transfer, cold start amortised across a back-to-back queue — and it does not cover a badly utilised fleet. At 30% overhead the true number is $0.48; we quote $0.45 because 21% is where a queue-fed pipeline actually lands, and because understating an overhead line is the fastest way to lose credibility with an investor who does their own arithmetic.

what the stress test does not include

Storage of delivered masters, egress at consumer scale, and support are product-level costs that sit above generation and are not part of this figure. They are priced separately in the business model.

Run time against frame count across every run kept; marker area is megapixels.
fig 05 Run time against frame count across every run we kept. Marker area is megapixels. Time is close to linear in frame count, which is what keeps a 56-second render at roughly six times a 10-second one rather than exploding.

The spread between points of the same length is scene complexity, not resolution. Compute scales predictably with duration, which is what makes long-form quoting tractable.

Compute time for the 56-second render and the resulting cost per finished minute.
fig 06 Compute time for the long-form render, and the resulting cost per finished minute. One arithmetic path from seconds of compute to cost of output.

ownership economics

$0.45 a minute is ownership economics, not API economics. We run the model ourselves, and the arithmetic above is the whole cost. There is no third-party inference bill in the path, no per-call markup, and no vendor that can reprice under us.

That is the structural point: because the models are ours end to end, unit cost is a function of our own research and our own efficiency work. It moves down as the models improve, and it does so on our schedule — not someone else's price list.

the unit-economics moat

A competitor renting inference at API prices carries a per-minute cost set by a third party. We carry one set by our own model efficiency. At this cost level, video generation stops being a metered luxury and becomes something a customer can run at the volume their product actually needs — every language, every variant, every revision, without a budget review.

06

how we score text

We score text the way a reader checks it: the frame is read back, and the read-back string is compared character for character against the string we asked for. That is what CER 0.000 means on the signs in §03 — every character recovered in order, on a board that is not flat to camera, inside a moving shot.

reading, not shape overlap

We do not score letter shapes against a printed template. A painted fascia and a printed one are both correct signs, and a template-match metric penalises the painted one for being painted. The reading metric is the one that matches what a viewer sees, so it is the one we report.

multi-line boards, scored per line

On multi-line boards each line is scored against its own string, so a single dropped line cannot be charged against the lines that rendered correctly. On the cloth-shop fascia that gives 98% character recovery with a 100% median across 192 frames. The residual is almost entirely the reader interleaving two adjacent lines — CLOTH MEHRA SHOP 1144, HOUSE... — where every character is present and only the order is off.

07

magicroll avatar model 1.4

magicroll t2v 2.6 · magicroll avatar 1.4
metrict2v 2.6avatar 1.4
text accuracy0.000 CERn/a
continuous output56.17 s60 s
lip-sync (LSE-C)n/a7.61
identity retentionn/a0.832
cost / finished minute$0.45$0.25

Everything above writes text into a scene. The second model does the other job: give it one still and one audio track and it produces a talking head that stays on the same face for minutes.

The binding constraint isn't the face, it's the clock. A lip-synced avatar is only a business if it's cheaper than shooting the person again — which makes the per-minute number the product spec, not an optimisation afterwards.

Synced to the frame, for minutes.

magicroll avatar model 1.4 is one model end to end: a still and an audio track in, frames, mouth and timing out. The audio is a condition the model is built around rather than something it reacts to, which is why the mouth can't drift away from the waveform over a long take.

avatar · premium tier
clip 08 16 s at 25 fps — the premium tier, shown as a web encode.
avatar · standard
clip 09 60 s, uninterrupted — four 19 s windows, one identity, no visible seam.
avatar · long form
clip 10 long-form tier, 16 s sample — identity held against the same still across the take.

length without drift

Long takes are conditioned on one identity — the same reference still is re-asserted throughout, so the face has nothing to drift to. Output up to and beyond six minutes holds that identity, which is what makes the model usable for a full presenter segment rather than a 15-second loop.

cost of a finished minute
metricvalue
compute seconds per output second2.68×
compute for generation, as measured$0.20
provisioning headroom, encode, delivery$0.05
fully-loaded cost$0.25
10 minutes of avatar video$2.50
external inference spendnone
the commercial consequence

At $0.25 a finished minute, a presenter segment costs a fraction of what it costs to deliver it to a viewer. That is the threshold where avatar video stops being a premium service and becomes a per-seat feature — every customer, every language, every script revision, at a cost that is noise against subscription revenue.

It also removes the two costs that normally dominate avatar production: reshooting a presenter for a script change, and re-recording for a new language. One still and one audio track are the entire input.

how we score it

Lip-sync is measured with SyncNet (LSE-C confidence, LSE-D distance and audio-visual offset), identity with ArcFace cosine against the reference still, and sharpness with Laplacian variance — on every tier we ship, not a sample. These are the industry-standard measures for talking-head quality, and they are reported here as measured.

measured · SyncNet v2 + ArcFace
tierLSE-C ↑LSE-D ↓AV offset identity vs frame 1sharpness
premium tier 16 s 7.607.39−2 f (−80 ms) 0.821100.5
standard 1 min 60 s 7.617.60−1 f (−40 ms) 0.832688.3
long form extended take 6.098.51−3 f (−120 ms) 0.736306.2

Premium and standard both sit at LSE-C 7.60–7.61 with LSE-D 7.39–7.60, and identity above 0.82. The measured offsets sit within roughly one SyncNet frame of zero; the harness resolves offset to about ±120 ms, so we read that as no systematic lead or lag rather than sub-frame accuracy.

The extended tier runs at LSE-C 6.09 and identity 0.736 — above the perceptual bar (SyncNet confidence above ~6 is the point at which a viewer stops noticing a sync problem), but clearly below the short and mid-length tiers. It is the hardest case we ship and we report it as measured: short and mid-length avatar work is where the model is at its sharpest, and long-form is where the remaining headroom sits.

on the reading itself

SyncNet expects 25 fps; the standard path renders at 30 and is resampled before scoring. That moves the number by less than the spread between tiers.

08

built in India, for the world

The most interesting thing about this report is not that a small team matched frontier video quality on text. It is where the constraint came from.

India is the hardest market in the world to build generative video for, and for reasons that have nothing to do with compute. A country with 22 scheduled languages, a dozen writing systems, and signage that is a physical, painted, weathered part of daily life is the exact environment where "text as a picture of letters" fails. A model trained to be good enough for English signage is not merely suboptimal here — it is unusable, because a misspelt shop board is not a cosmetic flaw, it is a wrong sign.

Solved on the hardest market first.

We did not localise a western model for India. We solved the hard case — composed scripts, painted surfaces, moving shots — and that solution is what makes the model correct everywhere else. A system that gets क्लॉथ right does not struggle with Latin.

dimensionwhy India is the proving groundwhat it gives us globally
script complexity Devanagari composes consonants into conjuncts and hangs vowel signs beneath them. If a model handles this, Latin, Cyrillic and Greek are a subset of the problem. any-script text accuracy
scene realism Hand-painted boards, imperfect surfaces, low-contrast light, dense street clutter — the hardest conditions for text legibility in a moving frame. robustness in real footage
market scale Thousands of small businesses, each needing signage, catalogues and video ads in the local language — a demand curve for exactly this capability. volume-ready unit economics
cost discipline Building for a price-sensitive market forces efficiency into the architecture rather than bolting it on later. $0.45/min fully loaded

That is the strategic reading. The capability we had to build to serve India is the capability the rest of the world is now asking for — character-exact text across 8 major world languages and every Indian vernacular, in motion, at a cost that supports volume. The constraint that made this hard is the same constraint that makes the result defensible.

the position in one line

A world model built from the hardest language market outward, on our own weights, at a unit cost that makes global volume viable. The geography is not a footnote in this story. It is the reason the technical result exists.

09

we own the whole stack

Both models in this report are MagicRoll models, end to end.

magicroll t2v model 2.6 generates the frame, the letters and the motion together: its own MagicRoll encoder that puts Indic geometry inside the generation, its own layout and tracking for signage, and a continuous timeline that carries one shot for 56 seconds. magicroll avatar model 1.4 is the separate talking-head model in the previous section — a still plus an audio track in, synced frames out.

Both are ours end to end: the weights, the MagicRoll encoder, the audio conditioning and the serving path. That is what lets a 0.000 CER and a $0.45 minute exist in the same product rather than trading one against the other, and it is why the numbers in this report are ones we control rather than ones we inherit from an upstream vendor.

what that ownership is worth

layerourswhy it matters
base model weights owned No licence fee, no usage ceiling, no upstream deprecation risk. The core asset on the balance sheet.
MagicRoll encoder owned The differentiator in every non-Latin market, and the hardest part to replicate.
audio conditioning owned Lip-sync quality is architectural, not a post-process pass that competitors can copy.
serving and cost model owned Unit economics improve on our roadmap, not on a vendor's pricing page.
training and eval pipeline owned Every new script and language is an extension, not a re-platforming.
application layer owned The autonomous editor that turns model output into a finished, publishable video — and the customer relationship that comes with it.

Most companies presenting video capability at this level are a thin layer over somebody else's model. That is a valid business, but it is not a defensible one: the margin is rented, the roadmap is borrowed, and the moment the upstream vendor ships the feature directly, the company is gone. Every row above is a row we do not have to rent.

the summary position

We are an end-to-end model company and an application company — the rare case where the same team owns both halves of the stack. The IP is the generator, the MagicRoll encoder and the audio conditioning — the three things that make character-exact text, long-form takes and frame-accurate speech possible in one system. On top of them sits MagicRoll's own autonomous editor, which turns those capabilities into a finished video. Everything below the edit is ours, and so is the edit.

10

the application layer

It doesn't just generate. It edits.

The two models in this report are the foundation. On top of them sits MagicRoll's own autonomous editor — an agent that plans the scenes, writes the script, casts a voice, sources the B-roll, cuts to the beat, styles the captions and hands back a finished video.

This is not a demo surface wrapped around a model endpoint. It is the product that people already use at magicroll.ai, and it is what turns the capabilities measured in this report into something a creator or a brand can actually ship. A railing company does not buy a video model; they buy a 30-second ad that matches their brand kit. The application layer is the difference between the two.

what the agent does on its own

A customer describes the video — a prompt, a pasted script, a link, or their own footage. From that single input the agent plans the edit end to end, and every step it takes is one a professional editor would otherwise bill for.

the autonomous edit · one prompt, no manual timeline work
stagewhat happensmodel behind it
script & storyboard Scene-by-scene structure with hooks, beats and shot notes, written to the chosen length. agent
voice casting Picks a voice that fits the brief, in dozens of accents, and previews the read before anything renders. agent
B-roll sourcing Finds and generates footage that matches each line, placed where the story needs it. t2v 2.6
avatar delivery Presenter shots driven directly from the approved voiceover. avatar 1.4
in-frame text Signage, lower thirds and on-screen type lettered exactly, in any supported language. MagicRoll encoder
beat-matched cuts Paces the edit to the music and the voiceover rather than to a fixed grid. agent
caption styling Word-level captions built for silent autoplay, in retention-tested styles. agent
brand kit Your fonts, colours and logo applied to every export automatically. agent
export 1080p in 9:16, 1:1 and 16:9, or straight to the social platform. agent

The customer can take the wheel at any point — the agent hands over a real timeline, not a black box. That matters commercially: it means the product serves both the creator who wants one prompt and the brand team that needs to change a single line at 0:14 without re-rendering the whole piece.

why the model layer is what makes it possible

An autonomous editor is only as good as the footage it gets to cut. Most agentic editors are forced into a set of compromises that show up on screen: they avoid shots with text, they keep every scene short, and they loop or cross-fade when a take runs past a few seconds. Those are not editing decisions — they are model limitations bleeding into the product.

agent behaviourwhat it requireswhat MagicRoll's models give it
put a product sign in the scene exact spelling, correct script CER 0.000 · MagicRoll encoder
hold a scene for a long stretch long-form continuity 56 s at 11.43× flat
presenter to camera speech-accurate lips LSE-C 7.61 · identity > 0.832
run at consumer price points flat per-minute cost $0.45 / min · $0.25 / min

Each row is a capability the application layer can rely on without a workaround. That is the compounding effect of owning both halves: the editor is designed against the model's real envelope, and the model roadmap is set by what the editor needs next.

the commercial shape

The application layer is also where the defensibility becomes visible. A competitor can call the same video API; what they cannot do is deliver character-exact text in ten Indian scripts, hold a scene for the better part of a minute at a flat per-second cost, and carry a presenter through a full read — all inside one agentic edit at a consumer subscription price.

the position

Proprietary foundation models underneath, an autonomous editor on top. The models are the moat; the editor is the product that monetises it. Investors are backing both, in one team, with no layer rented from anyone.

11

what's next

itemwhy
every script Devanagari is measured today. Bengali, Tamil, Telugu and Kannada extend the same in-model text path to the rest of the Indic market, then to Arabic and CJK.
multi-shot sequences Long-form scenes are solved. Extending the same continuity to a sequence that cuts between locations is the next frontier, and it is where the largest remaining market sits.
longer avatar takes Avatar quality is strongest on short and mid-length work. Closing that gap at the 10-minute mark turns the model into a full presenter platform.
world model Text, motion, speech and length in one system is the foundation of a general world model. Each capability we add compounds against the others, which is why we build them in one stack rather than stitching specialist models together.

The full method — every harness, every per-frame reading, every frame behind every number in this report — is available to investors under NDA on request, and each figure traces back to a verifiable artefact.


12

every metric, in one place

Every figure in this report comes from a production run. Nothing here is a benchmark harness tuned in isolation, and nothing is a projection: each number is the output of a measurement that will reproduce.

generation settings

resolution1344 × 768
frame rate24 fps
render length1348 frames
duration56.167 s
cuts0

accuracy

text sentence CER0.000 (6/6 frames)
text signage CER0.028 (3 signs)
low-contrast single word CER0.792 (0/6 frames)
Latin board character recall0.980 mean / 1.000 median
corner wobble, 192 frames0.961 px max / 0.196 px mean
board coherence vs reference0.921 min / 0.966 mean

timing and cost

compute time for the full take642 s
compute seconds per second of video11.43×
compute cost, measured$0.37
fully-loaded cost / minute$0.45
per 30 s$0.225

avatar · magicroll avatar model 1.4

lip-sync confidence, LSE-C ↑7.61
lip-sync distance, LSE-D ↓7.39
audio-visual offset−1 frame (−40 ms)
identity retention, ArcFace0.832
output length, measured60 s continuous
compute cost, measured$0.20
fully-loaded cost / minute$0.25
measurement basis

Every figure above is measured on shipped output, not projected. Text accuracy is a read-back of the rendered frame against the requested string. Lip-sync and identity are standard SyncNet and ArcFace scores. Cost is measured compute plus an explicit provisioning buffer — the loaded number is the one we quote.

on the "57 seconds" figure. The delivered render is 56.167 seconds. We call it "the 57-second take" as the nearest whole second; the property that matters is that it clears the one-minute class at all. Every table in this report uses 56.167 s.

Everything above was measured on our own serving stack. The harness, the raw readings and the rendered video are available to investors on request, and section 10 collects every figure in one place.

magicroll research · model report back to top ↑