Patent ID: 8891776

Claim:
A method for decoding a frame of an encoded digital audio signal, wherein: the frame comprises frame metadata, a first audio block and one or more subsequent audio blocks; and each of the first and subsequent audio blocks comprises block metadata and encoded audio data for two or more audio channels, wherein: the encoded audio data comprises scale factors and scaled values representing spectral content of the two or more audio channels, each scaled value being associated with a respective one of the scale factors; and the block metadata comprises control information describing coding tools used by an encoding process that produced the encoded audio data, the coding tools including adaptive hybrid transform processing that comprises: applying an analysis filter bank implemented by a primary transform to the two or more audio channels to generate primary transform coefficients, and applying a secondary transform to the primary transform coefficients for at least some of the two or more audio channels to generate hybrid transform coefficients; and wherein the method comprises: (A) receiving the frame of the encoded digital audio signal; and (B) examining the encoded digital audio signal of the frame in a single pass to decode the encoded audio data for each audio block in order by block, wherein the decoding of each respective audio block comprises: (1) determining for each respective channel of the two or more channels whether the encoding process used adaptive hybrid transform processing to encode any of the encoded audio data; (2) if the encoding process used adaptive hybrid transform processing for the respective channel: (a) if the respective audio block is the first audio block in the frame: (i) obtaining all hybrid transform coefficients of the respective channel for the frame from the encoded audio data in the first audio block, and (ii) applying an inverse secondary transform to the hybrid transform coefficients to obtain inverse secondary transform coefficients, and (b) obtaining primary transform coefficients from the inverse secondary transform coefficients for the respective channel in the respective audio block; (3) if the encoding process did not use adaptive hybrid transform processing for the respective channel, obtaining primary transform coefficients for the respective channel by decoding the encoded data in the respective audio block; and (C) applying an inverse primary transform to the primary transform coefficients to generate an output signal representing the respective channel in the respective audio block.