1. A method for driving a loudspeaker array, comprising: sampling one or more audio streams to produce a matrix of one or more audio samples; multiplying the matrix of one or more samples with a beam pattern mixing matrix, which represents a plurality of predefined modal patterns, to produce a modal gain value for each of the plurality of predefined modal patterns; and multiplying a matrix of the modal gain values with a modal decomposition matrix to produce a drive signal for each of a plurality of transducers in the loudspeaker array such that the loudspeaker array produces a separate output beam pattern for each of the one or more audio streams based on the plurality of predefined modal patterns.