MATLAB: Sound card input and noise cancel

MATLABnoise cancelationsound card

hello i want to cancel some noise of frigirator in my house i want coninously input from sound card and output throw speakers signal with phase -180 what command coniounusly do it all command just record
y = wavrecord(31250*5,31250);
also is there beter way than sending to speaker -y , i was thinkink about some adaptive filter lms or wiener to cancel the noise in my room

Best Answer

Sending sounds out of phase 5 seconds after the original sound is not going to achieve any cancellation.
You need to use operations with low latency. The tolerable latency will depend upon the relative distances between the sound source, the microphone, the speaker, and the listener. You will have strong difficulty in getting the microphone latency to less than 6 ms in MATLAB, which is approximately 4 feet of travel for sound (at room temperature). Even getting to 6 ms is not easy, but it is easier as of R2012b (or was it R2012a) which added support for ASIO channels.
You might need the Data Acquisition Toolkit to access the data in nearly those time frames.