How to get the background noise of microphone?
For a given TV, if you send a single short pulse (with an arbitrary amplitude of '1') out the speaker. The microphone will receive a slightly distorted pulse a short time later. (Typically you would send a pulse with enough volume that the microphone gets a clear reception of it, then reduce the microphone signal proportionally to simulate an original speaker signal with amplitude of '1'.) That distorted and delayed microphone signal is called the "impulse response" of that particular TV system. That impulse response (including the delay from the instant the signal was sent to the speaker) will need to be stored in your software for that TV.

Then to remove the distorted speaker signal from your microphone signal, you need to take the original electronic speaker signal and multiply it by that impulse response, and then subtract the result from your microphone signal. You do all this in the frequency domain because its far simpler and more efficient than doing it in the time domain. You don't even have to turn the final microphone signal back into time domain since you only wanted the ambient volume, anyway.

Look up "convolve impulse response".

EDIT:
To clarify (per your comment): The impulse response of the speaker-to-microphone path is a measure of the delay and distortion created by that path--and that's what you initially experimentally measure in the lab. But you don't know the impulse response of the noise-source-to-microphone path, so you can't correct for that distortion. All you can do is note the power spectrum of the noise (after subtracting the speaker contribution), and then adjust the speaker volume and maybe spectrum in order to help compensate for that noise. By the way, be sure to do the arithmetic (the multiply and the subtract) in the complex plane, because the FFT data is complex.