
No, EchoControl doesn't rely on Windows Speech Recognition. It runs on Vosk, a speech engine that works entirely on your own computer, with no cloud server involved.

We're saying this straight up because it's the most common complaint about other voice software: stuck with Windows' native recognizer, year after year, with no real alternative. We decided early on not to depend on it. We also didn't build our own cloud service, which would have been the other easy route.
The other easy route, and why we skipped it
A cloud service would have been simpler to build. But a game doesn't wait. If recognition has to travel to a server and back, every command carries your connection's delay, and it stops working the moment the internet drops.
Vosk solves both problems at once. The model runs loaded on your machine (vosk-model-small-en-us-0.15 for English, vosk-model-small-es-0.42 for Spanish), so there's no round trip to wait for.
Why it doesn't try to understand everything
There's a technical detail almost nobody asks about from the outside, and we cover it in more depth in how EchoControl recognizes your commands: the engine doesn't transcribe anything you say. Each game profile defines a closed list of phrases, and it only listens for those.
That's what makes it fast and accurate at the same time. The problem it solves is much smaller than "understand natural language". But a closed list has a risk: if someone says a command a little differently from how we recorded it while building the profile, it can sound like something else to the engine.
The audit that exists because of that risk
That's why every profile goes through its own audit, per game and per language, before it ships. Each phrase gets synthesized as speech, run through Vosk with an open grammar (to see what it could be confused with), and any mismatch gets flagged before a real player runs into it. Some real results from that audit:
- Elite Dangerous (English): 64 phrases sounded different than expected — "deploy heatsink" was heard as "deploy heat sink".
- Shadow Tactics (Spanish): 43 phrases failed — "cargar última partida" (load last save) was heard as "cargar última partir".
- Commandos 2 (English): 32 phrases — "beret" was confused with "bahrain".
Each of those gets fixed with a phonetic alias before that profile ships. Not after someone complains.
We're not saying it's perfect. We keep finding phrases that fail every time we audit a new profile, and we'll probably keep finding them. What we can say is this:
The engine doesn't depend on Windows. It doesn't depend on the internet. And every mistake we find gets fixed before it ships. Never hidden behind "it works most of the time".