opendub.ai
#ai-dubbing#krillinai#voice-pro#open-source

I Finally Got a Whole Video Dubbed with Open-Source AI

The dubs that worked before broke on me again — here's how I got two finished videos out anyway

opendub · 2026-06-05 · 4 min read

I’d gotten these tools to dub before — but sitting down to do the exact same thing again, the errors came right back. This time I fought through every one of them, and both tools produced a real, watchable dub. Most of the day was still spent stuck — but it worked, and I finally have finished videos to show instead of a story about getting close.

The same clip, dubbed two ways

Both tools dubbed the same clip — a short, public-domain NASA piece about the Artemis Moon mission — so you can compare them directly. They work in completely different ways:

  • KrillinAI transcribes, translates, and dubs with a ready-made voice, and burns subtitles on too.
  • Voice-Pro clones a voice from a short sample and dubs in that voice.

Here’s the original, before either tool touched it:

Original — NASA clip, English (before dubbing)

KrillinAI: the quiet failure that scared me

KrillinAI threw a chain of errors before it would dub, mostly from clashing with another dubbing app I had installed. But the one that rattled me wasn’t an error at all: my translations were coming out in plain English, untranslated — no warning, nothing red on the screen. The translation engine just wasn’t running, and instead of complaining, KrillinAI passed the original text straight through as if it were the translation. That’s the scariest kind of bug for someone like me: the result looks finished, so you’d never know to check.

KrillinAI — dubbed with an Edge-TTS voice

A few honest notes. On the free tier you’re limited to Microsoft’s voices — and you pick a voice by typing in its code rather than choosing from a menu — a small quirk you get used to quickly. But the dubbing quality was pretty solid for an open-source tool, and the translation held up well too. The interface is simpler than Voice-Pro’s, and I liked it better for it. What I appreciated most: it burns clean, properly-timed subtitles on by itself, so I didn’t have to line anything up. Using it free went well enough that I’m tempted to try its paid voice-cloning someday too.

Voice-Pro: fixing the engine by hand

Voice-Pro’s errors were deeper — inside the little libraries it’s built from. One kept demanding a component that isn’t even used for dubbing, and it crashed before it could start. Fixing them one at a time was endless; every time I blocked one, another from the same family blew up. What finally worked was fixing it in one place they all pass through: skip the missing optional part instead of crashing. One change, and the whole family of errors vanished at once.

I ran it two ways so the comparison would be fair. First with the same Microsoft voice KrillinAI uses — about as close to head-to-head as I could get:

Voice-Pro — same Edge-TTS voice as KrillinAI

Then with Voice-Pro’s own voice cloning, the feature it’s really built around:

Voice-Pro — CosyVoice voice clone

The cloning is genuinely good — the strongest thing either tool does. It does take noticeably longer to run than the plain Microsoft voice, but the result is well worth the extra wait. And here’s the core difference between them: Voice-Pro gives you everything free, cloning included, while KrillinAI keeps cloning behind a paid API. For someone set on staying completely free, like me, that decides a lot.

Side by side, the two had very different characters. KrillinAI’s real convenience is its subtitles — they come out clean and well-split on their own, with no editing needed. The downside is the pacing: to make the dubbed voice fit the original timing, it speeds up and slows down, and that constant stretching and squeezing ended up sounding fairly unnatural. Getting the timing to sit right would probably take some extra work. The other thing I missed was that the finished video came out with the background audio stripped away.

Voice-Pro went the other way. You do have to fix its subtitles yourself, but everything else about it left me satisfied. The voice length came out matched automatically, so the pace stayed steady and natural, and — as I said — the cloning sounded really good. Best of all, the background audio was kept in the finished video, so the result was ready to post somewhere as-is. For me, that last part made the biggest difference.

How long each one took

On an RTX 3080, dubbing the whole clip from scratch:

Tool & voice Time
KrillinAI (Edge-TTS) 1 min 56 sec
Voice-Pro (Edge-TTS, same voice) 4 min 4 sec
Voice-Pro (CosyVoice clone) 4 min 32 sec

On the same Edge-TTS voice, KrillinAI was about twice as fast — mostly because Voice-Pro does heavier extra work, like separating out the background audio. Cloning a voice with CosyVoice is the slowest, since it runs a model on the GPU one line at a time. None of it is slow in absolute terms, though — you’re talking a couple of minutes either way.

What the day taught me

I thought the hard part would be disk space or waiting on downloads. It wasn’t — everything had downloaded fine. The hardest part was that it had all worked before, and when I sat down to do the exact same thing again, it just wouldn’t run. That’s what messes with your head: not some brand-new problem, but something that worked perfectly last time quietly refusing to work now. The other lesson worth keeping: watch for the quiet failures — KrillinAI handing back untranslated English without a peep is the perfect trap, because the output looks done.

Still a non-coder bumping around in the dark on most of this. But this time the bumping ended somewhere real — two finished dubs of the same clip, made entirely with free, open-source tools.

comments

Comments (0)

No comments yet — be the first.