The problem I'd like to solve is that my desktop microphone picks up all my keystrokes very loudly compared with my voice. Even just lightly tapping a key without depressing it causes a loud click to be picked up.
I'd like a way to filter out this type of sound, while picking up voice normally. Is there any software input equalizer/filter that could do this? Or alternatively, some sort of hardware hack?
It seems like the microphone is the problem. I would plug in a better mic.
You could buy a small clip-on microphone or a headset with a built-in mic.
There are really cheap ones available, and they might still be better than you laptop mic, if only for the fact that they would be closer to your mouth.
This is usually due to low quality motherboard components, or high quality ones that were not thought out well - having unshielded circuits or a few components too close to each other.
The easiest solution by far is to buy another audio card - it can just be a cheap £5 one, although I would advise something such as an OEM creative one (which should be better than any built in / on board motherboard).
Have you considered buying a new keyboard with something like notebook keys? I guess there are some keyboards on the market, which are specially designed to be silent and to have smooth keystroke. I saw something like this at Gizmodo once. Mabye that can reduce the clicking your microphone is catching.
I have recently been thinking about this and wondered if it is able to write a filter algorithm based on machine learning. I have a blue-switch keyboard that is quiet loud and therefore have the same problem. While I personally haven't implemented it yet I believe it shuold be possible. What you'd need is:
log key stroke timestamps and overlay with recording
create NN that can recognize keystrokes very well
train NN that tries to change the stream so that NN1 won't recognize key strokes anymore
add amount of maniupulation of stream as a negative reward --> manipulate as little as possible
If anyone is interested in building this I'd be happy to work on it together.