Automatische vertaling · Engels origineel
Kokoro TTS — Android
Kokoro-82M is een lichtgewicht, niet-autoregressief tekst-naar-spraakmodel dat draait op Android via ONNX Runtime. Het produceert natuurlijke 24 kHz spraak met 50 vooraf ingestelde stemmen in 8 talen.
Ondersteunde talen
| Taal | Rubriek | Voorbeeld Stemmen |
|---|---|---|
| Engels (US) | nl | af_heart, am_adam, af_sky |
| Engels (UK) | nl | bf_emma, bm_george |
| Spaans | es | ef_dora |
| Frans | fr | ff_siwis |
| Hindi | Hallo. | hf_alpha,hm_omega |
| Italiaans | het | if_sara |
| Japans | ja | jf_alpha, jm_omega |
| Portugees | pt | pf_dora |
| Chinees | zh | zf_xiaobei, zm_yunjian |
| Duits | de | dm_martin, df_victoria (voice packs) |
50 vooraf ingestelde stemmen totaal. Voicename conventie: [language][gender]_[name] . Bijvoorbeeld, af_heart = American Female "Hart."
Duitse spraakpakketten
Duits is geen stem van de meertalige bundel hierboven: de twee Duitse stemmen zijn kikiri-tts fijne tinten van Kokoro-82M, elk een aparte 162 MB-gewichtsset die alleen op Duitse fonemen is getraind. Kies er één met KokoroPack bij het downloaden, dan synthetiseren met language = "de". Elke verpakking leeft in zijn eigen cache, zodat Engels en Duits naast elkaar blijven zitten.
| Verpakking | Stem | Downloaden |
|---|---|---|
KokoroPack.GERMAN_MARTIN | dm_martin (mannelijk) | soniqo/Kokoro-82M-German-Martin-ONNX (~170 MB) |
KokoroPack.GERMAN_VICTORIA | df_victoria (vrouwelijk) | soniqo/Kokoro-82M-German-Victoria-ONNX (~170 MB) |
val modelDir = ModelManager.ensureTtsModels(
context,
ttsModel = TtsModel.KOKORO_SHORT_TURN,
kokoroPack = KokoroPack.GERMAN_MARTIN, // or GERMAN_VICTORIA
)
val tts = SpeechSynthesizer(SpeechSynthesizerConfig(modelDir = modelDir))
val audio = tts.synthesize("Am 3. Oktober um 18:30 Uhr kostet es 12,80 €.", "de")Getallen, ordinals, data, tijden, valutabedragen, eenheden en gemeenschappelijke afkortingen worden op het apparaat gespeld; woorden komen van een Duits woordenboek met 50k-woorden met flexie, samengestelde en regelgebaseerde fallbacks. Het systeem TTS engine (SpeechTextToSpeechService) biedt de Martin-stem als de-DE naast en-US.
Modelbestanden
| Bestand | Grootte |
|---|---|
kokoro-e2e.onnx + .onnx.data | ~330 MB |
voices.bin | Voice-inbeddingen |
| Woordenboeken van de telefoon | Taalspecifieke uitspraaksgegevens |
HuggingFace: soniqo/Kokoro-82M-ONNX
Prestaties
| Metrisch | Waarde |
|---|---|
| Parameters | 82M |
| Inferentiebackend | ONNX Runtime |
| Uitvoermonstersnelheid | 24 kHz |
Telefoonmizer
Tekst wordt omgezet naar fome tokens met behulp van een woordenboek-gebaseerde phonemizer met taalspecifieke ondersteuning. De implementatie van Android omvat phonemizers voor Engels, Frans, Spaans, Italiaans, Portugees, Hindi, Japans en Chinees.
Integratie van pijpleidingen
Op Android, Kokoro TTS maakt deel uit van de SpeechPipeline. Na STT-transcribes wordt de tekst gephonemized en weer gesynthetiseerd in audio. De pijplijn beheert de volledige VAD → STT → TTS stroom automatisch.
val modelDir = ModelManager.ensureModels(context)
val pipeline = SpeechPipeline(SpeechConfig(modelDir = modelDir))
pipeline.events.collect { event ->
when (event) {
is SpeechEvent.TranscriptionCompleted -> println(event.text)
else -> {}
}
}
pipeline.start()
pipeline.pushAudio(samples) // 16kHz mono float32
Broncode: github.com/soniqo/speech-android