Files
Ambient-Launcher/README.md
T
jahruz67 3e1c2e714a feat: add offline wake-word detection with sherpa-onnx
- Integrate sherpa-onnx for local "Computer" wake-word detection
- Add foreground service (microphone type) for continued listening across apps
- Request RECORD_AUDIO, POST_NOTIFICATIONS, and foreground service permissions
- Download and verify pinned sherpa-onnx model (17 MB) on first enable
- Update LauncherViewModel with wake-word state and controller
- Add WorkManager and commons-compress dependencies for model extraction
- Update README with wake-word feature details and limitations
2026-07-25 14:48:05 -07:00

2.0 KiB
Raw Blame History

Ambient Launcher

An Android tablet home-screen replacement written in Kotlin and Jetpack Compose.

Included

  • Android Home-role declaration and setup prompt
  • Full-screen ambient slideshow with crossfade, interval control, image darkening, and optional local folder
  • Clock with subtle burn-in position shifting
  • API-key-free current weather and forecast from Open-Meteo
  • Floating searchable app tray with persistent pinned apps
  • Keep-awake options, including charging-only
  • Scheduled ultra-dim/night presentation while the launcher is visible
  • Offline “Computer” wake-word detection that opens Androids default assistant
  • Continued listening across other apps through a visible microphone foreground service
  • Honest capability and permission status screen
  • Manual Android media output panel shortcut

Setup

Open this folder in a compatible Android Studio installation, let Gradle sync, and run it on an Android 8.0+ device. Select Make default Home app during onboarding or later in Settings.

No API key is required. The initial location is San Francisco; change latitude, longitude, and location label under Weather settings.

Deliberately not claimed

System-wide audio routing and overlays over unrelated apps are not included. Android may block an assistant activity from opening over another app; when that happens, the wake-word service posts a one-tap Open assistant notification.

Wake word

Enabling wake word downloads the pinned open-source sherpa-onnx English keyword model (about 17 MB), verifies its SHA-256 digest, and installs only the required int8 model files in private app storage. Audio is analyzed locally and is never saved or transmitted.

The pinned sherpa-onnx 1.13.4 Android AAR is resolved from the projects versioned GitHub release repository during a future Gradle build. Listening can only be started while the launcher is visible and requires microphone and notification permission. It does not automatically start from a boot receiver.