4 ms·
I've recently built the inverse of this using NSFV (https://github.com/werman/noise-suppression-for-voice https://github.com/werman/noise-suppression-for-voice)
by tazjin 6y ago
I've recently built the inverse of this using NSFV (https://github.com/werman/noise-suppression-for-voice https://github.com/werman/noise-suppression-for-voice), i.e. suppressing noise in incoming audio.
A lot of people - despite being forced to work from home - simply don't seem to care about the way their audio sounds. Many don't even try to tackle these problems after it's been pointed out to them that they're being a nuisance in online meetings.
I gave up on trying to help people fix their setups, or convincing them that it matters, and switched to doing this on the receiver end. It's been a massive quality-of-life improvement.
If you're interested in the setup, you basically just need a small script that loads the pulseaudio plugin and wires up the sources/sinks correctly.
My setup script is here: https://cs.tvl.fyi/depot@canon/-/blob/tools/nsfv-setup/default.nix https://cs.tvl.fyi/depot@canon/-/blob/tools/nsfv-setup/defau...
And some more context: https://cl.tvl.fyi/c/depot/+/578 https://cl.tvl.fyi/c/depot/+/578
- basilgohar 6y agoI think this is an out-of-sight, out-of-mind kind of issue. They simply don't understand how their noise, which they do not perceive, can be so detrimental to others. Moreover, a lot of people simply can't grasp the difference good hardware or even just a different setup (moving away from noise sources like fans, open windows, appliances running, etc.) can impact the quality of their sound. Lastly, a lot of people either cannot or think they cannot do anything about it, so they dismiss others' concerns because "everyone else has problems too", equating their noise to be the same as others'.
- sdwvit 6y agoOr they simply don’t care or don’t want to invest effort into solving it ️
- basilgohar 6y agoThis is always a possibility, but we can kill ourselves if we try to figure who's sincere and who's not.
- btashton 6y agoWhy is this the company employees problem. Seems like work should be supplying good audio hardware if this is a real issue.
- kazagistar 6y agoAfter getting good hardware it took hours to get it set up just right.
- g_p 6y agoAnother issue I've seen is people using their device's built-in speaker and microphone (to form a loopback-fest) that the onboard echo cancellation tries its best to deal with. I think there's certainly a part around "but I can't see the difference" - it's hard to get rapid feedback on if it's better or worse, since you won't notice the difference in change to setup. In any case, being able to create a pulseaudio sink that puts the audio from one application through a noise removal chain sounds to me like a decent "quick fix" for me - I've tried to listen to some webinars with such horrible audio it was pretty much impossible to listen to, yet with otherwise worthwhile content. I wonder if this would be enough to improve it, or if the issues lie elsewhere (low quality transcodes).
- edraferi 6y agoI’ve tried several different audio solutions, including nice wired headphones + mod mic wireless. Ultimately people think I sound best just using my laptop’s internal microphone array and bookshelf speakers. The whole process was a frustrating distraction.
- ponker 6y agoWhy don’t the services like Zoom and Teams fix this on the server side?
- ralphm 6y agoIf services are indeed doing, or moving to, end-to-end encrypted media, there's nothing the server can do here.
- bigiain 6y agoDoesn’t mean they can’t do anything about the noise, just that they can’t do it on the server. The RNNoise link from the bottom of that post runs the noise suppression in real time in JavaScript. Zoom et al. could do this client side while still doing proper E2E. (Although Zoom already uses more cou that I think it needs to...)
- spacechild1 6y agoZoom actually does noise and echo cancellation by default, but you can turn it off.
- draugadrotten 6y agoTeams have something in the pipe for this, that will cancel out noise. I think it was a youtube video linked here a while back. Here's another https://www.youtube.com/watch?v=oCrCkgjZEXQ https://www.youtube.com/watch?v=oCrCkgjZEXQ
- tazjin 6y agoGoogle Meet supports noise-cancelling in outgoing audio (for business customers), but the user needs to enable it once in their settings. In my experience this last bit is already a hurdle ... (disclaimer: I work at Alphabet)
- quercusa 6y ago"which they do not perceive" is key here. I suspect that HN readers tend to an above-average degree of sensory sensitivity that causes them to notice things most people don't. Add to that even a little training/experience in audio and the noises that drive you crazy are likely completely inaudible to others.
- g_p 6y agoFor anyone wanting to try this, it is pretty straightforward - first install noise-suppression-for-voice (AUR package available, binaries available via Github releases). You want to have librnnoise_ladspa.so and librnnoise_lv2.so available. Then identify your current output sink by running `pactl list sinks short`. One will be "RUNNING", and this is your active sink. Keep this name to hand. Create and enable an output sink using this plugin: pacmd load-module module-ladspa-sink sink_name=denoise_sink_for_apps.stereo sink_master=YOUR_OUTPUT_SINK_FROM_ABOVE_HERE label=noise_suppressor_stereo plugin=librnnoise_ladspa.so control=0 The value of sink_master should be the output sink name from above, and the control=0 parameter can be adjusted - that seems to be the voice auto detect threshold. https://github.com/werman/noise-suppression-for-voice/issues/41 https://github.com/werman/noise-suppression-for-voice/issues... suggested 0, but I found it benefited from being higher. You can compare before/after by changing your pulseaudio output sink at system level (or application level) back and forth.
- tazjin 6y agoThanks for these notes! If you have Nix installed, you can also try my script directly with this command: nix-build -E '(import (builtins.fetchGit "https://cl.tvl.fyi/depot" https://cl.tvl.fyi/depot") {}).tools.nsfv-setup'
- closeparen 6y agoI find most of the nuisance on Zoom calls is from children and pets. For example, the mailman usually comes to my boss's house during standup, and he's out of commission for a solid five minutes due to the barking.
- sgt 6y agoWould this work as a general suppressor against noisy neighbors across the street listening to bass? Can't hear the music, only feel the bass.
- RMPR 6y agoDoes it work with Pipewire?
- civ0 6y agoI just tried this and really like it. Unfortunately the latency for the audio output from Teamspeak 3 just rose to multiple seconds over a fews hours of use. The latencies reported by PulseAudio did not represent that, but I could hear people talking for a few seconds after their icon indicated that they stopped. Did you encounter similiar issues? Since I don't know much about PulseAudio I am at a loss right now and have to endure the noise.