1. Trigger - pressing a button/terminal command
2. Record audio for 5-10 seconds (this will unfortunately lead to silence at the end of the file because it has a set audio length)
3. Run through Whisper API or run locally
4. Manipulate the response (Python can run local commands)
I've been considering building this myself lately for some kind of home-AI on a Raspberry PI, but I don't know if the steps would look exactly like this. My first thought was to cut the audio if it's silent for too long but not sure if you can process it at the same time as recording (probably). ffmpeg has some tools for detecting low dB.
> I realize you first need to record the audio
There are implimentations that let you stream audio in realtime, but it is rather finnecky and will require basic knowledge of audio DSP. I never set it up though, ymmv.