A Reddit Story Where Every Character Has Their Own Voice
How we made an 82-second Reddit story video with four AI voices designed from written descriptions, from the script and the jokes to the renderer changes it needed and what it cost.
Most Reddit story videos use one narrator for everything: the post, every comment, every reply. It works, but it flattens the one thing that makes Reddit threads fun, which is that they are a crowd of different people reacting.
For our Reddit Stories example we wanted each commenter to sound like a different person. This post walks through how it was made: the script, the jokes, how the voices were designed from written descriptions, the renderer changes it needed, and what it cost.
The story is made up and every voice is AI-generated.
The Script
Here is the whole script, exactly as it was rendered:
# resolution: 9:16
[video file="video/minecraft/Bs0mbIUlGgw.mp4" size="content" fit="loop"]
[social-post title="AITA for being upset that my dad got famous on OnlyCorns?" subtitle="r/AmITheAsshole" author="u/husk_and_daughter" pfp="preset:red" engine="mimo_tts_voicedesign" voice="A young American woman around 20 with a clear, slightly raspy voice, exasperated and deadpan. She tells the story at a brisk pace with dry comic timing, sighing before the worst parts and pausing for a beat before each punchline, like she still cannot believe any of this happened."]
My dad is fifty four. Retired accountant. Owns a riding mower. The most normal man alive.
Two months ago he walked into my room holding his phone and asked, sweetie, what's an OnlyCorns?
I panicked. I told him it's a website where farmers show off their corn. Which is technically true.
He said, huh. Interesting. And walked out.
A week later he's in the backyard with a ring light, a stick of butter, and his biggest cob.
He calls himself Big Daddy Husk.
His first video was him slowly peeling back the husk and whispering, you like that silk?
He now has forty thousand subscribers. His bestseller is ten minutes of him hosing down his stalks.
Mom does the lighting. She says it's a fun couples project.
Last Sunday a woman at church asked him to sign her cob.
I told him to stop because it's humiliating, and now the whole family says I'm just jealous of his harvest.
AITA?
[/social-post]
[social-comment author="u/cornfed_carol" pfp="preset:purple" engine="mimo_tts_voicedesign" voice="A gushing Midwestern woman in her 60s, warm and breathless with admiration, speaking quickly like she is telling her book club about her favourite author."]
YTA. I have gardened for thirty years and Big Daddy Husk taught me things about shucking I never knew were possible.
[/social-comment]
[social-comment author="u/agronomy_andy" pfp="preset:blue" engine="mimo_tts_voicedesign" voice="A gruff American farmer in his 50s with a low, serious, gravelly voice, speaking slowly and with total sincerity, like an expert giving testimony."]
YTA. Professional farmer here. The way he handles the tassel is flawless. Genuinely educational content.
[/social-comment]
[social-comment author="u/kernel_panic" pfp="preset:green" engine="mimo_tts_voicedesign" voice="A young man in his 20s with an earnest, slightly too emotional American voice, speaking fast like he is confessing something important."]
YTA. Paid subscriber. His creamed corn tutorial saved my marriage.
[/social-comment]
[/video]It has the same shape as what the Reddit Stories creator produces: a background video, one post, and a few comments. The only difference is that the creator gives every card the same voice, while here each card has its own. You can do the same by editing the script in the creator's DSL tab.
The Setup Choices
No music. Music is optional in the Reddit format, and here the jokes depend on hearing every word clearly.
A looping background sized to the content. size="content" fit="loop" makes the gameplay run exactly as long as the narration and loop if the clip is shorter. That is how the creator builds it too.
Minecraft parkour. It is what viewers expect behind a Reddit story, and it asks nothing of their attention.
9:16. It is made for Shorts and TikTok.
Writing the Story
Innuendo you only notice if you are looking for it. Every line is literally about corn: husking, butter, silk, tassels, stalks, cobs, the harvest. A reader who takes it innocently hears about an obsessive corn hobbyist. Everyone else hears the other meaning. Nothing is explicit, so it stays safe for a public product page.
Normal first. The dad is introduced as "the most normal man alive": retired accountant, riding mower. The joke needs that contrast, so it comes before any corn.
One lie starts it all. The daughter panics and says OnlyCorns is "a website where farmers show off their corn", which sends her dad off on his new career. "Which is technically true" is her admitting the double meaning out loud.
Escalate in steps. The setup (ring light, butter), the persona (Big Daddy Husk), the first video, success (forty thousand subscribers, a bestseller), the family joining in (Mom does the lighting), and finally the outside world joining in (the woman at church).
Turn it back on the poster. "Jealous of his harvest" is the classic AITA twist where the family blames the person posting, and it gives the commenters something to react to.
Write numbers as words. "Fifty four", "forty thousand". Text-to-speech reads words more reliably than digits, and it keeps the word timings closer to the text on the card.
End on "AITA?" alone. It is how real posts end, and it cues the comments.
Designing the Voices
The voices use MiMo voice design (mimo_tts_voicedesign). Instead of choosing from a list of preset voices, you describe the speaker in plain English and the model creates a voice to match.
The rule we follow, the same one behind our narrated poem videos: name the age, sex, accent, timbre, pace and attitude. A vague description ("a woman telling a story") gives a bland, generic read. A specific one gives a performance.
| Character | Key parts of the description | Why |
|---|---|---|
| The poster | Around 20, slightly raspy, exasperated and deadpan, brisk, "pausing for a beat before each punchline" | A dry delivery makes innuendo funnier than an outraged one, and the comic timing is written straight into the description. |
| u/cornfed_carol | Midwestern, 60s, gushing, breathless, "like she is telling her book club about her favourite author" | Sincere enthusiasm about the obvious double meaning is the joke. |
| u/agronomy_andy | Gruff farmer, 50s, low and gravelly, slow, "like an expert giving testimony" | Total seriousness from an expert makes "genuinely educational content" land. |
| u/kernel_panic | 20s, earnest, "slightly too emotional", fast, "like he is confessing something important" | The over-sharing confession sells the final punchline. |
What to take from these when writing your own:
- Describe how they speak, not just who they are. Delivery instructions like "pausing for a beat before each punchline" shape the performance directly.
- Give a situation. "Like she is telling her book club" gives the model a whole register to aim for in one phrase.
- Make the voices contrast. Fast and breathless next to slow and gravelly means viewers can tell who is talking before they read the username.
What We Changed in the Renderer
Making this video exposed three rough edges in how Reddit cards were rendered. We fixed them in the renderer itself, so every Reddit video made in InkSlop now gets them:
- A one-second hold after each card. Previously the post cut straight to the first comment the moment its narration ended. Now each finished card stays on screen for a second before the next appears.
- Reddit acronyms are spoken in full. AITA, NTA, YTA and similar are read as "Am I the asshole", "Not the asshole" and so on, while the card still shows the short form.
- Line reveal follows spoken words. Card text appears line by line as it is read. Because "YTA" is one word on screen but three when spoken, lines used to appear too early in comments that started with it. The reveal now counts spoken words, so the text stays in sync.
What It Cost
The finished video is 82 seconds long, with 1,219 characters of narration across the four voices. At InkSlop's current rates:
- Rendering 82 seconds of video: 2.73 credits
- Voice design narration, 1,219 characters at 2 credits per 1,000: 2.44 credits
- Total: 5.17, rounded up to 6 credits (about €0.75 on the Starter plan)
Voice design costs more than preset voices because every voice is generated from its description. With a preset Kokoro voice for every character, the same video would cost 3.3, rounded up to 4 credits, but every character would sound the same.
The rendered file was about 78 MB. For the preview on our site we compressed it to about 12 MB at 720p, with the file arranged so playback can start before it has fully downloaded, because it autoplays muted in a small panel.
Try It Yourself
- Open the Reddit Stories creator and fill in a post and a few comments.
- Switch to the DSL tab. Each card is a
[social-post]or[social-comment]tag. - On each one, set
engine="mimo_tts_voicedesign"and write avoice="..."description: age, sex, accent, timbre, pace, attitude, and how they deliver the lines. - Render a short test first, listen, and adjust the descriptions before rendering the full video.
For the basics of the format, see the Reddit story video guide. For how to structure a story so it holds attention, see the story section of the formats guide.