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.
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 (CLP)-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.
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
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’.
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.
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.
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.
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 101 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, mDcr 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 MOCK 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.
Referring to
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
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.
Referring to
In
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)}⊗ 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.
Referring to
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]
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]T10
wi=[wi=wi(0), . . . ,wi(N/4−1)]T [Equation 3]
[X(b−2),X(b)]T⊗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
The MDCT unit 302 may perform an MDCT with respect to the input signal where the analysis window is processed.
An input signal configured as a block unit and an analysis window applied to the input signal are illustrated in
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/quatization/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.
In
In
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(h+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
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
Also, to generate the additional information S0L(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).
In
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
In
In this instance, the window processing unit 301 may substitute the analysis window w 2 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.
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 may be defined xc1=[Xc11, Xc1h]T 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
As illustrated in
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
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
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.
In
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
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.
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 whLand shL(b+m). Also, a block sample Xc2=[Xc2i, 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
As illustrated in
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/4hL) may be substituted for
Referring to
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
Referring to
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)=[{circumflex over (X)}(b−2), {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
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.
[{circumflex over ({tilde over (X)})}(b−2),{circumflex over ({tilde over (X)})}(b)]T⊗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 Wsysthesis 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)=([{circumflex over ({tilde over (X)})}(b−2)]T⊗[w1,w2]T)⊕([p{circumflex over ({tilde over (X)})}(b−2)]T⊗[w3,w4]T) [Equation 10]
In this instance, [{circumflex over ({tilde over (X)})}(b−2)]T and p[{circumflex over ({tilde 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 [{circumflex over ({tilde over (X)})}(b−2)]T and a first half [w1,w2]T of the synthesis window, and a result of combining p[{circumflex over ({tilde over (X)})}(b−2)]T and a second half [w3, w4,]T of the synthesis window
Windows 1401, 1402, and 1403 illustrated in
That is, referring to
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.
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 {circumflex over ({tilde 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
The result of applying the synthesis window to the block {circumflex over ({tilde over (X)})}c1h may be given by,
{tilde over (X)}c1h={circumflex over ({tilde over (X)})}c1h⊗[w3,w4]T [Equation 11]
The block {circumflex over ({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 {circumflex over ({tilde over (X)})}c1h in the current frame 800 may be restored by the second decoding unit 1203. Accordingly, since only block {circumflex over ({tilde 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 {circumflex over ({tilde over (X)})}c1i where the overlap-add operation is not performed. The block {circumflex over ({tilde 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 {circumflex over ({tilde over (s)})}oL(b−1).
The block {circumflex over ({tilde over (X)})}c1l, extracted by the second decoding unit 1203, and the sub-block {circumflex 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.
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
{circumflex over ({tilde over (s)})}oL(b−1)={circumflex over ({tilde over (s)})}oL(b−1)⊗woLr [Equation 12]
Also, the block {circumflex over ({tilde 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,
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 {circumflex over ({tilde over (s)})}(b−1) which is identical to ŵ2 in
{circumflex over ({tilde over (s)})}(b−1)=[{tilde over (s)}oL(b−1),{circumflex over ({tilde 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)}(b−1) corresponding to an area (oL) may be extracted from the sub-block {circumflex over ({tilde over (s)})}(b−1). In this instance, the sub-block {tilde over (s)}oL(b−1) may be determined according to Equation 15. Also, a sub-block {circumflex over ({tilde over (s)})}N/4−oL(b−1) corresponding to a remaining area excluding the area (oL) from the sub-block {circumflex over ({tilde over (s)})}(b−1), may be determined according to Equation 16.
{tilde over (s)}oL(b−1)={tilde over (s)}′oL(b−1)⊗{circumflex over ({tilde over (s)})}′oL(b−1) [Equation 15]
{circumflex over ({tilde over (s)})}N/4−oL(b−1)=[{circumflex over ({tilde over (s)})}((b−2)·N/4+oL), . . . ,{circumflex over ({tilde 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.
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 MDCT with respect to a result of the decoding. The window synthesis unit 1303 may apply the synthesis window to a block {circumflex over ({tilde 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
The result of applying the synthesis window to the block may be given by,
{tilde over (X)}c2i={circumflex over ({tilde over (X)})}c2l237[w1,w2]T [Equation 17]
The block {circumflex over ({tilde 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 {circumflex over ({tilde over (X)})}c2i in the current frame 1000 may be restored by the second decoding unit 1203. Accordingly, since only block {circumflex over ({tilde 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 where the overlap-add operation is not performed. The block {circumflex over ({tilde 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 {circumflex over ({tilde over (s)})}c2h, extracted by the second decoding unit 1203, and the sub-block {circumflex over ({tilde over (s)})}(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.
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
{tilde over (s)}′hL(b+m)={tilde over (s)}hL(b+m)⊗whLr [Equation 18]
Also, the block {circumflex over ({tilde over (s)})}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,
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 in
{tilde over (s)}(b+m)=[{circumflex over ({tilde over (s)})}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-blocks {tilde over (s)}(b+m). In this instance, the sub-block {tilde over (s)}hLl(b+m) may be determined according to Equation 21. Also, a sub-block {circumflex over ({tilde over (s)})}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)⊗{circumflex over ({tilde over (s)})}′hL(b=m) [Equation 21]
{circumflex over ({tilde over (s)})}N/4−hL(b+m)=[{circumflex over ({tilde over (s)})}((b+m−1)·N/4), . . . ,{circumflex over ({tilde 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.
Number | Date | Country | Kind |
---|---|---|---|
10-2008-0091697 | Sep 2008 | KR | national |
This application is a continuation of U.S. patent application Ser. No. 15/714,273, filed Sep. 25, 2017, now U.S. Pat. No. 11,062,718, issued Jul. 13, 2021 which is a continuation of U.S. patent application Ser. No. 13/057,832, filed Feb. 7, 2011, now U.S. Pat. No. 9,773,505, which claims the benefit under 35 U.S.C. Section 371 of 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.
Number | Name | Date | Kind |
---|---|---|---|
5642464 | Yue et al. | Jun 1997 | A |
5867819 | Fukuchi | Feb 1999 | A |
6134518 | Cohen et al. | Oct 2000 | A |
6658383 | Koishida et al. | Dec 2003 | B2 |
7117156 | Kapilow | Oct 2006 | B1 |
7194407 | Yin | Mar 2007 | B2 |
7325023 | Youn | Jan 2008 | B2 |
7386445 | Ojala | Jun 2008 | B2 |
7454353 | Sperschneider et al. | Nov 2008 | B2 |
7593852 | Gao et al. | Sep 2009 | B2 |
7596486 | Ojala et al. | Sep 2009 | B2 |
7787632 | Ojanpera | Aug 2010 | B2 |
7876966 | Ojanpera | Jan 2011 | B2 |
8095359 | Boehm et al. | Jan 2012 | B2 |
8260620 | Ragot et al. | Sep 2012 | B2 |
8898059 | Beack et al. | Nov 2014 | B2 |
8954321 | Beack et al. | Feb 2015 | B1 |
9384748 | Beack et al. | Jul 2016 | B2 |
9773505 | Beack et al. | Sep 2017 | B2 |
10002619 | Beack et al. | Jun 2018 | B2 |
10622001 | Beack et al. | Apr 2020 | B2 |
11062718 | Beack | Jul 2021 | B2 |
20020007273 | Chen | Jan 2002 | A1 |
20030004711 | Koishida et al. | Jan 2003 | A1 |
20030009325 | Kirchherr et al. | Jan 2003 | A1 |
20040049376 | Sperschneider et al. | Mar 2004 | A1 |
20040162911 | Sperschneider et al. | Aug 2004 | A1 |
20040267532 | Black | Dec 2004 | A1 |
20050017879 | Linzmeier et al. | Jan 2005 | A1 |
20050163323 | Oshikiri | Jul 2005 | A1 |
20060161427 | Ojala | Jul 2006 | A1 |
20070147518 | Bessette | Jun 2007 | A1 |
20070219787 | Manjunath et al. | Sep 2007 | A1 |
20080065373 | Oshikiri | Mar 2008 | A1 |
20090012797 | Boehm et al. | Jan 2009 | A1 |
20090306992 | Ragot et al. | Dec 2009 | A1 |
20100138218 | Geiger | Jun 2010 | A1 |
20100241433 | Herre et al. | Sep 2010 | A1 |
20110153333 | Bessette | Jun 2011 | A1 |
20110173010 | Lecomte et al. | Jul 2011 | A1 |
20180322883 | Bayer et al. | Nov 2018 | A1 |
Number | Date | Country |
---|---|---|
101025918 | Aug 2007 | CN |
1793372 | Jun 2007 | EP |
1903559 | Mar 2008 | EP |
2003-44097 | Feb 2003 | JP |
2007-512546 | May 2007 | JP |
10-2007-0012194 | Jan 2007 | KR |
2004082288 | Sep 2004 | WO |
WO-2005001813 | Jan 2005 | WO |
WO-2005078706 | Aug 2005 | WO |
WO-2008157296 | Dec 2008 | WO |
Entry |
---|
ITU-T Recommendation G.722.2: Series G: Transmission Systems and Media, Digital Systems and Networks; Wideband coding of speech at around 16 kbit/s using Adaptive Multi-Rate Wideband (AMR-WB), Jul. 2003, 72 pages. |
3GPP TS 26.290 v6.3.0, 3rd Generation Partnership Project; Technical Specification Group Service and System Aspects; Audio codec processing functions; Extended Adaptive Multi-Rate—Wideband (AMRWB+) codec; Transcoding functions (Release 6), Jun. 2005, 86 pages. |
Lecomte et al., “Efficient cross-fade windows for transitions between LPC-based and non-LPC based audio coding”, Audio Engineering Society (AES) 12th Convention, Munich, Germany May 7-10, 2009, Convention Paper 7712, pp. 1-9. |
Bessette et al., “Universal Speech/Audio Coding Using Hybrid ACELP/TCX Techniques”, IEEE International Conference on Acoustics, Speech, and Signal Processing 2005, vol. 3, Mar. 18-23, 2005, pp. III-301-III-304. |
Wikipedia, “Adaptive Multi-Rate Wideband”, 8 pages, downloaded Sep. 16, 2016. |
International Search Report mailed Aug. 23, 2010 in corresponding International Patent Application No. PCT/KR2009/005340. |
Makino, K. et al., “Hybrid audio coding for speech and audio below medium bit rate”; 2000 Digest of Technical Papers, International Conference on Consumer Electronics; Los Angeles, CA; Jun. 13-15, 2000, 1 page. |
Office Action dated Apr. 8, 2013 in co-pending U.S. Appl. No. 13/057,832. |
Office Action dated Jul. 23, 2014 in co-pending U.S. Appl. No. 13/057,832. |
Office Action dated May 12, 2015 in co-pending U.S. Appl. No. 13/057,832. |
Office Action dated Jan. 25, 2016 in co-pending U.S. Appl. No. 13/057,832. |
Office Action dated Nov. 4, 2016 in co-pending U.S. Appl. No. 13/057,832. |
Final Office Action dated Aug. 27, 2013 in co-pending U.S. Appl. No. 13/057,832. |
Final Office Action dated Nov. 13, 2014 in co-pending U.S. Appl. No. 13/057,832. |
Final Office Action dated Sep. 1, 2015 in co-pending U.S. Appl. No. 13/057,832. |
Final Office Action dated May 20, 2016 in co-pending U.S. Appl. No. 13/057,832. |
Advisory Action dated Nov. 10, 2015 in co-pending U.S. Appl. No. 13/057,832. |
Advisory Action dated Jul. 25, 2016 in co-pending U.S. Appl. No. 13/057,832. |
Quayle Office Action dated Mar. 28, 2017 in co-pending U.S. Appl. No. 13/057,832. |
Notice of Allowance dated May 18, 2017 in co-pending U.S. Appl. No. 13/057,832. |
Office Action dated Sep. 4, 2018 in co-pending U.S. Appl. No. 15/714,273. |
Office Action dated Dec. 21, 2018 in co-pending U.S. Appl. No. 15/714,273. |
Office Action dated May 6, 2019 in co-pending U.S. Appl. No. 15/714,273. |
Office Action dated Aug. 30, 2019 in co-pending U.S. Appl. No. 15/714,273. |
Advisory Action dated Nov. 8, 2019 in co-pending U.S. Appl. No. 15/714,273. |
Office Action dated Jan. 22, 2020 in co-pending U.S. Appl. No. 15/714,273. |
Office Action dated May 1, 2020 in co-pending U.S. Appl. No. 15/714,273. |
Advisor Action Jul. 13, 2020 in co-pending U.S. Appl. No. 15/714,273. |
Office Action dated Oct. 19, 2020 in co-pending U.S. Appl. No. 15/714,273. |
Notice of Allowance dated Mar. 8, 2021 in co-pending U.S. Appl. No. 15/714,273. |
U.S. Appl. No. 15/714,273, filed Sep. 25, 2017, Seung Kwon Beack et al., Electronics and Telecommunications Research Institute and Kwangwoon University Industry-Academic Collaboration Foundation. |
U.S. Appl. No. 13/057,832, filed Feb. 7, 2011, Seung Kwon Beack et al., Electronics and Telecommunications Research Institute and Kwangwoon University Industry-Academic Collaboration Foundation. |
Number | Date | Country | |
---|---|---|---|
20220005486 A1 | Jan 2022 | US |
Number | Date | Country | |
---|---|---|---|
Parent | 15714273 | Sep 2017 | US |
Child | 17373243 | US | |
Parent | 13057832 | US | |
Child | 15714273 | US |