← all repositories
Picovoice/cheetah

Speech-to-text that phones home — to check your license

Cheetah runs all voice recognition locally, but still needs an internet connection to validate your AccessKey with Picovoice's servers.

663 stars Python Image · Video · Audio
cheetah
Velocity · 7d
+0.2
★ / day
Trend
steady
star history

What it does Cheetah is Picovoice’s on-device streaming speech-to-text engine. It transcribes audio in real-time across a sprawling list of platforms — Python, C, iOS, Android, Flutter, React Native, Node.js, Java, .NET, and modern browsers. The actual voice processing happens 100% offline; no audio leaves your device.

The interesting bit The licensing architecture is the twist. You need an AccessKey from Picovoice’s console, and despite all processing being local, you must phone home to their license servers to validate it. The README is explicit about this: “You would need internet connectivity to validate your AccessKey with Picovoice license servers even though the voice recognition is running 100% offline.” Usage limits are enforced, and commercial tiers exist.

Key highlights

  • Supports English, French, German, Italian, Portuguese, and Spanish; more languages available commercially
  • Targets embedded and edge hardware: Raspberry Pi 3/4/5, plus standard desktop and mobile platforms
  • SDKs in 9+ languages with matching demo projects
  • Claims accuracy and efficiency benchmarks (hosted externally on picovoice.ai)
  • Free tier with usage caps; enterprise sales for expansion

Caveats

  • The AccessKey validation requirement means “offline” has an asterisk — initial setup or periodic checks need internet
  • README truncates mid-sentence for iOS documentation; Android and other sections appear complete
  • No open-source license details visible in the provided excerpt; GitHub badge suggests standard licensing exists

Verdict Worth evaluating if you need cross-platform local STT and can tolerate Picovoice’s licensing handshake. Skip if you need fully air-gapped operation or object to usage telemetry, however minimal.

heatdrop uses Google Analytics to see which pages get read — nothing else. Your call. How we handle data.