GuideSlate Editorial Library — Full English AI tool tutorials are 100% free · Companion .zip starter kits $9.90 one-time All kits
ComfyUI & video Updated Nov 2026 · v1.6 · Saves 6 hrs · Beginner-friendly

Localize product videos into 8 languages with WhisperX word-level timing

Turn a single Demo or tutorial recording into natural English, Japanese, Spanish, and German dubbed videos with word-accurate SRT subtitles, locked technical glossaries, and FFmpeg audio ducking.

ARCHITECTURE PIPELINE
01 · AlignWhisperX phoneme02 · GlossaryDuration-fit LLM03 · VoiceCloned TTS track04 · MasterFFmpeg auto-duck

Why default setups fall short

Standard subtitle translators fail on technical product demos because translated sentences in Spanish or German often run 25% longer than the original speech window, causing dubbed voiceovers to desynchronize from screen clicks. By combining WhisperX phoneme-level timestamps with a syllable-aware LLM translation prompt and FFmpeg sidechain ducking, indie founders localize a 3-minute product demo into 8 languages in under 10 minutes.

Prerequisites before starting

  • Python 3.10+ with whisperx and ffmpeg installed
  • OpenAI / Anthropic API key for syllable-constrained translation
  • ElevenLabs API key or free Edge-TTS for multi-language voice synthesis

Step-by-step implementation

STEP 01

1. Extract word-level timestamps with WhisperX forced alignment

Unlike standard Whisper (which drifts by up to 1.5 seconds on pauses), WhisperX runs a wav2vec2 phoneme alignment pass so every subtitle segment has millisecond-accurate start and end boundaries.

whisperx input-demo.mp4 --model large-v3 --align_model WAV2VEC2_ASR_LARGE_LV60K_960H \
  --output_format json --output_dir ./aligned/
STEP 02

2. Translate with a glossary lock and character-budget constraint

Feed each timed segment into your LLM along with a JSON glossary of brand/UI terms that must remain untranslated (such as API names, CLI flags, and menu labels) and enforce a maximum character budget based on segment duration.

max_chars = int(segment_duration_sec * 14.5) # Keep speaking rate <= 14.5 chars/sec
STEP 03

3. Synthesize per-segment TTS and time-stretch within a 1.08x ceiling

Generate audio per subtitle segment and use FFmpeg atempo (capped between 0.95x and 1.08x) so the dubbed phrase lands on the exact UI click without sounding sped up.

ffmpeg -i seg_04.mp3 -filter:a "atempo=1.05" -vn seg_04_synced.wav
STEP 04

4. Mix with sidechain audio ducking and burn clean styling into MP4

Lower the original track to -18dB during active speech so keyboard clicks and UI sound effects remain audible underneath the localized voiceover.

More practical field guides

View all 12 guides
Claude & Cursor skills Featured kit
Saves 4.5 hrs · v2.4
Replace generic AI interfaces with a custom SKILL.md design token system

How top solo builders force Claude Code, Cursor, and Antigravity to output studio-grade editorial interfaces instead of default blue-gray Tailwind cards.

01 · InputSKILL.md rules02 · Tokens6-hex palette03 · GuardrailAnti-cliche lint04 · OutputEditorial SSR UI
Companion .zip starter kit (4 files) $9.90 one-time
01-editorial-frontend-SKILL.md (6.4 KB)02-cursor-anti-slop-rules.mdc (3.8 KB)03-architectural-bento-tokens.css (5.1 KB)README-quickstart.md (2.2 KB)
Read free guide
n8n & automation
Saves 6 hrs · v3.1
Monitor X and Reddit buying-intent threads every 15 minutes with n8n

Skip $99/mo social listening SaaS tools. Poll targeted RSS and search endpoints, score high-intent leads with a low-cost Flash LLM, and push ready-to-reply alerts to Slack.

01 · Cron 15mSearch feeds02 · DedupSQLite hash03 · Flash LLMScore >= 8/1004 · WebhookSlack alert
Companion .zip starter kit (4 files) $9.90 one-time
01-n8n-intent-radar-v3.json (11.2 KB)02-intent-classifier-prompt.md (3.4 KB)03-docker-compose.n8n.yml (1.9 KB)README-quickstart.md (2.0 KB)
Read free guide