Delay and Sum beamforming

The formula of DaS in paper is

y(k) = \sum\limits_{i=1}^M x_i(k-\Delta_i)

But in speechbrain the code is different

        # Get useful dimensions
        n_mics = Xs.shape[4]

        # Generate unmixing coefficients
        Ws_re = As[..., 0, :] / n_mics
        Ws_im = -1 * As[..., 1, :] / n_mics

        # Get input signal
        Xs_re = Xs[..., 0, :]
        Xs_im = Xs[..., 1, :]

        # Applying delay and sum
        Ys_re = torch.sum((Ws_re * Xs_re - Ws_im * Xs_im), dim=3, keepdim=True)
        Ys_im = torch.sum((Ws_re * Xs_im + Ws_im * Xs_re), dim=3, keepdim=True)

        # Assembling the result
        Ys = torch.stack((Ys_re, Ys_im), 3)

Do you have a source of that formulas, because I don’t understand how do they relate with origin?

I think @FrancoisGrondin can help here :slight_smile: