We live in the future. You can ask your personal assistant to turn on the lights, plan your commute, or set your thermostat. If they ever give Alexa sudo, she might be able to make a sandwich. However, you almost always see these devices sending data to some remote server in the sky to do the analysis and processing. There are some advantages to that, but it isn’t great for privacy as several recent news stories have pointed out. It also doesn’t work well when the network or those remote servers crash — another recent news story. But what’s the alternative? If Picovoice has its way, you’ll just do all the speech recognition offline.
Have a look at the video below. There’s an ARM board not too different from several we have lying around in the Hackaday bunker. It is listening for a wake-up phrase and processing audio commands. All in about 512K of memory. The libraries are apparently quite portable and the Linux and Raspberry Pi versions are already open source. The company says they will make other platforms available in upcoming releases and claim to support ARM Cortex-M, Cortex-A, Android, Mac, Windows, and WebAssembly.
We imagine that’s true because you can see the ARM version working in the video and there are browser-based demos on their website. They say the code is in ANSI C and uses fixed point math to do all the neural network magic, so the code should be portable.
The libraries on GitHub include:
- Rhino – Speech to intent (in other words, do something in response to a spoken command)
- Porcupine – Wake word detection
- Cheetah – Speech to text
The fact that this is open source is exciting and we’ll be interested to see what you do with the technology. If you build a voice-controlled beer brewing rig — or anything else — be sure to let us know on the tip line so we can share it with everyone.