# Patent

## Title
Encoding apparatus and decoding apparatus for transforming between modified discrete cosine transform-based coder and different coder

## Abstract

An encoding apparatus and a decoding apparatus in a transform between a Modified Discrete Cosine Transform (MDCT)-based coder and a different coder are provided. The encoding apparatus may encode additional information to restore an input signal encoded according to the MDCT-based coding scheme, when switching occurs between the MDCT-based coder and the different coder. Accordingly, an unnecessary bitstream may be prevented from being generated, and minimum additional information may be encoded.

## Background
CROSS REFERENCE TO RELATED APPLICATIONS
This application claims the benefit under 35 U.S.C. Section 371, of PCT International Application No. PCT/KR2009/005340, filed Sep. 18, 2009, which claimed priority to Korean Application No. 10-2008-0091697, filed Sep. 18, 2008, the disclosures of which are hereby incorporated by reference.
TECHNICAL FIELD
The present invention relates to an apparatus and method for reducing an artifact, generated when transform is performed between different types of coders, when an audio signal is encoded and decoded by combining a Modified Discrete Cosine Transform (MDCT)-based audio coder and a different speech/audio coder.
BACKGROUND ART
When an encoding/decoding method is differently applied to an input signal where a speech and audio are combined depending on a characteristic of the input signal, a performance and a sound quality may be improved. For example, it may be efficient to apply a Code Excited Linear Prediction (CELP)-based encoder to a signal having a similar characteristic to a speech signal, and to apply a frequency conversion-based encoder to a signal identical to an audio signal.
A Unified Speech and Audio Coding (USAC) may be developed by applying the above-described concepts. The USAC may continuously receive an input signal and analyze a characteristic of the input signal at particular times. Then, the USAC may encode the input signal by applying different types of encoding apparatuses through switching depending on the characteristic of the input signal.
A signal artifact may be generated during signal switching in the USAC. Since the USAC encodes an input signal for each block, a blocking artifact may be generated when different types of encodings are applied. To overcome such a disadvantage, the USAC may perform an overlap-add operation by applying a window to blocks where different encodings are applied. However, additional bitstream information may be required due to the overlap, and when switching frequently occurs, an additional bitstream to remove blocking artifact may increase. When a bitstream increases, an encoding efficiency may be reduced.
In particular, the USAC may encode an audio characteristic signal using a Modified Discrete Cosine Transform (MDCT)-based encoding apparatus. An MDCT scheme may transform an input signal of a time domain into an input signal of a frequency domain, and perform an overlap-add operation among blocks. In an MDCT scheme, aliasing may be generated in a time domain, whereas a bit rate may not increase even when an overlap-add operation is performed.
In this instance, a 50% overlap-add operation is to be performed with a neighbor block to restore an input signal based on an MDCT scheme. That is, a current block to be outputted may be decoded depending on an output result of a previous block. However, when the previous block is not encoded using the USAC using an MDCT scheme, the current block, encoded using the MDCT scheme, may not be decoded through an overlap-add operation since MDCT information of the previous block may not be used. Accordingly, the USAC may additionally require the MDCT information of the previous block, when encoding a current block using an MDCT scheme after switching.
When switching frequently occurs, additional MDCT information for decoding may be increased in proportion to the number of switchings. In this instance, a bit rate may increase due to the additional MDCT information, and a coding efficiency may significantly decrease. Accordingly, a method that may remove blocking artifact and reduce the additional MDCT information during switching is required.
DISCLOSURE OF INVENTION
Technical Goals
An aspect of the present invention provides an encoding method and apparatus and a decoding method and apparatus that may remove a blocking artifact and reduce required MDCT information.
According to an aspect of the present invention, there is provided a first encoding unit to encode a speech characteristic signal of an input signal according to a coding scheme different from a Modified Discrete Cosine Transform (MDCT)-based coding scheme; and a second encoding unit to encode an audio characteristic signal of the input signal according to the MDCT-based coding scheme. The second encoding unit may perform encoding by applying an analysis window which does not exceed a folding point, when the folding point where switching occurs between the speech characteristic signal and the audio characteristic signal exists in a current frame of the input signal. Here, the folding point may be an area where aliasing signals are folded when an MDCT and an Inverse MDCT (IMDCT) are performed. When a N-point MDCT is performed, the folding point may be located at a point of N/4 and 3N/4. The folding point may be any one of well-known characteristics associated with an MDCT, and a mathematical basis for the folding point is not described herein. Also, a concept of the MDCT and the folding point is described in detail with reference to FIG. 5.
Also, for ease of description, when a previous frame signal is a speech characteristic signal and a current frame signal is an audio characteristic signal, the folding point, used when connecting the two different types of characteristic signals, may be referred to as a ‘folding point where switching occurs’ hereinafter. Also, when a later frame signal is a speech characteristic signal, and a current frame signal is an audio characteristic signal, the folding point used when connecting the two different types of characteristic signals, may be referred to as a ‘folding point where switching occurs’.
Technical Solutions
According to an aspect of the present invention, there is provided an encoding apparatus, including: a window processing unit to apply an analysis window to a current frame of an input signal; an MDCT unit to perform an MDCT with respect to the current frame where the analysis window is applied; a bitstream generation unit to encode the current frame and to generate a bitstream of the input signal. The window processing unit may apply an analysis window which does not exceed a folding point, when the folding point where switching occurs between a speech characteristic signal and an audio characteristic signal exists in the current frame of the input signal.
According to an aspect of the present invention, there is provided a decoding apparatus, including: a first decoding unit to decode a speech characteristic signal of an input signal encoded according to a coding scheme different from an MDCT-based coding scheme; a second decoding unit to decode an audio characteristic signal of the input signal encoded according to the MDCT-based coding scheme; and a block compensation unit to perform block compensation with respect to a result of the first decoding unit and a result of the second decoding unit, and to restore the input signal. The block compensation unit may apply a synthesis window which does not exceed a folding point, when the folding point where switching occurs between the speech characteristic signal and the audio characteristic signal exists in a current frame of the input signal.
According to an aspect of the present invention, there is provided a decoding apparatus, including: a block compensation unit to apply a synthesis window to additional information extracted from a speech characteristic signal and a current frame and to restore an input signal, when a folding point where switching occurs between the speech characteristic signal and the audio characteristic signal exists in the current frame of the input signal.
Advantageous Effects
According to an aspect of the present invention, there is provided an encoding apparatus and method and a decoding apparatus and method that may reduce additional MDCT information required when switching occurs between different types of coders depending on a characteristic of an input signal, and remove a blocking artifact.
Also, according to an aspect of the present invention, there is provided an encoding apparatus and method and a decoding apparatus and method that may reduce additional MDCT information required when switching occurs between different types of coders, and thereby may prevent a bit rate from increasing and improve a coding efficiency.



