TE
科技回声
首页24小时热榜最新最佳问答展示工作
GitHubTwitter
首页

科技回声

基于 Next.js 构建的科技新闻平台,提供全球科技新闻和讨论内容。

GitHubTwitter

首页

首页最新最佳问答展示工作

资源链接

HackerNews API原版 HackerNewsNext.js

© 2025 科技回声. 版权所有。

NoiseTorch: Real-time microphone noise suppression on Linux written in Go

390 点作者 ClawsOnPaws将近 5 年前

24 条评论

tazjin将近 5 年前
I&#x27;ve recently built the inverse of this using NSFV (<a href="https:&#x2F;&#x2F;github.com&#x2F;werman&#x2F;noise-suppression-for-voice" rel="nofollow">https:&#x2F;&#x2F;github.com&#x2F;werman&#x2F;noise-suppression-for-voice</a>), i.e. suppressing noise in <i>incoming</i> audio.<p>A lot of people - despite being forced to work from home - simply don&#x27;t seem to care about the way their audio sounds. Many don&#x27;t even try to tackle these problems after it&#x27;s been pointed out to them that they&#x27;re being a nuisance in online meetings.<p>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&#x27;s been a massive quality-of-life improvement.<p>If you&#x27;re interested in the setup, you basically just need a small script that loads the pulseaudio plugin and wires up the sources&#x2F;sinks correctly.<p>My setup script is here: <a href="https:&#x2F;&#x2F;cs.tvl.fyi&#x2F;depot@canon&#x2F;-&#x2F;blob&#x2F;tools&#x2F;nsfv-setup&#x2F;default.nix" rel="nofollow">https:&#x2F;&#x2F;cs.tvl.fyi&#x2F;depot@canon&#x2F;-&#x2F;blob&#x2F;tools&#x2F;nsfv-setup&#x2F;defau...</a><p>And some more context: <a href="https:&#x2F;&#x2F;cl.tvl.fyi&#x2F;c&#x2F;depot&#x2F;+&#x2F;578" rel="nofollow">https:&#x2F;&#x2F;cl.tvl.fyi&#x2F;c&#x2F;depot&#x2F;+&#x2F;578</a>
评论 #23881563 未加载
评论 #23882063 未加载
评论 #23883983 未加载
评论 #23964270 未加载
评论 #23884308 未加载
评论 #23884457 未加载
drblah将近 5 年前
As far as I can see this uses RNNoise. If you haven&#x27;t checked it out yet you should, because it is simply amazing. It is a super effective noise gate &#x2F; noise removal tool that does not require any configuration whatsoever.<p>My study mates and I have been using it over the last four months when working from home. It removes the noise of keyboards, seaguls and vacuum cleaners.<p>It is essentially the same as Nvidia RTX voice except it is much lighter on the system and does not require an Nvidia GPU. In our testing RNNoise performs similarly.<p>This project looks super cool. It seems to make RNNoise much more accessible. Normally you would have to manually set up the pulseaudio plumbing for this to work.
评论 #23881509 未加载
Abishek_Muthian将近 5 年前
Nicely done!<p>I went through some core libraries being used in the project, there&#x27;s a pure Go pulseaudio implementation[1] which seems to deserve few more stars and the GUI framework nucular[2] seems support even metal rendering on macOS. I like how the native GUI frameworks for Go are becoming viable alternative to Qt.<p>Off-topic, Since this thread might attract audio programmers-<p>I was looking at ambient noise cancellation, audio amplification implementation for TWS earphones(BL 5.0) without those features on Android[3], would the latency defeat the purpose because it isn&#x27;t implemented on device and does android bluetooth&#x2F;audio APIs provide necessary access to implement such features in an app?<p>[1]<a href="https:&#x2F;&#x2F;github.com&#x2F;lawl&#x2F;pulseaudio" rel="nofollow">https:&#x2F;&#x2F;github.com&#x2F;lawl&#x2F;pulseaudio</a><p>[2]<a href="https:&#x2F;&#x2F;github.com&#x2F;aarzilli&#x2F;nucular" rel="nofollow">https:&#x2F;&#x2F;github.com&#x2F;aarzilli&#x2F;nucular</a><p>[3]<a href="https:&#x2F;&#x2F;needgap.com&#x2F;problems&#x2F;22-enabling-hearing-aid-features-on-tws-earphones-audio-hearingaid" rel="nofollow">https:&#x2F;&#x2F;needgap.com&#x2F;problems&#x2F;22-enabling-hearing-aid-feature...</a>
lawl将近 5 年前
Hey everyone author here! Awesome to see this on HN.<p>I&#x27;m happy to answer any questions, but this is a slightly inopportune moment to hit HN for me as I need to leave soon :) Some responses might be delayed by a day or so!
评论 #23880684 未加载
nickjj将近 5 年前
I&#x27;m not saying this tool is bad but I would be really careful about using tools like this in an environment where audio quality really matters (Youtube videos, podcasts, etc.).<p>Noise reduction tools work by removing specific frequencies from the source, some of which overlap with your natural voice.<p>This is why you start to sound robotic and get weird cutouts if you try to use tools to remove too much noise or background sounds. It&#x27;s one of those things where, if you&#x27;re not used to hearing your entire vocal range, you might not be aware at how much is getting cut out from tools that reduce noise.<p>It&#x27;s too bad they don&#x27;t have a before &#x2F; after with a few voice samples in the readme.
评论 #23880905 未加载
评论 #23880657 未加载
评论 #23880668 未加载
评论 #23880714 未加载
评论 #23881362 未加载
评论 #23885371 未加载
评论 #23882059 未加载
dsteinman将近 5 年前
This might be useful to use along side with DeepSpeech (<a href="https:&#x2F;&#x2F;github.com&#x2F;mozilla&#x2F;DeepSpeech" rel="nofollow">https:&#x2F;&#x2F;github.com&#x2F;mozilla&#x2F;DeepSpeech</a>), which doesn&#x27;t work very well in noisy environments.
ACAVJW4H将近 5 年前
It might be a stupid question but, aside from the obvious benefits of saving bandwidth by omitting useless noise in transport, doesn&#x27;t it make sense to employ these technologies server-side? One could maybe make Jitsi or BigBlueButton use similar technologies? It would make it much more ubiquitous, better platform support (would work on mobile or low CPU&#x2F;GPU clients) and also save on system provisioning as maybe the neural net could be utilized better by running for different audio sources concurrently
评论 #23881447 未加载
评论 #23883749 未加载
评论 #23881680 未加载
wenc将近 5 年前
Very nice. Krisp.ai is a commercial option, and NVIDIA RTX is free but requires a CUDA card, so this is a great alternative.<p>Noise suppression is becoming more and more common. My Jabra headset has it built in.
评论 #23881599 未加载
rstuart4133将近 5 年前
From the developer of RNNoise, which is the technique being used here:<p>&quot;As strange as it may sound, you should not be expecting an increase in intelligibility. Humans are so good at understanding speech in noise that an enhancement algorithm — especially one that isn&#x27;t allowed to look ahead of the speech it&#x27;s denoising — can only destroy information. So why are we doing this in the first place? For quality. The enhanced speech is much less annoying to listen to and likely causes less listener fatigue&quot;<p><a href="https:&#x2F;&#x2F;jmvalin.ca&#x2F;demo&#x2F;rnnoise&#x2F;" rel="nofollow">https:&#x2F;&#x2F;jmvalin.ca&#x2F;demo&#x2F;rnnoise&#x2F;</a>
sandworm101将近 5 年前
Does noise suppression work in reverse? Can I use it to isolate the noise from the human voices? There are lots of situations where someone might want to isolate and analyse background noises or conversations.
评论 #23885005 未加载
hu3将近 5 年前
I&#x27;m curious about the impact of Go&#x27;s Garbage Collection in a real-time project like this.<p>From reading past comments in other Go related threads I was led to believe this was impossible to achieve with Go.<p>I&#x27;m talking about threads like this: <a href="https:&#x2F;&#x2F;news.ycombinator.com&#x2F;item?id=21036037" rel="nofollow">https:&#x2F;&#x2F;news.ycombinator.com&#x2F;item?id=21036037</a>
kaielvin将近 5 年前
Alternatively there is the pulseaudio module: module-echo-cancel (<a href="https:&#x2F;&#x2F;askubuntu.com&#x2F;questions&#x2F;18958&#x2F;realtime-noise-removal-with-pulseaudio" rel="nofollow">https:&#x2F;&#x2F;askubuntu.com&#x2F;questions&#x2F;18958&#x2F;realtime-noise-removal...</a>), which I have been using so far.<p>I haven&#x27;t tried NoiseTorch yet. How do the two compare?
评论 #23880913 未加载
formerly_proven将近 5 年前
Most noise suppression I&#x27;ve seen so far can shave off a few dB (worth gold already), but when you try to suppress more noise it always starts to impact the signal very negatively. Interesting to see whether these ML approaches can do better. I suspect they might depend even more on the type of your voice than conventional noise suppression.
评论 #23883597 未加载
gingerlime将近 5 年前
Anything similar for MacOS ? I tried krisp.ai which is nice but seems too heavy on my 2015 MacBook Air together with zoom
manojlds将近 5 年前
Any of these remove dog barking noise?
评论 #23881120 未加载
bhouston将近 5 年前
This should be included in Linux by default it is this good. :)<p>Or at least available via apt-get.
jcastro将近 5 年前
I&#x27;ve been using this for the past few days and it&#x27;s been fantastic, every distro should just do this out of the box.
42droids将近 5 年前
Thank you for making this, I really can&#x27;t wait to try it. In fact, I am now shocked this didn&#x27;t exist before... :)
captn3m0将近 5 年前
noisetorch-bin and noisetorch-git packages already on AUR: <a href="https:&#x2F;&#x2F;aur.archlinux.org&#x2F;packages&#x2F;?O=0&amp;SeB=nd&amp;K=noisetorch&amp;outdated=&amp;SB=n&amp;SO=a&amp;PP=50&amp;do_Search=Go" rel="nofollow">https:&#x2F;&#x2F;aur.archlinux.org&#x2F;packages&#x2F;?O=0&amp;SeB=nd&amp;K=noisetorch&amp;...</a>
freedomben将近 5 年前
Is this using GTK? What bindings?
评论 #23884909 未加载
kochthesecond将近 5 年前
This is pretty cool!
thomasfedb将近 5 年前
I read NoseTorch, was intrigued.
ped4enko将近 5 年前
How well did you choose the Golang for this task?
sahoo将近 5 年前
Only if the sound card was detected in Linux. Sigh.
评论 #23880549 未加载
评论 #23880575 未加载