Dicio: Free and open source voice assistant for Android
github.com
github.com
To choose Dicio as your default digital assistant on Android (replacing Google Assistant), go to Settings > Apps & notifications > Default apps > Digital assistant app > Default digital assistant app. On Android 10+, this lets you activate Dicio by swiping from the bottom left/right corner toward the center of the screen.
This is great, one of the barriers to entry before was that you needed to manually open the app. Although I don't see that this resolves the issue of the wakeword/hotword triggered with "Hey Google" ?
The options to make a true opensource assistant that would work in the same capacity as Alexa/Siri/Google (invoked via wakeword) is therefore quite limited. An alternative is to have it listening constantly, maybe as a background service, but this would use up too much battery I suspect.
Maybe tasker/easer has something for the wakeword detection? That would be great.
But it's tantalizing to imagine writing my own skill that would be heard and responded to by my phone with no internet involvement.
Also, doe sit use whichever speech engine you have installed for tts? I'm interested in using this primarily because I only use FOSS and up until now I've been going without a voice assistant, but I do use flite tts.
Looks like it's welcoming of external contributors, a PR is in for telephone functionality. You could very likely get the functionality that you need included.
To set your default TTS provider on Android, go to Settings > Accessibility > Text-to-speech output > Preferred engine.
[1] https://play.google.com/store/apps/details?id=com.google.and...
[2] Website: https://rhvoice.org / F-Droid: https://f-droid.org/en/packages/com.github.olga_yakovleva.rh... / GitHub: https://github.com/RHVoice/RHVoice
And if not is there any (open source) voice engine that has proper support for both english and east asian languages like chinese and japanese?
eSpeak NG[1] is another FOSS TTS engine for Android, but the Android version is currently broken.[2] It should support Chinese, Japanese, and over 100 languages in total, when it gets fixed.
[1] GitHub: https://github.com/espeak-ng/espeak-ng / F-Droid: https://f-droid.org/en/packages/com.reecedunn.espeak/
For some reason I thought eSpeak is abandoned.
EDIT: No you don't need signature spoofing. That's a feature that was added later. Plenty of things work without signature spoofing and it wasn't part of the initial feature set to begin with. This is more google trying to make sure you can't circumvent their stuff
I haven't checked every Android distribution, but I can confirm that TTS voice downloads in Speech Services for Google works on LineageOS for microG.
The original eSpeak project[1] that eSpeak NG was forked from did get abandoned, and eSpeak also has an older Android implementation[2] that also got abandoned.
Edit: I'm surprised that microG works at all without signature spoofing, but based on your experience, I assume that Speech Services for Google needs either Play Services or microG (with signature spoofing enabled).
[1] http://espeak.sourceforge.net
[2] Google Code: https://code.google.com/archive/p/eyes-free/source / F-Droid: https://f-droid.org/en/packages/com.googlecode.eyesfree.espe...
However after downloading the Vosk model in Dicio I am still unable to use voice input. I'm insure if it is having trouble downloading the model or what.
I'm going to keep my eye on this project, I've been waiting for something like this for a while and looking but unable to find anything that works.
Edit: I tried redownloading the Vosk model and the app works. I wonder if it is possible to use the Vosk model for general speech input (such as from my keyboard) in other apps or if I need to use something different.
Not yet, but keep an eye on this project: https://github.com/alphacep/vosk-android-service
Since the people I've seen use Alexa seem to use it for
* playing music / radio streams / podcasts
* setting alarms
and almost nothing else, it doesn't seem that it's all that unrealistic.