1. A method of performing convolutive blind source separation, comprising: transforming each of a plurality of input signals into frequency domain; calculating values of coefficients of unmixing filters corresponding to frequency bins by performing a gradient descent process on a cost function at least dependent on the coefficients of the unmixing filters, wherein in each iteration of the gradient descent process, gradient terms for calculating the values of the same coefficient of the unmixing filters are adjusted to improve smoothness of the gradient terms across the frequency bins; wherein the adjusting comprises: with respect to each of the coefficients, transforming the terms over the frequency bins for calculating the coefficient into a time domain filter of length T; de-emphasizing coefficients of the time domain filter at time indices exceeding a first threshold smaller than the length T; and transforming coefficients of the time domain filter from time domain into frequency domain through a length-T transformation; with respect to each of the frequency bins, estimating source signals by filtering the transformed input signals through the respective unmixing filter configured with the calculated values of the coefficients; and transforming the estimated source signals on the respective frequency bins into time domain; wherein the cost function is adapted to evaluate decorrelation between the estimated source signals; wherein the method is performed by one or more computing devices.