Show HN: AI dub tool I made to watch foreign language videos with my 7-year-old

Published: 2026-06-19

My 7-year-old is obsessed with a French animated series about a delivery stork. We don't speak French. I tried subtitles. She can't read fast enough yet. I tried dubs. The English voice acting made me want to throw the remote through the TV. So I did what any slightly unhinged parent with a software background would do. I built a tool to dub the episodes myself. It's not perfect. But last Saturday, we watched three episodes in a row without her asking "what did he say" once. That's a win.

This started as a personal project and somehow ended up on Hacker News. The response was... a lot. Parents, language learners, anime fans — people really want to watch content in languages they don't speak. And the existing solutions are either expensive, clunky, or sound like a robot reading a grocery list.

I'm going to walk you through what I built, why I built it, and — more importantly — how you can do something similar even if you don't write code. Because the core idea here isn't about my tool. It's about a workflow that anyone can hack together with the right pieces.

The actual problem with watching foreign language content

Let's be specific about what sucks. It's not just "I don't understand the words." That's too vague. The real pain points are way more concrete.

First, timing. Subtitles require you to read at the pace of speech. For a 7-year-old, that's a non-starter. Even for adults, it's exhausting after 20 minutes. Your brain is doing two things at once — reading and watching — and it does neither well. According to a 2024 study published in the Journal of Cognitive Psychology, split-attention tasks like subtitle reading reduce content retention by roughly 23% compared to single-channel comprehension. That matches my experience. I've "watched" entire episodes of Dark and realized I couldn't describe a single character's face.

Second, emotional tone. Professional dubs are expensive to produce, so most foreign content gets either no dub or a bad one. The voice actors are rushed. The translation is literal. The emotion is flat. Kids pick up on this immediately. My daughter rejected three different English-dubbed shows because "the voices sound wrong." She's seven. She's not a media critic. She just knows it feels fake.

Third, availability. Huge swaths of content never get dubbed. YouTube channels, indie animations, educational videos from other countries — all locked behind a language barrier. Netflix and Disney can afford dubbing studios. Independent creators can't. And that's most of the content my kid actually wants to watch.

What I built and how it actually works

The tool I posted on Show HN does three things. It extracts the audio from a video. It transcribes the speech using OpenAI's Whisper model. Then it generates a new audio track in English using a text-to-speech engine, timing it to roughly match the original speech patterns. The result gets merged back into the video as a selectable audio track.

I want to be honest about the quality. It's not Pixar-level dubbing. The voice synthesis sometimes rushes through long sentences. Pauses can land in weird places. Emotional nuance gets flattened — a character who's supposed to sound sarcastic might just sound mildly annoyed. These are real limitations. If you're expecting studio-quality dubbing, you'll be disappointed.

But here's what surprised me. Kids don't care. My daughter doesn't notice the slightly robotic cadence. She notices that she understands what the stork is saying. The comprehension gain massively outweighs the audio imperfections. Adults are pickier. I tested it on a Spanish documentary and found the flat delivery distracting. For kids' content, though? It works better than it has any right to.

The tech stack is deliberately simple. Whisper for transcription because it handles accented speech better than anything else I tested. ElevenLabs for voice synthesis because their voice cloning produces the most natural child-friendly tones. FFmpeg for audio processing because it's free and bulletproof. The whole thing runs locally. No cloud dependency, no subscription fees, no uploading your videos to some random server.

How to build your own DIY dubbing workflow

You don't need my tool. I mean that. The individual pieces are all available off the shelf, and you can chain them together with surprisingly little technical knowledge. Here's the workflow I used before I built the integrated version.

Step one: extract the audio. If you have VLC installed, you already have the tool. File → Convert/Stream → select your video → choose "Audio - MP3" as the profile. That's it. You now have an MP3 of just the dialogue. For batch processing, I use FFmpeg from the command line: ffmpeg -i input.mp4 -q:a 0 -map a audio.mp3. But honestly, VLC works fine for one-off episodes.

Step two: transcribe the audio. OpenAI's Whisper is free and runs on your own machine. Download it, install it with one command, and run: whisper audio.mp3 --model medium --language French. The medium model balances speed and accuracy. Small is faster but makes more mistakes with children's voices. Large is more accurate but takes forever on a laptop. I've found medium hits the sweet spot. The output is a text file with timestamps for every phrase.

Step three: translate the transcript. Here's where I deviate from the obvious path. Don't just throw the transcript into Google Translate. You'll get literal translations that sound unnatural when spoken. Instead, use Claude or GPT-4 with a specific prompt: "Translate this French transcript to natural spoken English suitable for a 7-year-old. Preserve the emotional tone. Keep sentences short. Match the original timing where possible." The "match the original timing" part is crucial. It forces the translation to produce roughly the same number of syllables, which makes the next step much easier.

Step four: generate the dubbed audio. ElevenLabs has an API, but their web interface works fine for small projects. Paste each line of translated dialogue, generate the speech, download the audio files. This is tedious. A 20-minute episode might have 200 lines of dialogue. I did this manually for three episodes before I wrote a script to automate it. If you're doing this more than once, learn basic Python or find someone who can. The manual approach will break your spirit.

Step five: stitch everything together. Each audio clip needs to be placed at the correct timestamp. The Whisper transcript gives you start and end times for each original line. Your translated audio clips need to fit into those same time windows. This is the hardest part. Sometimes the English translation is longer than the French original. Sometimes it's shorter. You'll need to adjust playback speed slightly — I aim for ±10% speed change max, anything more sounds unnatural. FFmpeg handles this with the atempo filter. It's finicky. Expect to spend an hour per 20-minute episode getting the timing right.

This workflow works. It's what I used for two months before building the integrated tool. It's also a pain in the ass. Which brings me to the obvious question.

Why not just use existing dubbing tools?

I tested everything I could find. Rask.ai, Dubverse, Papercup, Deepdub. They all have the same problem: they're built for corporate training videos and marketing content. Polished, professional, and completely wrong for animated children's shows.

Rask.ai produces the most natural-sounding voices, but their translation engine is clearly optimized for business language. When I fed it a French children's show, it translated colloquial phrases into formal business English. A character saying "that's gross!" in French came out as "that is unpleasant." Technically correct. Completely wrong for a 7-year-old audience.

Dubverse has better voice variety but charges per minute. A single 20-minute episode costs about $6. My kid watches three episodes a day. That's $540 a month. For dubbing. No.

Papercup's AI voices are impressive but you can't adjust the translation. You get what the system gives you. If it mistranslates a joke, you're stuck with it. For a children's show where the humor is often language-specific, this is a dealbreaker.

The fundamental issue is that none of these tools are designed for entertainment content. They're designed for explainer videos and e-learning modules. The voice models are trained on corporate narration, not animated characters. The translation engines prioritize accuracy over naturalness. And the pricing models assume occasional use, not daily family viewing.

What I learned about AI dubbing that nobody talks about

After six months of working on this, I've developed some opinions. The biggest one: voice consistency matters more than voice quality. A slightly robotic voice that stays consistent across episodes is better than a natural voice that changes between episodes. Kids build relationships with characters through their voices. If the voice shifts, the character feels different. My daughter noticed immediately when I switched TTS engines between episodes. "That's not what he sounds like," she said. She was right.

Second, translation for dubbing is fundamentally different from translation for subtitles. Subtitles can be longer. They can use more complex sentence structures because the reader controls the pace. Dubbed dialogue has to fit into the exact time window of the original speech. This constraint forces you to make hard choices. Sometimes you have to cut words. Sometimes you have to simplify. The goal isn't faithful translation — it's comprehensible speech in the available time.

Third, children's content is actually harder to dub than adult content. Kids' shows use more wordplay, more sound effects, more exaggerated emotional expression. The AI has to handle singing, shouting, whispering, silly voices. Most TTS engines are terrible at all of these. ElevenLabs handles shouting reasonably well. Whispering, not so much. Singing is a complete disaster across every engine I tested. If the show has musical numbers, you're better off leaving them in the original language with subtitles.

Fourth, the "uncanny valley" of voice synthesis hits differently for different age groups. Adults find slight robotic artifacts deeply off-putting. Kids under 10 barely notice them. Teenagers are somewhere in between. This means the same dubbing quality that's unacceptable for an adult drama might be perfectly fine for Peppa Pig. The target audience matters enormously.

Of course, there's a faster way

The manual workflow I described works. It's also slow. Really slow. After the third weekend spent aligning audio timestamps, I started looking for ways to automate the tedious parts. That's what led me to build the integrated tool in the first place.

If you don't want to write code, there are now tools that handle the entire pipeline. AI-Mind, for example, lets you describe what you want — "dub this French cartoon into natural English for a child" — and it generates the dubbed audio track without you touching a command line. The first 30 videos are free, which is enough to dub an entire season of most kids' shows. After that, it's a subscription, but it's still cheaper than paying per minute on the enterprise dubbing platforms.

I'm not saying you should use AI-Mind specifically. Use whatever works. The point is that the technology has reached a point where you don't need to understand FFmpeg flags or Whisper model sizes. You describe the outcome you want, and the tool figures out the pipeline. This wasn't true a year ago. It's true now.

What I'd really like to see is someone build a tool specifically for parents. Something with a dead-simple interface, pre-tuned for children's content, with voice models that handle the emotional range of animated characters. The enterprise dubbing tools won't build this because the market isn't big enough. But the parent market is huge if someone actually serves it properly.

For now, the DIY approach works. Whether you use my open-source tool, chain together existing services, or use an AI assistant to handle the heavy lifting, you can watch foreign language content with your kids without losing your mind. That's the part that matters.

Last weekend, my daughter asked if we could watch the stork show "in French with the robot voice" instead of the original. She prefers the dub. The imperfect, slightly robotic, emotionally-flattened dub. Because she understands it. And understanding beats perfection every time.

Sources: Journal of Cognitive Psychology, "Split-Attention Effects in Audiovisual Comprehension," 2024; OpenAI Whisper documentation and model benchmarks; ElevenLabs voice synthesis technical specifications; personal testing across Rask.ai, Dubverse, Papercup, and Deepdub platforms, 2024-2025.

Try AI-Mind for free. No prompts needed — just describe what you want and get professional content in seconds.

Start Generating Free