The cool thing about this engine is that it is tiny. It uses less than 8% CPU on RPi3 and altogether it is less than 2MB (code, model, etc). Technically you can run it on something much smaller and cheaper than RPi.
Alternatively, the speech-to-intent engine could be a good candidate. More information on this along with an interactive demo will be released this weekend.
I would love to see some benchmark numbers on Picovoice. The small size and low CPU is definitely interesting but I'm worried that performance is hindered because of this. Also, is 8% peak usage? Having this loaded on some small IoT chip will be awesome to see.
We do work with a couple of SoC manufacturers and will disclose some of the results when our partners are ready. In general, we can run on any MCU with a C compiler and 200KB of RAM (maybe less if there is fast FLASH available). We already of models working on ARM Cortex-M and Cadence's HiFi4.
I would love to see Picovocie on ESP32. We've looked into this as we get many requests for Picovoice on ESP32. The challenge is to find a commercial request at a reasonable scale to cover the porting effort. I suspect it should be less than a month of work on our side.
The voice control comes in two variations standard and tiny. The tiny one consumes even fewer resources. I provided metrics for the standard one. You can check the benchmark repo on benchmark it yourself as well :)
https://github.com/Picovoice/wakeword-benchmark
So I had a quick poke around on the wake word github repo but it looks like you cant generate custom keywords for the raspberry pi. Is that correct? So you have to use the pre-built ones in the resources directory? There seem to be a lot files in there but how do I know what each one does?
Yeh I think I understand now. The filename of each file in the resources folder represents the hot-word that's detected. When you specify multiple files it'll give the index corresponding to the file and hence the word that was detected. So the problem is that since you don't support generating your own hot-words for raspberry pi, you are stuck with the small random set of words in the repo. That's kind of a huge limitation. So while I'm sure this is a great project for use with x86 and mac, it's a non-starter for me. Presumably proper support for raspberry pi is coming at some point so I'll be sure to check back.
With Picovoice you can use the voice control engine to accomplish this. Maybe something similar to this demo?
https://picovoice.ai/#voice-control-demo
The cool thing about this engine is that it is tiny. It uses less than 8% CPU on RPi3 and altogether it is less than 2MB (code, model, etc). Technically you can run it on something much smaller and cheaper than RPi.
Alternatively, the speech-to-intent engine could be a good candidate. More information on this along with an interactive demo will be released this weekend.