Stephane is AMAZING. Years ago (2014) I noticed a point in one of the rain noise platters that had too much of an obvious pitch component, so that it was too easy to identify it when it repeated. Stephane edited the platter within a couple days to fix the problem!
That's great! Reminds me of my own "random noise that isn't random" accidental fixation. There is a "water dripping" sound that I first noticed in Quake, no doubt sourced from a popular sound effects library, that I now hear television and movies all the time because of a pattern of pitches it uses.
Thank you for all you do. "Irish Coast" used to put baby no.3 to sleep like a miracle. No.4 preferred "White Rain".
Thank you for the app! I use it every single night to drown out the POS bird that screams outside of my window as I’m trying to sleep.
I strongly empathize with you, this and the fast-and-furious truck drivers at 5am. I need to check this out.
Ok, we've changed the title now. Thanks!
(Submitted title was "MyNoise – Background Sound Canceller".)
Your app is also great to help get to sleep. I find if my thoughts are too active when I'm trying to sleep, then having some soothing sound like rain to focus on is a great help. It also has a stop timer so it won't go on all night.
I love this thing and have spent many hours making elaborate setups, wonderful work!
We use this app on all of our devices for helping the kids (and ourselves) to sleep. My only concern is that they will grow up dependent on it!
Thank you so much for making mynoise. I have used it for years, and keep recommending it to friends and family. Your work is much appreciated.
I don't think it can be done.. active noise cancellation needs to be really really fast and is done using dedicated hardware afaik.
Can't be done because the sound from source propagate as a spherical wave. To cancel it with destructive interference you would need to make a wave which focuses to the source and would only work if you are in between the noise source and the counter wave generator. Unfortunately to make a plane wave you would need infinite number of point sources or need the counter source further away. An alternative is to track listener and cancel the noise around that region but you would only be able to do that with very low frequencies with wavelength larger than distance between your two ears.
I suspect it could be done for sort of periodic noise (or possibly with a predictive net). I've always wanted to implement this on the web but never got around to it.
As far as I can remember, even some of the special-purpose-hardware based solution like you'd find in a pair of noise canceling headphones do better on periodic noises. Not needing to race the soundwave seems like it should make the latency problem much more forgiving.
And the most annoying noises tend to be periodic anyway.
I think you should give it a try... let us test it, if you can cancel out my air conditioner noise you'll be my favorite person...
True, and shows how far we have fallen in the war against latency.
In theory it should be possible with a standard sound card, or a sound chip in the motherboard.
I'm neither a physics nor sound processing expert, but it seems like the microphone creates the signal to invert, and the speakers emit the inverted signal before the initial sound hits your ear. So I reckon the sound must first hit the microphone, then the speakers, then your ear. With headphones, the speakers cover your ears and the microphone is outside the enclosure, so that's easy. In a larger controlled environment with reliable sound dampening on 3 sides, maybe? My inexpert intuition says that doesn't stand a chance of working in an open environment with one microphone and two speakers usually closer to each other than the user's ears. It seems like having a door on a building with no walls.
And for some reason I thought it required triangulation, in that noise cancelation can't be done with sound in a space because the inverse of the sound you hear is relative compared to the person a foot or two away from you.
It does only if the microphone is far away from the ear canal.
If it's close to the ear canal, all you need is low latency hardware (or hardware+software), responding in a few milliseconds thereabouts.
> is done using dedicated hardware afaik.
Agree with the first part of your answer, but not sure what you mean by this second part.
There is dedicated hardware for it, then there are solution using your generic gpu (ex Nvidia RTX Voice), then there are solution using your generic cpu (ex whatever the name of the one discord desktop client provides).
I meant circuits specifically designed for noise cancellation. like in headphones
isn't that different? i thought that's noise isolation that runs using a Neural Net. i don't think it's as real time as you'd need for noise cancellation
Yea. Relatively straightforward on an MCU that supports audio, and running non-OS firmware. I think anything that runs through an OS or schedule would introduce too much latency.
So, it can be on a generic MCU, but not one where the algorithm is competing for CPU time with other processes.
you prolly need a dac or smth, because embedded devices usually don't have the compute needed for real time noise cancellation
How fast can it need to be? The output frequency would be below 20kHz so latency of 50us or so, probably too fast for a userland app but I'd expect it to be doable in a driver or in the OS?
I get a similar answer but through a wildly different path:
I think you have to detect the sound with a microphone, then come up with the canceling waveform before the sound hits your headphone drivers (as they will be generating the canceling waveform). Given the typical size of headphones, it would be something like
2cm/(34300cm/s) ~ 60us
Although, sound travels faster through solids, so might want to be a little quicker. And 2cm thick headphones would be pretty thick.
it effectively needs to be fatter than the speed of sound. sound needs to hit the mic of the noise cancelling device, its inverse needs to be found before the sound hits your ear drums so it can be played at exactly the same time. all this needs to happen in the time it takes for the sound to travel from the devide to your ears. super fucking fast.
Try the app.
That is generating neverending background noises in a certain selected theme (forest, rain, ocean, zen garden, white noise, ...) and the components can be tuned to our liking (i.e forest, with the amount of wind and bird and other effects one likes).
Quite good! I use that.
(noise cancelling term is misleading btw. More like covering noise with another noise. : ) )
> Still though, surely someone has tried my idea
Well, AFAIK some cars have active noise cancelation. I wonder why we don't have it at homes, after all they are both confined spaces. If general purpose computation and software wouldn't cut it, why we don't have whatever they have in those cars? A lot of money is spent on noise insulation on buildings, so the demand and the money must be there.
I don't know anything about the car noise cancellation tech, but I would hazard a guess that instead of using microphones to pick up noises and generate counter-noises in real time, car manufacturers can just create the right anti-noise for their engine sounds, for the sounds of wind hitting the car body, etc. and use them without needing anything particularly clever going on?
Turns out the website is offering prerecorded sounds instead, not really cancelling anything.
Kind of. Not full prerecorded like you'd get in a long audio track, but generators instead with multiple tracks each based on samples. This offers a huge range of customization ability, but also allows the amazing 'animate' feature that allows a constantly changing background.
In the app if you tap where it says 'Default' on a sound you can also choose other preset 'scenes' using the same generators which can be very different - for example the Folk Trad sound set, which has scenes for Breathing Pipe, Calm Blow, Circular Breath, Harmony, Haunting Flutes, Highlander, The Drone and Throat Pipes.
Could it work for cancelling tinnitus? Just have an inverse of that sound playing, with some controls for frequency adjustment for individuals.
I don’t think so. Most tinnitus isn’t an actual sound wave. It’s coming from a glitch in the auditory system. Even if your input was mixing and could theoretically cancel it out, it would be impossible to lock the phase (without some feedback from deep inside your head!)
The Tinnitus Neuromodulator setting works AMAZINGLY well for me. It's effect even persists for some minutes after I turn it off.
On iOS you could also use the native built in background noise functionality which is good.
Go to Settings > Accessibility > Audio/Visual > Background Sounds, then turn on Background Sounds.
Rain , Stream and Ocean are my favourite while needing to focus
True. I honestly don't remember whether those were available when I started using MyNoise (late 2014); but, in any event, I've paid for it already and have downloaded quite a few of the sound choices.
Even if you could track the head of listener and send a counter wave to the particular position it would be limited to a very low frequency sounds with wavelength larger than distance between your two ears. Also neighbors wouldn't be happy hearing two times louder noise as it would be without cancellation.