BRIEF DESCRIPTION OF DRAWINGS
FIG. 1 is a block diagram illustrating an encoding apparatus and a decoding apparatus according to an embodiment of the present invention;
FIG. 2 is a block diagram illustrating a configuration of an encoding apparatus according to an embodiment of the present invention;
FIG. 3 is a diagram illustrating an operation of encoding an input signal through a second encoding unit according to an embodiment of the present invention;
FIG. 4 is a diagram illustrating an operation of encoding an input signal through window processing according to an embodiment of the present invention;
FIG. 5 is a diagram illustrating a Modified Discrete Cosine Transform (MDCT) operation according to an embodiment of the present invention;
FIG. 6 is a diagram illustrating an encoding operation (C1, C2) according to an embodiment of the present invention;
FIG. 7 is a diagram illustrating an operation of generating a bitstream in a C1 according to an embodiment of the present invention;
FIG. 8 is a diagram illustrating an operation of encoding an input signal through window processing in a C1 according to an embodiment of the present invention;
FIG. 9 is a diagram illustrating an operation of generating a bitstream in a C2 according to an embodiment of the present invention;
FIG. 10 is a diagram illustrating an operation of encoding an input signal through window processing in a C2 according to an embodiment of the present invention;
FIG. 11 is a diagram illustrating additional information applied when an input signal is encoded according to an embodiment of the present invention;
FIG. 12 is a block diagram illustrating a configuration of a decoding apparatus according to an embodiment of the present invention;
FIG. 13 is a diagram illustrating an operation of decoding a bitstream through a second decoding unit according to an embodiment of the present invention;
FIG. 14 is a diagram illustrating an operation of extracting an output signal through an overlap-add operation according to an embodiment of the present invention;
FIG. 15 is a diagram illustrating an operation of generating an output signal in a C1 according to an embodiment of the present invention;
FIG. 16 is a diagram illustrating a block compensation operation in a C1 according to an embodiment of the present invention;
FIG. 17 is a diagram illustrating an operation of generating an output signal in a C2 according to an embodiment of the present invention; and
FIG. 18 is a diagram illustrating a block compensation operation in a C2 according to an embodiment of the present invention.



BEST MODE FOR CARRYING OUT THE INVENTION
Reference will now be made in detail to embodiments of the present invention, examples of which are illustrated in the accompanying drawings, wherein like reference numerals refer to the like elements throughout. The embodiments are described below in order to explain the present invention by referring to the figures.
FIG. 1 is a block diagram illustrating an encoding apparatus 101 and a decoding apparatus 102 according to an embodiment of the present invention.
The encoding apparatus 101 may generate a bitstream by encoding an input signal for each block. In this instance, the encoding apparatus 101 may encode a speech characteristic signal and an audio characteristic signal. The speech characteristic signal may have a similar characteristic to a voice signal, and the audio characteristic signal may have a similar characteristic to an audio signal. The bitstream with respect to an input signal may be generated as a result of the encoding, and be transmitted to the decoding apparatus 102. The decoding apparatus 102 may generate an output signal by decoding the bitstream, and thereby may restore the encoded input signal.
Specifically, the encoding apparatus 101 may analyze a state of the continuously inputted signal, and switch to enable an encoding scheme corresponding to the characteristic of the input signal to be applied according to a result of the analysis. Accordingly, the encoding apparatus 101 may encode blocks where a coding scheme is applied. For example, the encoding apparatus 101 may encode the speech characteristic signal according to a Code Excited Linear Prediction (CELP) scheme, and encode the audio characteristic signal according to a Modified Discrete Cosine Transform (MDCT) scheme. Conversely, the decoding apparatus 102 may restore the input signal by decoding the input signal, encoded according to the CELP scheme, according to the CELP scheme and by decoding the input signal, encoded according to the MDCT scheme, according to the MDCT scheme.
In this instance, when the input signal is switched to the audio characteristic signal from the speech characteristic signal, the encoding apparatus 101 may encode by switching from the CELP scheme to the MDCT scheme. Since the encoding is performed for each block, blocking artifact may be generated. In this instance, the decoding apparatus 102 may remove the blocking artifact through an overlap-add operation among blocks.
Also, when a current block of the input signal is encoded according to the MDCT scheme, MDCT information of a previous block is required to restore the input signal. However, when the previous block is encoded according to the CELP scheme, since MDCT information of the previous block does not exist, the current block may not be restored according to the MDCT scheme. Accordingly, additional MDCT information of the previous block is required. Also, the encoding apparatus 101 may reduce the additional MDCT information, and thereby may prevent a bit rate from increasing.
FIG. 2 is a block diagram illustrating a configuration of an encoding apparatus 101 according to an embodiment of the present invention.
Referring to FIG. 2, the encoding apparatus 101 may include a block delay unit 201, a state analysis unit 202, a signal cutting unit 203, a first encoding unit 204, and a second encoding unit 205.
The block delay unit 201 may delay an input signal for each block. The input signal may be processed for each block for encoding. The block delay unit 201 may delay back (−) or delay ahead (+) the inputted current block.
The state analysis unit 202 may determine a characteristic of the input signal. For example, the state analysis unit 202 may determine whether the input signal is a speech characteristic signal or an audio characteristic signal. In this instance, the state analysis unit 202 may output a control parameter. The control parameter may be used to determine which encoding scheme is used to encode the current block of the input signal.
For example, the state analysis unit 202 may analyze the characteristic of the input signal, and determine, as the speech characteristic signal, a signal period corresponding to (1) a steady-harmonic (SH) state showing a clear and stable harmonic component, (2) a low steady harmonic (LSH) state showing a strong steady characteristic in a low frequency bandwidth and showing a harmonic component of a relatively long period, and (3) a steady-noise (SN) state which is a white noise state. Also, the state analysis unit 202 may analyze the characteristic of the input signal, and determine, as the audio characteristic signal, a signal period corresponding to (4) a complex-harmonic (CH) state showing a complex harmonic structure where various tone components are combined, and (5) a complex-noisy (CN) state including unstable noise components. Here, the signal period may correspond to a block unit of the input signal.
The signal cutting unit 203 may enable the input signal of the block unit to be a sub-set.
The first encoding unit 204 may encode the speech characteristic signal from among input signals of the block unit. For example, the first encoding unit 204 may encode the speech characteristic signal in a time domain according to a Linear Predictive Coding (LPC). In this instance, the first encoding unit 204 may encode the speech characteristic signal according to a CELP-based coding scheme. Although a single first encoding unit 204 is illustrated in FIG. 2, one or more first encoding unit may be configured.
The second encoding unit 205 may encode the audio characteristic signal from among the input signals of the block unit. For example, the second encoding unit 205 may transform the audio characteristic signal from the time domain to the frequency domain to perform encoding. In this instance, the second encoding unit 205 may encode the audio characteristic signal according to an MDCT-based coding scheme. A result of the first decoding unit 204 and a result of the second encoding unit 205 may be generated in a bitstream, and the bitstream generated in each of the encoding units may be controlled to be a single bitstream through a bitstream multiplexer (MUX).
That is, the encoding apparatus 101 may encode the input signal through any one of the first encoding unit 204 and the second encoding unit 205, by switching depending on a control parameter of the state analysis unit 202. Also, the first encoding unit 204 may encode the speech characteristic signal of the input signal according to the coding scheme different from the MDCT-based coding scheme. Also, the second encoding unit 205 may encode the audio characteristic signal of the input signal according to the MDCT-based coding scheme.
FIG. 3 is a diagram illustrating an operation of encoding an input signal through a second encoding unit 205 according to an embodiment of the present invention.
Referring to FIG. 3, the second encoding unit 205 may include a window processing unit 301, an MDCT unit 302, and a bitstream generation unit 303.
In FIG. 3, X(b) may denote a basic block unit of the input signal. The input signal is described in detail with reference FIG. 4 and FIG. 6. The input signal may be inputted to the window processing unit 301, and also may be inputted to the window processing unit 301 through the block delay unit 201.
The window processing unit 301 may apply an analysis window to a current frame of the input signal. Specifically, the window processing unit 301 may apply the analysis window to a current block X(b) and a delayed block X(b−2). The current block X(b) may be delayed back to the previous block X(b−2) through the block delay unit 201.
For example, the window processing unit 301 may apply an analysis window, which does not exceed a folding point, to the current frame, when a folding point where switching occurs between a speech characteristic signal and an audio characteristic signal exists in the current frame. In this instance, the window processing unit 301 may apply the analysis window which is configured as a window which has a value of 0 and corresponds to a first sub-block, a window corresponding to an additional information area of a second sub-block, and a window which has a value of 1 and corresponds to a remaining area of the second sub-block based on the folding point. Here, the first sub-block may indicate the speech characteristic signal, and the second sub-block may indicate the audio characteristic signal.
A degree of block delay, performed by the block delay unit 201, may vary depending on a block unit of the input signal. When the input signal passes through the window processing unit 301, the analysis window may be applied, and thus {X(b−2), X(b)}{circle around (x)}Wanalysis may be extracted. Accordingly, the MDCT unit 302 may perform an MDCT with respect to the current frame where the analysis window is applied. Also, the bitstream generation unit 303 may encode the current frame and generate a bitstream of the input signal.
FIG. 4 is a diagram illustrating an operation of encoding an input signal through window processing according to an embodiment of the present invention.
Referring to FIG. 4, the window processing unit 301 may apply the analysis window to the input signal. In this instance, the analysis window may be in a form of a rectangle or a sine. A form of the analysis window may vary depending on the input signal.
When the current block X(b) is inputted, the window processing unit 301 may apply the analysis window to the current block X(b) and the previous block X(b−2). Here, the previous block X(b−2) may be delayed back by the block delay unit 102. For example, the block X(b) may be set as a basic unit of the input signal according to Equation 1 given as below. In this instance, two blocks may be set as a single frame and encoded.

X(b)=[s(b−1),s(b)]T  [Equation 1]

In this instance, s(b) may denote a sub-block configuring a single block, and may be defined by,

s(b)=[s((b−1)·N/4),s((b−1)·N/4+1), . . . ,s(b−1)·N/4+N/4−1)]T  [Equation 2]

s(n): a sample of an input signal
Here, N may denote a size of a block of the input signal. That is, a plurality of blocks may be included in the input signal, and each of the blocks may include two sub-blocks. A number of sub-blocks included in a single block may vary depending on a system configuration and the input signal.
For example, the analysis window may be defined according to Equation 3 given as below. Also, according to Equation 2 and Equation 3, a result of applying the analysis window to a current block of the input signal may be represented as Equation 4.

Wanalysis=[w1,w2,w3,w4]T 

wi=[wi(0), . . . ,wi(N/4−1)]T  [Equation 3]

[X(b−2),X(b)]T{circle around (x)}Wanalysis=[s((b−2)N/4)·w1(0), . . . ,s((b−1)N/4+N/4−1)·w4(N/4−1)]T  [Equation 4]

Wanalysis may denote the analysis window, and have a symmetric characteristic. As illustrated in FIG. 4, the analysis window may be applied to two blocks. That is, the analysis window may be applied to four sub-blocks. Also, the window processing unit 301 may perform ‘point by point’ multiplication with respect to an N-point of the input signal. The N-point may indicate an MDCT size. That is, the window processing unit 301 may multiply a sub-block with an area corresponding to a sub-block of the analysis window.
The MDCT unit 302 may perform an MDCT with respect to the input signal where the analysis window is processed.
FIG. 5 is a diagram illustrating an MDCT operation according to an embodiment of the present invention.
An input signal configured as a block unit and an analysis window applied to the input signal are illustrated in FIG. 5. As described above, the input signal may include a frame including a plurality of blocks, and a single block may include two sub-blocks.
The encoding apparatus 101 may apply an analysis window Wanalysis to the input signal. The input signal may be divided into four sub-blocks X1 (Z), X2(Z), X3(Z), X4(Z) included in a current frame, and the analysis window may be divided into W1(Z), W2 (Z), W2H(Z), W1H(Z). Also, when an MDCT/quantization/Inverse MDCT (IMDCT) is applied to the input signal based on the folding point dividing the sub-blocks, an original area and aliasing area may occur.
The decoding apparatus 102 may apply a synthesis window to the encoded input signal, remove aliasing generated during the MDCT operation through an overlap-add operation, and thereby may extract an output signal.
FIG. 6 is a diagram illustrating an encoding operation (C1, C2) according to an embodiment of the present invention.
In FIG. 6, the C1 (Change case 1) and C2 (Change case 2) may denote a border of an input signal where an encoding scheme is applied. Sub-blocks, s(b−5), s(b−4), s(b−3), and s(b−2), located in a left side based on the C1 may denote a speech characteristic signal. Sub-blocks, s(b−1), s(b), s(b+1), and s(b+2), located in a right side based on the C1 may denote an audio characteristic signal. Also, sub-blocks, s(b+m−1) and s(b+m), located in a left side based on the C2 may denote an audio characteristic signal, and sub-blocks, s(b+m+1) and s(b+m+2), located in a right side based on the C2 may denote a speech characteristic signal.
In FIG. 2, the speech characteristic signal may be encoded through the first encoding unit 204, the audio characteristic signal may be encoded through the second encoding unit 205, and thus switching may occur in the C1 and the C2. In this instance, switching may occur in a folding point between sub-blocks. Also, a characteristic of the input signal may be different based on the C1 and the C2, and thus different encoding schemes are applied, and a blocking artifact may occur.
In this instance, encoding is performed according to an MDCT-based coding scheme, the decoding apparatus 102 may remove the blocking artifact through an overlap-add operation using both a previous block and a current block. However, when switching occurs between the speech characteristic signal and the audio characteristic signal like the C1 and the C2, an MDCT-based overlap add-operation may not be performed. Additional information for MDCT-based decoding may be required. For example, additional information SoL(b−1) may be required in the C1, and additional information ShL(b+m) may be required in the C2. According to an embodiment of the present invention, an increase in a bit rate may be prevented, and a coding efficiency may be improved by minimizing the additional information SoL(b−1) and the additional information ShL(b+m).
When switching occurs between the speech characteristic signal and the audio characteristic signal, the encoding apparatus 101 may encode the additional information to restore the audio characteristic signal. In this instance, the additional information may be encoded by the first encoding unit 204 encoding the speech characteristic signal. Specifically, in the C1, an area corresponding to the additional information SoL(b−1) in the speech characteristic signal s(b−2) may be encoded as the additional information. Also, in the C2, an area corresponding to the additional information ShL(b+m) in the speech characteristic signal s(b+m+1) may be encoded as the additional information.
An encoding method when the C1 and the C2 occur is described in detail with reference to FIGS. 7 through 11, and a decoding method is described in detail with reference to FIGS. 15 through 18.
FIG. 7 is a diagram illustrating an operation of generating a bitstream in a C1 according to an embodiment of the present invention.
When a block X(b) of an input signal is inputted, the state analysis unit 202 may analyze a state of the corresponding block. In this instance, when the block X(b) is an audio characteristic signal and a block X(b−2) is a speech characteristic signal, the state analysis unit 202 may recognize that the C1 occurs in a folding point existing between the block X(b) and the block X(b−2). Accordingly, control information about the generation of the C1 may be transmitted to the block delay unit 201, the window processing unit 301, and the first encoding unit 204.
When the block X(b) of the input signal is inputted, the block X(b) and a block X(b+2) may be inputted to the window processing unit 301. The block X(b+2) may be delayed ahead (+2) through the block delay unit 201. Accordingly, an analysis window may be applied to the block X(b) and the block X(b+2) in the C1 of FIG. 6. Here, the block X(b) may include sub-blocks s(b−1) and s(b), and the block X(b+2) may include sub-blocks s(b+1) and s(b+2). An MDCT may be performed with respect to the block X(b) and the block X(b+2) where the analysis window is applied through the MDCT unit 302. A block where the MDCT is performed may be encoded through the bitstream generation unit 303, and thus a bitstream of the block X(b) of the input signal may be generated.
Also, to generate the additional information SoL(b−1) for an overlap-add operation with respect to the block X(b), the block delay unit 201 may extract a block X(b−1) by delaying back the block X(b). The block X(b−1) may include the sub-blocks s(b−2) and s(b−1). Also, the signal cutting unit 203 may extract the additional information SoL(b−1) from the block X(b−1) through signal cutting.
For example, the additional information SoL(b−1) may be determined by,

soL(b−1)=[s((b−2)·N/4), . . . ,s((b−2)·N/4+oL−1)]T0<oL≦N/4  [Equation 5]

