Dastan Studio
WorkCapabilitiesProcessContact
dastanstudiomcc@gmail.comAZ
← All work
02AI video dubbing

YouLaf

Give it a link — the video speaks Azerbaijani.

Role
AI pipeline, full-stack, product design, pitch and motion video
Year
2026
Status
Live demo
Stack
React 19, Vite, Node.js, Express
Open the live demo
Overview

Almost no foreign-language tutorials, lectures or product demos exist in Azerbaijani. Simple machine dubbing has two classic faults: the audio drifts away from the picture, and terms like Xamarin or GitHub get read with Azerbaijani letters and sound wrong.

YouLaf generates every sentence separately from Whisper timestamps and places it at its original moment. Terms keep their spelling on screen but are pronounced correctly — Xamarin is spoken as Zamarin.

30.00a 30 s clip dubbed to the second
≤50 sto process a one-minute video
1.6×maximum speech speed-up
2Azerbaijani voices: Banu and Babək
How it works

Whisper → Gemini → TTS → FFmpeg

01

Whisper

Timestamped transcription with a vocabulary hint for product names.

02

Gemini

Sentence-by-sentence contextual translation, protected terms, phonetic version.

03

Edge TTS

Banu and Babək neural voices, retries and a Gemini voice fallback.

04

FFmpeg

Each sentence at its time, speed-up capped at 1.6×, final MP4.

Challenges & fixes

What broke, how it was fixed

01
Problem

The first prototype produced one audio track for the whole text — no sync

Fix

Sentence-level timing. A 30-second clip comes back at exactly 30.00 s.

02
Problem

Google Translate rate-limited us, a local 3B model mistranslated terms

Fix

Context-aware Gemini translation with protected terms.

03
Problem

"YouLaf" was heard as "You Laugh"

Fix

A vocabulary hint for Whisper.

04
Problem

The free voice API returned HTTP 500 from the cloud

Fix

Retries and an automatic Gemini voice fallback.

05
Problem

YouTube blocked the server's IP

Fix

An upload path, a clear message and a "try with the sample" button.

Stack
React 19ViteNode.jsExpressPythonfaster-whisperGemini APIedge-ttsFFmpegyt-dlpElectronDockerRailway