Decoder system, decoding method, and computer program
The complex predictive stereo coding system addresses inefficiencies in high bit rate audio coding by using MDCT transforms and oversampled representations, providing efficient and flexible decoding with minimal computational overhead and high sound quality.
Patent Information
- Application Number
- JP2025106047
- Authority / Receiving Office
- JP · JP
- Patent Type
- Applications
- Current Assignee / Owner
- Priority Date
- 2010-04-09
- Filing Date
- 2025-06-24
- Publication Date
- 2025-09-17
AI Technical Summary
Existing stereo audio coding methods, particularly at high bit rates, suffer from high computational complexity and inefficiency due to the use of QMF-based approaches, which introduce delays and are not optimal for high bit rates.
A decoder system employing complex predictive stereo coding that uses critically sampled MDCT transforms and oversampled representations to generate stereo signals from downmix and residual signals, allowing for efficient coding without the need for additional QMF transforms, and includes modules for calculating complex frequency domain components.
The system achieves computationally efficient stereo coding at high bit rates with minimal increase in complexity, ensuring high sound quality and flexibility to adapt between direct and joint encoding modes, while avoiding artifacts.
Smart Images

Figure 2025134923000001_ABST
Abstract
Description
[Technical Field]
[0001] The invention disclosed herein relates generally to stereo audio coding, and more particularly to a technique for stereo coding using complex prediction in the frequency domain. [Background technology]
[0002] Joint coding of the left (L) and right (R) channels of a stereo signal allows for more efficient coding compared to coding L and R independently. A common approach to joint stereo coding is mid / side (M / S) coding, where the mid (M) signal is constructed by adding the L and R signals, e.g., the M signal is
number
number
[0003] The Moving Picture Experts Group (MPEG) Advanced Audio Coding (AAC) standard (see standard document ISO / IEC 13818-7) allows for time- and frequency-variable selection between L / R and M / S stereo coding. Thus, a stereo encoder can apply L / R coding to some frequency bands of a stereo signal, while M / S coding is used to encode other frequency bands of the stereo signal (frequency-variable). Furthermore, the encoder can switch between L / R and M / S coding over time (time-variable). In MPEG AAC, stereo encoding is performed in the frequency domain, more specifically in the MDCT (Modified Discrete Cosine Transform) domain. This allows for adaptive selection of either L / R or M / S coding over frequency and time.
[0004] Parametric stereo coding is a method for efficiently encoding a stereo audio signal as a mono signal and a small amount of side information, known as stereo parameters. It is part of the MPEG-4 Audio standard (see standard document ISO / IEC 14496-3). The mono signal can be encoded using any audio coder. The stereo parameters are embedded in the mono bitstream, making it fully forward- and backward-compatible. At the decoder, the mono signal is first decoded, and then the stereo signal is reconstructed using the stereo parameters. A decorrelated version of the decoded mono signal has zero cross-correlation with the mono signal. This decorrelated signal is generated by a decorrelator, e.g., using an appropriate all-pass filter including a delay line. Essentially, the decorrelated signal has the same spectral and temporal energy distribution as the mono signal. The mono signal and the decorrelated signal are then input into an upmix process. This process, controlled by the stereo parameters, reconstructs the stereo signal. For more information, see [Publication 1].
[0005] MPEG Surround (MPS; see ISO / IEC 23003-1 and Non-Patent Document 2) combines the principles of parametric stereo coding with those of residual coding, replacing a decorrelated signal with a transmitted residual to improve the perceived sound quality. Residual coding is performed by downmixing a multi-channel signal and optionally extracting spatial cues. During the downmix process, a residual signal representing the error signal is calculated, encoded, and transmitted. The residual signal replaces the decorrelated signal at the decoder. In the hybrid approach, the residual signal replaces the decorrelated signal in certain frequency bands, preferably relatively low bands.
[0006] In current MPEG Unified Speech and Audio Coding (USAC) systems, the decoder has a complex-valued quadrature mirror filter (QMF) bank located downstream of the core decoder, as shown in two examples in Figure 1. The QMF representation obtained at the output of this filter bank is complex-valued and therefore oversampled by a factor of two, and can be configured as a downmix signal (i.e., mid signal) M and a residual signal D. This can be achieved using an upmix matrix with complex-valued components. The L and R signals (in the QMF domain) are
number
[0007] While the above coding scheme is well suited for low bit rates, typically below 80 kb / s, it is not optimal for high bit rates in terms of computational complexity. More specifically, at high bit rates, SBR tools are generally not used (as they do not improve coding efficiency). Second, decoders without an SBR stage use QMF filter banks, which are computationally intensive and introduce delays due to the complex-valued upmix matrices (for a frame length of 1024 samples, the QMF analysis / synthesis filter bank introduces a delay of 961 samples). This clearly demonstrates the need for a more efficient coding scheme. [Prior art documents] [Non-patent literature]
[0008] [Non-Patent Document 1] "Low Complexity Parametric Stereo Coding in MPEG-4" by H. Purnhagen, Proc. of the 7th Int. Conference on Digital Audio Effects (DAFx'04), Naples, Italy, October 5-8, 2004, pages 163-168 [Non-Patent Document 2] "MPEG Surround - The ISO / MPEG Standard for Efficient and Compatible Multi-Channel Audio Coding" by J. Herre et al., Audio Engineering Convention Paper 7084, 122 <nd>Convention, May 5-8, 2007 Summary of the Invention [Means for solving the problem]
[0009] It is an object of the present invention to provide a method and apparatus for stereo coding that is computationally efficient even in the high bitrate range.
[0010] The invention achieves this object by providing a coder and decoder, a coding and decoding method and a computer program product for encoding and decoding, respectively, as defined in the independent claims. The dependent claims define embodiments of the invention.
[0011] In a first aspect, the present invention provides a decoder system for providing a stereo signal by complex predictive stereo coding, comprising: an upmix stage configured to generate the stereo signal based on first frequency domain representations of a downmix signal (M) and a residual signal (D), each first frequency domain representation having first spectral components representing the spectral content of a corresponding signal expressed in a first subspace of a multidimensional space, the upmix stage comprising: a module for calculating a second frequency domain representation of the downmix signal based on the first frequency domain representation of the downmix signal, the second frequency domain representation having second spectral components representing a spectral content of the signal expressed in a second subspace of the multidimensional space, the second subspace including a part of the multidimensional space that is not included in the first subspace; an upmix stage having a weighted adder for calculating a side signal (S) based on first and second frequency domain representations of the downmix signal encoded into the bitstream signal, a first frequency domain representation of the residual signal, and complex prediction coefficients (α); a sum-difference stage for calculating the stereo signal based on a first frequency domain representation of the downmix signal and the side signal, The upmix stage may further be operable in a pass-through mode in which the downmix signal and the residual signal are fed directly to the sum-difference stage.
[0012] In a second aspect, the present invention provides a system comprising: 1. An encoder system for encoding a stereo signal from a bitstream signal by complex predictive stereo coding, comprising: an estimator for estimating complex prediction coefficients; (a) an encoding stage operable to transform the stereo signal into a frequency domain representation of a downmix signal and a residual signal having a relationship determined by the values of the complex prediction coefficients; A multiplexer receives the output from the encoding stage and the estimator and encodes it into the bitstream signal.
[0013] In third and fourth aspects of the present invention, there are provided methods for encoding a stereo signal into a bitstream and for decoding the bitstream into at least one stereo signal. The technical features of each method are similar to those of the encoder system and decoder system, respectively. In fifth and sixth aspects, the present invention provides computer program products comprising instructions for performing each method on a computer.
[0014] The present invention benefits from the advantages of unified stereo coding in the MPEG USAC system. These advantages are preserved even at high bit rates without the significant increase in computational complexity associated with QMF-based approaches, where SBR is not typically utilized. This is possible because the critically sampled MDCT transform, which is the basis of the MPEG USAC transform, can also be used in complex predictive stereo coding according to the present invention, at least when the coded audio bandwidths of the downmix and residual channels are the same and the upmix process does not involve decorrelation. This means that an additional QMF transform is no longer necessary. Representative embodiments of complex predictive stereo coding in the QMF domain significantly increase the number of operations per unit time compared to conventional L / R or M / S stereo. Therefore, a coding device according to the present invention appears to be competitive at such bit rates, providing high sound quality with a modest computational load.
[0015] As those skilled in the art will recognize, the fact that the upmix stage can also operate in pass-through mode allows the decoder to adaptively decode using conventional direct or joint encoding, and complex predictive encoding, depending on the encoder's decision. This ensures that the decoder maintains at least the same quality level, even if it cannot increase the quality level more aggressively than conventional direct L / R stereo encoding or joint M / S stereo encoding. Therefore, the decoder according to this aspect of the present invention can be considered a superset of the background art from a functional point of view.
[0016] The advantage over QMF-based predictive coded stereo is that it allows perfect reconstruction of the signal (except for arbitrarily small quantization errors).
[0017] Thus, the present invention provides a coding device for transform-based stereo coding using complex prediction. Preferably, the device according to the present invention is not limited to complex prediction stereo coding, but can also operate with direct L / R stereo coding or simultaneous M / S stereo coding according to the background art, allowing the most suitable coding method to be selected for a specific application or at a specific time.
[0018] An oversampled representation (e.g., a complex representation) of a signal, including both first and second spectral components, is used as the basis for complex prediction according to the present invention, and thus modules for computing such oversampled representations are included in the encoder and decoder systems according to the present invention. The spectral components refer to first and second subspaces of a multidimensional space, which are a set of time-dependent functions of a given time length (e.g., the length of a predetermined time frame) sampled at a finite sampling frequency. It is well known that functions in this multidimensional space can be approximated by a finite weighted sum of basis functions.
[0019] As will be clear to those skilled in the art, an encoder configured to cooperate with a decoder is equipped with equivalent modules that provide an oversampled representation on which the predictive coding is based, so as to enable faithful reproduction of the encoded signal. Such equivalent modules may be identical or similar modules or modules with the same or similar transfer characteristics. In particular, the encoder and decoder modules may each be similar or dissimilar units executing computer programs that perform equivalent mathematical operations.
[0020] In some embodiments of the decoder or encoder system, the first spectral component has real values represented in a first subspace and the second spectral component has imaginary values represented in a second subspace. Together, the first and second spectral components comprise a complex spectral representation of the signal. The first subspace is a linear span of a first set of basis functions and the second subspace is a linear span of a second set of basis functions, some of which are linearly independent of the first set of basis functions.
[0021] In one embodiment, the module for calculating the complex representation is a real-to-imaginary transform, i.e., a module for calculating the imaginary value of the spectrum of a discrete-time signal based on a real spectral representation of the signal, said transform being based on exact or approximate mathematical relationships, such as formulas from harmonic analysis or heuristic relationships.
[0022] In some embodiments of the decoder or encoder system, the first spectral component is determined by a time-to-frequency domain transform of a discrete time-domain signal, preferably by a Fourier transform, such as a discrete cosine transform (DCT), a modified discrete cosine transform (MDCT), a discrete sine transform (DST), a modified discrete sine transform (MDCT), a fast Fourier transform (FFT), a prime-factor-based Fourier algorithm, etc. In the first four cases, the second spectral component is determined by a DST, an MDST, a DCT, and an MDCT, respectively. As is well known, the linear span of a cosine that is periodic over a unit period forms a subspace that is not completely contained in the linear span of a sine that is periodic over the same period. Preferably, the first spectral component is determined by an MDCT, and the second spectral component is determined by an MDST.
[0023] In one embodiment, the decoder system includes at least one temporal noise shaping module (TNS module, i.e., TNS filter), which is located upstream of the upmix stage. Generally speaking, the use of TNS improves the perceived sound quality of signals with transient-like components, and this also applies to embodiments of the decoder system of the present invention that include TNS. In conventional L / R and M / S stereo coding, the TNS filter is applied as the last processing step in the frequency domain, just before the inverse transform. However, in the case of complex predictive stereo coding, it is often advantageous to apply the TNS filter to the downmix signal and the residual signal, i.e., before the upmix matrix. In other words, TNS is applied to a linear combination of the left and right channels, which has several advantages. First, it turns out that in some situations TNS is advantageous only for the downmix signal, for example. Second, TNS filtering can be omitted for the residual signal, which means economical use of the available bandwidth. The TNS filter coefficients only need to be transmitted for the downmix signal. Second, the computation of an oversampled representation of the downmix signal (e.g., MDST data are derived from MDCT data to construct a complex frequency-domain representation), which is necessary in complex predictive coding, requires that a time-domain representation of the downmix signal be computable. This means that the downmix signal is available as a time sequence of MDCT spectra, preferably derived uniformly. If a TNS filter is applied in the decoder after the upmix matrix that transforms the downmix / residual representation into a left / right representation, only a sequence of TNS residual MDCT spectra of the downmix signal is obtained. This makes the efficient computation of the corresponding MDST spectrum very difficult, especially if the left / right channels use TNS filters with different characteristics.
[0024] It should be emphasized that the availability of a time sequence of MDCT spectra is not an absolute criterion for obtaining a MDST representation suitable to serve as the basis for complex predictive coding. In addition to experimental evidence, this fact can generally be explained by the fact that TNS is applied only to high frequencies, e.g., above a few kilohertz, so that the residual signal filtered by TNS approximately corresponds to the low-frequency unfiltered residual signal. Thus, the present invention can be implemented as a decoder for complex predictive stereo coding, in which the TNS filter is located other than upstream of the upmix stage, as will be explained below.
[0025] In one embodiment, the decoder system includes at least one TNS module located downstream of the upmix stage. A selector device selects between a TNS module upstream of the upmix stage or a TNS module downstream of the upmix stage. Under certain circumstances, the calculation of a complex frequency-domain representation does not require that a time-domain representation of the downmix signal be calculable. Furthermore, as mentioned above, the decoder can selectively operate in direct or joint coding mode without applying complex predictive coding, making it more suitable to use a TNS module in its traditional place, i.e., as one of the last processing steps in the frequency domain.
[0026] In one embodiment, a decoder system is configured to save processing resources, and possibly energy, by deactivating a module that calculates a second frequency-domain representation of a downmix signal. The downmix signal is partitioned into consecutive time blocks, each time block associated with a value of a complex prediction coefficient. This value is determined for each time block by an encoder cooperating with the decoder. Furthermore, in this embodiment, the module that calculates the second frequency-domain representation of the downmix signal is configured to deactivate itself if, for a given time block, the absolute value of the imaginary part of the complex prediction coefficient is zero or less than a predetermined tolerance. Deactivation of the module means that the second frequency-domain representation of the downmix signal is not calculated for this time block. In the absence of deactivation, the second frequency-domain representation (e.g., a set of MDST coefficients) is multiplied by zero or a number approximately equal to the decoder's machine epsilon (rounded up) or other suitable threshold.
[0027] In a further development of the above embodiment, the saving of processing resources is performed at sub-levels of the time block into which the downmix signal is partitioned. For example, such sub-levels within the time block are frequency bands, and the encoder determines values of complex prediction coefficients for each frequency band within the time block. Similarly, the method for generating the second frequency-domain representation is configured to suppress operations for frequency bands within the time block in which the complex prediction coefficient is zero or has a magnitude smaller than a tolerance value.
[0028] In one embodiment, the first spectral components are transform coefficients arranged in time blocks of transform coefficients, each block being generated by application of a transform to a time segment of the time domain signal. Furthermore, the module for computing a second frequency domain representation of the downmix signal comprises: determining a first intermediate component from the first spectral component; forming a combination of the first spectral components according to at least a portion of an impulse response to obtain a second intermediate component; The second spectral component is determined from the second intermediate component. This procedure allows the calculation of a second frequency domain representation directly from a first frequency domain representation, as described in detail in U.S. Pat. No. 6,980,933 B2, particularly columns 8-28, and in particular equation 41. As those skilled in the art will be aware, the calculation is not performed in the time domain, as opposed to, for example, an inverse transform followed by a different transform.
[0029] It is estimated that the computational complexity of the complex predictive stereo coding embodiment of the present invention increases only slightly compared to conventional L / R or M / S stereo (significantly less than the increase caused by complex predictive stereo coding in the QMF domain). This type of embodiment, which includes the exact calculation of the second spectral component, introduces a delay that is only a few percent longer than that introduced by the QMF-based embodiment (assuming a time block length of 1024 samples, compared to the 961-sample delay of the QMF analysis / synthesis filter bank).
[0030] Advantageously, in at least some of the above embodiments, the impulse response is adapted to a transformation required for the first frequency domain representation, or more precisely, for its frequency response characteristics.
[0031] In some embodiments, the first frequency domain representation of the downmix signal is obtained by a transform applied to one or more analysis window functions (or cutoff functions, e.g. rectangular, sine, Kaiser-Bessel, etc.), one purpose of which is to achieve temporal segmentation without introducing dangerous noise loudness or undesirable changes to the spectrum. In some cases, such window functions are partially overlapping. Preferably, the frequency response characteristics of the transform then depend on the characteristics of said one or more analysis window functions.
[0032] Further referring to the embodiment characterized by the calculation of the second frequency-domain representation in the frequency domain, the computational load can be reduced by using an approximate second frequency-domain representation. Such an approximation can be achieved by not requiring completeness of the information on which the calculation is based. For example, according to the teaching of U.S. Pat. No. 6,980,933 B2, first frequency-domain data from three time blocks, namely, a block concurrent with the output block, a preceding block, and a following block, are required for the exact calculation of the second frequency-domain representation of the downmix signal in one block. For the purpose of complex predictive coding according to the present invention, a suitable approximation can be obtained by omitting or replacing with zero data from the following and / or preceding blocks (which the operation of the modules causes, i.e., does not contribute to the delay), so that the calculation of the second frequency-domain representation is based on only one or two time blocks. It should be noted that the omission of input data implies a rescaling of the second frequency domain representation, e.g., in the sense that it no longer represents the same power, but as mentioned above, it can still be used as the basis for complex predictive coding, as long as it is calculated in an equivalent way on both the encoder and decoder side. Indeed, this kind of rescaling is compensated for by a corresponding change in the values of the prediction coefficients.
[0033] Yet another approximation method for calculating spectral components constituting part of the second frequency-domain representation of the downmix signal involves combining at least two components from the first frequency-domain representation, where the latter components are adjacent in time and / or frequency. Alternatively, the latter components can be combined using finite impulse response (FIR) filtering in a relatively small number of steps. For example, in a system using a time block size of 1024, such an FIR filter may include 2, 3, 4, etc. taps. A description of this type of approximate calculation method can be found, for example, in U.S. Patent Application Publication No. 2005 / 0197831 A1. If a window function is used that gives relatively little weight to the vicinity of each time block boundary, e.g., a non-rectangular function, it is advantageous to base the second spectral components of a time block only on a combination of the first spectral components of the same time block, but the same amount of information about the outermost components will not be obtained. Approximation errors that may result from such a practice can be somewhat suppressed or hidden by the shape of the window function.
[0034] In an embodiment of a decoder designed to output a time-domain stereo signal, there is the possibility to switch between direct or simultaneous stereo coding and complex predictive coding. This can be achieved by providing: A switch that can selectively operate as a pass-through stage (which leaves the signal unchanged) or as a sum-difference transformer; an inverse transform stage performing a frequency-time transform; and A selector device for inputting the directly (or simultaneously) coded signal or the complex predictive coded signal into the inverse transform stage. As those skilled in the art will appreciate, such flexibility on the decoder side allows the encoder to choose between conventional direct or joint encoding and complex predictive encoding. Therefore, this embodiment can guarantee that the quality level of the audio signal will be at least the same as, if not exceed, that of conventional direct L / R stereo encoding or joint M / S stereo encoding. Therefore, the decoder according to this embodiment can be considered a superset of the related art.
[0035] Another group of decoder system embodiments performs the calculation of the second spectral components in a second frequency-domain representation via the time domain. More precisely, it applies an inverse transform of the transform that determined (or can be determined) the first spectral components, and then performs a different transform having the second spectral components as output. Specifically, it performs an inverse MDCT followed by an MDST. In such embodiments, to reduce the number of transforms and inverse transforms, the output of the inverse MDCT is sent to the MDST and to the output terminal of the decoding system (possibly preceded by further processing steps).
[0036] It is estimated that for an embodiment of complex predictive stereo coding according to the present invention, the computational complexity increases only slightly compared to conventional L / R or M / S stereo (significantly less than the increase caused by complex predictive stereo coding in the QMF domain).
[0037] As a further development of the embodiment mentioned in the previous paragraph, the upmix stage may comprise a further inverse transform stage processing the side signal, and feeding the sum-difference stage with a time-domain representation of the side signal generated by said further inverse transform stage and with a time-domain representation of the downmix signal generated by said inverse transform. Again, advantageously from a computational complexity point of view, the latter signal is fed both to the above-mentioned sum-difference stage and to the different transform stage.
[0038] In one embodiment, a decoder designed to output a time-domain stereo signal is able to switch between direct L / R stereo coding or simultaneous M / S stereo coding and complex predictive stereo coding. This can be achieved by comprising: Switches that can operate as pass-through stages or as sum-difference stages; a further inverse transform stage that computes the time-domain representation of the side signal; a selector device that connects the inverse transform stage to a further sum-and-difference stage connected to a point upstream of the upmix and downstream of the switch (preferably when the switch is activated and functions as a pass filter, as in the case of decoding a stereo signal generated by complex predictive coding), or to a combination of the downmix signal from the switch and the side signal from the weighted adder (preferably when the switch is activated and functions as a sum-and-difference stage, as in the case of decoding a directly coded stereo signal). As those skilled in the art will be aware, this gives the encoder the freedom to choose between conventional direct or simultaneous encoding and complex predictive encoding, i.e., to guarantee a sound quality level at least equal to that of direct or simultaneous stereo encoding.
[0039] In one embodiment, the encoder system according to the second aspect of the present invention comprises an estimator for estimating complex prediction coefficients with the aim of reducing or minimizing the signal power or average signal power of the residual signal. The minimization is performed over a period of time, preferably over a time segment, time block, or time frame to be coded. The squared amplitude can be a measure of the instantaneous signal power, and the integral of the squared amplitude over a time interval can be a measure of the average signal power in that time interval. Advantageously, the complex prediction coefficients can be determined for each time block and each frequency band. That is, their values are set to reduce the average power (i.e., total energy) of the residual signal in that time block and frequency band. In particular, a module for estimating parametric stereo coding parameters, such as IID, ICC, and IPD or similar parameters, provides outputs from which the complex prediction coefficients can be calculated using mathematical relationships known to those skilled in the art.
[0040] In one embodiment, the encoding stage of the encoder system also functions as a pass-through stage to enable direct stereo coding. In situations where direct stereo coding is expected to provide higher sound quality, this selection allows the encoder system to ensure that the encoded stereo signal has at least the same sound quality as direct coding. Similarly, in situations where the significant improvement in sound quality is undesirable but the heavy computational load imposed by complex predictive coding is undesirable, the encoder system has readily available options to conserve computational resources. The decision between joint, direct real predictive coding and complex predictive coding in a coder is typically based on rate / distortion optimization principles.
[0041] In one embodiment, the encoder system includes a module for calculating a second frequency-domain representation based directly on the first spectral components (i.e., without applying an inverse transform to the time domain and without using the time-domain data of the signal). This module has a similar configuration, i.e., a similar but different order of processing operations, with the encoder configured to output data suitable for input to the decoder side. For purposes of describing this embodiment, it is assumed that the stereo signal to be encoded has, or is transformed into, a mid and side channel, and the encoding stage is configured to receive a first frequency-domain representation. The encoding stage includes a module for calculating a second frequency-domain representation of the mid channel. (The first and second frequency-domain representations referred to here are as defined above; specifically, the first frequency-domain representation may be an MDCT representation, and the second frequency-domain representation may be an MDST representation.) The encoding stage further includes a weighted adder for calculating a residual signal, consisting of the side signal and two frequency-domain representations of the mid signal, as a linear combination weighted by the real and imaginary parts of the complex prediction coefficients. The mid signal, or preferably its first frequency-domain representation, is directly used as the downmix signal. In this embodiment, the estimator further determines the values of the complex prediction coefficients with the aim of minimizing the power of the residual signal or the average signal power. The final operation (optimization) is performed by feedback control, where the estimator receives the residual signal resulting from the current prediction coefficient values to be adjusted, if necessary, or by feedforward calculations performed directly on the left / right channels or on the mid / side channels of the original stereo signal. A feedforward method is preferred, where the complex prediction coefficients are calculated directly (in particular, non-iteratively or non-feedback) based on the first and second frequency-domain representations of the mid signal and the first frequency-domain representation of the side signal. It should be noted that after determining the complex prediction coefficients, a decision is made between direct simultaneous real predictive coding and complex predictive coding, taking into account the quality (preferably, for example, perceptual quality taking into account signal-to-mask effects) obtained with each option.Therefore, the above statement should not be interpreted as meaning that there is no feedback mechanism in the encoder.
[0042] In one embodiment, the encoder system comprises a module for calculating a second frequency domain representation of the mid (i.e., downmix) signal via the time domain. Implementation details for this embodiment are similar, at least as far as the calculation of the second frequency domain representation is concerned, and can be performed in the same way as for the corresponding decoder embodiment. In this embodiment, the encoding stage comprises: A sum / difference stage to convert the stereo signal into a mid channel and a side channel; a transformation stage that provides a frequency domain representation of the side channel and a complex-valued (i.e., oversampled) frequency domain representation of the mid channel; and · A weighted adder that calculates the residual signal using the complex prediction coefficients as weights. Here, the estimator receives the residual signal and determines complex prediction coefficients that reduce or minimize the power or average power of the residual signal, possibly in the form of feedback control. Preferably, however, the estimator receives the stereo signal to be coded and determines the prediction coefficients based thereon. Using a critically sampled frequency-domain representation of the side channel is advantageous from the viewpoint of computational economy, since in this embodiment the side channel is not multiplied by a complex number. Preferably, the transform stage can include an MDCT stage and an MDST stage configured in parallel, both of which have as input the time-domain representation of the mid channel. In this way, an oversampled frequency-domain representation of the mid channel and a critically sampled frequency-domain representation of the side channel are generated.
[0043] It should be noted that the methods and apparatus disclosed in this section can be adapted to encode signals having more than two channels with appropriate modifications within the ability of one skilled in the art, including routine experimentation. Modifications for such multi-channel operability can be made, for example, in accordance with Sections 4 and 5 of the article by J. Herre et al., cited above.
[0044] In further embodiments, features of two or more of the above embodiments may be combined, as long as they are not clearly complementary. The fact that two features are recited in different claims does not mean that they cannot be combined. Similarly, further embodiments may omit features that are not required or essential for the desired purpose. As an example, a decoding system according to the present invention may be implemented without a dequantization stage if the encoded signal to be processed is not quantized or is already in a form suitable for processing in the upmix stage. [Brief explanation of the drawings]
[0045] The present invention is further illustrated by the embodiments described in the following sections with reference to the accompanying drawings. [Figure 1A] FIG. 1 is a block diagram illustrating a QMF-based decoder according to the background art. [Figure 1B] FIG. 1 is a block diagram illustrating a QMF-based decoder according to the background art. [Figure 2] 1 is a block diagram illustrating an MDCT-based stereo decoder system with complex prediction according to one embodiment of the present invention, where the complex representations of the channels of the signal to be decoded are calculated in the frequency domain. [Figure 3] 1 is a block diagram illustrating an MDCT-based stereo decoder system with complex prediction according to one embodiment of the present invention, where the complex representations of the channels of the signal to be decoded are calculated in the time domain. [Figure 4] Figure 3 shows an alternative embodiment of the decoder system of Figure 2. The position of the active TNS stage is selectable. [Figure 5] FIG. 10 is a block diagram illustrating an MDCT-based stereo encoder system with complex prediction according to an embodiment of another aspect of the present invention. [Figure 6] 1 is a block diagram illustrating an MDCT-based stereo encoder system with complex prediction according to one embodiment of the present invention, where complex representations of the channels of a signal to be encoded are computed based on their time-domain representations. [Figure 7] Figure 7 shows an alternative embodiment of the encoder system shown in Figure 6. This system can also operate in a direct L / R encoding mode. [Figure 8] 1 is a block diagram illustrating an MDCT-based stereo encoder system with complex prediction according to an embodiment of the present invention, in which complex representations of the channels of a signal to be encoded are calculated based on their first frequency-domain representations, and the system can also operate in a direct L / R encoding mode. [Figure 9] 8 illustrates an alternative embodiment of the encoder system shown in FIG. 7, which further includes a TNS stage located downstream of the encoding stage. [Figure 10] FIG. 9 shows another embodiment of the portion labeled A in FIGS. 2 and 8. [Figure 11] Figure 9 shows another embodiment of the encoder system shown in Figure 8. The system further comprises frequency domain modification devices located respectively upstream and downstream of the encoding stage. [Figure 12] This graph shows listening test results at 96 kb / s from six subjects, illustrating different complexity vs. sound quality tradeoff options for computing or approximating the MDST spectrum. Here, data points labeled "+" indicate a hidden reference. "X" indicates a 3.5 kHz band-limited anchor. "*" indicates conventional stereo (M / S or L / R) with USAC. "□" indicates MDCT-domain unified stereo coding with complex prediction, where the imaginary part of the prediction coefficients is disabled (i.e., real-valued prediction does not require an MDST). "■" indicates MDCT-domain unified stereo coding with complex prediction, where an MDST approximation is computed using the current MDCT frame. "○" indicates MDCT-domain unified stereo coding with complex prediction, where an MDST approximation is computed using the current and previous MDCT frames. "●" indicates MDCT-domain unified stereo coding with complex prediction, where an MDST approximation is computed using the current, previous, and next MDCT frames. [Figure 13] FIG. 13 shows the data of FIG. 12 as a difference score for MDCT-domain unified stereo coding with complex prediction, which uses the current MDCT frame to compute an approximation of the MDCT. [Figure 14A] 1 is a block diagram illustrating an embodiment of a decoder system according to an embodiment of the present invention. [Figure 14B] FIG. 10 is a block diagram illustrating another embodiment of a decoder system according to an embodiment of the present invention. [Figure 14C] FIG. 10 is a block diagram illustrating yet another embodiment of a decoder system according to an embodiment of the present invention. [Figure 15] 3 is a flowchart illustrating a decoding method according to an embodiment of the present invention. [Figure 16] 3 is a flowchart illustrating an encoding method according to an embodiment of the present invention. DETAILED DESCRIPTION OF THE INVENTION
[0046] I. Decoder System FIG. 2 shows, in schematic block diagram form, a block diagram of a complex predictor having at least one complex predictor coefficient value α=α R +iα I The MDCT representation of the stereo signal has M downmix channels and D residual channels. The real part of the prediction coefficients and α R and the imaginary part α I are quantized and / or jointly coded. However, preferably, the real and imaginary parts are quantized independently and uniformly, typically with a step size of 0.1 (a dimensionless number). According to the MPEG standard, the resolution of the frequency band used for the complex prediction coefficients does not need to be the same as the resolution of the scale factor band (sfb, i.e., a group of MDCT lines using the same MDCT quantization step size and quantization range). In particular, the frequency band resolution of the prediction coefficients is psychoacoustically relevant, such as the Bark scale. The demultiplexer 201 is configured to extract these MDCT representations and prediction coefficients (part of the control information shown) from the supplied bitstream. In fact, the bitstream encodes control information beyond the complex prediction coefficients, such as an instruction on whether to decode it in predictive or non-predictive mode and TNS information. The TNS information includes the values of the TNS parameters used by the TNS (synthesis) filter of the decoder system. When using the same set of TNS parameters for multiple TNS filters, such as for both channels, it is more economical to receive this information in the form of bits indicating the identity of the parameter set than to receive two separate sets of parameters. For example, information on whether to apply TNS before or after the upmix stage, based on psychoacoustic evaluation of the two options, may also be included. Furthermore, the control information indicates the individual bandwidth limits for the downmix signal and the residual signal. For each channel, frequency bands above the bandwidth limit are not decoded but set to zero. In some cases, the energy content of the highest frequency bands is so small that they are already zeroed when quantized. In common practice (see the max_sfb parameter in the MPEG standard), the same bandwidth limit should be used for both the downmix signal and the residual signal. However, the residual signal has energy content that is significantly more confined to low frequency bands than the downmix signal. Therefore, imposing a dedicated bandwidth limit on the residual signal allows for bitrate reduction without significantly compromising sound quality.For example, this is controlled by two independent max_sfb parameters encoded in the bitstream: one for the downmix signal and one for the residual signal.
[0047] In this embodiment, the MDCT representation of the stereo signal is segmented into successive time frames (i.e., time blocks) containing a fixed number of data points (e.g., 1024 points), one of multiple fixed numbers of data points (e.g., 128 points or 1024 points), or a variable number of points. As known to those skilled in the art, the MDCT is critically sampled. The output of the decoding system, shown in the right part of the figure, is a time-domain stereo signal having a left (L) channel and a right (R) channel. The inverse quantization module 202 is configured to process the bitstream input to the decoding system into two bitstreams, corresponding to the downmix and residual channels obtained after demultiplexing the original bitstream, as needed. The inverse quantized channel signals are then converted into a transform matrix
number
number
[0048] Assuming that the switching assembly 203 is in pass-through mode, in this embodiment, the dequantized channel signals are passed through the respective TNS filters 204. The TNS filters 204 are not essential for the operation of the decoding system and can be replaced by pass-through elements. The signals are then fed to a second switching assembly 205, which has the same functionality as the upstream switching assembly 203. As described above, when the second switching assembly 205 receives an input signal and is set in pass-through mode, the output of the second switching assembly 205 is a downmix channel signal and a residual channel signal. The downmix signal, represented by a time-continuous MDCT spectrum, is fed to a real-to-imaginary transform 206 configured to calculate the MDST spectrum of the downmix signal. In this embodiment, one MDST frame is based on three MDCT frames, one previous frame, one current (i.e., simultaneous) frame, and one subsequent frame. It is symbolically indicated by (Z -1 , Z) are shown.
[0049] The MDST representation of the downmix signal obtained from the real-to-imaginary transform 206 is the imaginary part α I The real part of the prediction coefficient α R and the MDCT representation of the residual signal are added to the MDCT representation of the weighted downmix signal. The two additions and multiplications are performed by adders and multipliers that (functionally) constitute weighted adders 210, 211. These are supplied with the values of the complex prediction coefficients α that were encoded in the bitstream originally received by the decoder system. The complex prediction coefficients are determined one per time frame. They may be determined more frequently, one per frequency band in a frame. The frequency bands are psychoacoustically motivated partitions. As will be explained later in the context of the inventive coding system, the complex prediction coefficients may be determined less frequently. The real-to-imaginary transform 206 is synchronized with the weighted adders so that the current MDCT frame of the downmix channel signal is combined with the respective simultaneous MDCT frames of the downmix channel signal and the residual channel signal. The sum of these three signals is the side signal S = Re{αM} + D. In this equation, M includes both the MDCT and MDST representations of the downmix signal, i.e., M = M MDCT -iM MDST D = DMDCT is real-valued. In this way, a stereo signal with downmix channels and side channels is obtained, and the sum-difference transform 207 converts this stereo signal into
number
[0050] A possible implementation of the real-to-imaginary transform 206 is described in detail in applicant's U.S. Pat. No. 6,980,933 B2, as noted above. According to Equation 41 in that document, the transform can be expressed as a finite impulse response filter. For example, for an even number of points,
number
number
[0051] It is possible to further reduce the amount of input data on which the calculations are based. For illustrative purposes, the real-to-imaginary transform 206 and its upstream connections, designated "A" in the diagram, may be replaced by simplified variants, two of which, A' and A'', are shown in Figure 10. Variation A' provides an approximation of the imaginary representation of the signal, where the MDST calculation only considers the current and previous frames. Referring to the formula above in this paragraph, X for p=0,...,N-1 III This is done by setting (p) = 0 (index III indicates a later time frame). Since variant A' does not require the MDCT spectrum of a later frame as input, the MDST calculation does not introduce a time delay. Obviously, this approximation somewhat reduces the accuracy of the resulting MDST signal, but it also implies a reduction in the energy of this signal. Due to the nature of predictive coding, the latter is I can be fully compensated by increasing
[0052] Variation A" is shown in Figure 10. It uses only the MDCT data of the current time frame as input. The MDST representation obtained by Variation A" is less accurate than that obtained by Variation A'. On the other hand, Variation A" operates with zero delay like Variation A' and has low computational complexity. As mentioned above, as long as the same approximation is used in the encoder and decoder systems, the waveform coding properties are not affected.
[0053] It should be noted that whether variants A, A′ or A″ or their further developments are used, the imaginary parts of the complex prediction coefficients of the MDST spectrum are non-zero, i.e., α I Only the part where ≠ 0 needs to be calculated. In practical situations, this is the absolute value of the imaginary part of the coefficient |α I can be interpreted to mean that |α is greater than a predetermined threshold, which is related to the unit round-off of the hardware used. If the imaginary parts of the coefficients for all frequency bands in a time frame are zero, then there is no need to calculate MDST data for that frame. Thus, again, real-to-imaginary transform 206 reduces |α by not producing an MDST output. I The second switching assembly 205 is configured to respond when the value of | is very small, thereby saving computational resources. However, in embodiments where more than one frame is used to generate one frame of MDST data, the units upstream of the transform 206 must continue to operate even though the MDST spectrum is not needed, and in particular the second switching assembly 205 must continue to forward the MDCT spectrum, so that there is enough input data for the real-to-imaginary transform 206 when the next time frame associated with a non-zero prediction coefficient occurs. This is of course the next time block.
[0054] Returning to FIG. 2, the functionality of the decoder system has been described assuming that both switching assemblies 203 and 205 are configured in pass-through mode. As described herein, the decoder system can also decode signals that are not predictively coded. For this purpose, the second switching assembly 205 is configured in sum-and-difference mode, and the selector device 208 is configured in the down position, as shown, so that the signal is input directly to the inverse transform 209 from a source point between the TNS filter 204 and the second switching assembly 205. For correct decoding, the signal must have an L / R format at the source point. Therefore, when decoding non-predictively coded stereo signals, it is preferable to configure the second switching assembly 205 in sum-and-difference mode to always provide the correct mid (i.e., downmix) signal for the real-to-imaginary transform (rather than, e.g., more simply, the left signal). As noted above, predictive coding can be replaced by traditional direct coding or simultaneous coding of multiple frames, based, for example, on a data rate versus sound quality decision. The result of this decision is transmitted from the encoder to the decoder in various ways, for example, by the value of a dedicated indicator bit in each frame or by the presence or absence of a prediction coefficient value. Given these facts, the role of the first switching assembly 203 is easily realized. In fact, in non-predictive coding mode, the decoder system can process both direct (L / R) stereo coded signals and simultaneous (M / S) coded signals. By operating the first switching assembly 203 in either pass-through mode or sum-and-difference mode, it is possible to ensure that source points are always provided along with the directly coded signals. Obviously, when the switching assembly 203 functions in the sum-and-difference stage, it converts the M / S format input signal into an L / R format output signal (which is fed to the optional TNS filter 204).
[0055] The decoder system receives a signal indicating whether a time frame is to be decoded by the decoder system in predictive or non-predictive coding mode. Non-predictive mode is signaled by the value of a dedicated indicator bit in each frame, or by the presence or absence (or zero value) of prediction coefficients. Predictive mode can be signaled similarly. A particularly advantageous embodiment allows for overhead-free fallback, but makes use of the reserved fourth value of the 2-bit field ms_mask_present (MPEG-2 AAC, see ISO / IEC 13818-7 document). This is transmitted every time frame and is specified as follows: [Table 1] By redefining the value 11 to mean "complex predictive coding", the decoder can operate in all legacy modes, especially M / S and L / R coding modes, without compromising bitrate, and receive a signal indicating the complex predictive coding mode of the associated frame.
[0056] Figure 4 shows a decoder system of a general configuration, similar to that shown in Figure 2, but including at least two different configurations. First, the system of Figure 4 includes switches 404, 411 that allow the application of processing steps including frequency-domain modifications upstream and / or downstream of the upmix stage. This is realized, on the one hand, by a first set of frequency-domain modifiers 403 (depicted here as TNS synthesis filters) provided with a first switch 404 downstream of the inverse quantization module 401 and the first switching assembly 402, and upstream of a second switching assembly 405 located immediately upstream of the upmix stages 406, 407, 408, 409. On the other hand, the decoder system includes a second set of frequency-domain modifiers 410 provided with a second switch 411 downstream of the upmix stages 406, 407, 408, 409 and upstream of the inverse transform stage 412. Advantageously, as shown in the figure, each frequency domain modifier is arranged in parallel with a pass-through line connected upstream to the frequency domain modifier's input and downstream to the associated switch. This configuration allows the frequency domain modifier to always be supplied with signal data, enabling processing in the frequency domain based on more time frames than just the current time frame. The decision to apply either the first set of frequency domain modifiers 403 or the second set of frequency domain modifiers 410 may be made by the encoder (sent in the bitstream), or based on whether predictive coding is applied, or other criteria appropriate to the practical situation. As an example, if the frequency domain modifiers are TNS filters, the first set 403 may be advantageous for use with certain types of signals, while the second set 410 may be advantageous for use with other types of signals. When this selection is encoded in the bitstream, the decoder system activates each set of TNS filters appropriately.
[0057] To facilitate understanding of the decoder system shown in Fig. 4, it is explicitly noted that decoding of a directly (L / R) encoded signal is performed when α = 0 (implying that pseudo-L / R and L / R are the same and that the side and residual channels are not different), the first switching assembly 402 is in pass mode, the second switching assembly is in sum-difference mode, and the signal is in M / S format between the second switching assembly 405 and the sum-difference stage 409 of the upmix stage. Since the upmix stage is then effectively a pass step, it does not matter whether the first set of frequency domain modifiers or the second set of frequency domain modifiers is activated (using the respective switches 404, 411).
[0058] FIG. 3 illustrates a decoder system according to one embodiment of the present invention, which represents a different approach to providing the MDST data required for upmixing, relative to the decoder systems of FIGS. 2 and 4. Similar to the previously described decoder systems, the system of FIG. 3 includes an inverse quantization module 301, a first switching assembly 302 operable in either pass-through or sum-and-difference mode, and a TNS (synthesis) filter 303, all arranged in series from the input of the decoder system. Modules downstream of this point are selectively accessed by two second switches 305, 310. These second switches preferably operate simultaneously, both in their up or down positions, as shown. At the output of the decoder system is a sum-and-difference stage 312, immediately upstream of which are two inverse MDCT modules 306, 311, which convert the MDCT-domain representation of each channel to a time-domain representation.
[0059] In complex predictive decoding, the decoder system is fed with a bitstream encoding the downmix / residual stereo signal and the complex prediction coefficients, the first switching assembly 302 is set to pass-through mode and the second switches 305, 310 are set to the up position. Downstream of the TNS filter, the two channels of the (dequantized, TNS filtered MDCT) stereo signal are processed differently. The downmix channel is fed on the one hand to a multiplier and adder 308, which multiplies the real part α of the prediction coefficients by R The MDCT representation of the downmix channel weighted by α is added to the MDCT representation of the residual channel, which in turn is fed to one of several MDCT transform modules 306. The time-domain representation of the downmix channel M is output from the inverse MDCT transform module 306 and is fed to both the final sum-and-difference stage 312 and the MDST transform module 307. This dual use of the time-domain representation of the downmix channel is advantageous in terms of computational complexity. The MDST representation of the downmix channel thus obtained is fed to yet another multiplier and adder 309, which multiplies the imaginary part α of the prediction coefficients by I before adding this signal to the linearly combined output from adder 308. Thus, the output of adder 309 is the side channel signal S=Re{αM}+D. Similarly, the multipliers and adders 308, 309 are coupled to the decoder system shown in Figure 2 to form a weighted multi-signal adder that takes as inputs the MDCT and MDST representations of the downmix signal, the MDCT representation of the residual signal, and the complex prediction coefficient values. In this embodiment, downstream of this point, the only remaining path for the side channel signal is through the inverse MDCT transform module 311 before it is fed to the final sum-and-subtract stage 312.
[0060] The necessary synchronicity in the decoder system can be achieved by applying the same transform length and window shape in both inverse MDCT transform modules 306, 311. This has already been demonstrated in frequency-selective M / S and L / R coding. Combining one embodiment of the inverse MDCT module 306 with one embodiment of the MDST module 307 introduces a one-frame delay. Therefore, five optional delay blocks 313 (or software instructions to this effect in a computer implementation) are provided to delay the part of the system to the right of the dashed line by one frame relative to the part to the left, if necessary. Obviously, delay blocks are provided at all intersections between the dashed lines and the connecting lines, except for the connection between the inverse MDCT module 306 and the MDST transform module 307, which introduces a delay that must be compensated for.
[0061] The calculation of MDST data for one time frame requires data from one frame of the time-domain representation. However, the inverse MDCT transform can be based on one frame (the current frame), two consecutive frames (preferably the previous and current frames), or three consecutive frames (preferably the previous, current, and next frames). Due to the well-known time-domain alias cancellation (TDAC) associated with the MDCT, the three-frame option achieves perfect overlap of the input frames and is the most (possibly completely) accurate, at least for frames that contain time-domain aliases. Obviously, the three-frame inverse MDCT operates with a one-frame lag. By allowing the use of an approximate time-domain representation as input to the MDST transform, this delay can be avoided, thereby avoiding the need to compensate for delays between different parts of the decoder system. In the two-frame option, overlap / add-enabling TDAC is performed on the first half of the frame, and aliases are present only in the second half. In the one-frame option, there is no TDAC, so aliases occur throughout the entire frame. However, the MDST representation realized in this way and used as a daytime signal with complex predictive coding can provide sufficient quality.
[0062] The decoding system shown in FIG. 3 can also operate in two non-predictive decoding modes. To decode a directly L / R-encoded stereo signal, the second switches 305 and 310 are set to their down positions, and the first switching assembly 302 is set to pass-through mode. Thus, the signal is in L / R format upstream of the sum-and-difference stage 304. The sum-and-difference stage 304 converts it to M / S format, which undergoes an inverse MDCT transform and a final sum-and-difference operation. To decode a stereo signal provided in simultaneous M / S encoding format, the first switching assembly 302 is set to sum-and-difference mode, so that the signal is in L / R format between the first switching assembly 302 and the sum-and-difference stage 304. The L / R format is more suitable than the M / S format from the perspective of TNS filtering. The processing downstream of the sum-and-difference stage 304 is the same as in the case of direct L / R decoding.
[0063] Figure 14 (14A to 14C) shows three block diagrams of decoders according to embodiments of the present invention. Unlike the other block diagrams attached hereto, the connecting lines in Figure 14 indicate multi-channel signals. Specifically, these connecting lines are configured to transmit stereo signals having left / right, mid / side, downmix / residual, pseudo-left / pseudo-right channels, and other combinations.
[0064] FIG. 14A shows a decoder system for decoding a frequency-domain representation of an input signal (shown as an MDCT representation for the purposes of this illustration). The decoder system is configured to provide as its output a time-domain representation of the stereo signal. This representation is generated based on the input signal. To be able to decode input signals encoded using complex predictive stereo coding, the decoder system includes an upmix stage 1410. However, it is also possible to process input signals encoded in other formats, possibly switching between multiple encoding formats over time, for example, an input signal in which a sequence of time frames encoded using complex predictive coding is directly followed by a time portion encoded using left / right coding. The decoder system's ability to process different encoding formats is realized by providing a connection line (pass-through) in parallel with the upmix stage 1410. A switch 1411 allows selecting whether the output from the upmix stage 1410 (lower switch position in the figure) or the unprocessed signal obtained by the connection line (upper switch position in the figure) is fed to a decoder module located further downstream. In this embodiment, an inverse MDCT module 1412 is located downstream of the switch. The MDCT module 1412 converts the MDCT representation of the signal into a time domain representation. As an example, the signal fed to the upmix stage 1410 may be a stereo signal in downmix / residual format. The upmix stage 1410 is then applied to obtain the side signals and perform a sum / subtract operation to output left / right stereo signals (in the MDCT domain).
[0065] Figure 14B shows a decoder system similar to that shown in Figure 14A. The system is configured to receive a bitstream as an input signal. The bitstream is first processed by a combined demultiplexer and inverse quantizer module 1420. This combined demultiplexer and inverse quantizer module 1420 provides an MDCT representation of the multi-channel stereo signal as a first output signal for further processing, as determined by the position of a switch 1422, which performs a function similar to that of switch 1411 shown in Figure 14A. More precisely, switch 1422 determines whether the first output from the demultiplexer and inverse quantizer is processed by an upmix stage 1421 and an inverse MDCT module 1423 (lower position) or by the inverse MDCT module 1423 alone (upper position). The combined demultiplexer and inverse quantizer module 1420 also outputs control information. In this case, the control information relating to the stereo signal includes data indicating whether an up or down position of the switch 1422 is appropriate for decoding the signal, or more abstractly, which coding format the stereo signal should be decoded into. The control information also includes parameters for adjusting the characteristics of the upmix stage, such as, for example, the value of the complex prediction coefficient α used in complex predictive coding, as already explained.
[0066] FIG. 14C includes similar entities as shown in FIG. 14B, plus first and second frequency-domain modification devices 1431, 1435, respectively, located upstream and downstream of the upmix stage 1433. For purposes of this illustration, each frequency-domain modification device is illustrated by a TNS filter. However, the term frequency-domain modification device can also be understood to refer to processes other than TNS filtering that can be applied before or after the upmix stage. Examples of frequency-domain modifications include prediction, noise addition, bandwidth expansion, and nonlinear processing. In some cases, psychoacoustic considerations and similar reasons, including the characteristics of the signal being processed and / or the configuration of such frequency-domain modification devices, may make it advantageous to apply the frequency-domain modification upstream of the upmix stage 1433 rather than downstream. In other cases, similar considerations may favor upstream locations of the frequency-domain modifications. Switches 1432, 1436 selectively activate the frequency-domain modification devices 1431, 1435 in response to control information, allowing the decoder system to select the desired configuration. As an example, Figure 14C shows an arrangement in which the stereo signal from the combined demultiplexer and inverse quantization module 1430 is first processed by the first frequency domain modification device 1431, then fed to the upmix stage 1433 and finally forwarded directly to the inverse MDCT module 1437, without passing through the second frequency domain adjustment device 1435. As explained in the Summary of the Invention, this arrangement is preferable to the option of performing TNS after the upmix in complex predictive coding.
[0067] II. Encoder System An encoder system according to the present invention will now be described with reference to Fig. 5. Fig. 5 is a block diagram illustrating an encoder system for encoding a left / right (L / R) stereo signal as an output bitstream using complex predictive coding. The encoder system receives a time-domain or frequency-domain representation of the signal and supplies it to both a downmix stage and a prediction coefficient estimator. The real and imaginary parts of the prediction coefficients are supplied to the downmix stage to control the conversion of the left and right channels into downmix and residual channels. The downmix and residual channels are then supplied to a final multiplexer MUX. If the signal was not supplied to the encoder as a frequency-domain representation, it is converted to such a representation in the downmix stage or multiplexer.
[0068] One of the principles of predictive coding is to convert the left / right signals into a mid / side format, i.e.
number
number
[0069] Real part of the prediction coefficient and α R and the imaginary part α I are quantized and / or coded jointly. However, preferably, the real and imaginary parts are quantized independently and uniformly, typically with a step size of 0.1 (a dimensionless number). According to the MPEG standard, the resolution of the frequency bands used for the complex prediction coefficients does not have to be the same as the resolution of the scale factor bands (sfb, i.e., a group of MDCT lines using the same MDCT quantization step size and quantization range). In particular, the frequency band resolution of the prediction coefficients is psychoacoustically relevant, such as the Bark scale. Note that the resolution of the frequency bands changes when the transform length is changed.
[0070] As mentioned above, the encoder system according to the invention has the freedom to apply predictive stereo coding or not. The latter case implies a fallback to L / R or M / S coding. Such a decision can be made on a time frame or finer basis, or on a frequency band basis within a time frame. As mentioned above, the negative outcome of the decision is signaled to the decoding entity in various ways, for example, by the value of a dedicated indicator bit in each frame, or by the presence or absence (or zero value) of prediction coefficient values. A positive decision is signaled as well. A particularly advantageous embodiment allows for overhead-free fallback, but makes use of the reserved fourth value of the 2-bit field ms_mask_present (MPEG-2 AAC, see ISO / IEC 131818-7 document). This is transmitted every time frame and is specified as follows: [Table 2] By redefining the value 11 to mean "complex predictive coding", the encoder can operate in all legacy modes, especially M / S and L / R coding modes, without compromising bitrate, and can advantageously receive a signal indicating complex predictive coding of a frame.
[0071] The actual decision may be based on a data rate versus sound quality principle. A measure of sound quality may be data obtained using a psychoacoustic model included in the encoder (as is often the case with available MDCT-based audio encoders). In particular, some encoder embodiments perform a rate-distortion optimized selection of prediction coefficients. Thus, in such embodiments, the imaginary part, and possibly also the real part, of a prediction coefficient is set to zero if increasing the prediction gain does not save enough bits for the coding of the residual signal to justify using the bits required to code the prediction coefficient.
[0072] An embodiment of the encoder encodes TNS-related information into the bitstream. Such information includes the values of the TNS parameters used by the TNS (synthesis) filter on the decoder side. If both channels use the same set of TNS parameters, it is more economical to include a signaling bit indicating that the parameters are the same rather than transmitting two sets of parameters separately. For example, information may also be included on whether TNS should be applied before or after the upmix stage, based on psychoacoustic evaluation of the two options.
[0073] As yet another optional feature, potentially beneficial in terms of complexity and bitrate, the encoder can be configured to use a separate limited bandwidth for encoding the residual signal. Frequency bands above this limit are not transmitted to the decoder but are set to zero. In some cases, the energy content of the highest frequency bands is so small that they are already zero when quantized. Conventional practice (see the max_sfb parameter in the MPEG standard) requires the use of the same bandwidth limit for both the downmix signal and the residual signal. Here, the inventors empirically found that the residual signal has energy content that is significantly more confined to low frequency bands than the downmix signal. Therefore, by imposing a dedicated bandwidth limit on the residual signal, it is possible to reduce the bitrate without significantly compromising sound quality. For example, this can be achieved by transmitting two independent max_sfb parameters: one for the downmix signal and one for the residual signal.
[0074] It should be pointed out that although the issues of optimal determination of prediction coefficients, quantization and its encoding, fallback to M / S or L / R mode, TNS filtering, and bandwidth upper limit etc. have been described with reference to the decoder system shown in FIG. 5, the same are equally applicable to the embodiments disclosed in the embodiments described with reference to subsequent figures.
[0075] FIG. 6 shows another encoder system according to the present invention, configured for complex predictive stereo coding. This system receives as input a time-domain representation of a stereo signal, divided into consecutive, possibly overlapping, time frames and including left and right channels. A sum-and-difference stage 601 converts this signal into a mid channel and a side channel. The mid channel is fed to both an MDCT module 602 and an MDST module 603, while the side channel is fed only to an MDCT module 604. A prediction coefficient drop 605 estimates the values of complex prediction coefficients for each time frame, and possibly for individual frequency bands within a frame, as described above. The coefficient values α are fed as weights to weighted adders 606 and 607, which construct a residual signal D as a linear combination of the MDCT and MDST representations of the mid signal and the MDCT representation of the side signal. Preferably, the complex prediction coefficients are fed to weighted adders 606 and 607 using the same quantization scheme used when encoding the signal into the bitstream. This obviously provides a more faithful reconstruction, since both the encoder and decoder use the same values of the prediction coefficients. The residual signal, the mid signal (which is more properly called the downmix signal when it appears in combination with the residual signal), and the prediction coefficients are fed to a combined quantization and multiplexer stage 608, which encodes these signals, and possibly further information, into an output bitstream.
[0076] FIG. 7 is a variation of the encoder shown in FIG. 6. As can be seen from the similar symbols in the diagram, the encoder shown in FIG. 7 has a similar configuration, but with the added capability of operating in direct L / R coding fallback mode. The encoder system is activated between complex predictive coding mode and fallback mode by a switch 710 located immediately upstream of the combined quantization and multiplexer stage 709. When switch 710 is in the up position, the encoder operates in fallback mode. The mid-side signal is fed to a sum-and-difference stage 705 from a point immediately downstream of the MDCT modules 702 and 704. The sum-and-difference stage 705 converts the signal to a left / right signal and then sends it to switch 710. Switch 710 connects the signal to the combined quantization and multiplexer stage 709.
[0077] FIG. 8 illustrates an encoder system according to the present invention. Unlike the encoder systems shown in FIGS. 6 and 7, this embodiment derives the MDST data required for complex predictive coding directly from the MDCT data, i.e., by real-to-imaginary transformation in the frequency domain. The real-to-imaginary transformation can be performed using any of the approaches described for the decoder systems of FIGS. 2 and 4. It is important that the decoder calculation method matches the encoder calculation method to ensure faithful decoding. The same real-to-imaginary transformation method is used on both the encoder and decoder sides. In the decoder embodiment, the dashed-lined portion A containing the real-to-imaginary transformation 804 can be replaced by a similar variant or by using fewer input time frames. Similarly, any of the above approximation approaches can be used to simplify the coding.
[0078] At a high level, the encoder system of Figure 8 has a different configuration than would be obtained by simply replacing the MDST module in Figure 7 with an appropriately connected real-imaginary module. This architecture is clean, robust, and computationally economical for switching between predictive and direct L / R coding. The input stereo signal is input to an MDCT transform module 801, which outputs a frequency-domain representation of each channel. This is sent to both a final switch 808, which switches the encoder system between predictive and direct coding modes, and a sum-and-difference stage 802. For direct L / R coding, or simultaneous M / S coding, which occurs in a time frame where the prediction coefficient α is set to zero, this embodiment only MDCT transforms, quantizes, and multiplexes the input signal. The latter two steps are performed by a combined quantization and multiplexer stage 807 located at the output of the system, which provides the bitstream. For predictive coding, each channel is further processed between the sum-and-difference stage 802 and the switch 808. A real-to-imaginary transform 804 derives MDST data from the MDCT representation of the mid signal and sends it to both the prediction coefficient estimator 803 and the weighted summer 806. Similar to the encoder systems shown in Figures 6 and 7, another weighted summer 805 is used to combine the side signal with the weighted MDCT and MDST representation of the mid signal to form a residual channel signal, which is then encoded along with the mid (i.e., downmix) channel signal and prediction coefficients by a combined quantization and multiplexer stage 807.
[0079] 9, it will be explained that each embodiment of the encoder system can be combined with one or more TNS (analysis) filters. As mentioned above, it is often advantageous to apply TNS filtering to signals in downmix form. Thus, as shown in FIG. 9, adapting the encoder system of FIG. 7 to include TNS is done by adding a TNS filter 911 immediately upstream of the combined quantization and multiplexer stage 909.
[0080] Instead of the right / residual TNS filter 911b, two TNS filters (not shown) configured to process the right channel or the residual channel may be provided immediately upstream of the switch 910. In this way, each of the two TNS filters is always supplied with a respective channel signal, allowing TNS filtering based on more time frames than just the current frame. As mentioned above, a TNS filter is an example of a frequency-domain modification device, particularly one based on processing more frames than the current time frame, which benefits from such an arrangement as much as or more than a TNS filter.
[0081] As another alternative to the embodiment shown in Fig. 9, the TNS filters for selective activation can be configured at one or more points for each channel. This is similar to the configuration of the decoder system shown in Fig. 4, where different sets of TNS filters can be connected by switches. This allows the most suitable stage for TNS filtering to be selected for each time frame. In particular, switching between different TNS locations is advantageous for switching between complex predictive stereo coding mode and other coding modes.
[0082] Figure 11 shows a variant of the encoder system of Figure 8, in which a second frequency domain representation of the downmix signal is obtained by a real-to-imaginary transform 1105. Like the decoder system shown in Figure 4, this encoder system also includes selectively activatable frequency domain modifier modules, one 1102 located upstream of the downmix stage and one 1109 located downstream. The frequency domain modules 1102, 1109, illustrated here by TNS filters, can be connected to each signal path using four switches 1103a, 1103b, 1109a and 1109b.
[0083] III. Non-Device Embodiments Embodiments of the third and fourth aspects of the present invention are shown in Figures 15 and 16. Figure 15 shows a method for decoding a bitstream into a stereo signal, comprising the following steps: 1. Input the bitstream. 2. Dequantizing the bitstream to obtain a first frequency domain representation of the downmix and residual channels of the stereo signal. 3. Compute a second frequency domain representation of the downmix channel. 4. Calculate the side channel signal based on the three frequency domain representations of the channel. 5. A stereo signal, preferably in left / right format, is calculated based on the side channels and the downmix channel. 6. The stereo signal obtained in this way is output. Steps 3 to 5 may be considered as an upmixing process. Each of steps 1 to 6 is similar to the corresponding function of any of the decoder systems disclosed earlier in this document, and implementation details can be found therein.
[0084] FIG. 16 shows a method for encoding a stereo signal into a bitstream signal, comprising the following steps: 1. Input a stereo signal. 2. Convert the stereo signal into a first frequency domain representation. 3. Determine the complex prediction coefficients. 4. Downmix the frequency domain representation. 5. Encode the downmix channel and the residual channel together with the complex prediction coefficients as a bitstream. 6. Output the bitstream. Each of steps 1 to 5 is similar to the corresponding function of any of the encoder systems disclosed earlier in this document, and implementation details can be found therein.
[0085] Both methods can be expressed as computer readable instructions in the form of a software program and executed by a computer, and the scope of protection of the present invention extends to such software and to computer program products for distributing such software.
[0086] IV. Experimental Evaluation The disclosed embodiments have been experimentally evaluated, and the most significant portions of the experimental data obtained in this process are summarized below.
[0087] The embodiment used in the experiments has the following features: (i) Each MDCT spectrum (of a time frame) was calculated from the current, previous, and next MDCT spectra by two-dimensional finite impulse response filtering. (ii) The psychoacoustic model from the USAC stereo encoder was used. (iii) Instead of the PS parameters ICC, CLD, and IPD, the real and imaginary parts of the complex prediction coefficient α were transmitted. The real and imaginary parts were processed separately, constrained to the range [-3.0, 3.0], and quantized using a step size of 0.1. They were then time-differentially coded and finally Huffman coded using the USAC scale factor codebook. The prediction coefficients were updated every other scale factor band, resulting in a frequency resolution similar to that of MPEG Surround (see, for example, ISO / IEC 23003-1). This quantization and coding scheme resulted in an average bit rate of approximately 2 kb / s for the stereo side information in a typical configuration with a target bit rate of 96 kb / s. (iv) The bitstream format was modified without breaking the current USAC bitstream, since the 2-bit ms_mask_present bitstream element only has three possible values: a fourth value indicating complex prediction was used, allowing a fallback mode for basic mid / side coding without wasting bits (see the previous subsection of this disclosure for more information).
[0088] The listening tests were conducted using the MUSHRA method with eight test items played over headphones and a sampling rate of 48 kHz. Three, five, or six subjects participated in each test.
[0089] We evaluated the impact of different MDST approximations to demonstrate the practical complexity vs. sound quality tradeoff between these options. The results are shown in Figures 12 and 13. The former shows the absolute scores obtained, while the latter shows the differential scores relative to 96s USAC cplf, i.e., MDCT-domain unified stereo coding with complex prediction using the current MDCT frame to compute an approximation of the MDST. We can see that the sound quality gain achieved by MDCT-based unified stereo coding increases when a more computationally complex approach is used to compute the MDST spectrum. Considering the average across all tests, the single-frame-based system 96s USAC cplf significantly increases coding efficiency relative to conventional stereo coding. Similarly, even better results are obtained with 96s USAC cp3f, i.e., MDCT-domain unified stereo coding with complex prediction using the current, previous, and next MDCT frames to compute the MDST.
[0090] V. Implementation Furthermore, the present invention can be implemented as follows.
[0091] 1. A decoder system for decoding a bitstream signal into a stereo signal according to complex predictive stereo coding, comprising: an inverse quantization stage (202, 401) for providing first frequency domain representations of the downmix signal (M) and the residual signal (D) based on the bitstream, each frequency domain representation having first spectral components representing the spectral content of the corresponding signal expressed in a first subspace of a multidimensional space, the first spectral components being transform coefficients arranged in a time frame of transform coefficients, each block being generated by application of a transform to a time segment of the time domain signal; and a dequantization stage arranged downstream of the dequantization stage and configured to generate the stereo signal based on the downmix signal and the residual signal, a module (206; 408) for calculating a second frequency domain representation of the downmix signal based on the first frequency domain representation of the downmix signal, the second frequency domain representation having second spectral components representing the spectral content of the signal expressed in a second subspace of the multidimensional space including a portion of the multidimensional space not included in the first subspace, the module being configured to: determine a first intermediate component from the first spectral components; determine a second intermediate component by configuring a combination of the first spectral components according to at least a portion of an impulse response; and determine the second spectral component from the second intermediate component; a weighted adder (210, 211; 406, 407) for calculating a side signal based on first and second frequency domain representations of the downmix signal encoded into the bitstream signal, a first frequency domain representation of the residual signal, and complex prediction coefficients (α); and The downmix signal is coupled to a first frequency domain representation of the side signal, and the upmix stage comprises a sum-difference stage for calculating the stereo signal based on the downmix signal and a first frequency domain representation of the side signal.
[0092] Furthermore, the present invention can be implemented as follows: A decoder system for decoding a bitstream signal into a stereo signal using complex predictive stereo coding, comprising: an inverse quantization stage (301) for providing first frequency domain representations of a downmix signal (M) and a residual signal (D) based on the bitstream signal, each of the first frequency domain representations having first spectral components representing the spectral content of a corresponding signal expressed in a first subspace of a multidimensional space; and a dequantization stage arranged downstream of the dequantization stage and configured to generate the stereo signal based on the downmix signal and the residual signal, a module (306, 307) for calculating a second frequency domain representation of the downmix signal based on a first frequency domain representation of the downmix signal, the second frequency domain representation having the spectral content of the signal expressed in a second subspace of the multidimensional space that includes a portion of the multidimensional space that is not included in the first subspace, the module comprising: an inverse transform step (306) for calculating a time domain representation of the downmix signal based on the first frequency domain representation of the downmix signal in the first subspace of the multidimensional space; and an transform step (307) for calculating a second frequency domain representation of the downmix signal based on the time domain representation of the signal; a weighted adder (308, 309) for calculating a side signal based on first and second frequency domain representations of the downmix signal encoded into the bitstream signal, a first frequency domain representation of the residual signal, and complex prediction coefficients (α); and The downmix signal includes an upmix stage (306, 307, 308, 309, 312) and a sum-difference stage (312) for calculating the stereo signal based on a first frequency domain representation of the downmix signal and the side signal.
[0093] The invention can also be implemented as follows: A decoder system having the features of the independent decoder system claim, wherein the module for calculating the second frequency domain representation of the downmix signal comprises: an inverse transform step (306) for calculating a time domain representation of the downmix signal and / or the chroma signal based on a first frequency domain representation of each signal in a first subspace of the multidimensional space; and a transform step (307) for calculating a second frequency domain representation of each signal based on the time domain representation of the signal; Preferably, the inverse transform step (306) performs an inverse modified discrete cosine transform and the transform step performs a modified discrete cosine transform.
[0094] In the above decoder system, the stereo signal may be represented in the time domain, and the decoder system may further comprise: a switching assembly (302) disposed between the inverse quantization stage and the upmix stage, which can function as either (a) a pass-through stage for simultaneous stereo encoding; or (b) a sum-difference stage for direct stereo encoding; a further inverse transform stage (311) disposed in the upmix stage, which calculates a time domain representation of the side signal; (a) a further sum-difference stage (304) connected at a point downstream of the switching assembly (302) and upstream of the upmix stage; or (b) a selector device (305, 310) arranged upstream of the inverse transform stage (306, 301) configured to be selectively connected to either the downmix signal obtained from the switching assembly (302) or the side signal obtained from the weighted adder (308, 309).
[0095] VI. Conclusion Further embodiments of the present invention will be apparent to those skilled in the art upon reading the above description. While the specification and drawings disclose embodiments and examples, the present invention is not limited to these specific examples. Numerous modifications and variations can be made without departing from the scope of the present invention, which is defined in the appended claims.
[0096] It should be noted that the methods and apparatus disclosed in this application can be applied to the coding of signals having more than two channels with appropriate modifications within the capabilities of one skilled in the art, including routine experimentation. It should be emphasized that the signals, parameters, and matrices described in connection with the described embodiments may be frequency-varying or frequency-invariant and / or time-varying or time-invariant. The described computational steps may be performed frequency-by-frequency or for all frequencies at once, and all entities may be implemented with frequency-selective behavior. For the purposes of the application, any quantization scheme may be adapted using a psychoacoustic model. It should also be noted that the various sum-difference transforms, i.e., the transform from downmix / residual format to pseudo-L / R format, and the L / R-to-M / S transform and the M / S-to-L / R transform, all have the following form:
number
[0097] The systems and methods disclosed herein can be implemented as software, firmware, hardware, or a combination thereof. Some or all of the components can be implemented as software executed by a digital signal processor or microprocessor, or as hardware or special-purpose integrated circuits. Such software can be distributed on computer-readable media. Computer-readable media includes computer storage media and communication media. As known to those skilled in the art, computer storage media includes volatile and nonvolatile, removable and non-removable media implemented in any method or technology for storage of information, such as computer-readable instructions, data structures, program modules, or other data. Computer storage media includes, but is not limited to, RAM, ROM, EEPROM, flash memory and other memory technology, CD-ROM, Digital Versatile Disk (DVD) and other optical disk storage media, magnetic cassettes, magnetic tape, magnetic disk storage and other magnetic storage devices, or any other medium capable of storing the desired information. Furthermore, as known to those skilled in the art, communication media typically embodies computer-readable instructions, data structures, program modules, or data in a modulated data signal such as a carrier wave or other transport mechanism and includes any information delivery medium. In addition, the following note is added: (Supplementary Note 1) A decoder system for providing a stereo signal by complex predictive stereo coding, comprising: an upmix stage configured to generate the stereo signal based on first frequency domain representations of a downmix signal and a residual signal, each first frequency domain representation having first spectral components representing the spectral content of a corresponding signal expressed in a first subspace of a multidimensional space, the upmix stage comprising: a module for calculating a second frequency domain representation of the downmix signal based on the first frequency domain representation of the downmix signal, the second frequency domain representation having second spectral components representing a spectral content of the signal expressed in a second subspace of the multidimensional space, the second subspace including a part of the multidimensional space that is not included in the first subspace; a weighted adder configured to calculate a side signal based on first and second frequency domain representations of the downmix signal encoded into the bitstream signal, a first frequency domain representation of the residual signal, and complex prediction coefficients; an upmix stage comprising a sum-and-difference stage for calculating the stereo signal based on the downmix signal and a first frequency domain representation of the side signal, The upmix stage is further operable in a pass-through mode in which the downmix signal and the residual signal are fed directly to the sum-difference stage, the decoder system. (Supplementary Note 2) The downmix signal and the residual signal are segmented into time frames, and the upmix stage is configured to receive, for each time frame, a 2-bit data field associated with that frame and to operate in an active mode or a pass-through mode depending on the value of the data field. 2. A decoder system according to claim 1. (Supplementary Note 3) The downmix signal and the residual signal are segmented into time frames; the upmix stage is further configured to receive, for each time frame in the MPEG bitstream, an ms_mask_present field associated with that frame, and to operate in active mode or pass-through mode depending on the value of the ms_mask_present field. 2. A decoder system according to claim 1. (Supplementary Note 4) The method further comprises an inverse quantization stage arranged upstream of the upmix stage, the inverse quantization stage providing the first frequency domain representation of the downmix signal and the residual signal based on a bitstream signal. 4. A decoding system according to any one of claims 1 to 3. (Supplementary Note 5) The first spectral component has real-valued values expressed in the first subspace; the second spectral component has an imaginary value expressed in the second subspace; Optionally, the first spectral component is determined by one of a Discrete Cosine Transform (DCT) or a Modified Discrete Cosine Transform (MDCT); Optionally, the second spectral component is determined by one of a discrete sine transform (DST) or a modified discrete sine transform (MDST). 5. A decoder system according to any one of claims 1 to 4. (Supplementary Note 6) at least one temporal noise shaping TNS module arranged upstream of the upmix stage; at least one further TNS module arranged downstream of said upmix stage; a selector device for selectively activating either (a) the TNS module upstream of the upmix stage, or (b) the further TNS module downstream of the upmix stage. 6. A decoder system according to any one of claims 1 to 5. (Supplementary Note 7) The downmix signal is partitioned into successive time frames, each time frame being associated with a value of a complex prediction coefficient; the module for computing the second frequency domain representation of the downmix signal is configured to deactivate itself so as not to generate an output for a time frame in response to the absolute value of the imaginary parts of the complex prediction coefficients being smaller than a predetermined tolerance value for that time frame. 6. A decoder system according to claim 5. (Supplementary Note 8) The downmix signal time frame is further partitioned into frequency bands, each frequency band being associated with a value of the complex prediction coefficient; the module for computing the second frequency domain representation of the downmix signal is configured to deactivate itself so as not to generate an output for a frequency band of a time frame when the absolute value of the imaginary part of the complex prediction coefficients is smaller than a predetermined tolerance value for that frequency band. 8. The decoder system of claim 7. (Supplementary Note 9) The first spectral components are transform coefficients arranged in a time frame of transform coefficients, each block being generated by application of a transform to a time segment of a time domain signal; a module for computing a second frequency domain representation of the downmix signal, said module comprising: determining a first intermediate component from said first spectral components; determining a second intermediate component by forming a combination of said first spectral components according to at least a portion of an impulse response; and determining a second spectral component from said second intermediate component; 9. A decoder system according to any one of claims 1 to 8. (Supplementary Note 10) A part of the impulse response is based on the frequency response characteristics of the transformation, Optionally, the frequency response characteristics of the transform depend on the characteristics of an analysis window function applied to the transform of the signal into time segments. 10. The decoder system of claim 9. (Supplementary Note 11) The module for calculating a second frequency domain representation of the downmix signal comprises: (a) Simultaneous time frames of the first spectral component; (b) the contemporaneous and previous time frames of the first spectral component; and (c) configured to determine each time frame of the second spectral component based on one of a concurrent, a previous, and a subsequent time frame of the first spectral component; 11. A decoder system according to claim 9 or 10. (Supplementary Note 12) The module for calculating the second frequency domain representation of the downmix signal is configured to calculate an approximate second spectral representation having an approximate second spectral component determined by a combination of at least two time-adjacent and / or frequency-adjacent first spectral components. 12. A decoder system according to any one of claims 1 to 11. (Supplementary Note 13) The stereo signal is represented in the time domain, and the decoder system further comprises: a switching assembly disposed between said inverse quantization stage and said upmix stage, said switching assembly being capable of functioning as either (a) a pass-through stage or (b) a sum-difference stage, thereby being able to switch between direct and simultaneous encoded stereo input signals; an inverse transform stage configured to calculate a time domain representation of said stereo signal; a selector device arranged upstream of the inverse transform stage and configured to selectively connect it to either (a) a point downstream of the upmix stage at which a stereo signal obtained by complex prediction is fed to the inverse transform stage, or (b) a point downstream of the switching assembly and upstream of the upmix stage at which a stereo signal obtained by direct stereo encoding is fed to the inverse transform stage, 13. A decoder system according to any one of claims 1 to 12. (Supplementary Note 14) An encoder system for encoding a stereo signal using complex prediction as a signal having a downmix channel, a residual channel, and complex prediction coefficients, comprising: an estimator for estimating complex prediction coefficients; (a) converting the stereo signal into a frequency domain representation of a downmix signal and a residual signal having a relationship determined by the values of the complex prediction coefficients; and (b) an encoding stage operable to act as a pass-through stage and to feed the stereo signal to be encoded directly to a multiplexer. (Supplementary Note 15) configured to encode a stereo signal by a bitstream signal using complex predictive stereo coding; and a multiplexer for receiving outputs from the encoding stage and the estimator and encoding the outputs with the bitstream signal; 15. The encoder system of claim 14. (Supplementary Note 16) The estimator determines the complex prediction coefficients by minimizing the power of the residual signal over time or the average power of the residual signal. 16. The encoder system of claim 14 or 15. (Supplementary Note 17) The stereo signal has a downmix channel and a side channel; the encoding stage is configured to receive a first frequency domain representation of the stereo signal, the first frequency domain representation having first spectral components representing the spectral content of the corresponding signal expressed in a first subspace of a multidimensional space; The encoding step further comprises: a module for calculating a second frequency domain representation of the downmix channel based on the first frequency domain representation of the downmix signal, the second frequency domain representation having second spectral components representing a spectral content of the signal expressed in a second subspace of the multidimensional space, the second subspace including a part of the multidimensional space that is not included in the first subspace; a weighted adder for calculating a residual signal based on the first and second frequency domain representations of the downmix channels, the first frequency domain representation of the side channel, and the complex prediction coefficients; the estimator receives the downmix channel and the side channel and determines the complex prediction coefficients in order to minimize the power of the residual signal over time or to minimize the average power of the residual signal. 17. An encoder system according to any one of claims 14 to 16. (Supplementary Note 18) The encoding step a sum-difference stage for converting the stereo signal into a jointly encoded stereo signal having a downmix channel and a side channel; a transform step providing an oversampled frequency domain representation of the downmix channel and a critically sampled frequency domain representation of the side channel, the oversampled frequency domain representation preferably having complex spectral components; a weighted adder for calculating a residual signal based on the oversampled frequency domain representation of the downmix channel, the critically sampled frequency domain representation of the side channel, and the complex prediction coefficients; the estimator receives the residual signal and determines the complex prediction coefficients to minimize the power of the residual signal or to minimize the average power of the residual signal; Preferably, the transform stage comprises a Modified Discrete Cosine Transform (MDCT) stage arranged in parallel with a Modified Discrete Sine Transform (MDST) stage, which together provide the oversampled frequency domain representation of the downmix channel. 17. An encoder system according to any one of claims 14 to 16. (Supplementary Note 19) A decoding method for providing a stereo signal by complex predictive stereo coding, comprising: receiving first frequency domain representations of the downmix signal and the residual signal, each of the first frequency domain representations having first spectral components representing the spectral content of the corresponding signal expressed in a first subspace of a multidimensional space; receiving a control signal; Depending on the value of the control signal, (a) upmixing the downmix signal and a residual signal using an upmix stage to obtain the stereo signal, - calculating a second frequency domain representation of the downmix signal based on the first frequency domain representation of the downmix signal, the second frequency domain representation having second spectral components representing a spectral content of the signal expressed in a second subspace of the multidimensional space, the second subspace including a part of the multidimensional space that is not included in the first subspace; calculating a side signal based on first and second frequency domain representations of the downmix signal encoded into the bitstream signal, a first frequency domain representation of the residual signal, and complex prediction coefficients; and calculating the stereo signal by applying a first frequency domain representation of the downmix signal and the side signal to a sum-difference transform. (b) interrupting the upmixing step. (Supplementary Note 20) The first spectral component has real-valued values expressed in the first subspace; the second spectral component has an imaginary value expressed in the second subspace; Optionally, the first spectral component is determined by one of a Discrete Cosine Transform (DCT) or a Modified Discrete Cosine Transform (MDCT); Optionally, the second spectral component is determined by one of a discrete sine transform (DST) or a modified discrete sine transform (MDST). 19. The decoding method of claim 19. (Supplementary Note 21) The downmix signal is partitioned into successive time frames, each time frame being associated with a value of a complex prediction coefficient; the step of calculating a second frequency domain representation of the downmix signal is interrupted in response to the absolute value of the imaginary parts of the complex prediction coefficients being less than a predetermined tolerance for a time frame, such that no output is generated for that time frame. 21. The decoding method of claim 20. (Supplementary Note 22) The downmix signal time frame is further partitioned into frequency bands, each frequency band being associated with a value of the complex prediction coefficient; the step of calculating a second frequency domain representation of the downmix signal is interrupted in response to the absolute value of the imaginary parts of the complex prediction coefficients being smaller than a predetermined tolerance value for a frequency band of a time frame, so as to not generate an output for that frequency band. 22. The decoding method of claim 21. (Supplementary Note 23) The first spectral components are transform coefficients arranged in a time frame of transform coefficients, each block being generated by application of the transform to a time segment of the time domain signal; Calculating a second frequency domain representation of the downmix signal comprises: determining a first intermediate component from the first spectral component; a sub-step of forming a combination of the first spectral components with at least a portion of an impulse response to obtain a second intermediate component; and determining the second spectral component from the second intermediate component. 21. The decoding method of claim 20. (Supplementary Note 24) A part of the impulse response is based on the frequency response characteristics of the transformation, Optionally, the frequency response characteristics of the transform depend on the characteristics of an analysis window function applied to the transform of the signal into time segments. 24. The decoding method according to claim 23. (Supplementary Note 25) The step of calculating the second frequency domain representation includes determining each time frame of the second spectral component using as input one of: (a) a concurrent time frame of the first spectral component; (b) concurrent and previous time frames of the first spectral component; and (c) concurrent, previous, and subsequent time frames of the first spectral component. 25. The decoding method according to claim 24. (Supplementary Note 26) The step of calculating the second frequency domain representation of the downmix signal includes the step of calculating an approximate second spectral representation having an approximate second spectral component determined by a combination of at least two time-adjacent and / or frequency-adjacent first spectral components. 26. A decoding method according to any one of appendices 19 to 25. (Supplementary Note 27) The stereo signal is represented in the time domain, and the method further comprises: omitting the upmixing step depending on whether the bitstream signal is coded by direct stereo coding or by simultaneous stereo coding; inverse transforming the bitstream signal to obtain the stereo signal. 27. A decoding method according to any one of appendices 19 to 26. (Supplementary Note 28) The method further comprises the steps of: omitting the steps of transmitting the time-domain representation of the downmix signal and calculating a side signal depending on whether the bitstream is encoded by direct stereo encoding or simultaneous stereo encoding; and inverse transforming a frequency domain representation of each channel encoded by the bitstream signal to obtain the stereo signal. 28. The decoding method according to claim 27. (Supplementary Note 29) An encoding method for encoding a stereo signal using a bitstream by complex predictive stereo coding, comprising: determining complex prediction coefficients; transforming the stereo signal into a first frequency domain representation of a downmix signal and a residual signal having a relationship determined by the complex prediction coefficients, the first frequency domain representation having first spectral components representing the spectral content of corresponding signals expressed in a first subspace of a multidimensional space; encoding the downmix channel, the residual channel and the complex prediction coefficients as the bitstream. (Supplementary Note 30) The step of determining the complex prediction coefficients is performed to minimize the power of the residual signal or the average power of the residual signal over time. 29. The encoding method of claim 29. (Supplementary Note 31) A step of defining or recognizing partitions of the stereo signal into time frames; and for each time segment, encoding or selecting the stereo signal in this time segment by at least one of the following options: direct stereo coding, joint stereo coding, and complex predictive stereo coding; If direct stereo encoding is selected, the stereo signal is converted to a frequency domain representation of a left channel and a right channel and encoded as the bitstream; If simultaneous stereo encoding is selected, the stereo signal is converted to a frequency domain representation of a downmix channel and a side channel and encoded into the bitstream. 31. The encoding method of claim 29 or 30. (Appendix 32) The option that provides the best sound quality according to a given psychoacoustic model is selected. 32. The encoding method of claim 31. (Supplementary Note 33) The method further comprises the step of defining or recognizing partitions of the stereo signal into time frames; the stereo signal has a downmix channel and a side channel; Transforming the stereo signal into a first frequency domain representation of a downmix channel and a residual channel comprises: - calculating a second frequency domain representation of the downmix signal based on the first frequency domain representation of the downmix channels, the second frequency domain representation having second spectral components representing a spectral content of the signal expressed in a second subspace of the multidimensional space, the second subspace including a part of the multidimensional space that is not included in the first subspace; constructing a residual signal based on first and second frequency domain representations of the downmix channels, a first frequency domain representation of the side channel, and the complex prediction coefficients; determining the complex prediction coefficients is performed one time frame at a time by minimizing the average power of the residual signal in each time frame; 31. The encoding method of claim 29 or 30. (Supplementary Note 34) converting the stereo signal into a simultaneously encoded stereo signal having a downmix channel and a side channel; - converting said downmix channels into an oversampled frequency domain representation, preferably having complex spectral content; converting the side channel to a critically sampled, preferably real-valued, frequency domain representation; calculating a residual signal based on the oversampled frequency domain representation of the downmix channel, the critically sampled frequency domain representation of the side channel, and the complex prediction coefficients; the determination of the complex prediction coefficients is performed by feedback control on the residual signal thus calculated in order to minimize its power or its average power; 34. The encoding method of any one of appendices 29 to 33. (Supplementary Note 35) The conversion of the downmix channels into an oversampled frequency domain representation is performed by applying MDCT and MDST and concatenating the outputs thereof. 34. The encoding method of claim 34. (Appendix 36) A computer program product having a computer-readable medium storing instructions that, when executed by a general-purpose computer, perform the method of any one of Appendices 19 to 35.< / nd>
Claims
1. 1. A method for encoding a stereo audio signal having a left channel and a right channel, the method comprising: estimating prediction coefficients using the left channel and the right channel; downmixing the left channel and the right channel using the prediction coefficients to generate a mid signal and a residual signal; multiplexing the mid signal, the residual signal, and the prediction coefficients to generate an audio bitstream; Including, the prediction coefficients minimize the energy of the residual signal, and the encoding operates in either a predictive mode or a non-predictive mode for a time frame based on the values of the prediction coefficients; The encoding operates in the non-predictive mode when the value of the prediction coefficient is zero. method.
2. 2. The method of claim 1 , wherein when the encoding operates in the predictive mode, the residual signal represents a difference between a side signal and a prediction of the side signal, and the downmix generates a prediction of the side signal based on the mid signal and the prediction coefficients.
3. 3. The method of claim 2, wherein when the encoding operates in the non-predictive mode, the residual signal represents the side signal, and the downmix generates the mid signal based on a sum of the left channel and the right channel, and generates the residual signal based on a difference between the left channel and the right channel.
4. The method of claim 1 , wherein the prediction coefficients are determined based on optimization using a mean squared error criterion.
5. The method of claim 1 , wherein when the downmixer operates in the predictive mode, the downmixer uses a filter with three taps to generate the residual signal.
6. The method of claim 1 , wherein the prediction coefficients are real-valued coefficients.
7. The method of claim 1 , wherein the prediction coefficients are complex-valued coefficients.
8. The method of claim 1 , wherein the prediction coefficients are quantized and coded in the audio bitstream.
9. The method of claim 1 , wherein the prediction coefficients are coded in the audio bitstream using multiple portions.
10. 1. An apparatus for encoding a stereo audio signal having a left channel and a right channel, the apparatus comprising: an estimator that generates prediction coefficients using the left channel and the right channel; a downmixer that mixes the left channel and the right channel using the prediction coefficients to generate a mid signal and a residual signal; a multiplexer that combines the mid signal, the residual signal, and the prediction coefficients to generate an audio bitstream; It has the prediction coefficients minimize the energy of the residual signal, and the encoding operates in either a predictive mode or a non-predictive mode for a time frame based on the values of the prediction coefficients; The encoding operates in the non-predictive mode when the value of the prediction coefficient is zero. Device.
11. 11. The apparatus of claim 10, wherein when the encoding operates in the predictive mode, the residual signal represents a difference between a side signal and a prediction of the side signal, and the mixing generates a prediction of the side signal based on the mid signal and the prediction coefficients.
12. 12. The apparatus of claim 11, wherein when the encoding operates in the non-predictive mode, the residual signal represents the side signal, and the downmix generates the mid signal based on a sum of the left channel and the right channel and generates the residual signal based on a difference between the left channel and the right channel.
13. The apparatus of claim 10 , wherein the prediction coefficients are determined based on optimization using a mean squared error criterion.
14. The apparatus of claim 10 , wherein when the downmixer operates in the predictive mode, the downmixer uses a filter with three taps to generate the residual signal.
15. The apparatus of claim 10 , wherein the prediction coefficients are real-valued coefficients.
16. The apparatus of claim 10 , wherein the prediction coefficients are complex-valued coefficients.
17. The apparatus of claim 10 , wherein the prediction coefficients are quantized and encoded in the audio bitstream.
18. The apparatus of claim 10 , wherein the prediction coefficients are encoded in the audio bitstream using multiple portions.
19. A non-transitory computer readable medium comprising instructions that, when executed by a processor, perform the method of any one of claims 1 to 9.
20. 19. A non-transitory computer readable medium containing an audio bitstream produced by an apparatus according to any one of claims 10 to 18 or by a processor executing a method according to any one of claims 1 to 9.
Citation Information
Patent Citations
Poly- phonic coding
JP1992506141A
Selective use of multiple entropy models in adaptive coding and decoding
JP2009501943A