Skip to content

feat: add German (de) language support#316

Open
mitchellecm7 wants to merge 1 commit into
hexgrad:mainfrom
mitchellecm7:feat/german-language-support
Open

feat: add German (de) language support#316
mitchellecm7 wants to merge 1 commit into
hexgrad:mainfrom
mitchellecm7:feat/german-language-support

Conversation

@mitchellecm7
Copy link
Copy Markdown

  • Add kokoro/de_normalizer.py: pure-Python German text normalisation (abbreviations, numbers, currency, times, dates, years, ordinals)
  • Add kokoro/de_g2p.py: DEG2P wrapper using EspeakG2P(language='de')
  • Update kokoro/pipeline.py: lang_code='d'/'de', ALIASES, LANG_CODES, DEG2P branch
  • Update kokoro/main.py: add 'd' to CLI language choices
  • Add kokoro.js/src/phonemize_de.js: JS normalisation + phonemize_de()
  • Update kokoro.js/src/voices.js: df_anna, df_emma, dm_bernd, dm_hans stubs
  • Update kokoro.js/src/kokoro.js: route German voices to phonemize_de()
  • Add tests/test_de_normalizer.py (53 unit tests, CI-safe)
  • Add kokoro.js/tests/phonemize_de.test.js (84 Vitest tests)

Requires: apt-get install espeak-ng
No new Python packages beyond existing dependencies. Voice .pt/.bin files pending German model training.

Closes #290

- Add kokoro/de_normalizer.py: pure-Python German text normalisation
  (abbreviations, numbers, currency, times, dates, years, ordinals)
- Add kokoro/de_g2p.py: DEG2P wrapper using EspeakG2P(language='de')
- Update kokoro/pipeline.py: lang_code='d'/'de', ALIASES, LANG_CODES, DEG2P branch
- Update kokoro/__main__.py: add 'd' to CLI language choices
- Add kokoro.js/src/phonemize_de.js: JS normalisation + phonemize_de()
- Update kokoro.js/src/voices.js: df_anna, df_emma, dm_bernd, dm_hans stubs
- Update kokoro.js/src/kokoro.js: route German voices to phonemize_de()
- Add tests/test_de_normalizer.py (53 unit tests, CI-safe)
- Add kokoro.js/tests/phonemize_de.test.js (84 Vitest tests)

Requires: apt-get install espeak-ng
No new Python packages beyond existing dependencies.
Voice .pt/.bin files pending German model training.

Closes hexgrad#290
@semidark
Copy link
Copy Markdown

semidark commented Apr 17, 2026

For context on the prior work behind German language support for Kokoro, see my comment on issue #290.

The pipeline wiring in this PR (ALIASES, LANG_CODES, CLI registration) mirrors what I implemented in semidark/kokoro-deutsch, published April 10 -- a week before this PR was opened. I'll be submitting a separate PR that ties the pipeline integration to actual trained German voices and the training recipe.

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.

Donation/funding for german language

2 participants