In my attempts to troubleshoot a challenging SpeechRecognizer.java issue, I noticed in Logcat messages TAGs that are not SpeechRecognizer's:
12:34:00.933 NetworkSpeechRecognizer pid-29210 I Online recognizer - start listening
12:34:00.936 SodaSpeechRecognizer pid-29210 I Offline recognizer - start listening
12:34:00.936 SodaSpeechRecognizer I Initialize Soda [locale: en-US]
12:34:00.963 SodaSpeechRecognizer I Initialize Soda with language pack directory
12:34:01.099 SodaSpeechRecognizer I Offline recognizer - start detection
12:34:02.975 NetworkSpeechRecognizer I #cancel
12:34:02.976 NetworkSpeechRecognizer pid-29210 I #cancel
12:34:02.976 NetworkSpeechRecognizer I #failWithException
12:34:02.977 SodaSpeechRecognizer I startDetection successful
12:34:02.979 NetworkSpeechRecognizer W Recognizer network error
12:34:02.979 SodaSpeechRecognizer I Offline recognizer - stop detection
What is
SodaSpeechRecognizer
?Where can I learn more about it?
How are these tags generated if SpeechRecognizer.java only defines:
private static final String TAG = "SpeechRecognizer";
Update: I just found this article SODA: Speech On-Device API along with this page. Nice clue, but insufficient as this is not official documentation.
The following official documentation from Google seems to be much better: https://cloud.google.com/speech-to-text/priv/docs/ondevice-overview
Yet, it is still mysterious, quoting:
This product is a private feature. The documentation is publicly available but you must contact Google for full access.