This project is about separating N sound sources in a room, using an array of M>=N microphones, for low delay live applications like teleconferencing or hearing aids. It uses unmixing filters in the time domain to obtain the low delay live capability, and a novel probabilistic optimization algorithm to optimize the resulting system.

This optimization algorithm is robust against local minima, which is important in this application, since its objective function to be optimized has many local minima.

A Python notebook demo is here: