4 ms·
Hey (author here) I have personally not noticed voice quality suffering too much, but you are of course right. And this is not what it was made for. My persona
by lawl 6y ago
Hey (author here)
I have personally not noticed voice quality suffering too much, but you are of course right. And this is not what it was made for. My personal use case is mostly voip where RNNoise (imo) does an amazing job.
- nickjj 6y agoWould it be possible to upload a few before / after samples with varying degrees of background noise? Even if it's all the same person that would be a huge help to gauge the quality.
- lawl 6y agoYes! https://github.com/lawl/NoiseTorch/issues/19 https://github.com/lawl/NoiseTorch/issues/19 I just wont get to it today unfortunately.
- nickjj 6y agoCool thanks. Just a suggestion if you do it, please include realistic room noises in some of the samples. I looked at the RNNoise examples and it was pretty bad. I mean, the audio quality of the speaker got completely mangled but the background noise was also comically high. It sounded like the person just sat down in the middle of the street in NYC or was inside of a busy train terminal.
- ClawsOnPaws 6y agoHere are some demos, I believe this is the same algorithm: https://jmvalin.ca/demo/rnnoise/ https://jmvalin.ca/demo/rnnoise/
- lawl 6y agoYes and no. NoiseTorch also has VAD (Voice Activity Detection). RNNoise also returns the probability of a sound sample being voice, I use that to clamp the microphone completely if its < the configured probability. This works really well for situations like Discord or Teamspeak where you're usually not constantly talking, but doing things that can still set off "normal" voice activation. RNNoise's model often knows it's not voice, but cannot denoise it completely.
- g_p 6y agoLooks excellent and keen to delve into the code a bit. One quick question since you'll clearly know the codebase - do you think this could easily be adapted to create a "playback-side" noise filter? Use-case rationale here is noisy and poor quality podcasts or "other people's" audio - it would be awesome to be able to configure your tool as the output for Chrome or Firefox or whatever program I'm listening to, then route the cleaned audio from your tool to the physical audio port. Is that something which would be feasible to do here?
- lawl 6y ago> do you think this could easily be adapted to create a "playback-side" noise filter? Yes, the hardest part about this is making the UI not confusing when you now have two separate instances loaded in PulseAudio.
- g_p 6y agoAgreed, but now this has piqued my interest in a good way. Having two instances loaded might be a bit confusing as you say - I imagine it would need to be something like "NoiseTorch for Recording" and NoiseTorch for Playback. I'd need to go and play around with Pulse but I guess it would be possible to present 2 interfaces into Pulse with different names, then hope users can see the distinction when selecting a microphone versus the output device.