Turn text into TTS/ASR training audio for 41 ghanaian languages.
# Ghana Speech Datagen
Generate synthetic speech training data against a **vLLM-Omni TTS server**.
The tool itself is a lightweight HTTP client (no PyTorch, no local model) —
deploy a TTS model once on a GPU (see `deploy/`), then
generate as many datasets as you want against its API, voice-cloning from
reference audio.
**Two backends are supported:**
| Backend | Model | Languages | Default port |
|---|---|---|---|
| **OmniVoice** (default) | `k2-fsa/OmniVoice` | 646 (auto-detect for non-listed) | 8001 |
| **VoxCPM2** | `ghananlpcommunity/VoxCPM2-Ghana` | 40+ Ghanaian | 8000 |
## Sample Generated Dataset
We've used ghana-speech-datagen to generate a synthetic dataset for training Twi ASR and TTS models. Find it on Hugging Face:
**`ghananlpcommunity/twi-tts-asr`**
## Quickstart
```bash
# Generate from a language's built-in text + default reference audio pool
ghana-speech-datagen generate --lang ewe --hours 5
# Generate from your own text file + reference audio directory
ghana-speech-datagen generate --text-file sentences.txt \
--ref-audio-dir my_refs/ --ref-metadata refs.csv --hours 5
# Generate from two HF datasets (text + reference audio)
ghana-speech-datagen generate --dataset org/text-ds --text text \
--ref-dataset org/ref-audio-ds --ref-text-column text --hours 5
```
The tool always requires reference audio for voice cloning. Provide it via:
- `--ref-dataset` — HF dataset with audio + transcript columns
- `--ref-audio-dir` + `--ref-metadata` — local dir of WAVs + CSV/JSONL mapping
- `--lang` — falls back to the in-language reference pool from
`ghananlpcommunity/ghana-speech`
## Supported languages
42 Ghanaian languages (plus English). List them:
```bash
ghana-speech-datagen generate --list-langs
```
Codes: `ewe`, `fat`, `dag`, `twi-asante`, `twi-akuapem`, `en`, etc.
`--lang` also accepts a full config name (`Ewe_ewe`) or display name (`Asante Twi`).
### OmniVoice language mapping
| Language | OmniVoice `language` param |
|---|---|
| Akuapem Twi, …