Ambisonic Audio Coding via Quaternion Rotation Interpolation
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Current coders for ambisonic spatialized sound data face challenges in complexity, delay, and effective decorrelation between channels, particularly in the MPEG-H codec, which introduces sub-optimal linear interpolation and decomposition issues.
Innovation Solution
A coding process that involves calculating a covariance matrix for ambisonic channels, rotating clean vectors to ensure consistency, and interpolating matrices between frames to maintain decorrelation and smooth transitions, thereby reducing audible artifacts.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Device complexity
If linear interpolation is used in MPEG-H codec for ambisonic channels, then the decoding process is simplified, but audible artifacts and decorrelation issues arise
Solution Approach 1:
The patent changes the parameter domain from linear interpolation to spherical linear interpolation (slerp) in the quaternion domain. By representing rotation matrices as quaternions and performing interpolation in this alternative parameter space, the method maintains mathematical consistency of rotation operations while achieving smooth transitions between frames, thereby resolving the contradiction between simplified decoding and audio quality.
Solution Approach 2:
The patent substitutes the linear interpolation mechanism with a quaternion-based spherical linear interpolation mechanism. This replacement changes the fundamental mathematical approach from vector space linear interpolation to rotation space quaternion interpolation, eliminating the decorrelation issues that arise from linear interpolation while maintaining computational feasibility.
2Adaptability or versatility
If rotation matrices are not consistent between frames, then encoding flexibility is improved, but channel decorrelation deteriorates
Solution Approach 1:
The patent implements a feedback mechanism by computing the difference between consecutive rotation matrices and using this information to adaptively determine the number of interpolation subframes. The decoder uses the transmitted rotation parameters to reconstruct the same interpolation process, ensuring that both encoder and decoder maintain consistent channel decorrelation while preserving encoding flexibility through adaptive parameter transmission.
Solution Approach 2:
The patent performs preliminary computation of rotation matrix differences and determines the optimal number of interpolation subframes before the actual encoding process. By pre-calculating these parameters and transmitting them in the bitstream, the method ensures that decorrelation is maintained from the outset while allowing flexible adaptation to different audio scenarios.
3Productivity
If frame-based processing is used, then processing speed is improved, but temporal smoothness deteriorates due to audible clicks between frames
Solution Approach 1:
The patent segments each frame into multiple interpolation subframes when rotation matrix differences exceed a threshold. By dividing the frame processing into finer temporal segments with intermediate rotation steps, the method maintains the efficiency of frame-based processing while eliminating temporal discontinuities and audible clicks through gradual rotation transitions within each frame.
Data Source
Figure 1
Figure 2
Figure 3
AI summary
The invention relates to the compression coding of sound signals of N channels forming a succession in time of frames (t-1, t) of samples, the method comprising: - forming, from the channels for a current frame (t), a covariance matrix between channels and searching for eigenvectors of the covariance matrix to obtain an eigenvector matrix, - comparing the eigenvector matrix obtained for the current frame (t) to a rotation matrix obtained for a frame (t-1) preceding the current frame (t), and - permuting columns of the eigenvector matrix of the current frame (t) to ensure consistency with the rotation matrix of the previous frame (t-1).- test the eigenvector matrix to verify that it represents a rotation in an N-dimensional space and otherwise correct the eigenvector matrix until a rotation matrix is obtained, for the current frame (t), and - apply said rotation matrix to the signals of the N channels before separate channel encoding of said signals, the process further comprising: - cutting the current frame into subframes, and - interpolating matrices to be applied to successive subframes from the matrix of the previous frame (t-1) to the matrix of the current frame (t).