back
97 comments
Unclack (linked in the article) did a Show HN a few days ago. Related discussion: https://news.ycombinator.com/item?id=25644828
It isn't quite the same, but RNNoise is a neural-network based noise reduction aimed at dampening anything that isn't human voice. It works fantastic to me and almost always completely mutes my keyboard. (Sometimes it comes though a bit if I am talking at the same time.)

This is easy integrated into Pulseaudio using PulseEffects (https://github.com/wwmm/pulseeffects).

(The PulseEffects support is new, I used to use NoiseTorch (https://github.com/lawl/NoiseTorch) which is more dedicated but has a weird UI and some other downsides)

> and some other downsides

Can you elaborate? (maintainer here, always interested in feedback)

I can testify that these RNNoise-based methods work quite well at removing background noise, including keyboard clacking, even while talking and typing at the same time.
I've used this in Windows and it works pretty good. The filter isn't quite as good as RTXVoice and the installation can be... tricky[1], but it's less fiddly once you get it working.

[1] https://medium.com/@bssankaran/free-and-open-source-software...

RNNoise is also available as a native voice filter in OBS and it works very well there.
I've just used a little script that sets up https://github.com/werman/noise-suppression-for-voice and it's worked wonderfully, but PulseEffects and NoiseTorch seem cool!
Seems like this would be great for multiplayer gaming. Anyone know how well PulseAudio works on windows these days?
Any recommendation for mac?
I'd like to see something like this built into the Operating Systems. Maybe it's just me (misophonia) but having someone typing while a conversation is happening is so distracting as to make it next to impossible to follow the conversation. The same applies to people who use wired Apple earbuds when the mic rubs against their clothing.
Or people who leave their slack notifications audible while they are on video calls. The whole team is on the call and someone posts to the channel and you hear 10 slack notifications.
Love it! I'm glad that you could bring mic-muting to the wider world outside the macOS Big Sur bubble. Appreciate the shoutout for Unclack!
Thank you! That's very gracious of you to say so, and Unclack is cool :-)
It's a really cool idea. I also see a potential benefit to preventing acoustic keyboard eavesdropping. I've seen some newish streamers not show their screen when doing something sensitive like logging in somewhere, but you can still hear their keyboard.

On a slightly related note, I quite like listening to mechanical keyboard sounds when my favorite programmers are doing a stream. I ended up buying one for myself because I just had to hear the sound up close. Mmm...

In case buying a new keyboard is a step too far, there is bucklespring available for Linux that emulates the sound of an IBM Model M keyboard.

Demo here : https://www.youtube.com/watch?v=Y7dKyGoqn9w

You only have to worry about the keyboard muting software, as it has to capture key press events.
Just use NVIDIA Broadcast. Filters out everything but talking.
NVIDIA Broadcast is only available on Windows (but free and works very well if you have a RTX card). Use it if available!

If using Discord, Krisp is built-in. On Windows/Mac, you can also install Krisp standalone.

On Linux, I would recommend NoiseTorch or other similar software.

Yeah, Nvidia Broadcast (formerly RTX Voice) or Krisp. As someone in 3 to 8hrs of video calls every day (interviewer), I wish more people would use solutions like that.
At least semi relevant is Shush, a mac app that makes toggling OS-wide mute easy, along with push-to-talk (or the inverse, push to mute). I've been a happy user for years.

I only wish the menu bar icon were more prominent somehow, or had the option to overlay a floating semi-transparent window that displayed mute status. I'm always paranoid about whether I'm actually muted and wish I could make it glaringly obvious to myself.

<rant>

Maybe if those "modern" video-conference apps had one, decades old option that was (and still is) avaliable in

almost all gaming-oriented voice software (ventrilo, mumble, teamspeak, discord) called

PUSH 2 TALK

then this problem would be solved, same with the problem of kids/other people in the background (especially this)

but yea, we need AI/Blockchain based solutions that require thousands of hours of engineering effort that probably will be provided by some Startup and cost 15$.

It's insane how enterprise software is behind gaming in that particular matter, do those people even use their software?

</rant>

edit.

What's PUSH 2 TALK?

PUSH 2 TALK is not TURN ON / TURN OFF switch where you actually mute yourself. It's that you talk while having some button being pushed down e.g MOUSE SCROLL (MOUSE3) (for me it's probably one of the most practical choices)

so in this case you're always muted unless you want to talk

Why it's so great? because you can e.g play game, write code, do stuff on your PC and when you want to mute yourself, then you don't have to try to find some shortcuts or even worse - put video-co app on focus and click mute button, but instead you just stop pressing your PUSH2TALK hotkey! :P

Zoom at least has such a feature, I use it all the time.

There's some strange psychological thing getting some people to mute their side. I guess it's because some people are used to a ton of noise around them they assume others are ok with it too, but I'm probably reading way too much into things.

My (businessish) headset has a hardware mute button.

Given that a lot of business voice chat is essentially phone calls (rather than group meetings), it makes some sense that toggle predominates UI designs.

And it’s super inconvenient. I prefer to not press my keyboard every single time i need to speak, because otherwise i would be pressing my keyboard all the time.

Edit: everyone suggesting me to use my mouse: i use a laptop without a mouse and sit on my sofa while in meetings. I prefer to unmute myself while there’s a discussion where I’m part of and mute myself when I’m not talking anymore. Push to talk every 10 seconds for 10 minutes is much more inconvenient than just having the mic on all the time.

Note that I do not work as a programmer.

That's a great utility and also very nice they implemented it so fast! Code looks clean and concise. I'm using Nvidia Broadcast mainly for this reason so that I can stream to my two subscribers without my mechanical keyboard ruining the experience :)
Cool idea for those who don't talk and type at the same time in a meeting. Would be an issue for me unforunately but boy I hope some of the people I have meetings with employ something similar. (fortunately my keyboard is quite quiet)
This (ahem) sounds fantastic.

I’m currently doing VC off an iPad while sat in front of my Linux workstation.

The workstation has no microphone. What kind of mic could I get for it, to migrate all my VC to the workstation?

Why not a headset? Certainly no Bluetooth headset though, sound quality is bad on linux as of now.

If you don't have meetings all day I can recommend the Logitech H800. Build quality and comfort are meh, but: It's small, you can use a wireless dongle with linux, switch easily between computer and phone by turning it to bluetooth on the headset and sound is decent.

USB microphones (that integrate the mic preamp and the A/D converter into one unit) are now very common. You just plug them in. In my experience they take zero effort to use with ubuntu or chromeos.
What happens if I’m talking while I’m typing?
Yo__ a__io _ou_d b_ st__t_ry.
At least it's more clearly stated than the one a couple days ago that said it "muted your keyboard"!
This is a really cool, small utility!

TBH, I have been wondering if there is a "wishlist" of small utilities/apps people would want to see on the Linux desktop. I have been looking for project inspiration and would love to do something that actually gets used.

I use Nvidia Broadcast (formerly RTX Voice) for this. Only available for recent GPUs though.
It actually works on non-RTX cards too btw if you install the standalone RTX Voice app.
That's not bad even for security reasons. It can be possible to recover your password if the sound of you typing it is available.
Cool!

Windows please.

Someone. Anyone.

There are a few options that let you use RNNoise. (I posted another comment a bit further up on how to pipe your audio through OBS to implement this. There are undoubtedly simpler options.)

In my experience, it does a great job cancelling out keyboard clicks and clacks. Even if I sit here and slam on my spacebar harder than I'd ever hit it even writing an angry email, it's cancelling it all. And I've never had an issue with it _not_ picking up my voice.

If you're just looking for _a_ solution to the problem, I'd give something with RNNoise a try.

If you have an RTX card, get nVidia Broadcast.

If you have a non-RTX card (like a GTX 1070), get RTX voice. Despite the name, it does not require an RTX card.

Seriously, nVidia's noise removal is absolute magic, as far as I'm concerned. https://youtu.be/uWUHkCgslNE

I actually tried writing a version of this for windows just an hour before this was written. Usually when I do this I find there is one already just as I finish it, but if not then I’ll put it on GitHub within a week. Will post another msg here if I do.
Nvidia Broadcast if you have a recent GPU
No. Get a decent OS.
I think this is now the third one of these I've seen on HN in the past week or so.
Former PM at a videoconferencing company here - this is a great great great idea. You should consider integrating with Blue Jeans (guess where I was a PM at), Zoom, etc. If it works well and you can get in touch with some folks at the company, you could probably get some promotion in their app directories.
I don't know what's worse, having to mute people who aren't paying attention in the meeting and click clacking on their other work, or seeing those low mounted webcams that give you front row seats to fingers typing on the keyboard, or a nice angle on your coworkers unkempt neck hair.
Wasn't this posted 2 days ago?