Instructions to use RobertasTa/android-lt with libraries, inference providers, notebooks, and local apps. Follow these links to get started.
- Libraries
- Piper
How to use RobertasTa/android-lt with Piper:
# No code snippets available yet for this library. # To use this model, check the repository files and the library's documentation. # Want to help? PRs adding snippets are welcome at: # https://github.com/huggingface/huggingface.js
- Notebooks
- Google Colab
- Kaggle
Android LT: a Lithuanian voice and ears for Android phones
Ingutė, a Lithuanian synthetic voice, on your Android phone, offline. The phone uses it wherever it can read aloud: the text-to-speech settings, the screen reader, book and article readers.
Since 1.1.0 there are ears too: speak Lithuanian to the phone and the text appears in any text field, also offline (see Ears).
Installed it but not sure what next? → Everyday use
Page: https://robertasta.github.io/android-lt/en/ · Lietuviškai ir kodas: github.com/RobertasTa/android-lt
What is here
- Ingutė in sherpa-onnx format (
lt_LT-ingute-medium.onnx, 63 MB) and atokens.txtwith an "s" fix. eSpeak NG writes Lithuanian /s/ asʂin many positions, a symbol the voice hardly learned, so without the fix many s sounds disappear ("pasiimk skėtį" comes out as "paimk kėtį"). lt_dict: the Lithuanian eSpeak NG dictionary with the stressed syllable for 189,000 word forms. Without it the stress is guessed by rules and is wrong in about half of the multi-syllable words.- Ears (
parakeet-lt-kmynas-int8.zip, 955 MB): a Lithuanian speech recognition model for the Parakeetype voice keyboard.
The voice is played by SherpaTTS, a free open-source Android TTS engine. It is not part of this package; install it separately (step 1).
Installing (about 10 minutes)
- Install SherpaTTS from F-Droid. It is not on Google Play; searching there shows other,
ad-supported apps.
File: https://f-droid.org/repo/org.woheller69.ttsengine_34.apk (version 3.4, 91 MB).
The right app is called SherpaTTS, package
org.woheller69.ttsengine, no ads. - Download to the phone from the
release:
lt_LT-ingute-medium.onnxandtokens.txt. - SherpaTTS → "INSTALL PIPER MODEL FROM SD": language code
lit, nameIngute, modellt_LT-ingute-medium.onnx, tokenstokens.txt→ OK. - Phone settings → "Text-to-speech output" → engine SherpaTTS, language Lithuanian → "Listen to an example".
Ingutė speaks now. Stress is still placed by eSpeak NG; step 5 fixes that.
5. Stress (needs a computer)
Recent Android versions (tested on 15) do not let file managers write into another app's
folder, so lt_dict goes in through adb from a computer
(Google platform-tools).
- On the phone: Settings → About phone → tap the build number 7 times (developer mode; the phone asks for its unlock code) → in developer options turn on USB debugging → connect the cable and allow it on the phone.
- On the computer, in the folder with the downloaded
lt_dict:
adb shell md5sum /sdcard/Android/data/org.woheller69.ttsengine/files/espeak-ng-data/lt_dict
It must print 5426503daf0a29836d0f168d38b38581 (the dictionary of SherpaTTS 3.4). If it is
different, stop: your SherpaTTS version differs and this lt_dict was built for 3.4.
adb shell cp /sdcard/Android/data/org.woheller69.ttsengine/files/espeak-ng-data/lt_dict /sdcard/Android/data/org.woheller69.ttsengine/files/espeak-ng-data/lt_dict_orig
adb push lt_dict /sdcard/Android/data/org.woheller69.ttsengine/files/espeak-ng-data/lt_dict
adb shell am force-stop org.woheller69.ttsengine
Open SherpaTTS and listen to "Dabar labai gera diena, nes Lietuvos rinktinė laimėjo."
You can switch USB debugging off afterwards. To undo, rename lt_dict_orig back to lt_dict.
Reinstalling SherpaTTS or clearing its data undoes step 5.
Measurements
A Lithuanian speech recognition model listened to 12 everyday sentences (no numbers):
| word errors | |
|---|---|
| Ingutė in SherpaTTS, no fixes | 7.7 % |
+ "s" fix (tokens.txt) |
4.4 % |
+ stress (lt_dict) |
1.1 % |
Stressed syllable compared with the stress dictionary on LIEPA texts (19,943 multi-syllable words): eSpeak NG alone 53.4 %, with this dictionary 99.3 %. Tested on a Xiaomi 12T Pro, Android 15, SherpaTTS 3.4.
Limits
- Numbers and abbreviations are read by eSpeak NG itself ("15:25 val." may sound odd).
- Only the stressed syllable is set, not the Lithuanian pitch accent.
- About 9 % of words are not in the dictionary; eSpeak NG guesses those.
lt_dictwas built for SherpaTTS 3.4 (sherpa-onnx 1.13); check the md5 first on other versions.- It is a synthetic voice: natural, but not a person.
Ears: Lithuanian dictation (Parakeetype)
Parakeetype is an open-source voice keyboard for
Android (F-Droid). It recognises speech on the phone and never goes online. Its default model
hears Lithuanian poorly; parakeet-lt-kmynas-int8.zip gives it Lithuanian ears.
| word error rate | FLEURS (986 utterances) | short commands (127) |
|---|---|---|
| Parakeetype's default model (Parakeet Ultra) | 27.1 % | 80.4 % |
| with these ears | 10.6 % | 17.0 % |
Measured on a PC with a script that follows Parakeetype's recognition path exactly; tested live on Robertas's phone (Xiaomi 12T Pro, Android 15).
Status (2026-10-29). For Parakeetype from F-Droid to accept this archive, its author has to merge our proposal theScrabi/Parakeetype#1. Until then you can build the app with the Lithuanian model yourself ("Build it yourself" below).
Installing
- Parakeetype: from F-Droid once the proposal is merged, or built yourself.
- Download to the phone
parakeet-lt-kmynas-int8.zip(955 MB) from the release. - On Parakeetype's main screen enable the keyboard and allow the microphone. Next to "Model not installed" tap "Install", scroll down to the Parakeet Lithuanian card → "Import model file" → the archive. The app checks every file's hash; you can delete the archive afterwards.
- On the same card: "Set as Active".
- Dictate: open any text field (notes, for example) and switch the keyboard to Parakeetype. In Gboard, long-press the 🌐 globe and pick "Parakeetype Voice Input". Hold the big microphone button and speak. The first time, the model takes a few seconds to load.
- Back to your usual keyboard: the small keyboard icon on the right, above the Enter key.
Build it yourself (until the proposal is merged)
You need a computer with Java 17 or newer and the Android SDK: Android Studio
or Google's command-line tools (android sdk install "platforms;android-37.0" "build-tools;37.0.0").
The first build downloads about 1 GB.
git clone -b add-lithuanian-model https://github.com/RobertasTa/Parakeetype.git
cd Parakeetype
./gradlew assembleDebug
On Windows: gradlew assembleDebug. Point to the Android SDK with sdk.dir=... in
local.properties or the ANDROID_HOME variable. Copy the resulting
app/build/outputs/apk/debug/app-debug.apk to the phone's Download folder and tap it in a file
manager (Xiaomi phones refuse adb install without a Mi account). If you already have
Parakeetype from F-Droid, uninstall it first: apps signed with different keys cannot update each
other. Once the proposal is merged, uninstall your build and install the F-Droid one.
Limits of the ears
- Lithuanian only. For other languages pick the default model (one model is active at a time).
- About 910 MB on the phone; Parakeetype needs Android 12 or newer.
- On short commands it gets roughly one word in six wrong.
Everyday use
Installing does not yet make the phone speak or listen. Here is what to set up once and how to use it afterwards. Menu names differ a little between phones, so the easiest way to find them is the search box in the phone's settings. The screenshots are from a Xiaomi phone set to Russian.
Make the phone read with Ingutė's voice
1. Make Ingutė the phone's voice (once)
Search the settings for "text-to-speech".
- Preferred engine → SherpaTTS. Android warns that the engine "may collect text"; it shows this for every voice that is not Google's. SherpaTTS processes the text on the phone → OK.
- Language → Lithuanian. If it stays at "system language" on a phone that is not in Lithuanian, the buttons are grey and nothing speaks.
- Play (listen to an example): Ingutė should speak. The speed slider is right there.
2. Have any text on the screen read aloud: SMS, email, articles (once)
Search the settings for "Select to Speak". It is a Google feature present on most phones with Google Play.
- Turn the switch on. Android asks for permission to see the screen; without it the feature could not read the text → Allow.
- A small blue button appears at the edge of the screen. If you are asked how to set it up, leave it as it is and tap OK.
Every day: open the text → tap the blue button → tap a paragraph and Ingutė reads it (or ▶ to read the whole screen, ■ to stop). You can drag the button elsewhere if it is in the way.
Make the phone type what you say (ears)
Once Parakeetype with the Lithuanian model is installed (see "Ears" above):
- Open the place where you type: SMS, notes, search.
- Switch the keyboard to Parakeetype. In Gboard, long-press the 🌐 globe → "Parakeetype Voice Input". On other keyboards look for a small keyboard icon at the bottom of the screen.
- Hold the big microphone button and speak. When you let go, the text appears; the app adds full stops, commas and capital letters itself.
- Back to your usual keyboard: the small keyboard icon on the right, above the Enter key.
Stuck? Just ask
Lost, or the phone shows something different from this page? Open any AI chat (ChatGPT, Claude, Gemini) and paste:
Read https://raw.githubusercontent.com/RobertasTa/android-lt/main/AI_CONSULTANT_BRIEF.md and help me with Android LT.
Then say what does not work and attach a screenshot. That AI knows all these steps and the usual mistakes, and it will answer in your language.
Licences
The header above names the voice licence; the ears archive is CC BY 4.0 (below).
- Voice (
lt_LT-ingute-medium.onnx,tokens.txt): NewGenLTU Open RAIL-D 1.0. Free of charge, commercial use is not prohibited, use restrictions apply; when passing it on, include LICENSE-VOICE and state the origin. Ingutė was grown from the Reginutė model with the authors' own Python tools. lt_dictand its sources (espeak-ng-lt/): GPL-3.0 (eSpeak NG data). The stress positions come from two CC BY 4.0 works; see THIRD_PARTY.md.- Ears (
parakeet-lt-kmynas-int8.zip): CC BY 4.0. NVIDIA Parakeet TDT 0.6B v3, fine-tuned for Lithuanian by Kristijonas Jakubsonas ("kmynas v4", LIEPA-3). Our changes are listed in the archive'sNOTICE.txt. The Silero VAD inside the archive is MIT. Parakeetype is a separate app (GPL-3.0). - Texts in this repository: GPL-3.0 (LICENSE).
Thanks
SherpaTTS (woheller69),
sherpa-onnx (k2-fsa),
eSpeak NG, Piper
and Michael Hansen; the creators of the LIEPA corpus (Vilnius University) and
Arūnas Smaliukas for g2p-lt-lexicon; Parakeetype
(theScrabi), Kristijonas Jakubsonas for the Lithuanian Parakeet ("kmynas") and NVIDIA for
Parakeet.
Stuck?
Paste into any AI chat: Read https://raw.githubusercontent.com/RobertasTa/android-lt/main/AI_CONSULTANT_BRIEF.md and help me with Android LT.
Questions and feedback: Issues.
Made with AI: Claude (Anthropic) prepared and measured the package together with Robertas; tested on Robertas's phone; the banner was made with AI. Our other gifts: Skaityklė (text to MP3), Diktuoklė (voice dictation), all of them.
Model tree for RobertasTa/android-lt
Base model
RobertasTa/lt_LT-reginute1-medium





