The workflow

From raw upload to shipped subtitles in seven steps.

Under the hood: ffmpeg for media plumbing, OpenAI Whisper for transcription, GPT-5.4 for personality-preserving translation, and libx264 for the final burn-in.

01

Upload or paste

Drag a video/audio file (up to 5 GB) or paste text directly. LinguaSub streams the upload to disk so browser tabs stay responsive even for hour-long files.

02

Pick source + target language

Any of the 21 supported languages either side. A one-click swap button flips them — 'Hindi → English' becomes 'English → Hindi' instantly. A guard prevents same-source-same-target.

03

Whisper transcribes with timestamps

For audio/video, ffmpeg extracts a compressed 16 kHz mono track, splits it into ≤ 24 MB chunks, and OpenAI Whisper transcribes each chunk with segment timestamps offset back to the original timeline.

04

GPT-5.4 translates with personality

The transcript is sent to GPT-5.4 with a subtitle-specific prompt: preserve tone, register, humour, sarcasm, honorifics, Bollywood expressions. Long transcripts are batched (60 segments per call) so an hour-long clip still finishes in a couple of minutes.

05

Preview + edit against the video

The Edit & Render panel shows the video with each segment as a clickable card. Click a line → the video pauses and jumps to that segment. Edit the translated text, tweak start/end. Save whenever you want.

06

Render subtitled MP4

One click triggers a background ffmpeg job that burns subtitles into the frames (libx264, white text with black outline, 40 px margin). The frontend polls a status endpoint so you know when it's ready.

07

Download SRT, VTT, or subtitled MP4

Three files ready: the original SRT for YouTube Studio, the VTT for web players like Vimeo, and the burned-in MP4 for Reels, TikTok, or WhatsApp forwards.

What's actually running.

Transcription
OpenAI Whisper (whisper-1), verbose_json with segment timestamps, chunked for long audio.
Translation
OpenAI GPT-5.4 via Emergent Universal Key with a subtitle-tuned system prompt.
Video processing
ffmpeg 5.1 for audio extraction and burn-in. libx264 with ultrafast preset, CRF 26.
Storage
MongoDB for jobs, transient disk for uploads (48h TTL), Emergent object storage optional.
The LinguaSub Engine

Seven layers between raw speech and shippable subtitles.

Every job runs through a purpose-built pipeline. Each layer is visible in the app so you can see exactly what changed.

01

Understand

Detect speech and speakers — figure out who is talking so translations can hold voice across turns.

02

Transcribe

Generate an accurate transcript in the source language with word-level timestamps.

03

Understand context

Extract characters, relationships, scene and emotion so the translation reads in-character.

04

Translate

Turn source lines into natural, native-sounding target lines using the story brief and speaker tags.

05

Localize

Adapt slang, humour, idioms and cultural references so jokes actually land.

06

Subtitle

Optimise line breaks and reading speed — cap at 42 chars per line, 17 chars per second.

07

Quality check

Verify timing, grammar, terminology consistency and enforce the caption spec end-to-end.

Frequently asked

Questions we get a lot.

How long does a typical video take?+

A 5-minute video: ~30 seconds transcription + ~15 seconds translation + ~20 seconds burn-in ≈ 1 minute total. A 60-minute podcast: ~5 minutes transcription + ~1 minute translation + ~4 minutes burn-in ≈ 10 minutes.

Do I have to be online for the whole time?+

The upload and processing happen server-side, so once the upload completes you can close the tab. Come back later — your job is in the History panel with the SRT/VTT ready.

Can I edit subtitles without re-rendering the video?+

Yes. You can save edits and download the updated SRT/VTT without triggering a burn-in. Render is only needed if you want the finished MP4.

What if the transcription misses a word?+

That's what the editor is for. Every segment is editable in place — the translated text, the start time, and the end time. Save your fix, and the SRT/VTT regenerate instantly.

Can I do batches or automate it?+

Web UI is one file at a time right now. A public API is on the roadmap for Studio and Agency plans.

Ready to see it run?

One-time free trial for new users. Upload a clip and watch each step happen live.