Speech-to-text service issues and recommendations

Dear community,

We are planning to integrate a speech-to-text service. It does not matter whether it works offline or online.

I am aware that there are already some forum posts about this, but could not find a satisfactory answer. We have already done some tests with the following libraries and none of them worked:

UnitySpeechToText (GitHub - yasirkula/UnitySpeechToText: A native Unity plugin to convert speech to text on Android & iOS)
Did not work. There was no error or anything, our app sent a method call to the Android side of the plugin and it died there without a response.

UnityAndroidSpeechRecognizer (GitHub - EricBatlle/UnityAndroidSpeechRecognizer: 🗣️ Speech recognition on Unity and Android without the annoying google popup!)
Same result as above.

Mobile Speech Recognizer
(Mobile Speech Recognizer | Audio | Unity Asset Store)
This one provided a message that there is no Speech recognition engine for the given device.

All these solutions require Google Services for speech recognition. Is it not possible to use the above solutions on a Magic Leap 2? What exactly could be the problem? Possibly because Google Play Services are not supported (if that is the case at all)?

We haven't tested the native API for speech recognition ( SpeechRecognizer | Android Developers) Might this be an option?

Perhaps the community has other suggestions that work.

Thank you very much for your help.

Hi @julien.villiger,
If those solutions are relying on google play services that is why they are not working, since we do not support google play. If you could elaborate on your use case then I might be able to help find a plugin or library that would work for you.

Dear @sfernandez,

Our use-case is actually pretty simple: We would like to offer the user the possibility to speak into the device and our app then transcribes the spoken words into text.

The providers mentioned above don't necessarily rely on Google Play, other implementations would also work, as long as they register as a RecognitionService (RecognitionService  |  Android Developers). At least this is how I understood it :slight_smile:

Therefore my questions are:

  1. Are there no Speech Recognition Providers on the Magic Leap 2?
  2. How do you recommend we fulfil our requirements?


@julien.villiger you are correct in your understanding of Offline Speech to Text providers! Any application can register as one.. including your own! Magic Leap does not offer an online/offline Speech Recognition Provider as one of our offerings so if I was pursuing it in my own application I would consider an open source or paid provider. This is not an official recommendation but you can try experiment with using the Vosk offline provider if your use case is simple enough. Once you have a valid app registered as a provider these calls "should" work in Unity but if you are experiencing issues please reach out to Sidney again.

Good Luck,