In this instance, N may denote a size of a block for MDCT.
The first encoding unit 204 may encode an area corresponding to the additional information of the speech characteristic signal for overlapping among blocks based on the folding point where switching occurs between the speech characteristic signal and the audio characteristic signal. For example, the first encoding unit 204 may encode the additional information SoL(b−1) corresponding to an additional information area (oL) in the sub-block s(b−2) which is the speech characteristic signal. That is, the first encoding unit 204 may generate a bitstream of the additional information SoL(b−1) by encoding the additional information SoL(b−1) extracted by the signal cutting unit 203. That is, when the C1 occurs, the first encoding unit 204 may generate only the bitstream of the additional information SoL(b−1). When the C1 occurs, the additional information SoL(b−1) may be used as additional information to remove blocking artifact.
For another example, when the additional information SoL(b−1) may be obtained when the block X(b−1) is encoded, the first encoding unit 204 may not encode the additional information SoL(b−1).
FIG. 8 is a diagram illustrating an operation of encoding an input signal through window processing in the C1 according to an embodiment of the present invention.
In FIG. 8, a folding point may be located between a zero sub-block and the sub-block s(b−1) with respect to the C1. The zero sub-block may be the speech characteristic signal, and the sub-block s(b−1) may be the audio characteristic signal. Also, the folding point may be a folding point where switching occurs to the audio characteristic signal from the speech characteristic signal. As illustrated in FIG. 8, when the block X(b) is inputted, the window processing unit 301 may apply an analysis window to the block X(b) and block X(b+2) which are the audio characteristic signal. As illustrated in FIG. 8, when the folding point where switching occurs between the speech characteristic signal and the audio characteristic signal in a current frame of an input signal, the window processing unit 301 may perform encoding by applying the analysis window which does not exceed the folding point to the current frame.
For example, the window processing unit 301 may apply the analysis window. The analysis window may be configured as a window which has a value of 0 and corresponds to a first sub-block, a window corresponding to an additional information area of a second sub-block, and a window which has a value of 1 and corresponds to a remaining area of the second sub-block based on the folding point. The first sub-block may indicate the speech characteristic signal, and the second sub-block may indicate the audio characteristic signal. In FIG. 8, the folding point may be located at a point of N/4 in the current frame configured as sub-blocks having a size of N/4.
In FIG. 8, the analysis window may include window wz corresponding to the zero sub-block which is the speech characteristic signal and window W1 which comprises window corresponding to the additional information area (oL) of the S(b−1) sub-block which is the audio characteristic signal, and window corresponding to the remaining area (N/4−oL) of the S(b−1) sub-block which is the audio characteristic signal.
In this instance, the window processing unit 301 may substitute the analysis window wz for a value of zero with respect to the zero sub-block which is the speech characteristic signal. Also, the window processing unit 301 may determine an analysis window ŵ2 corresponding to the sub-block s(b−1) which is the audio characteristic signal according to Equation 6.




  
    
      
        
          
            
              w
              ^
            
            2
          
          =
          
            
              [
              
                
                  w
                  oL
                
                ,
                
                  w
                  ones
                
              
              ]
            
            T
          
        
        ⁢
        
          

        
        ⁢
        
          
            w
            oL
          
          =
          
            
              [
              
                
                  
                    w
                    oL
                  
                  ⁡
                  
                    (
                    0
                    )
                  
                
                ,
                ...
                ⁢
                
                  
                
                ,
                
                  
                    w
                    oL
                  
                  ⁡
                  
                    (
                    
                      oL
                      -
                      1
                    
                    )
                  
                
              
              ]
            
            T
          
        
        ⁢
        
          

        
        ⁢
        
          
            w
            ones
            
              
                N
                /
                4
              
              -
              oL
            
          
          =
          
            
              [
              
                                ⁢
                
                  
                    1
                    ,
                    ...
                    ⁢
                    
                      
                    
                    ,
                    1
                  
                  
                    }
                    
                      
                        N
                        /
                        4
                      
                      -
                      oL
                    
                  
                
              
              ]
            
            T
          
        
      
    
    
      
        [
        
          Equation
          ⁢
          
            
          
          ⁢
          6
        
        ]
      
    
  




That is, the analysis window ŵ2 applied to the sub-block s(b−1) may include an additional information area (oL) and a remaining area (N/4−oL) of the additional information area (oL). In this instance, the remaining area may be configured as 1.
In this instance, woL may denote a first half of a sine-window having a size of 2×oL. The additional information area (oL) may denote a size for an overlap-add operation among blocks in the C1, and determine a size of each of woL, and soL(b−1). Also, a block sample Xc1=[Xc1l, Xc1h]T may be defined for following description in a block sample 800.
For example, the first encoding unit 204 may encode a portion corresponding to the additional information area in a sub-block, which is a speech characteristic signal, for overlapping among blocks based on the folding point. In FIG. 8, the first encoding unit 204 may encode a portion corresponding to the additional information area (oL) in the zero sub-block s(b−2). As described above, the first encoding unit 204 may encode the portion corresponding to the additional information area according to the MDCT-based coding scheme and the different coding scheme.
As illustrated in FIG. 8, the window processing unit 301 may apply a sine-shaped analysis window to an input signal. However, when the C1 occurs, the window processing unit 301 may set an analysis window, corresponding to a sub-block located ahead of the folding point, as zero. Also, the window processing unit 301 may set an analysis window, corresponding to the sub-block s(b−1) located behind the C1 folding point, to be configured as an analysis window corresponding to the additional information area (oL) and a remaining analysis window. Here, the remaining analysis window may have a value of 1. The MDCT unit 302 may perform an MDCT with respect to an input signal {X(b−1), X(b)}{circle around (x)}Wanalysis where the analysis window illustrated in FIG. 8 is applied.
FIG. 9 is a diagram illustrating an operation of generating a bitstream in the C2 according to an embodiment of the present invention.
When a block X(b) of an input signal is inputted, the state analysis unit 202 may analyze a state of a corresponding block. As illustrated in FIG. 6, when the sub-block s(b+m) is an audio characteristic signal and a sub-block s(b+m+1) is a speech characteristic signal, the state analysis unit 202 may recognize that the C2 occurs. Accordingly, control information about the generation of the C2 may be transmitted to the block delay unit 201, the window processing unit 301, and the first encoding unit 204.
When a block X(b+m−1) of the input signal is inputted, the block X(b+m−1) and a block X(b+m+1), which is delayed ahead (+2) through the block delay unit 201, may be inputted to the window processing unit 301. Accordingly, the analysis window may be applied to the block X(b+m+1) and the block X(b+m−1) in the C2 of FIG. 6. Here, the block X(b+m+1) may include sub-blocks s(b+m+1) and s(b+m), and the block X(b+m−1) may include sub-blocks s(b+m−2) and s(b+m−1).
For example, when the C2 occurs in the folding point between the speech characteristic signal and an the audio characteristic signal in a current frame of the input signal, the window processing unit 301 may apply the analysis window, which does not exceed the folding point, to the audio characteristic signal.
An MDCT may be performed with respect to the blocks X(b+m+1) and X(b+m−1) where the analysis window is applied through the MDCT unit 302. A block where the MDCT is performed may be encoded through the bitstream generation unit 303, and thus a bitstream of the block X(b+m−1) of the input signal may be generated.
Also, to generate the additional information ShL(b+m) for an overlap-add operation with respect to the block X(b+m−1), the block delay unit 201 may extract a block X(b+m) by delaying ahead (+1) the block X(b+m−1). The block X(b+m) may include the sub-blocks s(b+m−1) and s(b+m). Also, the signal cutting unit 203 may extract only the additional information ShL(b+m) through signal cutting with respect to the block X(b+m).
For example, the additional information ShL(b+m) may be determined by,

