ElishaAz / Sayboard

An open-source on-device voice IME (keyboard) for Android using the Vosk library.
GNU General Public License v3.0
306 stars 19 forks source link

Other similar projects to collaborate with #6

Open S7venLights opened 1 year ago

S7venLights commented 1 year ago

Working one https://github.com/Felicis/vosk-android-demo

https://github.com/gotev/android-speech https://github.com/ccoreilly/LocalSTT https://github.com/Babilinski/vosk-stt-unity https://github.com/alphacep/vosk-android-demo https://github.com/algolia/voice-overlay-android https://github.com/ElishaAz/Sayboard/

Tombstone2K commented 11 months ago

An app that can transcribe audio messages from WhatsApp would be a great idea. Users could share their voice messages via the share menu to the app, which would then transcribe the audio message.

Similar to -> https://play.google.com/store/apps/details?id=it.mirko.transcriber&pli=1

S7venLights commented 8 months ago

Heya! there's a new kid on the block and although he's bigger and slower than VOSK, he Automatically locally recongnises grammer! https://gitlab.futo.org/alex/voiceinput https://www.youtube.com/watch?v=UCGaKvZpJYc

oh and I didn't mention this before: https://github.com/Kaljurand/K6nele

ElishaAz commented 8 months ago

FUTO voice uses Whisper. I've tried adding it before (see commit add1515 ) but it was too slow to be usable.

The model itself gives the punctuation, so I can't add just that part.

I'll take a look at how they use it, as it does run reasonably on my phone.

S7venLights commented 8 months ago

Yeah, perhaps you can offer both models as user settings?

LuccoJ commented 7 months ago

Dicio can automatically download and use Vosk models for a few languages, and it can also act as a speech recognition engine for other Android app (while its own "assistant" features are really simple), which is similar but different to a speech keyboard: it's about apps that incorporate a "microphone icon" somewhere in their interface, rather than the user invoking it from their regular keyboard.

I believe it uses the android.speech.action.RECOGNIZE_SPEECH interface and does not implement the SpeechRecognizer API, which is why it won't show up in the Voice input Settings page, and may not work in some apps.

LuccoJ commented 7 months ago

FUTO voice uses Whisper. I've tried adding it before (see commit add1515 ) but it was too slow to be usable.

The model itself gives the punctuation, so I can't add just that part.

I'll take a look at how they use it, as it does run reasonably on my phone.

I've found a couple of fully open source projects using Whisper; they use a "TFLite" model, where I assume TF stands for TensorFlow. The project that has a binary works very fast for me, although as you know, Whisper doesn't output text in real time, but only after you're done recording... Still, it's actually fast enough that I could see incrementally running it every two seconds or so to provide some realtime feedback.

I have included more information in the Reddit comments where I found out about this. It's worth a try @ElishaAz even if it ends up to be impractical to include it in Sayboard.

Charles7z commented 3 months ago

I compared futo to say board the past couple of days and while futo does really well on punctuation for the most part, you have to stop and let the app recognize after a few seconds otherwise it seems to lock up. Whereas say board you can just let run an add your punctuation in as you go after you've set up a punctuation keyboard. So, in practical use i would say that sayboard functions better in it's current state once you've set up a punctuation keyboard. Just my two cents.

S7venLights commented 1 month ago

So, in practical use i would say that sayboard functions better in it's current state once you've set up a punctuation keyboard. Just my two cents.

I feel Futos recognised punctuation saves more time. Would be interesting to test that.

But only thing I don't like about Futo is that it always switches back to the original Keyboard after speaking and I can't manually prevent that. Sometimes I want to say more... and the time to switch between KB's is irritatting

Charles7z commented 1 month ago

I feel Futos recognised punctuation saves more time. Would be interesting to test that.

I've tested it. It only gets some punctuation correct, misses other, is slow to transcribe, and is a very big install.

and the time to switch between KB's is irritatting

Agree! Fundamental design flaw with all of them — should be integrated with a keyboard and the keyboard should always be showing. But Google decided to make them two septate input methods 🤦 and that's the way it has gone ever since 🤷

S7venLights commented 3 weeks ago

Agree! Fundamental design flaw with all of them — should be integrated with a keyboard and the keyboard should always be showing. But Google decided to make them two septate input methods 🤦 and that's the way it has gone ever since 🤷

Futo is working on that now: https://keyboard.futo.org/

Charles7z commented 3 weeks ago

Futo is working on that now: https://keyboard.futo.org/

Doesn't seem to me that they are doing that. Seems like they are doing it just like everyone else always has. And they aren't doing any better at implementing things like clipboard, edit layout, etc — another clumsy user interaction. Developers really need to realize they don't use these apps nearly enough and therefore would greatly benefit from working with advanced users...IMO.