Active Noise Reduction as Software--possible?

While on vacation last week, I was trying to watch a sophisticated, complex movie (something with Muppets) on a laptop and was having trouble hearing the audio through headphones, due to the general loudness of my family.

Is it possible to actively reduce noise through computer software? I assume that the programming itself would not be too complex, but I don't know if the time taken to process microphone input and use it to modify audio output would be too slow. The only place I found through Google that discussed this was a forum wherein the members couldn't get past the concept of attaching a microphone to a headset. I also found a schematic with instructions for building headsets, but I would prefer a .exe file.

Picture of Active Noise Reduction as Software--possible?
sort by: active | newest | oldest
xredvortex5 years ago
Is there a way to do this with a particular frequency? I was thinking record it but how do you flip the signal?
Change the sign

I am going to try to build this circuit, except I'm going to use the mic that's already built into my headphones, as they are phone friendly.

If I can get this circuit to work using the mic built into the headphones, and get it running of a lithium battery from an old playstation 3 controller, then I'll post an instructable on how to do it.

whatsisface8 years ago
If I remember correctly, you can get headphones with "Active noise cancelling" that do just that. I think they use similar technology in planes to make the cockpits quieter as well, but I may be wrong.
CameronSS (author)  whatsisface8 years ago
That's what the picture shows...the Bose Quiet Comfort 2 headphones. They are $270. Yes, the same technology is commonly used in airplane cockpits, and is even more expensive. I know that you can buy headphones that do it, I'm after a program that would let ANY headphones have ANR when plugged into a computer. I was hoping someone like zachninme could bang out a program in five minutes with Python or something....
. From what I've read, they just inject the same signal as the ambient noise, only 180° out of phase. Should be pretty easy to do with software, basically just a delay line. Probably easier to do with an analog circuit - I'm guessing an inverting op-amp would do the job..
I have a feeling it'd be too slow in software, it would have to run at a hardware level to be fast enough. Imagine the amount of processes and tasks that the OS has and you could imagine the queue for resources.

Binary boy is right again, a hardware inverter might be able to do it cheap but software probably won't.

I really should RTFA
110100101108 years ago
the computer mic is too distant and software is too slow a system with local mic on the headphone and hardware-only amplifier may work