shL(b+m)=[s((b+m−1)·N/4), . . . ,s((b+m−1)·N/4+hL−1)]T0<hL≦N/4  [Equation 7]

In this instance, N may denote a size of a block for MDCT.

The first encoding unit 204 may encode the additional information ShL(b+m) and generate a bitstream of the additional information ShL(b+m). That is, when the C2 occurs, the first encoding unit 204 may generate only the bitstream of the additional information ShL(b+m). When the C2 occurs, the additional information ShL(b+m) may be used as additional information to remove a blocking artifact.
FIG. 10 is a diagram illustrating an operation of encoding an input signal through window processing in the C2 according to an embodiment of the present invention.
In FIG. 10, a folding point may be located between the sub-block s(b+m) and the sub-block s(b+m+1) with respect to the C2. Also, the folding point may be a folding point where the audio characteristic signal switches to the speech characteristic signal. That is, when a current frame illustrated in FIG. 10 may include sub-blocks having a size of N/4, the folding point may be located at a point of 3N/4.
For example, when a folding point where switching occurs exists between the audio characteristic signal and the speech characteristic signal in the current frame of the input signal, the window processing unit 301 may apply an analysis window which does not exceed the folding point to the audio characteristic signal. That is, the window processing unit 301 may apply the analysis window to the sub-block s(b+m) of the block X(b+m+1) and X(b+m−1).
Also, the window processing unit 301 may apply the analysis window. The analysis window may be configured as a window which has a value of 0 and corresponds to a first sub-block, a window corresponding to an additional information area of a second sub-block, and a window which has a value of 1 and corresponds to a remaining area of the second sub-block based on the folding point. The first sub-block may indicate the speech characteristic signal, and the second sub-block may indicate the audio characteristic signal. In FIG. 10, the folding point may be located at a point of 3N/4 in the current frame configured as sub-blocks having a size of N/4.
That is, the window processing unit 301 may substitute the analysis window wz for a value of zero. Here, the analysis window may correspond to the sub-block s(b+m+1) which is the speech characteristic signal. Also, the window processing unit 301 may determine an analysis window ŵ3 corresponding to the sub-block s(b+m) which is the audio characteristic signal according to Equation 8.




  
    
      
        
          
            
              w
              3
            
            =
            
              
                [
                
                  
                    w
                    
                      ones
                      ,
                    
                  
                  ⁢
                  
                    w
                    hL
                  
                
                ]
              
              T
            
          
          ⁢
          
            

          
          ⁢
          
            w
            hL
          
          =
          
            
              [
              
                
                  
                    w
                    hL
                  
                  ⁡
                  
                    (
                    0
                    )
                  
                
                ,
                ...
                ⁢
                
                  
                
                ,
                
                  
                    w
                    hL
                  
                  ⁡
                  
                    (
                    
                      hL
                      -
                      1
                    
                    )
                  
                
              
              ]
            
            T
          
        
        ⁢
        
          

        
        ⁢
        
          
            w
            ones
            
              
                N
                /
                4
              
              -
              hL
            
          
          =
          
            
              [
              
                                ⁢
                
                  
                    1
                    ,
                    ...
                    ⁢
                    
                      
                    
                    ,
                    1
                  
                  
                    }
                    
                      
                        N
                        /
                        4
                      
                      -
                      hL
                    
                  
                
              
              ]
            
            T
          
        
      
    
    
      
        [
        
          Equation
          ⁢
          
            
          
          ⁢
          8
        
        ]
      
    
  




That is, the analysis window ŵ3, applied to the sub-block s(b+m) indicating the audio characteristic signal based on the folding point, may include an additional information area (hL) and a remaining area (N/4−hL) of the additional information area (hL). In this instance, the remaining area may be configured as 1.
In this instance, whL may denote a second half of a sine-window having a size of 2×hL. An additional information area (hL) may denote a size for an overlap-add operation among blocks in the C2, and determine a size of each of whL and shL(b+m). Also, a block sample Xc2=[Xc2l, Xc2h] may be defined for following description in a block sample 1000.
For example, the first encoding unit 204 may encode a portion corresponding to the additional information area in a sub-block, which is a speech characteristic signal, for overlapping among blocks based on the folding point. In FIG. 10, the first encoding unit 204 may encode a portion corresponding to the additional information area (hL) in the zero sub-block s(b+m+1). As described above, the first encoding unit 204 may encode the portion corresponding to the additional information area according to the MDCT-based coding scheme and the different coding scheme.
As illustrated in FIG. 10, the window processing unit 301 may apply a sine-shaped analysis window to an input signal. However, when the C2 occurs, the window processing unit 301 may set an analysis window, corresponding to a sub-block located behind the folding point, as zero. Also, the window processing unit 301 may set an analysis window, corresponding to the sub-block s(b+m) located ahead of the folding point, to be configured as an analysis window corresponding to the additional information area (hL) and a remaining analysis window. Here, the remaining analysis window may have a value of 1. The MDCT unit 302 may perform an MDCT with respect to an input signal {X(b+m−1), X(b+m+1)}{circle around (x)}W where the analysis window illustrated in FIG. 10 is applied.
FIG. 11 is a diagram illustrating additional information applied when an input signal is encoded according to an embodiment of the present invention.
Additional information 1101 may correspond to a portion of a sub-block indicating a speech characteristic signal based on a folding point C1, and additional information 1102 may correspond to a portion of a sub-block indicating a speech characteristic signal based on a folding point C2. In this instance, a sub-block corresponding to an audio characteristic signal behind the C1 folding point may be applied to a synthesis window where a first half (oL) of the additional information 1101 is reflected. A remaining area (N/4−oL) may be substituted for 1. Also, a sub-block, corresponding to an audio characteristic signal ahead of the C2 folding point, may be applied to a synthesis window where a second half (hL) of the additional information 1102 is reflected. A remaining area (N/4−hL) may be substituted for 1.
FIG. 12 is a block diagram illustrating a configuration of a decoding apparatus 102 according to an embodiment of the present invention.
Referring to FIG. 12, the decoding apparatus 102 may include a block delay unit 1201, a first decoding unit 1202, a second decoding unit 1203, and a block compensation unit 1204.
The block delay unit 1201 may delay back or ahead a block according to a control parameter (C1 and C2) included in an inputted bitstream.
Also, the decoding apparatus 102 may switch a decoding scheme depending on the control parameter of the inputted bitstream to enable any one of the first decoding unit 1202 and the second decoding unit 1203 to decode the bitstream. In this instance, the first decoding unit 1202 may decode an encoded speech characteristic signal, and the second decoding unit 1203 may decode an encoded audio characteristic signal. For example, the first decoding unit 1202 may decode the audio characteristic signal according to a CELP-based coding scheme, and the second decoding unit 1203 may decode the speech characteristic signal according to an MDCT-based coding scheme.
A result of decoding through the first decoding unit 1202 and the second decoding unit 1203 may be extracted as a final output signal through the block compensation unit 1204.
The block compensation unit 1204 may perform block compensation with respect to the result of the first decoding unit 1202 and the result of the second decoding unit 1203 to restore the input signal. For example, when a folding point where switching occurs between the speech characteristic signal and the audio characteristic signal exists in a current frame of the input signal, the block compensation unit 1204 may apply a synthesis window which does not exceed the folding point.
In this instance, the block compensation unit 1204 may apply a first synthesis window to additional information, and apply a second synthesis window to the current frame to perform an overlap-add operation. Here, the additional information may be extracted by the first decoding unit 1202, and the current frame may be extracted by the second decoding unit 1203. The block compensation unit 1204 may apply the second synthesis window to the current frame. The second synthesis window may be configured as a window which has a value of 0 and corresponds to a first sub-block, a window corresponding to an additional information area of a second sub-block, and a window which has a value of 1 and corresponds to a remaining area of the second sub-block based on the folding point. The first sub-block may indicate the speech characteristic signal, and the second sub-block may indicate the audio characteristic signal. The block compensation unit 1204 is described in detail with reference to FIGS. 16 through 18.
FIG. 13 is a diagram illustrating an operation of decoding a bitstream through a second decoding unit 1303 according to an embodiment of the present invention.
Referring to FIG. 13, the second decoding unit 1203 may include a bitstream restoration unit 1301, an IMDCT unit 1302, a window synthesis unit 1303, and an overlap-add operation unit 1304.
The bitstream restoration unit 1301 may decode an inputted bitstream. Also, the IMDCT unit 1302 may transform a decoded signal to a sample in a time domain through an IMDCT.
A block Y(b), transformed through the IMDCT unit 1302, may be delayed back through the block delay unit 1201 and inputted to the window processing unit 1303. Also, the block Y(b) may be directly inputted to the window processing unit 1303 without the delay. In this instance, the block Y(b) may have a value of Y(b)=[{tilde over ({circumflex over (X)})}(b−2), {tilde over ({circumflex over (X)})}(b)]T. In this instance, the block Y(b) may be a current block inputted through the second encoding unit 205 in FIG. 3.
The window synthesis unit 1303 may apply the synthesis window to the inputted block Y(b) and a delayed block Y(b−2). When the C1 and C2 do not occur, the window synthesis unit 1303 may identically apply the synthesis window to the blocks Y(b) and Y(b−2).
For example, the window synthesis unit 1303 may apply the synthesis window to the block Y(b) according to Equation 9.

