I was working with javascript speech recognition api(new webkitSpeechRecognition()
) and i amazed why it is not working without internet since it is javascript code so it should work offline
I checked the network section of chrome developer tools, it is even not making request to internet
On Chrome, using Speech Recognition on a web page involves a server-based recognition engine. Your audio is sent to a web service for recognition processing, so it won't work offline.
Looking at https://developer.mozilla.org/en-US/docs/Web/API/SpeechRecognition:
SpeechRecognition.serviceURI
Specifies the location of the speech recognition service used by the current SpeechRecognition to
handle the actual recognition. The default is the user agent's default
speech service.
The actual recognition is done by a 3rd party server.
I assume the task of speech recognition currently is just too much for a browser to cope with on it's own or requires a big database.