{"package_name":"dev.kokoro.tts","name":"Kokoro Android system TTS driver","summary":"Text-to-speech engine that speaks through your own Kokoro server","category":"System","icon_url":"/api/icon/dev.kokoro.tts","latest_version_code":1,"latest_version_name":"1.0","apk_url":"/api/apk/dev.kokoro.tts","apk_size":124762,"apk_sha256":"7c211a36195af5ec5727ee3623db76a626956c75d3b3c9d129879148ee0b9835","source_kind":"fdroid-repo","repo_slug":"fdroid-main","last_updated":1792465224,"release_timestamp":1792314892,"description":"A system text-to-speech engine (TextToSpeechService) for Android that speaks through\na Kokoro server, so any app that can read text aloud can use it.\n\nIt is not a plain HTTP client. Kokoro's hard limit is 510 phoneme tokens, and because\nthat counts the length of the IPA phoneme string rather than characters, a character\nbudget cannot enforce it: a 42-character Chinese sentence is 545 tokens, while English\nprose of the same length is about 42. Text is therefore split on the device by a cost\nmodel fitted to real Kokoro G2P output, and every split is verified lossless - the\nsame words, in the same order.\n\nWhat it does:\n\n* Splits text on the device, sized by estimated phoneme tokens rather than characters\n* Trims the silence Kokoro pads around every chunk (50 ms before, 360 ms after)\n* Inserts pauses at chunk joins, or none at all if the app you listen with already\n  adds its own\n* Starts speaking after a deliberately small first chunk, so turning a page begins in\n  about a second instead of six\n* Fetches the next chunk while the current one is still playing\n* Fetches the voice list from the server, so every voice it offers is selectable\n\nRequires a Kokoro server that you run yourself. Any OpenAI-compatible\n/v1/audio/speech endpoint works; this was developed and measured against\nKokoro-FastAPI. The endpoint is configurable, so nothing is tied to one host, and\nthe app sends nothing anywhere except to the server you point it at.\n\nBoth http:// and https:// endpoints work, so a server behind a reverse proxy with a\ncertificate can be reached over TLS. The default is plain http:// because the usual\ncase is a Kokoro server on your own network.\n\nNo ads, no tracking, no accounts, no network access beyond your own server.\n","categories":["System","Text to Speech"]}