[{tilde over ({circumflex over (X)})}(b−2),{tilde over ({circumflex over (X)})}(b)]T{circle around (x)}Wsynthesis=[s((b−2)N/4)·w1(0), . . . ,s((b−1)N/4+N/4−1)·w4(N/4−1)]T  [Equation 9]

In this instance, the synthesis window Wsynthesis may be identical to an analysis window Wanalysis.
The overlap-add operation unit 1304 may perform a 50% overlap-add operation with respect to a result of applying the synthesis window to the blocks Y(b) and Y(b−2). A result {tilde over (X)}(b−2) obtained by the overlap-add operation unit 1304 may be given by,

{tilde over (X)}(b−2)=([{tilde over ({circumflex over (X)})}(b−2)]T{circle around (x)}[w1w2]T)⊕([p{tilde over ({circumflex over (X)})}(b−2)]T{circle around (x)}[w3,w4]T)  [Equation 10]

In this instance, [{tilde over ({circumflex over (X)})}((b−2)]T and p[{tilde over ({circumflex over (X)})}(b−2)]T may be associated with the block Y(b) and the block Y(b−2), respectively. Referring to Equation 10, {tilde over (X)}(b−2) may be obtained by performing an overlap-add operation with respect to a result of combining [{tilde over ({circumflex over (X)})}(b−2)]T and a first half [w1, w2]T of the synthesis window, and a result of combining p[{tilde over ({circumflex over (X)})}(b−2)]T and a second half [w3, w4]T of the synthesis window.
FIG. 14 is a diagram illustrating an operation of extracting an output signal through an overlap-add operation according to an embodiment of the present invention.
Windows 1401, 1402, and 1403 illustrated in FIG. 14 may indicate a synthesis window. The overlap-add operation unit 1304 may perform an overlap-add operation with respect to blocks 1405 and 1406 where the synthesis window 1402 is applied, and with respect to blocks 1404 and 1405 where the synthesis window 1401 is applied, and thereby may output a block 1405. Identically, the overlap-add operation unit 1304 may perform an overlap-add operation with respect to the blocks 1405 and 1406 where the synthesis window 1402 is applied, and with respect to the blocks 1406 and 1407 where the synthesis window 1403 is applied, and thereby may output the block 1406.
That is, referring to FIG. 14, the overlap-add operation unit 1304 may perform an overlap-add operation with respect to a current block and a delayed previous block, and thereby may extract a sub-block included in the current block. In this instance, each block may indicate an audio characteristic signal associated with an MDCT.
However, when the block 1404 is the speech characteristic signal and the block 1405 is the audio characteristic signal, that is, when the C1 occurs, an overlap-add operation may not be performed since MDCT information is not included in the block 1404. In this instance, MDCT additional information of the block 1404 may be required for the overlap-add operation. Conversely, when the block 1404 is the audio characteristic signal and the block 1405 is the speech characteristic signal, that is, when the C2 occurs, an overlap-add operation may not be performed since the MDCT information is not included in the block 1405. In this instance, the MDCT additional information of the block 1405 may be required for the overlap-add operation.
FIG. 15 is a diagram illustrating an operation of generating an output signal in the C1 according to an embodiment of the present invention. That is, FIG. 15 illustrates an operation of decoding the input signal encoded in FIG. 7.
The C1 may denote a folding point where the audio characteristic signal is generated after the speech characteristic signal in the current frame 800. In this instance, the folding point may be located at a point of N/4 in the current frame 800.
The bitstream restoration unit 1301 may decode the inputted bitstream. Sequentially, the IMDCT unit 1302 may perform an IMDCT with respect to a result of the decoding. The window synthesis unit 1303 may apply the synthesis window to a block {tilde over ({circumflex over (X)})}c1h in the current frame 800 of the input signal encoded by the second encoding unit 205. That is, the second decoding unit 1203 may decode a block s(b) and a block s(b+1) which are not adjacent to the folding point in the current frame 800 of the input signal.
In this instance, different from FIG. 13, a result of the IMDCT may not pass the block delay unit 1201 in FIG. 15.
The result of applying the synthesis window to the block {tilde over ({circumflex over (X)})}c1h may be given by,

{tilde over (X)}c1h={tilde over ({circumflex over (X)})}c1h{circle around (x)}[w3,w4]T  [Equation 11]

The block {tilde over (X)}c1h may be used as a block signal for overlap with respect to the current frame 800.
Only input signal corresponding to the block {tilde over ({circumflex over (X)})}c1h in the current frame 800 may be restored by the second decoding unit 1203. Accordingly, since only block {tilde over ({circumflex over (X)})}c1l may exist in the current frame 800, the overlap-add operation unit 1304 may restore an input signal corresponding to the block {tilde over ({circumflex over (X)})}c1l where the overlap-add operation is not performed. The block {tilde over ({circumflex over (X)})}c1l may be a block where the synthesis window is not applied by the second decoding unit 1203 in the current frame 800. Also, the first decoding unit 1202 may decode additional information included in a bitstream, and thereby may output a sub-block {tilde over ({tilde over (s)})}oL(b−1).
The block {tilde over ({circumflex over (X)})}c1l, extracted by the second decoding unit 1203, and the sub-block {tilde over ({tilde over (s)})}oL(b−1), extracted by the first decoding unit 1202, may be inputted to the block compensation unit 1204. A final output signal may be generated by the block compensation unit 1204.
FIG. 16 is a diagram illustrating a block compensation operation in the C1 according to an embodiment of the present invention.
The block compensation unit 1204 may perform block compensation with respect to the result of the first decoding unit 1202 and the result of the second decoding unit 1203, and thereby may restore the input signal. For example, when a folding point where switching occurs between a speech characteristic signal and an audio characteristic signal exists in a current frame of the input signal, the block compensation unit 1204 may apply a synthesis window which does not exceed the folding point.
In FIG. 15, additional information, that is, the sub-block {tilde over ({tilde over (s)})}oL(b−1) may be extracted by the first decoding unit 1202. The block compensation unit 1204 may apply a window woLγ=[woL(oL−1), . . . , woL(0)]T to the sub-block {tilde over ({tilde over (s)})}oL(b−1). Accordingly, a sub-block {tilde over (s)}′oL(b−1) where the window woLγ is applied to the sub-block {tilde over ({tilde over (s)})}oL (b−1), may be extracted according to Equation 12.

{tilde over (s)}′oL(b−1)={tilde over ({tilde over (s)})}oL(b−1){circle around (x)}woLγ  [Equation 12]

Also, the block {tilde over ({circumflex over (X)})}c1l, extracted by the overlap-add operation unit 1304, may be applied to a synthesis window 1601 through the block compensation unit 1204.
For example, the block compensation unit 1204 may apply a synthesis window to the current frame 800. Here, the synthesis window may be configured as a window which has a value of 0 and corresponds to a first sub-block, a window corresponding to an additional information area of a second sub-block, and a window which has a value of 1 and corresponds to a remaining area of the second sub-block based on the folding point. The first sub-block may indicate the speech characteristic signal, and the second sub-block may indicate the audio characteristic signal. The block {tilde over (X)}′c1l where the synthesis window 1601 is applied may be represented as,




  
    
      
        
          
            X
            ~
          
          
            c
            ⁢
            
              
            
            ⁢
            1
          
          
            ′
            ⁢
            
              
            
            ⁢
            l
          
        
        =
        
          
            
              
                
                  X
                  ^
                
                ~
              
              
                c
                ⁢
                
                  
                
                ⁢
                1
              
              l
            
            ⊗
            
              
                [
                
                  
                    w
                    z
                  
                  ,
                  
                    
                      w
                      ^
                    
                    2
                  
                
                ]
              
              T
            
          
          =
          
            
              
                [
                
                  0
                  ,
                  
                    ...
                    
                      N
                      /
                      4
                    
                  
                  ⁢
                  
                    
                  
                  ,
                  0
                  ,
                  
                    
                      
                        
                          s
                          ^
                        
                        ~
                      
                      ⁡
                      
                        (
                        
                          b
                          -
                          1
                        
                        )
                      
                    
                    ⊗
                    
                      
                        w
                        ^
                      
                      2
                      T
                    
                  
                
                ]
              
              T
            
            =
            
              
                [
                
                  0
                  ,
                  
                    ...
                    
                      N
                      /
                      4
                    
                  
                  ⁢
                  
                    
                  
                  ,
                  0
                  ,
                  
                    
                      
                        
                          
                            s
                            ^
                          
                          ~
                        
                        oL
                      
                      ⁡
                      
                        (
                        
                          b
                          -
                          1
                        
                        )
                      
                    
                    ⊗
                    
                      
                        w
                        ^
                      
                      oL
                      T
                    
                  
                  ,
                  
                    
                      
                        
                          s
                          ^
                        
                        ~
                      
                      
                        
                          N
                          /
                          4
                        
                        -
                        oL
                      
                    
                    ⁡
                    
                      (
                      
                        b
                        -
                        1
                      
                      )
                    
                  
                
                ]
              
              T
            
          
        
      
    
    
      
        [
        
          Equation
          ⁢
          
            
          
          ⁢
          13
        
        ]
      
    
  




That is, the synthesis window may be applied to the block {tilde over (X)}′c1l. The synthesis window may include an area W1 of 0, and have an area corresponding to the sub-block {tilde over (ŝ)}(b−1) which is identical to ŵ2 in FIG. 8. In this instance, the sub-block {tilde over (ŝ)}(b−1) included in the block {tilde over ({circumflex over (X)})}c1l may be determined by,

{tilde over ({circumflex over (s)})}(b−1)=[{tilde over (s)}oL(b−1),{tilde over ({circumflex over (s)})}N/4-oL(b−1)]T  [Equation 14]

Here, when the block compensation unit 1204 performs an overlap-add operation with respect to an area WoL in the synthesis windows 1601 and 1602, the sub-block {tilde over (s)}oL(b−1) corresponding to an area (oL) may be extracted from the sub-block {tilde over (ŝ)}(b−1). In this instance, the sub-block soL (b−1) may be determined according to Equation 15. Also, a sub-block {tilde over (ŝ)}N/4-L(b−1) corresponding to a remaining area excluding the area (oL) from the sub-block {tilde over (ŝ)}(b−1), may be determined according to Equation 16.

{tilde over (s)}oL(b−1)={tilde over (s)}′oL(b−1)⊕{tilde over (ŝ)}′oL(b−1)  [Equation 15]

{tilde over ({circumflex over (s)})}N/4-oL(b−1)=[{tilde over ({circumflex over (s)})}((b−2)·N/4+oL), . . . ,{tilde over ({circumflex over (s)})}((b−2)·N/4+N/4−1)]T  [Equation 16]

Accordingly, an output signal {tilde over (s)}(b−1) may be extracted by the block compensation unit 1204.
FIG. 17 is a diagram illustrating an operation of generating an output signal in the C2 according to an embodiment of the present invention. That is, FIG. 17 illustrates an operation of decoding the input signal encoded in FIG. 9.
The C2 may denote a folding point where the speech characteristic signal is generated after the audio characteristic signal in the current frame 1000. In this instance, the folding point may be located at a point of 3N/4 in the current frame 1000.
The bitstream restoration unit 1301 may decode the inputted bitstream. Sequentially, the IMDCT unit 1302 may perform an IMDCT with respect to a result of the decoding. The window synthesis unit 1303 may apply the synthesis window to a block {tilde over ({circumflex over (X)})}c2l in the current frame 1000 of the input signal encoded by the second encoding unit 205. That is, the second decoding unit 1203 may decode a block s(b+m−2) and a block s(b+m−1) which are not adjacent to the folding point in the current frame 1000 of the input signal.
In this instance, different from FIG. 13, a result of the IMDCT may not pass the block delay unit 1201 in FIG. 17.
The result of applying the synthesis window to the block {tilde over ({circumflex over (X)})}c2l may be given by,

{tilde over (X)}c2l={tilde over ({circumflex over (X)})}c2l{circle around (x)}[w1,w2]T.  [Equation 17]

The block {tilde over ({circumflex over (X)})}c2l may be used as a block signal for overlap with respect to the current frame 1000.
Only input signal corresponding to the block {tilde over ({circumflex over (X)})}c2l in the current frame 1000 may be restored by the second decoding unit 1203. Accordingly, since only block {tilde over ({circumflex over (X)})}c2h may exist in the current frame 1000, the overlap-add operation unit 1304 may restore an input signal corresponding to the block {tilde over ({circumflex over (X)})}c2h where the overlap-add operation is not performed. The block {tilde over ({circumflex over (X)})}c2h may be a block where the synthesis window is not applied by the second decoding unit 1203 in the current frame 1000. Also, the first decoding unit 1202 may decode additional information included in a bitstream, and thereby may output a sub-block {tilde over ({tilde over (s)})}hL(b+m).
The block {tilde over ({circumflex over (X)})}c2h, extracted by the second decoding unit 1203, and the sub-block {tilde over ({tilde over (s)})}hL(b+m), extracted by the first decoding unit 1202, may be inputted to the block compensation unit 1204. A final output signal may be generated by the block compensation unit 1204.
FIG. 18 is a diagram illustrating a block compensation operation in the C2 according to an embodiment of the present invention.
The block compensation unit 1204 may perform block compensation with respect to the result of the first decoding unit 1202 and the result of the second decoding unit 1203, and thereby may restore the input signal. For example, when a folding point where switching occurs between a speech characteristic signal and an audio characteristic signal exists in a current frame of the input signal, the block compensation unit 1204 may apply a synthesis window which does not exceed the folding point.
In FIG. 17, additional information, that is, the sub-block {tilde over ({tilde over (s)})}(b+m) may be extracted by the first decoding unit 1202. The block compensation unit 1204 may apply a window whLγ=[whL(hL−1), . . . , whL (0)]T to the sub-block {tilde over ({tilde over (s)})}hL(b+m). Accordingly, a sub-block {tilde over (s)}′hL(b+m) where the window whLγ is applied to the sub-block {tilde over ({tilde over (s)})}hL (b+m), may be extracted according to Equation 18.

{tilde over (s)}′hL(b+m)={tilde over (s)}hL(b+m){circle around (x)}whLγ  [Equation 18]

Also, the block {tilde over ({circumflex over (X)})}c2h, extracted by the overlap-add operation unit 1304, may be applied to a synthesis window 1801 through the block compensation unit 1204. For example, the block compensation unit 1204 may apply a synthesis window to the current frame 1000. Here, the synthesis window may be configured as a window which has a value of 0 and corresponds to a first sub-block, a window corresponding to an additional information area of a second sub-block, and a window which has a value of 1 and corresponds to a remaining area of the second sub-block based on the folding point. The first sub-block may indicate the speech characteristic signal, and the second sub-block may indicate the audio characteristic signal. The block {tilde over (X)}′c2h where the synthesis window 1801 is applied may be represented as,




  
    
      
        
          
            X
            ~
          
          
            c
            ⁢
            
              
            
            ⁢
            2
          
          
            ′
            ⁢
            
              
            
            ⁢
            h
          
        
        =
        
          
            
              
                
                  X
                  ^
                
                ~
              
              
                c
                ⁢
                
                  
                
                ⁢
                2
              
              h
            
            ⊗
            
              
                [
                
                  
                    
                      w
                      ^
                    
                    3
                  
                  ,
                  
                    w
                    z
                  
                
                ]
              
              T
            
          
          =
          
            
              
                [
                
                  
                    
                      
                        
                          s
                          ^
                        
                        ~
                      
                      ⁡
                      
                        (
                        
                          b
                          +
                          m
                        
                        )
                      
                    
                    ⊗
                    
                      
                        w
                        ^
                      
                      3
                      T
                    
                  
                  ,
                  0
                  ,
                  
                    ...
                    
                      N
                      /
                      4
                    
                  
                  ⁢
                  
                    
                  
                  ,
                  0
                
                ]
              
              T
            
            =
            
              
                [
                
                  
                    
                      
                        
                          s
                          ^
                        
                        ~
                      
                      
                        
                          N
                          /
                          4
                        
                        -
                        hL
                      
                    
                    ⁡
                    
                      (
                      
                        b
                        +
                        m
                      
                      )
                    
                  
                  ,
                  
                    
                      
                        
                          
                            s
                            ^
                          
                          ~
                        
                        hL
                      
                      ⁡
                      
                        (
                        
                          b
                          +
                          m
                        
                        )
                      
                    
                    ⊗
                    
                      
                        w
                        ^
                      
                      hL
                      T
                    
                  
                  ,
                  0
                  ,
                  
                    ...
                    
                      N
                      /
                      4
                    
                  
                  ⁢
                  
                    
                  
                  ,
                  0
                
                ]
              
              T
            
          
        
      
    
    
      
        [
        
          Equation
          ⁢
          
            
          
          ⁢
          19
        
        ]
      
    
  




That is, the synthesis window 1801 may be applied to the block {tilde over (X)}′c2h. The synthesis window 1801 may include an area corresponding to the sub-block s(b+m) of 0, and have an area corresponding to the sub-block s(b+m+1) which is identical to ŵ3 in FIG. 10. In this instance, the sub-block {tilde over (s)}(b+m) included in the block {tilde over ({circumflex over (X)})}c2h may be determined by,

{tilde over (s)}(b+m)=[{tilde over (ŝ)}N/4-hL(b+m),{tilde over (s)}′hL(b+m)]T  [Equation 20]

Here, when the block compensation unit 1204 performs an overlap-add operation with respect to an area WhL, in the synthesis windows 1801 and 1802, the sub-block {tilde over (s)}hL(b+m) corresponding to an area (hL) may be extracted from the sub-block {tilde over (s)}(b+m). In this instance, the sub-block {tilde over (s)}′hL(b+m) may be determined according to Equation 21. Also, a sub-block {tilde over (ŝ)}N/4-hL (b+m) corresponding to a remaining area excluding the area (hL) from the sub-block {tilde over (s)}(b+m), may be determined according to Equation 22.

{tilde over (s)}hL(b+m)={tilde over (s)}′hL(b+m)⊕{tilde over ({circumflex over (s)})}′hL(b=m)  [Equation 21]

{tilde over ({circumflex over (s)})}N/4-hL(b+m)=[{tilde over ({circumflex over (s)})}(b+m−1)·N/4), . . . ,{tilde over ({circumflex over (s)})}((b+m−1)·N/4+hL−1)]T  [Equation 22]

Accordingly, an output signal {tilde over (s)}(b+m) may be extracted by the block compensation unit 1204.
Although a few embodiments of the present invention have been shown and described, the present invention is not limited to the described embodiments. Instead, it would be appreciated by those skilled in the art that changes may be made to these embodiments without departing from the principles and spirit of the invention, the scope of which is defined by the claims and their equivalents.

## Claims

1. An encoding apparatus, comprising:
a first encoder configured to encode a previous frame for a speech characteristic signal in an input signal according to a Code Excited Linear Prediction (CELP); and
a second encoder configured to encode a current frame for an audio characteristic signal in the input signal according to a Modified Discrete Cosine Transform (MDCT), wherein
when switching occurs from the previous frame for the speech characteristic signal to the current frame for the audio characteristic signal in the input signal, the first encoder encodes an additional MDCT information extracted from the previous frame,
the first encoder encodes additional MDCT information in the speech characteristic signal for overlap-add operation between the previous frame and the current frame,
the current frame is decoded according to MDCT by applying a first window into the additional MDCT information, applying a second window into the current frame, and performing overlap-add between the current frame applied the first window and the additional MDCT information applied second window, in a decoding apparatus,
the additional MDCT information is applied to the second window for removing time domain aliasing generated during MDCT, and
the additional MDCT information is extracted from a delayed block in the previous frame with respect to a block of the current frame.

