Just a quick thought: unless you force your users to use headphones, the background sound will be picked up by the microphone. Mixing it again with the same sound (with some delay) will be tricky at best.