I think I have found a pretty subtle bug in MixerAudioSource that causes leaks if you remove an input source.
At the moment if you call removeInputSource line 78 reads:
should this not be:
The prototype of shiftBits is “shiftBits (int howManyBitsLeft, int startBit)” so don’t we want to shift everything above and including index down in value, or to the right?
This means that when the instance clears up removeAllInputs doesn’t delete the correct inputs.
I’ve been hunting this down for hours now so my brain may be a little worn out and not working properly so please let me know if I’ve got this wrong. It does seem to have fixed all my problems though.