Abstract:
To select the encoding mode of an audio signal in a multi-channel system, a level of energy of the audio signal associated with each channel is determined, which in turn is used to compute a first value. Next, a second value based on a degree of correlation of the signals of each channel is determined. If the first value is smaller than the second value, the audio signal is encoded using a first encoding mode. Next, a third value defined by the energy levels and a fourth value defined by the correlation are computed. If the first value is greater than the second value, and the third value is smaller than the fourth value, the audio signal is encoded using a second encoding mode. Otherwise the audio signal is encoded using a third encoding mode.

Description:
CROSS-REFERENCES TO RELATED APPLICATIONS  
         [0001]    Not Applicable  
         STATEMENT AS TO RIGHTS TO INVENTIONS MADE UNDER FEDERALLY SPONSORED RESEARCH OR DEVELOPMENT  
         [0002]    Not Applicable  
         REFERENCE TO A “SEQUENCE LISTING,” A TABLE, OR A COMPUTER PROGRAM LISTING APPENDIX SUBMITTED ON A COMPACT DISK  
         [0003]    Not Applicable  
         BACKGROUND OF THE INVENTION  
         [0004]    The present invention relates to encoding of audio frames, and more particularly for encoding audio frames in multi-channel audio systems.  
           [0005]    Many of the existing audio or video encoders are adapted for single channel systems. To encode audio frames associated with more than one channel, typically the same encoder is used to encode each channel separately. Often, there is strong correlation between different channels of the same audio system. Moreover, humans exhibit different sensitivities to the coding errors associated with different channels. Coding efficiency may thus be achieved if the channels are jointly coded. For example, when coding color images of a video frame, a color transformation is used to convert RGB images to YUV components. This allows bitrate reduction by coding the U and V components coarsely, i.e., using fewer bits, because humans can tolerate larger errors associated with coding of U and V components.  
           [0006]    In the MPEG-4 audio standard, multiple audio channels may be encoded as channel pairs. For each channel pair, the left and right channels may be encoded independently, known as the LR mode of encoding. Alternatively, the left and right channels may be encoded using either mid/side coding, known as the MS mode of encoding, or using the intensity/stereo encoding, known as the IS mode of encoding. These three encoding modes may be changed for each scale-factor band. Mode selection is typically selected via a multitude of bits in the coding bitstream. By selecting different modes, coding efficiency may be improved.  
           [0007]    Assume x l [i] and x r [i] respectively represent the i-th sample of left and right signals of a pair of channels. For the MS mode, a 2×2 linear transformation  
         1   2          [         1       1           1         -   1           ]                           
 
           [0008]    is used to de-correlate x l [i] and x r [i] to form the mid and side signals as follows:  
                 x   m          [   i   ]       =       1   2          (         x   l          [   i   ]       +       x   r          [   i   ]         )               (   1   )                   x   s          [   i   ]       =       1   2          (         x   l          [   i   ]       -       x   r          [   i   ]         )               (   2   )                               
 
           [0009]    The mid signal is the average of the left and right signals x l  and x r , and the side signal is the difference between these two signals. By performing the above transformation, a better compression is achieved if there is correlation between left signal x l  and right signal x r . If the left and right signals x l  and x r  are the same, the side signal is very small (or zero) and thus requires a small number bits to encode. Furthermore, the MS coding has been shown to improve auditory perception due to its control of the noise. If there is small correlation between left and right signals x l  and x r , the quantization errors may increase as a result of the above transformation, thereby degrading the coding efficiency of the MS mode. Moreover, additional overhead bits may be required to select between LR and MS modes.  
           [0010]    The IS mode uses the relationship between human perception of high-frequency sound components and their energy-time envelopes. Thus, in the IS mode, often only one components is transmitted, from which energy time-envelops of the other components are reconstructed with a transmitted scale factor. In a two-channel system, often only the left channel is transmitted and the right channel is reconstructed at the decoder as shown below:  
             x   r   [i ]=sign×is_scale× x   l   [i],   (3)  
           [0011]    where the sign bit determines the sign of x r [i] with respective to x l [i] and the scale factor is_scale is obtained using the following equation:  
             is_scale   =     2       -     1   4                     is_position               (   4   )                               
 
           [0012]    The sign and is_position are transmitted in the bitstream. The above is_position controls the scale factor is_scale. To transmit the energy envelop of the left channel, parameter is_scale is defined as:  
           is_scale=( E   r   /E   l ) 1/2    
           [0013]    Therefore:  
                      is_position   =     Q        (     2                   log   2            E   l       E   r         )         ,                           
 
           [0014]    where Q is a quantization operator quantizing  
       2                   log   2              E   l       E   r       .                           
 
           [0015]    If left and right signals are linearly dependent or approximately linearly dependent, i.e., α 1 x 1 [1]+α r x r [i]≈0, the right signal can be reconstructed completely without or with small error. Since only one signal is sent and the scale factor requires small number of bits to transmit, significant coding gain can be achieved. However, if there is no correlation between left and right signals, the use of IS mode can introduce great perception distortion when hearing both reconstructed signals.  
           [0016]    Since the coding efficiency associated with LR, MS or IS modes depends on the relationship between frames of the left and right channels, adaptively selecting which mode to be used may improve overall performance. One prior art technique is to encode the left and right channel frames using each of these three modes and select the mode which requires the fewest number of bits or the least perceptual distortion. However, because this technique requires that each audio frame be encoded three times, it is computationally inefficient.  
         BRIEF SUMMARY OF THE INVENTION  
         [0017]    In accordance with one embodiment of the present invention, to select the encoding mode of an audio signal in a multi-channel system, a level of energy of the audio signal associated with each of the channels is first determined. These energy levels are subsequently used to compute a first value. Next, a degree of correlation between the audio signals associated with each channel is determined. The correlation is subsequently used to compute a second value. If the first value is smaller than the second value, the audio signal is encoded using a first encoding mode.  
           [0018]    Next, a third value defined by the energy levels, and a fourth value defined by the degree of correlation are computed. If the first value is greater than the second value, and the third value is smaller than the fourth value, then the audio signal is encoded using a second encoding mode. If the first value is greater than the second value, and the third value is greater than the fourth value, then the audio signal is encoded using a third encoding mode.  
           [0019]    In some embodiments, the system includes two channels and the encoding modes from which one is selected are IS, MS and LR. In these embodiments, the first value is defined by (τ E l  E r ) where τ is a programmable parameter defined by a user, and where energies E l  and E r  associated with the left and right channels are defined by:  
               E   l     =       ∑     i   ∈   band                x   l          [   i   ]       2                     E   r     =       ∑     i   ∈   band                x   r          [   i   ]       2                                   
 
           [0020]    where x l [i] and x r [i] respectively represent the i-th sample of the signals of the left and right channels, and wherein said second value is defined by the square of the cross-correlation of the signals of the left and right defined by:  
       C   =       ∑     i   ∈   band                x   l          [   i   ]              x   r          [   i   ]                                 
 
           [0021]    and where the IS mode of encoding is selected if C 2  is greater than (τ E l  E r ).  
           [0022]    In these embodiments, the third value is defined by |E l −E r |, the fourth value is defined by 2|C|, the MS mode of encoding is selected if 2|C| is greater than |E l −E r |, and the LR mode of encoding is selected if 2|C| is smaller than |E l −E r |.  
           [0023]    In some embodiments, in the IS mode of encoding, the left and right channel signals x l1  and x r1  are defined as following:  
                 x   l1          [   i   ]       =     {           a        (         x   l          [   i   ]       +       x   r          [   i   ]         )           if         C   &gt;   0               a        (         x   l          [   i   ]       -       x   r          [   i   ]         )           otherwise                                       x   r1          [   i   ]       =     b                     x   l1          [   i   ]                                     
 
           [0024]    Parameters a and b and is_position are defined as:  
               a   =       1         E   l     +     E   r     +     2           C                ×       E   l                
          b   =         2       -     1   4                     is_position            
        is_position     =     Q        (     2                   log   2            E   l       E   r         )                                                   
 
           [0025]    where Q is a quantization operator.  
           [0026]    In other embodiments, in the IS mode of encoding, the left and right channel signals x l1  and x r1  are defined as following:  
                 x   l1          [   i   ]       =     {           a        (         x   l          [   i   ]       +       x   r          [   i   ]         )           if         C   &gt;   0               a        (         x   l          [   i   ]       -       x   r          [   i   ]         )           otherwise                                       x   r1          [   i   ]       =     b                     x   l1          [   i   ]                                     
 
           [0027]    Parameters a and b and is_position are defined as:  
             a   =       1         E   l     +     E   r     +     2           C                ×     {               E   r            2       1   4        is_position                 if                   E   r       &gt;     E   l                   E   l           otherwise                         b   =     2       -     1   4          is_position                   is_position   =     Q   (     2        log   2            E   l       E   r         )                                 
 
           [0028]    Some embodiments of the present invention are adapted to select between MS encoding and LR encoding of an audio signal. To encode an audio signal in these embodiments, in accordance with a first method four energy levels E l2 , E r2 , E ml  and E s1  defined as following are computed:  
               E   l2     =       ∑     i   ∈   band                                      x   l          [   i   ]                            E   r2     =       ∑     i   ∈   band                                      x   r          [   i   ]                            E   m1     =       ∑     i   ∈   band                                        x   r          [   i   ]       +       x   r          [   i   ]                              E   s1     =       ∑     i   ∈   band                                        x   r          [   i   ]       -       x   r          [   i   ]                                            
 
           [0029]    where x l [i] and x r [i] respectively are the i-th samples of the audio signal corresponding to the left and right channels. If (E l2 +E r2 ) is greater than  
         1     2            (       E   m1     +     E   s1       )                           
 
           [0030]    the MS mode is selected, otherwise the LR mode is selected.  
           [0031]    To further reduce the number of computations, energy levels F 1  and F 2  defined as following are computed:  
             F   1 =( E   l2   +E   r2 )  
             F   2 =( E   m1   +E   s1 )  
           [0032]    Accordingly, the MS mode is selected if 16×(F 1 ×F 2 )+F 1 +4×F 2  is greater than zero; otherwise the LR mode 16×(F 1 −F 2 )+F 1 +4×F 2  is selected.  
       
    
    
     BRIEF DESCRIPTION OF THE DRAWINGS  
       [0033]    [0033]FIG. 1 is a flow-chart of the steps performed in selecting one of IS, MS and LR modes for encoding of audio signals, in accordance with one embodiment of the present invention.  
         [0034]    [0034]FIG. 2 is a flow-chart of the steps performed in selecting one of IS, MS and LR modes for encoding of audio signals, in accordance with another embodiment of the present invention.  
         [0035]    [0035]FIG. 3 is a flow-chart of steps involved in selecting one of MS and LR modes, in accordance with one embodiment of the present invention.  
         [0036]    [0036]FIG. 4 is a flow-chart of steps involved in selecting one of MS and LR modes, in accordance with another embodiment of the present invention. 
     
    
     DETAILED DESCRIPTION OF THE INVENTION  
       [0037]    In accordance with one embodiment of the present invention, the degree of cross-correlation between corresponding audio frames of left and right channels is used, in part, to decide whether to encoded these frames in accordance with IS mode, as explained further below. Assume E l  represents the energy of the audio frame to be encoded by the left channel (hereinafter alternatively referred to as the left signal) and E r  represents the energy of the audio frame to be encoded by the right channel (hereinafter alternatively referred to as the right signal), accordingly:  
               E   l     =       ∑     i   ∈   band                                   x   l          [   i   ]       2               (   5   )                 E   r     =       ∑     i   ∈   band                                   x   r          [   i   ]       2               (   6   )                               
 
         [0038]    where x l [i] and x r [i] respectively represent the i-th sample of the left and right signals.  
         [0039]    The cross-correlation C between these two signals is defined as:  
             C   =       ∑     i   ∈   band                                   x   l          [   i   ]              x   r          [   i   ]                   (   7   )                               
 
         [0040]    which when normalized is as following:  
             ρ   =     C         E   l          E   r                   (   8   )                               
 
         [0041]    In accordance with the first aspect of the present, mode IS is selected if ρ 2 &gt;τ, where τ is a decision threshold defined by the user. Combining equations (7) and (8), it is seen that the IS mode is selected if:  
           C   2   &gt;τ E   l   E   r   (9)  
         [0042]    In some embodiments, τ is selected to have value between 0.9 and 1.  
         [0043]    As seen from expression (9), if C 2  is greater than (τ E l  E r ), the IS mode is selected. If, however, C 2  is less than (τ E l  E r ), one of LR and MS mode is selected, as described further below. Assume that G LR  and G MS  represent the coding gains achieved from using the LR and MS modes, respectively:  
           G   LR =( E   l   +E   r )/( E   l   E   r ) 1/2   (10)  
           G   MS =( E   m   +E   s )/( E   m   E   s ) 1/2   (11)  
         [0044]    where E m  and E s  are the energies of the MS signals x m  and x s  respectively. Signals x m  and x s  are obtained using equations (1) and (2) that are repeated below:  
                 x   m          [   i   ]       =       1   2          (         x   l          [   i   ]       +       x   r          [   i   ]         )               (   1   )                   x   s          [   i   ]       =       1   2          (         x   l          [   i   ]       -       x   r          [   i   ]         )               (   2   )                               
 
         [0045]    In accordance with the present invention, mode MS is selected signals if G MS  is greater than G LR . Using equations (10 and (2), energies E m  and E s  are as shown in the following:  
               E   m     =         1   4            ∑     i   ∈   band                                 (         x   l          [   i   ]       +       x   r          [   i   ]         )     2         =       1   4          (       E   l     +     E   r     +     2      C       )                 (   12   )                 E   s     =         1   4            ∑     i   ∈   band                                 (         x   l          [   i   ]       -       x   r          [   i   ]         )     2         =       1   4          (       E   l     +     E   r     -     2      C       )                 (   13   )                               
 
         [0046]    By substituting equations (10 and (13) into equation (11) it is seen that:  
           G   MS =2( E   l   +E   r )/(( E   l   +E   r ) 2 −4 C   2 ) 1/2   (14)  
         [0047]    Thus, from equations (14) and (10), it is seen that G MS  is greater than G LR  if the following condition holds:  
         2 |C|&gt;|E   l   −E   r   (15)  
         [0048]    Therefore, if inequality (15) is true, in accordance with the present invention, mode MS is selected, otherwise mode LR is selected.  
         [0049]    As is understood by those skilled in the art, the IS mode is more adapted for high frequency bands. Because the MS mode is obtained by a linear transformation, it may be selected for all frequency bands.  
         [0050]    Generation of IS Signals  
         [0051]    In accordance with another aspect of the present invention, right and left signals for use in the IS mode, are computed in accordance with the following:  
                 x   l1          [   i   ]       =     {           a        (         x   l          [   i   ]       +       x   r          [   i   ]         )           if         C   &gt;   0               a        (         x   l          [   i   ]       -       x   r          [   i   ]         )           otherwise                               (   16   )                               
 
           x   r1   [i]=bx   l1   [i]   (17)  
         [0052]    Parameters a and b are described further below. As seen from equations (16) and (17), the right and left signals have different signs if C&lt;0. Assume that E l1  and E r1  represent the energy of x l1 [i] and x r1 [i] respectively. From equations (16) and (17) it is seen that:  
           E   l1   =a   2 ( E   l   +E   r +2 |C|)   (18)  
           E   r1   =b   2   E   l1   (19)  
         [0053]    To determine a and b, the energy E l1  of the left signal x l1  is set to equal to the energy E l  of signal x l , shown in equation (5). Similarly, the energy E r1  of the right signal x r1  is set to equal to the energy E r  of signal x r , shown in equation (6). Accordingly, from equations (18)-(19) and ((5)-(6), it is seen that:  
             a   =       1         E   l     +     E   r     +     2           C                ×       E   l                 (   20   )                               
 
         [0054]    At the decoder, the right signal is constructed from the left signal using equation (3) that is shown again below:  
           x   r   [i]=sign×is _scale× x   l   [i],   (3)  
         [0055]    Therefore:  
       b   =     2       -     1   4                     is_position                             
 
         [0056]    Using equations (21) and (4), it is seen that  
             is_position   =     Q        (     2                   log   2            E   l       E   r         )               (   22   )                               
 
         [0057]    where Q( ) represents a quantization operation. Because of the quantization operation, the reconstructed right signal at the decoder is often not exactly equal to that obtained using equation (17).  
         [0058]    In accordance with one aspect of the present invention, scaling factor a is selected as shown below in equation (23) so as to further reduce the total energy difference between original and new left and right signals, i.e. the quantity of |E l1 +E r1 −E l −E r |:  
             a   =       1         E   l     +     E   r     +     2           C                ×     {               E   r            2       1   4                   is_position                 if                   E   r       &gt;     E   l                   E   l           otherwise                     (   23   )                               
 
         [0059]    If there is no quantization error in computing the is_position as a result of the quantization operation, then:  
           E   l       =         E   r              2       1   4                   is_position       .                             
 
         [0060]    [0060]FIG. 1 is a flow-chart  100  showing the steps involved in selecting one of IS, MS and LR modes, in accordance with the present invention. In step  102 , left and right signals x l  and x r  are received from which energies E l , E r  and cross-correlation C are computed, in accordance with equations (5)-(7) described above. Next, in step  104 , C 2  and τ E l  E r  are computed. As seen from equation (9), If C 2 is greater than τ E l  E r , then the IS mode is selected in step  106 . Next, in step  108  and using equation (22) parameter is_position is computed. Next, in step  110 , the left signal x l  is encoded.  
         [0061]    If in step  104 , C 2  is less than τ E l  E r , then the IS mode is not selected and the process moves to step  112 , where 2|C| and |E l −E r | are computed. If 2|C| is greater than |E l −E r |, see inequality (15), then the MS mode is selected in step  114 . Next, in step  116 , x m  and x s  are encoded using equations (1) and (20 shown above. If in step  112 , 2|C| is determined to be less than |E l −E r |, then the LR mode is selected in step  118 . Next, in step  120 , x r  and x l  are encoded.  
         [0062]    [0062]FIG. 2 is a flow-chart  200 , showing the steps involved in selecting one of IS, MS and LR modes, in accordance with the present invention. Except as for step  110 , flow-chart  200  is similar to flow-chart  100  and is thus not described in detail. In step  130  of flow-chart  200 , after the IS mode is selected in step  106 , and parameter is_position is computed in step  108 , left signal x l1  of the present invention and defined in equation (16), is computed using either equation (2) or equation (23).  
         [0063]    Decision for MS and LR Modes  
         [0064]    In some embodiments of the present invention, a decision is made to select between only the MS and LR modes. To further reduce the computations for these embodiments, by combining equations (12) and (13) it is shown that:  
                   ∑     i   ∈   band              (         x   l          [   i   ]       +       x   r          [   i   ]         )     2       +       ∑     i   ∈   band              (         x   l          [   i   ]       -       x   r          [   i   ]         )     2         =     2        (       E   l     +     E   r       )               (   24   )                               
 
         [0065]    Accordingly, in these embodiments, the MS mode is selected if the following inequality is true:  
               (       E   l2     +     E   r2       )     &gt;       1     2            (       E   m1     +     E   s1       )               (   25   )                               
 
         [0066]    where energies E 1l  and E l2  are the energy of original signals calculated using the absolute value operators, as shown below:  
               E   l2     =       ∑     i   ∈   band                   x   l          [   i   ]                      (   26   )                 E   r2     =       ∑     i   ∈   band                   x   r          [   i   ]                      (   27   )                               
 
         [0067]    In accordance with the present invention, energies E m1  and E s1  are defined as following:  
               E   m1     =       ∑     i   ∈   band                     x   l          [   i   ]       +       x   r          [   i   ]                        (   28   )                 E   s1     =       ∑     i   ∈   band                     x   r          [   i   ]       -       x   r          [   i   ]                        (   29   )                               
 
         [0068]    [0068]FIG. 3 is a flow-chart  300 , showing the steps involved in selecting one of MS and LR modes, in accordance with the present invention, when only these two modes are available. In step  302 , energies E l2 , E r2 , E m1  and E s1  are computed, in accordance with equations (26)-(29). Next, in step  304 , it is determined whether inequality (25) is true or false. If inequality (25) is true, the MS mode is selected in step  306 . Next, in step  308 , mid and sid signals x m  and x s  signals are computed, in accordance with equations (1) and (2). If inequality (35) is false, the LR mode is selected in step  310 . Next, in step  312 , left and right signals x l  and x r  signals are computed.  
         [0069]    To further reduce the computation, parameters F 1  and F 2  are defined as following:  
           F   1 =( E   l2   +E   r2 )  (30)  
           F   2 =( E   m1   +E   s1 ).  (31)  
         [0070]    and {square root}{square root over (2)} is approximated as by 17/12 or 1.4167. Accordingly, inequality (25) used for selecting either the MS or the LR mode may be simplifies as:  
         16×( F   1   −F   2 )+ F   1 +4 ×F   2 &gt;0  (32)  
         [0071]    Since the multiplications by 16 and 4 my be implemented in digital logic by shifting operation, determination of whether to select MS or the LR mode is simplified.  
         [0072]    [0072]FIG. 4 is a flow-chart  400 , showing the steps involved in selecting one of the MS and LR modes, in accordance with the present invention, when only these two modes are available. In step  402 , energy related parameters F 1  and F 2  are computed, in accordance with equations (26)-(3 1). Next, in step  404 , it is determined whether inequality (32) is true or false. If inequality (35) is true, the MS mode is selected in step  406 . Next, in step  408 , mid and sid signals x m  and x s  signals are computed, in accordance with equations (1) and (2). If inequality (35) is false, the LR mode is selected in step  410 . Next, in step  412 , left and right signals x l  and x r  signals are computed.  
         [0073]    It is understood that the above embodiments of the present invention may be performed entirely by software modules executed by a central processing unit. The above embodiments may also be performed by a combination of software and hardware modules. Alternatively, other embodiments may be performed entirely by dedicated hardware modules.  
         [0074]    The above embodiments of the present invention are illustrative and not limitative. Various alternatives and equivalents are possible. Other additions, subtractions, deletions, and other modifications and changes to the present invention may be made thereto without departing from the scope of the present invention and is set forth in the appended claims.