Subvid.app is a free, privacy-first, browser-based AI subtitle generator for local video files.
The app transcribes, translates, edits, and exports subtitles inside the browser, and the video does not upload to a server.
It accepts MP4, MOV, WebM, and MKV files, then exports an .srt file or a video with burned-in captions.
Your workflow starts with a local video file. Choose the audio language or auto-detection, select the subtitle language, generate subtitles with Whisper, translate them with NLLB when needed, edit the timeline, adjust caption styling, and export the final subtitle track or captioned video.
Features
- Reads MP4, MOV, WebM, and MKV files from local disk through the browser File API.
- Generates speech-to-text subtitles with Whisper through Transformers.js.
- Translates subtitle tracks with NLLB-200.
- Stores downloaded AI model weights in browser storage after first use.
- Runs transcription and translation inside Web Workers.
- Edits subtitle segments through a list, timeline scrubbing, and multi-language tracks.
- Styles captions with font, size, color, background, outline, position, alignment, bold, italic, and animation controls.
- Exports
.srtsubtitle files. - Exports videos with hard-coded captions.
- Runs from public source code with a local development path.
Use Cases
- Create SRT subtitles for YouTube, TikTok, Reels, Shorts, and course videos.
- Translate a local video into another subtitle language before export.
- Add burned-in captions to a short social video inside the browser.
- Edit AI-generated subtitle timing before publishing a video.
- Process sensitive videos locally when a cloud upload is not acceptable.
How to Use subvid.app
1. Open subvid.app and drag a video into the upload area or browse for a local file.

2. Keep the browser tab open during the first model download. The first run needs a large AI model download, and the browser caches the model for later sessions.
3. Choose the source audio language. Use auto-detection only when the video language is unclear or the file contains mixed-language speech.

4. Choose the subtitle language. Keep the subtitle language the same as the audio language for transcription only. Select another subtitle language when you need translation.
5. Click the subtitle generation button and wait for the transcription pass to finish.
6. Review the generated segments in the subtitle editor. Fix names, product terms, punctuation, and lines where Whisper split the timing poorly.

7. Scrub through the timeline and adjust timing where captions appear too early or too late.
8. Adjust the caption style before video export. The editor includes controls for font, size, position, outline, text color, background color, opacity, alignment, bold, italic, and animation.
9. Export an .srt file when you plan to upload subtitles into YouTube, a course platform, or a video editor.
10. Export a captioned video when you need hard-coded subtitles.
Self-Hosting and Technical Setup
subvid.app can run locally from its public GitHub repository. The setup requires Node.js 22.12.0 or newer and pnpm.
1. Clone the repository first.
git clone https://github.com/midudev/subvid.app.git
cd subvid.app2. Install dependencies.
pnpm install3. Start the local Astro development server.
pnpm dev4. The local development server runs at http://localhost:4321.
Privacy and Local Processing
subvid.app uses a local-first workflow. Video files are read from disk through the browser, and the video does not upload to a backend for transcription.
The AI models run in the browser through Transformers.js, Web Workers, WASM, and WebGPU when available.
The first session requires model downloads from external model hosting. The browser caches model files after the first download to reduce repeated downloads on later use.
The codebase does not include user accounts or an analytics backend. This makes subvid.app different from many cloud subtitle tools that require an upload, account, and server-side processing path.
Alternatives and Related Tools
- AutoSubtitles: Another free AI video subtitle generator for TikTok and YouTube clips.
- Free AI Tools For Video Subtitle Generator: Discover more subtitle-generator tools on ScriptByAI.
- Free AI Video Transcription Tools: Discover more free AI video transcription tools.
- Best Free AI Tools for YouTube Creators: 10 Best free AI tools for YouTube creators to script videos, test titles, edit faster, design thumbnails, and improve SEO.
- Best AI Video Editors: Browse the top 10 AI video editors around the world.
- subvid.app GitHub Repository: The public code, setup commands, and project structure.
- Transformers.js: Browser AI model runtime documentation.
- Xenova Whisper Base: Speech-recognition model page.
- Xenova NLLB-200 Distilled 600M: Translation model page.
Pros
- Local video handling.
- No account barrier.
- SRT export.
- Burned-in caption export.
- Translation included.
- Browser-based AI models.
- Timeline editing.
- Self-hostable public code.
Cons
- Large first-use model download.
- Browser performance limits.
- No batch pipeline.
- No public API.
FAQs
Q: Does subvid.app upload my video?
A: subvid.app reads the video from your local device through the browser. The video file does not upload to a backend for transcription.
Q: Can subvid.app translate subtitles?
A: Yes. subvid.app uses NLLB-200 through Transformers.js to translate subtitle tracks.
Q: Does it work offline?
A: After the AI models download and cache, you can use the tool offline. Load the page once with a connection to cache the models, then disconnect.
Q: Which browsers give the best experience?
A: Chromium-based browsers (Chrome, Edge, Brave) support WebGPU for faster inference and WebCodecs for faster MP4 export. Firefox works well. Safari works but falls back to a slower video export method.










