A method of decomposing a multi-dimensional matrix into a sequence of unit primitive matrices and a permutation matrix, comprising: receiving in a processor of a signal processing system, a matrix of dimension L-by-N, where L is less than or equal to N, wherein the L-by-N matrix is equivalent to an M 0 -by-N matrix A 0 modified by applying an L-by-M 0 matrix Z, wherein L is less than or equal to M 0, and wherein the matrix Z is designed to: minimize cross correlation between the rows of the L-by-N matrix, or minimize the 12 norm of the rows of the L-by-N matrix, or minimize the absolute value of coefficients in the N-by-N primitive unit matrices, wherein the Mo-by-N matrix A 0 is a time-varying matrix configured to adapt to changing spatial metadata; deriving from the L-by-N matrix a sequence of N-by-N unit primitive matrices and a permutation matrix, wherein an N-by-N unit primitive matrix is defined as a matrix in which N-1 rows contain off-diagonal elements equal to zero and on-diagonal elements with an absolute value of 1, wherein the product of the unit primitive matrices and the permutation matrix contains L rows that are substantially close to the L-by-N matrix; and configuring the permutation matrix and indices of non-trivial rows in the unit primitive matrices such that the absolute coefficient values in the unit primitive matrices are limited with respect to a maximum allowed coefficient value of the signal processing system; wherein the matrix A 0 at a first time instant t 1 is different from the matrix A 0 at a second time instant t 2, and the matrix Z at the first time instant t 1 is equal to the matrix Z at the second time instant t 2, wherein the method of decomposing is part of a high definition audio encoder wherein the permutation matrix represents a channel assignment that reorders N input channels, the method further comprising applying the N-by-N unit primitive matrices to the reordered N input audio channels to create internal channels encoded into the bitstream. receiving in a processor of a signal processing system, a matrix of dimension L-by-N, where L is less than or equal to N, wherein the L-by-N matrix is equivalent to an M 0 -by-N matrix A 0 modified by applying an L-by-M 0 matrix Z, wherein L is less than or equal to M 0, and wherein the matrix Z is designed to: minimize cross correlation between the rows of the L-by-N matrix, or minimize the 12 norm of the rows of the L-by-N matrix, or minimize the absolute value of coefficients in the N-by-N primitive unit matrices, wherein the Mo-by-N matrix A 0 is a time-varying matrix configured to adapt to changing spatial metadata; deriving from the L-by-N matrix a sequence of N-by-N unit primitive matrices and a permutation matrix, wherein an N-by-N unit primitive matrix is defined as a matrix in which N-1 rows contain off-diagonal elements equal to zero and on-diagonal elements with an absolute value of 1, wherein the product of the unit primitive matrices and the permutation matrix contains L rows that are substantially close to the L-by-N matrix; and configuring the permutation matrix and indices of non-trivial rows in the unit primitive matrices such that the absolute coefficient values in the unit primitive matrices are limited with respect to a maximum allowed coefficient value of the signal processing system; wherein the matrix A 0 at a first time instant t 1 is different from the matrix A 0 at a second time instant t 2, and the matrix Z at the first time instant t 1 is equal to the matrix Z at the second time instant t 2, wherein the method of decomposing is part of a high definition audio encoder wherein the permutation matrix represents a channel assignment that reorders N input channels, the method further comprising applying the N-by-N unit primitive matrices to the reordered N input audio channels to create internal channels encoded into the bitstream.