This application claims the benefit of Korean Patent Application No. 10-2005-0063304, filed on Jul. 13, 2005, and Korean Patent Application No. 10-2006-0015940, filed on Feb. 18, 2006 in the Korean Intellectual Property Office, the disclosures of which are incorporated herein in their entirety by reference.
1. Field of the Invention
The present general inventive concept relates to audio encoding and decoding, and more particularly, to a method and apparatus to quantize/dequantize frequency amplitude data and a method and apparatus to audio encode/decode using the method and apparatus to quantize/dequantize frequency amplitude data.
2. Description of the Related Art
With the diversification of application fields of audio communication and the improvement in transmission speeds of networks, there is a demand for high-quality audio communication. In order to meet this demand, the transmission of a wideband audio signal with a bandwidth of 0.3 kHz-7 kHz, which has superior performance compared to a conventional audio communication bandwidth of 0.3 kHz-3.4 kHz in various aspects, such as spontaneity and articulation, is required.
A packet switching network that transmits data in packet units may cause channel congestion, resulting in packet loss and audio quality degradation. In order to address this problem, a technique for concealing a damaged packet is widely used. However, this technique is not a perfect solution to the problem. Thus, wideband audio signal encoding/decoding techniques capable of effectively compressing a wideband audio signal and solving the channel congestion problem have been proposed.
The techniques that are currently being proposed can be classified as three types of techniques. A first technique compresses audio signals in a 0.3 kHz-7 kHz band at a certain time and restores the compressed audio signals. A second technique divides the audio signals in the 0.3 kHz-7 kHz band into audio signals in a 0.3 kHz-4 kHz band (i.e., a low band) and audio signals in a 4 kHz-7 kHz band (i.e., a high band), hierarchically compresses the audio signals, and restores the compressed audio signals. A third technique compresses audio signals in a 0.3 kHz-3.4 kHz band, restores the compressed audio signals, over-samples the restored audio signals to wideband audio signals in the 0.3 kHz-7 kHz band, obtains a wideband error signal between the wideband audio signals obtained by the over-sampling and the original wideband audio signals, and compresses the wideband error signal.
The second and third techniques are wideband audio encoding/decoding techniques using bandwidth scalability, which allow the optimal communication in a given environment by adjusting the number of levels or the amount of data transmitted from a network to a decoder according to data congestion.
In wideband audio encoding that divides audio signals in the 0.3 kHz-7 kHz band into audio signals in a 0.3 kHz-4 kHz band and audio signals in a 4 kHz-7 kHz band and hierarchically compresses the audio signals, the high-band audio signals in the 4 kHz-7 kHz band are encoded by a modulated lapped transform (MLT).
Referring to
The 2D-DCT unit 110 extracts 2D-DCT coefficients from the magnitudes of the MLT coefficients and outputs the extracted 2D-DCT coefficients to a DCT coefficient quantization unit 130. The DCT coefficient quantization unit 130 arranges the 2D-DCT coefficients having a 2D structure according to magnitude, the largest statistical magnitude coming first, quantizes the arranged magnitudes (vectors), and outputs codebook indices corresponding to the quantized vectors. The sign quantization unit 120 quantizes and outputs the signs of the MLT coefficients of large magnitudes. The output codebook indices and quantized signs are provided to a high-band audio decoder (not shown), at a decoding end.
However, high-band audio encoding using the MLT has a difficulty in high-quality audio restoration in a low-bitrate audio transmission and undergoes degradation in the performance of audio restoration at low bitrates.
In an attempt to address these problems, a high-band audio encoder using a harmonic coder has been proposed.
An amplitude quantization unit 210 quantizes and outputs the amplitude of the input high-band audio signal. A phase quantization unit 220 quantizes and outputs the phase of the input high-band audio signal. The output quantized amplitude and phase are provided to a high-band audio decoder (not shown), at a decoding end.
The high-band audio encoding using the harmonic coder can reproduce a high-quality audio at a low bitrate and with low complexity, however, the high-band audio encoding is limited in supporting bandwidth scalability for the input high-band audio signal.
Wideband error audio encoding compresses audio signals in a 0.3 kHz-3.4 kHz band providing bandwidth scalability, restores the compressed audio signals, over-samples the restored audio signals to wideband audio signals, obtains a wideband error signal between the wideband audio signals obtained by the over-sampling and the original wideband audio signals, and compresses the wideband error signal. In the wideband error audio encoding, the wideband error signals in a 0.05 kHz-7 kHz band are encoded by a modified discrete cosine transform (MDCT).
Referring to
However, the wideband error audio encoding using the MDCT, also has a difficulty in high-quality audio restoration in a low-bitrate audio transmission similar to when the MLT is used.
The present general inventive concept provides a method and apparatus to quantize/dequantize frequency amplitude data and a method and apparatus to audio encode/decode using the method and apparatus to quantize/dequantize the frequency amplitude data, in which a linear prediction residue of a wideband audio signal is transformed into a frequency domain signal and bandwidth scalability is supported in the quantization of the amplitude of the frequency domain signal for hierarchical encoding/decoding during the encoding/decoding of the wideband audio signal.
Additional aspects of the present general inventive concept will be set forth in part in the description which follows and, in part, will be obvious from the description, or may be learned by practice of the general inventive concept.
The foregoing and/or other aspects of the present general inventive concept are achieved by providing a method of quantizing frequency amplitude data. The method includes calculating and quantizing the power of frequency amplitudes of an audio signal, normalizing the quantized power using frequency amplitude data, and quantizing a first one of even-numbered or odd-numbered data from among the normalized frequency amplitude data.
The method may further include interpolating frequency amplitude data that corresponds to a second one of the even-numbered or odd-numbered frequency amplitude data that is not quantized from among the normalized frequency amplitude data using the quantized first one of the even-numbered or odd-numbered data, and quantizing an interpolation error corresponding to a difference between the second frequency amplitude data that is not quantized and the interpolated frequency amplitude data.
The foregoing and/or other aspects of the present general inventive concept are also achieved by providing a method of quantizing frequency amplitude data. The method includes calculating and quantizing power of frequency amplitudes for each of a plurality of bands that make up an audio frame, normalizing frequency amplitude data for each of the bands using the quantized power, and quantizing a first one of even-numbered or odd-numbered data from among the normalized frequency amplitude data.
The foregoing and/or other aspects of the present general inventive concept are also achieved by providing an audio encoding method including detecting a frequency envelope of a wideband error signal of an audio signal, removing the detected frequency envelope from the wideband error signal to obtain a frequency amplitude and a frequency phase, and encoding the obtained frequency amplitude and frequency phase. The encoding of the frequency amplitude includes calculating and quantizing power of frequency amplitudes for each of a plurality of bands constituting an audio frame, normalizing frequency amplitude data for each of the bands using the quantized power, and quantizing a first one of even-numbered or odd-numbered data from among the normalized frequency amplitude data.
The foregoing and/or other aspects of the present general inventive concept are also achieved by providing an apparatus to quantize frequency amplitude data. The apparatus includes a power calculation unit that calculates power of frequency amplitudes for each of a plurality of bands constituting an audio frame, a power quantization unit that quantizes the calculated power, an amplitude normalization unit that normalizes frequency amplitude data for each of the bands using the quantized power, and a normalized data quantization unit that quantizes a first one of even-numbered or odd-numbered data from among the normalized frequency amplitude data.
The apparatus may further include an interpolation unit that interpolates frequency amplitude data that corresponds to a second one of the even-numbered or odd-numbered frequency amplitude data that is not quantized by the normalized data quantization unit from among the frequency amplitude data normalized by the amplitude normalization unit using quantized first frequency amplitude data from among the normalized frequency amplitude data, and an interpolation error quantization unit that quantizes an interpolation error corresponding to a difference between the second frequency amplitude data that is not quantized and the interpolated frequency amplitude data.
The foregoing and/or other aspects of the present general inventive concept are also achieved by providing an audio encoder including an envelope detection unit that detects a frequency envelope of a wideband error signal of an audio signal, a frequency amplitude/phase obtaining unit that removes the detected frequency envelope from the wideband error signal to obtain a frequency amplitude and a frequency phase, a frequency amplitude encoding unit that encodes the obtained frequency amplitude, and a frequency phase encoding unit that encodes the obtained frequency phase. The frequency amplitude encoding unit includes a power calculation unit that calculates power of frequency amplitudes for each of a plurality of bands making up an audio frame, a power quantization unit that quantizes the calculated power, an amplitude normalization unit that normalizes frequency amplitude data for each of the bands using the quantized power, and a normalized data quantization unit that quantizes a first one of even-numbered or odd-numbered data from among the normalized frequency amplitude data.
The foregoing and/or other aspects of the present general inventive concept are also achieved by providing an encoding apparatus, including an envelope detection unit to detect an envelope of a wideband error signal having at least one frame divided into a first data portion and a second data portion, a frequency amplitude/phase obtaining unit to obtain frequency amplitude data and frequency phase data of the first and second data portions of the wideband error signal based on the detected envelope, and a frequency amplitude encoding unit to interpolate an approximation of the frequency amplitude data of the second data portion from the first data portion, to determine an interpolation error between the frequency amplitude data of the second data portion and the interpolated approximation thereof, and to encode the frequency amplitude data of the first data portion and the determined interpolation error.
The foregoing and/or other aspects of the present general inventive concept are also achieved by providing a method of dequantizing frequency amplitude data. The method includes dequantizing a value (Root Mean Square-RMS index) obtained by quantizing power of frequency amplitudes included in a bitstream to restore the power of the frequency amplitudes, and multiplying impulses corresponding to the number of frequency amplitudes to be restored by the restored power of the frequency amplitudes to restore the frequency amplitudes.
The foregoing and/or other aspects of the present general inventive concept are also achieved by providing a method of dequantizing frequency amplitude data. The method includes dequantizing a value (RMS index) obtained by quantizing power of frequency amplitudes included in a bitstream to restore the power of the frequency amplitudes, dequantizing a quantized first one of even-numbered or odd-numbered normalized frequency amplitude data included in the bitstream to restore the first one of the even-numbered or odd-numbered normalized frequency amplitude data, interpolating the restored normalized first frequency amplitude data to generate frequency amplitude data that corresponds to a second one of the even-numbered or odd-numbered frequency amplitude data that is not restored from among normalized frequency amplitude data, and denormalizing the normalized first frequency amplitude data and the frequency amplitude data generated by the interpolation using the restored power of the frequency amplitudes to restore the frequency amplitude data.
The foregoing and/or other aspects of the present general inventive concept are also achieved by providing a method of dequantizing frequency amplitude data. The method includes dequantizing a value (RMS index) obtained by quantizing power of frequency amplitudes included in a bitstream to restore the power of the frequency amplitudes, dequantizing a quantized first one of even-numbered or odd-numbered normalized frequency amplitude data included in the bitstream to restore the first one of the even-numbered or odd-numbered normalized frequency amplitude data, interpolating the restored normalized first frequency amplitude data to generate frequency amplitude data that corresponds to a second one of the even-numbered or odd-numbered frequency amplitude data that is not restored from among normalized frequency amplitude data, dequantizing quantized interpolation error data included in the bitstream to restore the interpolation error data, and denormalizing the restored first frequency amplitude data, the frequency amplitude data generated by the interpolation, and the restored interpolation error data using the restored power of the frequency amplitudes to restore the frequency amplitude data.
The method may be performed for each of a plurality of bands making up an audio frame that is transformed into a frequency domain.
The foregoing and/or other aspects of the present general inventive concept are also achieved by providing an audio decoding method including restoring a frequency amplitude, restoring a frequency phase, and restoring a frequency envelope of a wideband error signal using the restored frequency amplitude and frequency phase. The restoration of the frequency amplitude includes dequantizing a value (RMS index) obtained by quantizing power of frequency amplitudes included in a bitstream to restore the power of the frequency amplitudes, generating a sequence of impulses corresponding to a number of frequency amplitudes to be restored, and multiplying the generated impulses by the restored power of the frequency amplitudes to restore the frequency amplitudes.
The foregoing and/or other aspects of the present general inventive concept are also achieved by providing an apparatus to dequantize frequency amplitude data. The apparatus includes a frequency power restoration unit that dequantizes a value (RMS index) obtained by quantizing power of frequency amplitudes included in a bitstream to restore the power of the frequency amplitudes, an impulse sequence generation unit that generates a sequence of impulses corresponding to a number of frequency amplitudes to be restored, and a first frequency amplitude restoration unit that multiplies the generated impulses by the restored power of the frequency amplitudes to restore the frequency amplitudes.
The foregoing and/or other aspects of the present general inventive concept are also achieved by providing an apparatus to dequantize frequency amplitude data. The apparatus includes a frequency power restoration unit that dequantizes a value (RMS index) obtained by quantizing power of frequency amplitudes included in a bitstream to restore the power of the frequency amplitudes, a normalized data restoration unit that dequantizes a quantized first one of even-numbered or odd-numbered normalized frequency amplitude data included in the bitstream to restore the first one of the even-numbered or odd-numbered normalized frequency amplitude data, a normalized data interpolation unit that interpolates the restored first normalized frequency amplitude data to generate frequency amplitude data that corresponds to a second one of the even-numbered or odd-numbered frequency amplitude data that is not restored from among normalized frequency amplitude data, and a second frequency amplitude restoration unit that denormalizes the normalized first frequency amplitude data and the frequency amplitude data generated by the interpolation using the restored power of the frequency amplitudes to restore the frequency amplitude data.
The foregoing and/or other aspects of the present general inventive concept are also achieved by providing an apparatus to dequantize frequency amplitude data. The apparatus includes a frequency power restoration unit that dequantizes a value (RMS index) obtained by quantizing power of frequency amplitudes included in a bitstream to restore the power of the frequency amplitudes, a normalized data restoration unit that dequantizes a quantized first one of even-numbered or odd-numbered normalized frequency amplitude data included in the bitstream to restore the first one of the even-numbered or odd-numbered normalized frequency amplitude data, a normalized data interpolation unit that interpolates the restored normalized first frequency amplitude data to generate frequency amplitude data that corresponds to a second one of the even-numbered or odd-numbered frequency amplitude data that is not restored from among normalized frequency amplitude data, an interpolation error restoration unit that dequantizes quantized interpolation error data included in the bitstream to restore the interpolation error data, and a third frequency amplitude restoration unit that denormalizes the first frequency amplitude data restored by the normalized data restoration unit, the frequency amplitude data generated by the normalized data interpolation unit by the interpolation, and the restored interpolation error data restored by the interpolation error restoration unit using the restored power of the frequency amplitudes to restore the frequency amplitude data.
The foregoing and/or other aspects of the present general inventive concept are also achieved by providing an audio decoder including a frequency amplitude restoring unit that restores a frequency amplitude, a frequency phase restoring unit that restores a frequency phase, and a frequency envelope restoring unit that restores a frequency envelope of a wideband error signal using the restored frequency amplitude and frequency phase. The frequency amplitude restoring unit includes a frequency power restoration unit that dequantizes a value (RMS index) obtained by quantizing power of frequency amplitudes included in a bitstream to restore the power of the frequency amplitudes, an impulse sequence generation unit that generates a sequence of impulses corresponding to a number of frequency amplitudes to be restored, and a frequency amplitude restoration unit that multiplies the generated impulses by the restored power of the frequency amplitudes to restore the frequency amplitudes.
The foregoing and/or other aspects of the present general inventive concept are also achieved by providing a dequantizing apparatus, including an even-numbered position dequantizing unit to dequantize a first amplitude vector at an even-numbered position corresponding to even-numbered amplitude indices received in a bitstream, an odd-numbered position interpolation unit to obtain a second amplitude vector at an odd-numbered position based on the dequantized first amplitude vector, an interpolation error dequantization unit to dequantize an interpolation error at an odd-numbered position corresponding to odd-numbered amplitude indices received in the bitstream, and a plurality of interframe interpolation units to perform dequantization at a plurality of scalability levels based on the first and second amplitude vectors and the dequantized interpolation error.
The foregoing and/or other aspects of the present general inventive concept are also achieved by providing a computer-readable recording medium having recorded thereon a program for performing the audio encoding methods and the audio decoding methods (described above).
These and/or other aspects of the present general inventive concept will become apparent and more readily appreciated from the following description of the embodiments, taken in conjunction with the accompanying drawings of which:
Reference will now be made in detail to the embodiments of the present general inventive concept, 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 general inventive concept by referring to the figures.
The frequency amplitude/phase obtaining unit 420 removes the detected frequency envelope from the wideband error signal and obtains a frequency amplitude and a frequency phase. The frequency amplitude encoding unit 440 encodes the obtained frequency amplitude. The frequency phase encoding unit 460 encodes the obtained frequency phase.
The frequency amplitude encoding unit 440 is an example of an apparatus to quantize the frequency amplitude data according to the present embodiment. The apparatus to quantize the frequency amplitude data of the present embodiment includes the power quantization unit 510, the normalization unit 520, and the normalized data quantization unit 530. The apparatus to quantize the frequency amplitude data according to the present embodiment further includes the band splitting unit 500, the interpolated data quantization unit 540, and the interpolation error quantization unit 550.
The band splitting unit 500 splits an audio frame into a plurality of bands.
The power calculation unit 505 calculates power of frequency amplitudes (frequency power) that make up each of the split bands for each of the split bands split by the band splitting unit 500. The power quantization unit 510 quantizes the calculated power for each of the split bands. The normalization unit 520 normalizes frequency amplitude data for each of the split bands using the quantized power. The normalized data quantization unit 530 quantizes even-numbered or odd-numbered data of the normalized frequency amplitude data. The interpolated data quantization unit 540 interpolates frequency amplitude data that is not quantized by the normalized data quantization unit 530 from among all the frequency amplitude data normalized by the normalization unit 520, using the quantized frequency amplitude data, by interpolation. The interpolation error quantization unit 550 calculates an interpolation error corresponding to a difference between the frequency amplitude data that is not quantized from among all the normalized frequency amplitude data and the interpolated frequency amplitude data, and the interpolation error quantization unit 550 quantizes the interpolation error. Here, the even-numbered data may correspond to frequency amplitude data of even numbered sub-frame(s) in a frame of an audio signal, and the odd-numbered data may correspond to frequency amplitude data of odd-numbered sub-frame(s) in the frame of the audio signal. More particularly, the even-numbered data may correspond to frequency amplitude data of bands of the even numbered sub-frame(s) in the frame of the audio signal, and the odd-numbered data may correspond to frequency amplitude data of bands of the odd-numbered sub-frame(s) in the frame of the audio signal.
When an input sample is processed in frame units during the foregoing process(es), a single frame is divided into two sub-frames and encoding is performed on each of the sub-frames in subsequent processes. A first-numbered sub-frame is defined as a first sub-frame, a second-numbered sub-frame is defined as a second sub-frame, and an Lth-numbered sub-frame is defined as an Lth sub-frame.
The linear prediction of the 12.8 kHz error signal is analyzed using the obtained linear prediction coefficient. When this process is interpreted in the frequency domain, it can have an effect of making the frequency domain flat by removing the frequency envelope of the audio signal. A linear prediction residual signal is generated through linear prediction analysis and quantization, and the linear prediction residual signal is input to a time-frequency mapping unit 860 for transformation into a frequency domain. For frequency transformation, a fast Fourier transform (FFT) may be used in the present embodiment, however, other frequency transforms may also be used with the general inventive concept.
Referring to the FFT in the previous process, when N time domains are frequency-transformed, 2N frequency components in complex forms are output and remaining components except for the 0th and Nth components exist symmetrically. By processing the Nth data that is a Nyquist frequency component as 0, only N complex values from among a total of 2N complex values are encoded to express signs. Band splitting will be described with reference to
The complex values are quantized by a transform coefficient quantization unit 870. The complex values are quantized separately for the frequency amplitude and the frequency phase. The frequency phase is quantized using various methods such as vector quantization (VQ), scalar quantization (SQ), split VQ (SVQ), multi-stage split VQ (MSVQ) according to constraints, such as transmission rate, memory, and complexity.
The frequency amplitude is quantized hierarchically as illustrated in
where “s” and “e” indicate a first frequency index and a last frequency index of a band, respectively, and “mn” indicates an nth frequency amplitude in an even-numbered sub-frame. Thus, if the frequency amplitude is split into N bands, N frequency power information pieces are generated and are quantized by a power quantization unit 905. Since the frequency power information pieces for the split bands have strong correlation with one another, the frequency power information pieces for the split bands are grouped as a set of N vectors, and then the N vectors are quantized. When a scalable decoding algorithm is supported, the quantized power information is transmitted to an audio decoder, and an additional gain for each level is typically required to restore accurate energy. However, by using the previous process, a need for the additional gain is removed because a final size is fixed at all times.
The frequency amplitude is normalized by an amplitude normalization unit 910 to obtain the quantized frequency power corresponding to each of the bands. The normalized frequency amplitude vectors are quantized in the same manner. A quantization method for a single band is described as follows. For a frequency amplitude vector corresponding to the single band, an even-numbered frequency amplitude is first quantized by an even position quantization unit 915. For even position quantization, various quantization methods such as VQ, SQ, SVQ, and MSVQ are used according to constraints, such as transmission rate, memory, and complexity.
For compensation, an odd-numbered frequency amplitude is interpolated by a cubic interpolation unit 920 from the quantized even-numbered frequency amplitude, as follows:
where “m” indicates a second differential value of the quantized odd-numbered frequency amplitude and can be expressed as follows:
m′n=m2n+2−m2n
m″n=m′n−m′n−1 (3)
Since the quantized odd-numbered frequency amplitude is interpolated information, the quantized odd-numbered frequency amplitude may have many errors. In order to improve the accuracy of the quantized odd-numbered frequency amplitude, an interpolation error quantization unit 925 quantizes an interpolation error signal at an odd-numbered position. For odd-numbered position quantization, various quantization methods, such as VQ, SQ, SVQ, and MSVQ as in the even-numbered position quantization may be used according to constraints, such as a transmission rate, a memory, and complexity. The other bands are quantized in the same manner as illustrated in
Upon completion of quantization of the even-numbered sub-frame, the odd-numbered sub-frame is obtained through interframe interpolation using the quantized even-numbered sub-frame.
For the odd-numbered sub-frame, interpolation, instead of quantization, may be used as follows:
mn,1=(mn−1,1+mn,2)×0.5 (4)
where mn,1 indicates an odd-numbered sub-frame in an nth frame, mn−1,2 indicates an even-numbered sub-frame in an (n−1)th frame, and mn,2 indicates an even-numbered sub-frame in the nth frame.
The frequency amplitude of the quantized even-numbered sub-frame or the interpolated odd-numbered sub-frame is scaled by multiplying the frequency amplitude by the quantized frequency power.
The frequency power restoration unit 1100 dequantizes a value (an RMS index) obtained by quantizing a power of frequency amplitudes included in a bitstream to restore the power of the frequency amplitudes. The impulse sequence generation unit 1120 generates a sequence of impulses corresponding to a number of frequency amplitudes to be restored. The first frequency amplitude restoration unit 1140 multiplies the impulse sequence by the restored frequency power to restore frequency amplitudes.
The frequency power restoration unit 1200 dequantizes a value (an RMS index) obtained by quantizing a power of frequency amplitudes included in a bitstream to restore the power of the frequency amplitudes. The normalized data restoration unit 1220 dequantizes quantized even-numbered or odd-numbered normalized frequency amplitude data included in the bitstream to restore the even-numbered or odd-numbered normalized frequency amplitude data. The normalized data interpolation unit 1240 interpolates the restored normalized frequency amplitude data to generate frequency amplitude data that is not restored by the normalized data restoration unit 1220 from among all the normalized frequency amplitude data. That is, the normalized data interpolation unit 1240 interpolates the other one of the even-numbered or odd-numbered normalized frequency data from the one that is restored by the normalized data restoration unit 1220. The second frequency amplitude restoration unit 1260 denormalizes the normalized frequency amplitude data and the interpolated frequency amplitude data using the restored frequency power, thereby restoring the frequency amplitude data.
The frequency power restoration unit 1300 dequantizes a value (an RMS index) obtained by quantizing a power of frequency amplitudes included in a bitstream to restore the power of the frequency amplitudes. The normalized data restoration unit 1310 dequantizes quantized even-numbered or odd-numbered normalized frequency amplitude data included in the bitstream to restore the even-numbered or odd-numbered normalized frequency amplitude data.
The normalized data interpolation unit 1320 interpolates the restored normalized frequency amplitude data to generate frequency amplitude data that is not restored by the normalized data restoration unit 1310 from among all the normalized frequency amplitude data. That is, the normalized data interpolation unit 1320 interpolates the remaining frequency amplitude data from the normalized frequency amplitude data restored by the normalized data restoration unit 1310. The interpolation error restoration unit 1330 dequantizes quantized interpolation error data included in the bitstream to restore the interpolation error data.
The third frequency amplitude restoration unit 1340 denormalizes the frequency amplitude data restored by the normalized data restoration unit 1310, the frequency amplitude data interpolated by the normalized data interpolation unit 1320, and the interpolation error data restored by the interpolation error restoration unit 1330 using the restored power of the frequency amplitudes restored by the frequency power restoration unit 1300. Accordingly, the third frequency amplitude restoration unit 1340 restores the frequency amplitude data.
The frequency amplitude restoration unit 1400 restores a frequency amplitude. The frequency phase restoration unit 1420 restores a frequency phase. The frequency envelope restoration unit 1440 restores a frequency envelope of a wideband error signal using the restored frequency amplitude and frequency phase. The frequency amplitude restoration unit 1400 may be the apparatus to dequantize the frequency amplitude data illustrated in
The dequantization of a first level is performed as follows. A power dequantization unit 1900 dequantizes a frequency power of a band corresponding to RMS indices of a transmitted bitstream. An impulse sequence generation unit 1920 generates a sequence of impulses corresponding to a number of frequency amplitudes of the band. The output of the power dequantization unit 1900 and the output of the impulse sequence generation unit 1920 are multiplied to restore an amplitude vector of an even-numbered sub-frame for the first level. In order to obtain amplitude information of a frame between two frames, i.e., an odd-numbered sub-frame for a third level, an interframe interpolation unit 1940 performs interpolation between a last even-numbered sub-frame of a previous frame and an even-numbered sub-frame of a current frame. Interframe interpolation is described above, therefore a detailed description thereof will not be provided here.
Next, the dequantization of the third level is performed as follows. An interpolation error dequantization unit 2040 dequantizes an interpolation error at an odd-numbered position corresponding to odd-numbered amplitude indices of the transmitted bitstream. An addition unit 2050 adds the amplitude vectors for the second level with the interpolation error. A second multiplication unit 2060 multiplies the output of the addition unit 2050 by the frequency power to restore an amplitude vector of an even-numbered sub-frame for the third level. In order to obtain amplitude information of a frame between two frames, i.e., an odd-numbered sub-frame for the third level using the amplitude vector, a second interframe interpolation unit 2070 performs interpolation between the last even-numbered sub-frame of the previous frame and the even-numbered sub-frame of the current frame. Interframe interpolation is described above, therefore a detailed description thereof will not be provided here. Accordingly, the second interframe interpolation unit 2070 outputs a third odd-numbered frame interpolated coefficient.
For a wideband signal, a previously transmitted amplitude index and phase index are input to a transform coefficient decoding unit 2120 to be transformed into actual coefficients and then into complex forms. Restored frequency information in complex forms is transformed into the time domain by a frequency-time mapping unit 2130. In the present embodiment, an inverse fast Fourier transform (IFFT) may be used for time-domain transformation, however, it should be understood that other time-domain transform methods may alternatively be used along with a frequency transformation method of an audio encoder. A restored linear prediction residual signal can be obtained by the time domain transformation, and the restored linear prediction residual signal is synthesized into an audio signal by a linear prediction synthesis unit 2140 using restored LPC coefficients obtained from LPC coefficient indices. According to the previous process, a 12.8 kHz wideband error signal is restored, and the restored wideband error signal is converted into a 16 kHz wideband error signal by a second over-sampler 2150. At this time, in order to generate a frequency higher than 6.4 kHz in the frequency domain, a high-frequency generator 2160 generates a signal corresponding to a high frequency. The high-frequency generator 2160 generates a virtual 16 kHz signal by performing linear prediction synthesis on a random number generated by a random number generator, extracts only high-frequency components of the generated virtual 16 kHz signal using a high-band pass filter, and multiplies the extracted high-frequency components by a received high-frequency gain, thereby generating a signal higher than 6.4 kHz (i.e., the high frequency signal). If the high-frequency gain is not received through the bitstream, a gain is estimated using the restored linear prediction residual signal and a frequency gradient. Thereafter, the high-frequency signal and the restored 16 kHz wideband error signal are added by a first addition unit 2170 to generate a wideband synthesized signal. The decoder of the narrowband core codec 2100 synthesizes the narrowband audio signal in the same manner as the narrowband decoding described above. The synthesized narrowband audio signal is transformed into a 16 kHz wideband signal by a third over-sampler 2110. The transformed 16 kHz narrowband core audio signal is added to the synthesized wideband signal by a second addition unit 2180 to generate a final synthesized wideband audio signal. The final synthesized wideband audio signal is post-processed by a post-processor 2190 to provide a clearer audio signal. For the post-processing, formant post-processing filtering and gain compensation that are used in a speech codec can be performed. The formant post-processing filtering makes the audio signal more clear by emphasizing formant components of the wideband audio signal and the gain compensation compensates for energy that is lost by the formant post-processing filtering.
As described above, according to embodiments of the present general inventive concept, scalability for a plurality of levels can be supported using frequency amplitude and phase data of a wideband error signal. Moreover, by using the frequency amplitude and phase data of the wideband error signal while maintaining a low-band audio signal, basic audio quality can be secured. Furthermore, with the use of the frequency amplitude data, a wide frequency band can be quantized into a small number of bits and bandwidth scalability can be provided to audio quality.
Additionally, the present general inventive concept may be embodied in a computer readable medium or a software program. For example, a program to perform the method of encoding/decoding a wideband error signal according to embodiments of the present general inventive concept can be embodied as computer-readable code on a computer-readable recording medium. The computer-readable recording medium can be any data storage device that can store data which can be thereafter read by a computer system. Examples of the computer-readable recording medium include read-only memory (ROM), random-access memory (RAM), CD-ROMs, magnetic tapes, floppy disks, optical data storage devices, and carrier waves (e.g., transmission over the Internet). The computer readable recording medium can also be distributed over network coupled computer systems so that the computer readable code is stored and executed in a distributed fashion. Also, functional programs, code, and code segments for implementing the present general inventive concept can be easily construed by programmers skilled in the art.
Although a few embodiments of the present general inventive concept have been shown and described, it will be appreciated by those skilled in the art that changes may be made in these embodiments without departing from the principles and spirit of the general inventive concept, the scope of which is defined in the appended claims and their equivalents.
Number | Date | Country | Kind |
---|---|---|---|
2005-63304 | Jul 2005 | KR | national |
2006-15940 | Feb 2006 | KR | national |