2. A decoding apparatus, comprising:
a first decoder configured to decode a previous frame for a speech characteristic signal in an input signal encoded according to a Code Excited Linear Prediction (CELP); and
a second decoder configured to decode a current frame for an audio characteristic signal in the input signal encoded according to a Modified Discrete Cosine Transform (MDCT), wherein
when switching occurs from the previous frame for the speech characteristic signal to the current frame for the audio characteristic signal in the input signal, the first decoder decodes an additional MDCT information extracted from the previous frame,
the second decoder decodes the current frame for the audio characteristic signal by performing an overlap-add operation according to the MDCT between the previous frame and the current frame,
the additional MDCT information is determined in the speech characteristic signal for overlap-add operation between the previous frame and the current frame,
the current frame is decoded according to MDCT by applying a first window into the additional MDCT information, applying a second window into the current frame, and performing overlap-add between the current frame applied the first window and the additional MDCT information applied second window, in a decoding apparatus,
the additional MDCT information is applied to the second window for removing time domain aliasing generated during MDCT, and
the additional MDCT information is extracted from a delayed block in the previous frame with respect to a block of the current frame.

3. An encoding apparatus, comprising:
a first encoder configured to encode a previous frame for a speech characteristic signal in an input signal according to a Code Excited Linear Prediction (CELP);
a second encoder configured to encode a current frame for an audio characteristic signal in the input signal according to a Modified Discrete Cosine Transform (MDCT); and
a block delay circuit configured to delay a previous block with respect to a first block to be encoded by the second encoder when switching occurs between the speech characteristic signal and the audio characteristic signal in the input signal,
when the switching occurs from the previous frame for the speech characteristic signal to the current frame for the audio characteristic signal in the input signal, the first encoder encodes an additional MDCT information extracted from the previous frame to be processed based on the CELP when the switching occurs from the speech characteristic signal to the audio characteristic signal in the input signal,
wherein the additional MDCT information is used to decode the current frame for the audio characteristic signal according to the MDCT by performing an overlap-add operation between the previous frame and the current frame at a folding point in a decoding process.