Skip to content

Replace Google STT with offline Whisper voice input engine - #1165

Closed
JTDITech wants to merge 1 commit into
sspanak:masterfrom
JTDITech:whisper-integration
Closed

Replace Google STT with offline Whisper voice input engine#1165
JTDITech wants to merge 1 commit into
sspanak:masterfrom
JTDITech:whisper-integration

Conversation

@JTDITech

Copy link
Copy Markdown

Summary

This PR replaces Google Speech-to-Text with an offline Whisper-based voice input system using FUTO Whisper GGML.

What changed

  • Added a C++ + JNI bridge for the FUTO Whisper GGML engine
  • Switched voice input to downloadable offline models
    • English Tiny
    • Multilingual Tiny (57 languages)
  • Added automatic model selection based on the active language
  • Blocked unsupported languages:
    • Irish
    • Toki Pona
    • Tamazight
  • Updated voice hotkey behavior to force-show the keyboard window in passthrough fields
  • Removed SSL certificate pinning
  • Removed the bundled model asset

Why

This improves voice input by making it offline-capable, reducing dependency on Google services, and enabling broader language support with language-aware model selection.

Notes

  • Users will need to download the required models
  • Some languages are intentionally blocked due to unsupported model coverage

Testing

  • Verify voice input works with both English and multilingual models
  • Confirm model auto-selection follows the active language
  • Confirm unsupported languages are blocked correctly
  • Test voice hotkey behavior in passthrough fields

- Add FUTO Whisper GGML engine (C++ + JNI bridge)
- Download-only models: English Tiny + Multilingual Tiny (57 languages)
- Auto-select model based on active language
- Block unsupported languages (Irish, Toki Pona, Tamazight)
- Force-show keyboard window when voice hotkey pressed in passthrough fields
- Remove SSL cert pinning and bundled model asset
@sspanak

sspanak commented Jul 27, 2026

Copy link
Copy Markdown
Owner

Thank you for your effort. It must have been a significant effort to integrate a C++ library into an Android app. However, I must reject this PR for the following reasons:

  1. I would like this project to remain as simple as possible, with minimum dependencies. Sort of, I don't want one more thing to break.
  2. The biggest part of TT9 users are on Google Play. Removing the Google Voice Input would be a downgrade for them.
  3. How about the users who do want to use Google Voice, even if they have a custom ROM? It is not fair to take it away from them.
  4. This whole thing is actually not necessary. Allow voice input with Futo Voice #659 (completed in v60.0) already adds support for any external voice input method. If you want to use Whisper, just install FUTO Voice, enable it from Android settings, and the next time you attempt to use voice input in TT9, it should show a popup dialog to select the desired voice input method. You can also install and use any other voice input app, you are not limited to just one.

@sspanak sspanak closed this Jul 27, 2026
@sspanak sspanak added the duplicate This issue or pull request already exists label Jul 27, 2026
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

duplicate This issue or pull request already exists

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants