Skip to content

feat: add Russian narration and subtitle support - #10

Open
web3blind wants to merge 1 commit into
Vincentwei1021:mainfrom
web3blind:feat/russian-language-support
Open

web3blind wants to merge 1 commit into
Vincentwei1021:mainfrom
web3blind:feat/russian-language-support

Conversation

@web3blind

Copy link
Copy Markdown

Summary

  • add lang: 'ru' as a first-class narration mode
  • detect Cyrillic narration and select Edge TTS ru-RU-DmitryNeural in TTS_ENGINE=auto
  • preserve spaces when joining Russian subtitle chunks for synthesis
  • add bundled-font Cyrillic width metrics in Python and TypeScript
  • add a 40-character Russian subtitle budget and a Russian-specific safe layout above the progress bar
  • update build, storyboard, typography, and QC guidance for Russian projects
  • add reproducible Python and TypeScript regression tests

Validation

  • python -m unittest discover -s tests -p 'test_*.py' -v — 4 tests passed
  • cd template && npm run typecheck — passed
  • cd template && npm run test:russian — passed
  • generated a fresh project from the updated template — passed
  • generated real Russian Edge TTS audio and timeline from generic test narration — passed
  • rendered and visually checked Russian subtitle stills — no clipping, broken glyphs, or progress-bar overlap
  • git diff --check — passed

Notes

  • Edge TTS is cloud-based and sends narration text to Microsoft; the documentation recommends a local engine or user-provided WAV for sensitive material.
  • The bundled Noto Sans SC font contains the Russian alphabet including ё, but not ; the documentation recommends spelling out the currency or verifying a fallback font.

@web3blind
web3blind force-pushed the feat/russian-language-support branch from b79c45b to 21d7a17 Compare September 18, 2026 07:00
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant