Picovoice/porcupine
On-device wake word detection powered by deep learning
What it solves
Porcupine is a lightweight, highly accurate wake word engine designed to enable "always-listening" voice-enabled applications. It allows a system to efficiently detect specific, static voice commands (wake words) in real-time without consuming significant computational resources.
How it works
The engine uses deep neural networks trained in real-world environments to identify specific audio patterns. It is designed to be compact and computationally efficient, making it suitable for deployment on everything from high-end desktops to low-power IoT devices and microcontrollers. Developers can use pre-built keywords or train custom wake word models via the Picovoice Console.
Who it’s for
Developers building voice-activated interfaces for IoT devices, mobile apps (Android/iOS), web applications, and embedded systems (like Raspberry Pi or Arduino) who need a reliable way to to trigger actions based on a few static voice commands.
Highlights
- Extensive Cross-Platform Support: Works across Arm Cortex-M, STM32, Arduino, Raspberry Pi, Android, iOS, Web (Chrome, Safari, Firefox, Edge), Linux, macOS, and Windows.
- High Performance: Claimed to be 11 times more accurate and 6.5 times faster than competing libraries like PocketSphinx and Snowboy on Raspberry Pi 3.
- Customizable: Supports custom wake word training through a self-service console.
- Multilingual: Supports English, Chinese (Mandarin), French, German, Italian, Japanese, Korean, Portuguese, and Spanish.
- Scalable: Can detect multiple wake words simultaneously without increasing the runtime footprint.
Related
- Project
- Project
- Project
- Project
- Project