At work I build real-time transcription with cloud speech APIs. They are very good. They also need a network connection, an account, a key, a bill, and a decision about whose servers your users' voices go to.
I wanted to know how close a phone could get on its own. So I built transcribe_cpp , a Flutter package that turns speech into text entirely on the device, on iOS and Android. The user talks, your app gets text, and the audio never leaves the phone.
It started as an experiment and a way to learn. It is now on pub.dev, MIT licensed, and the code is on GitHub .
What it does
Private. No server, no account, no API key. It works in airplane mode.
Hands-free. There is no button to hold. Voice detection decides when each sentence starts and ends.
Live text. Words appear while the person is still talking, and settle in place without flickering.
Fast. On a mid-range phone, the recommended model transcribes speech about 40 times faster than real time.
Survives real life.…