--- license: mit language: - en - my tags: - burmese - myanmar - video-dubbing - dubbing - text-to-speech - faster-whisper - flask - edge-tts - gemini --- # DubLab — English ↔ Burmese Video Dubbing **Upload a short video, get it back dubbed in the other language.** DubLab is a self-hosted web app that dubs short videos between **English and Burmese (Myanmar)**. It transcribes the speech (faster-whisper, local), translates it (Gemini API), synthesizes a new voice track (Nara Mini local ONNX voices Shoon + Ko Banyar by default, Edge-TTS / Gemini TTS as options), syncs it to the picture, and returns a finished MP4. 🌐 **Live demo:** https://dublab.kbko.qzz.io 📄 **License:** MIT — Source: https://github.com/khantbhoneko36-commits/dublab ## Features - 🎬 **Video dubbing** — upload a video (≤ 10 min, ≤ 250 MB) or paste a link (YouTube, TikTok, Instagram, Facebook, X, Vimeo, Bilibili…), download the dubbed MP4 - 🗣️ **Burmese + English voices** — Nara Mini local voices, free, no API key - 🎙️ **Local transcription** — faster-whisper on your own machine - 🌏 **Translation** — Gemini API (free tier works), with NLLB local fallback - ⏱️ **Sync engine that never cuts a sentence** — speech is time-fitted up to a capped speed-up (1.65×); overflow cascades into the next slot - 💧 **Credit watermark** — small lower-right watermark (configurable text) - 🛡️ **Abuse protection built in** — job queue cap, per-IP upload rate limit, 24 h result retention ## Quick start Requirements: Python 3.11+, `ffmpeg`, and a free [Gemini API key](https://aistudio.google.com/apikey). ```bash git clone https://github.com/khantbhoneko36-commits/dublab.git cd dublab python3 -m venv venv && source venv/bin/activate pip install -r requirements.txt cp .env.example .env # put your GEMINI_API_KEY in .env set -a; source .env; set +a waitress-serve --listen=127.0.0.1:8092 --threads=8 app:app ``` Open http://127.0.0.1:8092, drop in a short video, pick a direction and a voice, and download the dubbed result. ### Docker ```bash docker build -t dublab . docker run -d --name dublab -p 127.0.0.1:8092:8092 --env-file .env dublab ``` > ⚠️ Dependency pins matter: `requirements.txt` pins `av==15.1.0` and > `huggingface_hub<1` — newer versions break faster-whisper 1.2.x. The Nara > Mini voices (Shoon + Ko Banyar) are downloaded at Docker build time from > `YeeNyunn/nara-mini-v1` on the Hub. ## Configuration | Variable | Required | Purpose | |---|---|---| | `GEMINI_API_KEY` | ✅ | Translation (and TTS fallback if no TTS keys set) | | `GEMINI_TTS_API_KEYS` | — | Comma-separated keys for Gemini TTS rotation | | `DUBLAB_ADMIN_KEY` | — | Password for the `/admin` reviews page | ## မြန်မာဘာသာ အကျဉ်းချုပ် DubLab ဆိုတာ ဗီဒီယိုအတိုတွေကို **အင်္ဂလိပ် ↔ မြန်မာ** အပြန်အလှန် အသံသွင်း (dub) လုပ်ပေးတဲ့ open-source web app တစ်ခုပါ။ ဗီဒီယိုတင်လိုက်ရင် စကားပြောကို စာသားအဖြစ်ပြောင်း၊ ဘာသာပြန်၊ မြန်မာအသံ (ကျား/မ) နဲ့ အသံအသစ်ဖော်ပြီး၊ စာကြောင်းမပြတ်အောင် အချိန်ကိုက် ညှိပေးကာ dub လုပ်ပြီးသား MP4 ပြန်ချပေးပါတယ်။ ## Maintainer Built and maintained by **Khant Bhone Ko** — sole maintainer: releases, issue triage, and the production deployment. More projects: https://pro.kxant.org