Carl must think his nickname is “Porcupine” because he notices when I say it, or even whisper it from across the room.
For the last hour Carl has been collecting stats running the PicoVoice Porcupine Wake Word Engine, which is a Machine Learning trained speech recognition package:
Seems to be bumping the 15 minute load average from 0.18 to 0.28 or so. I think this small load means Carl will be able to listen for his name full-time. (I was thinking to only listen when he saw motion or a light level change in the room, but this will be much easier.)
$ porcupine_demo_mic --keywords porcupine --audio_device_index 1
.
(Bunch of ALSA startup complaints)
.
Listening {
porcupine (0.50)
}
[2021-01-04 16:45:01.826126] Detected porcupine
[2021-01-04 17:33:04.281600] Detected porcupine
[2021-01-04 17:33:13.913535] Detected porcupine <-- WHISPERED FROM ACROSS THE ROOM!
[2021-01-04 17:33:17.593605] Detected porcupine <-- Whispered even quieter
[2021-01-04 17:33:19.224259] Detected porcupine
[2021-01-04 17:33:20.888447] Detected porcupine
[2021-01-04 17:33:22.905681] Detected porcupine
[2021-01-04 17:33:26.265903] Detected porcupine
[2021-01-04 18:01:29.813047] Detected porcupine
Alas, they do not allow free/personal accounts to create custom wake keywords for Raspberry Pi, so either Carl will have a nickname of “Computer”, “Jarvis”, or “Porcupine”, or I have to use my old faithful, totally opensource, pocketsphinx keyword detection.