Description
APPARATUS AND METHOD FOR ENCODING/DECODING
SIGNAL
Technical Field
[1] The present invention relates to an encoding/decoding method and an encoding/ decoding apparatus, and more particularly, to an encoding/decoding apparatus which can process an audio signal so that three dimensional (3D) sound effects can be created, and an encoding/decoding method using the encoding/decoding apparatus.
[2]
Background Art
[3] An encoding apparatus down-mixes a multi-channel signal into a signal with fewer channels, and transmits the down-mixed signal to a decoding apparatus. Then, the decoding apparatus restores a multi-channel signal from the down-mixed signal and reproduces the restored multi-channel signal using three or more speakers, for example, 5.1-channel speakers.
[4] Multi-channel signals may be reproduced by 2-channel speakers such as headphones. In this case, in order to make a user feel as if sounds output by 2-channel speakers were reproduced from three or more sound sources, it is necessary to develop three-dimensional (3D) processing techniques capable of encoding or decoding multichannel signals so that 3D effects can be created. Disclosure of Invention Technical Problem
[5] The present invention provides an encoding/decoding apparatus and an encoding/ decoding method which can reproduce multi-channel signals in various reproduction environments by efficiently processing signals with 3D effects.
[6]
Technical Solution
[7] According to an aspect of the present invention, there is provided a decoding method of decoding a signal from an input bitstream, the decoding method including extracting a compatible down-mix signal optimized for a first multi-channel decoder from the input bitstream, converting the compatible down-mix signal to be optimized for a second multi-channel signal by performing a compatibility processing operation on the compatible down-mix signal, and generating a three-dimensional (3D) down- mix signal by performing a 3D rendering operation on the converted down-mix signal.
[8] According to another aspect of the present invention, there is provided a decoding method of decoding a signal from an input bitstream, the decoding method including
extracting a compatible down-mix signal optimized for a first multi-channel decoder from the input bitstream, combining compatibility information necessary for performing a compatibility processing operation and filter information regarding a filter to be used in a 3D rendering operation, and generating a 3D down-mix signal by performing a 3D rendering operation on the compatible down-mix signal using filter information obtained by the combination.
[9] According to another aspect of the present invention, there is provided a decoding apparatus for decoding a signal from an input bitstream, the decoding apparatus including a bit unpacking unit which extracts a compatible down-mix signal optimized for a first multi-channel decoder from the input bitstream, a down-mix compatibility processing unit which converts the compatible down-mix signal to be optimized for a second multi-channel signal by performing a compatibility processing operation on the compatible down-mix signal, and a 3D rendering unit which generates a three- dimensional (3D) down-mix signal by performing a 3D rendering operation on the converted compatible down-mix signal.
[10] According to another aspect of the present invention, there is provided a computer- readable recording medium having a computer program for executing any one of the above-described decoding methods.
Advantageous Effects
[11] According to the present invention, it is possible to efficiently encode multi-channel signals with 3D effects and to adaptively restore and reproduce audio signals with optimum sound quality according to the characteristics of a reproduction environment. [12]
Brief Description of the Drawings [13] FIG. 1 is a block diagram of an encoding/decoding apparatus according to an embodiment of the present invention; [14] FIG. 2 is a block diagram of an encoding apparatus according to an embodiment of the present invention; [15] FIG. 3 is a block diagram of a decoding apparatus according to an embodiment of the present invention; [16] FIG. 4 is a block diagram of an encoding apparatus according to another embodiment of the present invention; [17] FIG. 5 is a block diagram of a decoding apparatus according to another embodiment of the present invention; [18] FIG. 6 is a block diagram of a decoding apparatus according to another embodiment of the present invention; [19] FIG. 7 is a block diagram of a three-dimensional (3D) rendering apparatus
according to an embodiment of the present invention;
[20] FIGS. 8 through 11 illustrate bitstreams according to embodiments of the present invention;
[21] FIG. 12 is a block diagram of an encoding/decoding apparatus for processing an arbitrary down-mix signal according to an embodiment of the present invention;
[22] FIG. 13 is a block diagram of an arbitrary down-mix signal compensation/3D rendering unit according to an embodiment of the present invention;
[23] FIG. 14 is a block diagram of a decoding apparatus for processing a compatible down-mix signal according to an embodiment of the present invention;
[24] FIG. 15 is a block diagram of a down-mix compatibility processing/3D rendering unit according to an embodiment of the present invention; and
[25] FIG. 16 is a block diagram of a decoding apparatus for canceling crosstalk according to an embodiment of the present invention. Best Mode for Carrying Out the Invention
[26] The present invention will hereinafter be described more fully with reference to the accompanying drawings, in which exemplary embodiments of the invention are shown.
[27] FIG. 1 is a block diagram of an encoding/decoding apparatus according to an embodiment of the present invention. Referring to FIG. 1, an encoding unit 100 includes a multi-channel encoder 110, a three-dimensional (3D) rendering unit 120, a down-mix encoder 130, and a bit packing unit 140.
[28] The multi-channel encoder 110 down-mixes a multi-channel signal with a plurality of channels into a down-mix signal such as a stereo signal or a mono signal and generates spatial information regarding the channels of the multi-channel signal. The spatial information is needed to restore a multi-channel signal from the down-mix signal.
[29] Examples of the spatial information include a channel level difference (CLD), which indicates the difference between the energy levels of a pair of channels, a channel prediction coefficient (CPC), which is a prediction coefficient used to generate a 3-channel signal based on a 2-channel signal, inter-channel correlation (ICC), which indicates the correlation between a pair of channels, and a channel time difference (CTD), which is the time interval between a pair of channels.
[30] The 3D rendering unit 120 generates a 3D down-mix signal based on the down-mix signal. The 3D down-mix signal may be a 2-channel signal with three or more directivities and can thus be reproduced by 2-channel speakers such as headphones with 3D effects. In other words, the 3D down-mix signal may be reproduced by 2-channel speakers so that a user can feel as if the 3D down-mix signal were reproduced from a sound source with three or more channels. The direction of a sound source may be
determined based on at least one of the difference between the intensities of two sounds respectively input to both ears, the time interval between the two sounds, and the difference between the phases of the two sounds. Therefore, the 3D rendering unit 120 can convert the down-mix signal into the 3D down-mix signal based on how the humans can determine the 3D location of a sound source with their sense of hearing.
[31] The 3D rendering unit 120 may generate the 3D down-mix signal by filtering the down-mix signal using a filter. In this case, filter-related information, for example, a coefficient of the filter, may be input to the 3D rendering unit 120 by an external source. The 3D rendering unit 120 may use the spatial information provided by the multi-channel encoder 110 to generate the 3D down-mix signal based on the down-mix signal. More specifically, the 3D rendering unit 120 may convert the down-mix signal into the 3D down-mix signal by converting the down-mix signal into an imaginary multi-channel signal using the spatial information and filtering the imaginary multichannel signal.
[32] The 3D rendering unit 120 may generate the 3D down-mix signal by filtering the down-mix signal using a head-related transfer function (HRTF) filter.
[33] A HRTF is a transfer function which describes the transmission of sound waves between a sound source at an arbitrary location and the eardrum, and returns a value that varies according to the direction and altitude of a sound source. If a signal with no directivity is filtered using the HRTF, the signal may be heard as if it were reproduced from a certain direction.
[34] The 3D rendering unit 120 may perform a 3D rendering operation in a frequency domain, for example, a discrete Fourier transform (DFT) domain or a fast Fourier transform (FFT) domain. In this case, the 3D rendering unit 120 may perform DFT or FFT before the 3D rendering operation or may perform inverse DFT (IDFT) or inverse FFT (IFFT) after the 3D rendering operation.
[35] The 3D rendering unit 120 may perform the 3D rendering operation in a quadrature mirror filter (QMF)/hybrid domain. In this case, the 3D rendering unit 120 may perform QMF/hybrid analysis and synthesis operations before or after the 3D rendering operation.
[36] The 3D rendering unit 120 may perform the 3D rendering operation in a time domain. The 3D rendering unit 120 may determine in which domain the 3D rendering operation is to be performed according to required sound quality and the operational capacity of the encoding/decoding apparatus.
[37] The down-mix encoder 130 encodes the down-mix signal output by the multichannel encoder 110 or the 3D down-mix signal output by the 3D rendering unit 120. The down-mix encoder 130 may encode the down-mix signal output by the multichannel encoder 110 or the 3D down-mix signal output by the 3D rendering unit 120
using an audio encoding method such as an advanced audio coding (AAC) method, an MPEG layer 3 (MP3) method, or a bit sliced arithmetic coding (BSAC) method.
[38] The down-mix encoder 130 may encode a non-3D down-mix signal or a 3D down- mix signal. In this case, the encoded non-3D down-mix signal and the encoded 3D down-mix signal may both be included in a bitstream to be transmitted.
[39] The bit packing unit 140 generates a bitstream based on the spatial information and either the encoded non-3D down-mix signal or the encoded 3D down-mix signal.
[40] The bitstream generated by the bit packing unit 140 may include spatial information, down-mix identification information indicating whether a down-mix signal included in the bitstream is a non-3D down-mix signal or a 3D down-mix signal, and information identifying a filter used by the 3D rendering unit 120 (e.g., HRTF coefficient information).
[41] In other words, the bitstream generated by the bit packing unit 140 may include at least one of a non-3D down-mix signal which has not yet been 3D-processed and an encoder 3D down-mix signal which is obtained by a 3D processing operation performed by an encoding apparatus, and down-mix identification information identifying the type of down-mix signal included in the bitstream.
[42] It may be determined which of the non-3D down-mix signal and the encoder 3D down-mix signal is to be included in the bitstream generated by the bit packing unit 140 at the user's choice or according to the capabilities of the encoding/decoding apparatus illustrated in FIG. 1 and the characteristics of a reproduction environment.
[43] The HRTF coefficient information may include coefficients of an inverse function of a HRTF used by the 3D rendering unit 120. The HRTF coefficient information may only include brief information of coefficients of the HRTF used by the 3D rendering unit 120, for example, envelope information of the HRTF coefficients. If a bitstream including the coefficients of the inverse function of the HRTF is transmitted to a decoding apparatus, the decoding apparatus does not need to perform an HRTF coefficient conversion operation, and thus, the amount of computation of the decoding apparatus may be reduced.
[44] The bitstream generated by the bit packing unit 140 may also include information regarding an energy variation in a signal caused by HRTF-based filtering, i.e., information regarding the difference between the energy of a signal to be filtered and the energy of a signal that has been filtered or the ratio of the energy of the signal to be filtered and the energy of the signal that has been filtered.
[45] The bitstream generated by the bit packing unit 140 may also include information indicating whether it includes HRTF coefficients. If HRTF coefficients are included in the bitstream generated by the bit packing unit 140, the bitstream may also include information indicating whether it includes either the coefficients of the HRTF used by
the 3D rendering unit 120 or the coefficients of the inverse function of the HRTF.
[46] Referring to FIG. 1, a first decoding unit 200 includes a bit unpacking unit 210, a down-mix decoder 220, a 3D rendering unit 230, and a multi-channel decoder 240.
[47] The bit unpacking unit 210 receives an input bitstream from the encoding unit 100 and extracts an encoded down-mix signal and spatial information from the input bitstream. The down-mix decoder 220 decodes the encoded down-mix signal. The down-mix decoder 220 may decode the encoded down-mix signal using an audio signal decoding method such as an AAC method, an MP3 method, or a BSAC method.
[48] As described above, the encoded down-mix signal extracted from the input bitstream may be an encoded non-3D down-mix signal or an encoded, encoder 3D down-mix signal. Information indicating whether the encoded down-mix signal extracted from the input bitstream is an encoded non-3D down-mix signal or an encoded, encoder 3D down-mix signal may be included in the input bitstream.
[49] If the encoded down-mix signal extracted from the input bitstream is an encoder
3D down-mix signal, the encoded down-mix signal may be readily reproduced after being decoded by the down-mix decoder 220.
[50] On the other hand, if the encoded down-mix signal extracted from the input bits tream is a non-3D down-mix signal, the encoded down-mix signal may be decoded by the down-mix decoder 220, and a down-mix signal obtained by the decoding may be converted into a decoder 3D down-mix signal by a 3D rendering operation performed by the third rendering unit 233. The decoder 3D down-mix signal can be readily reproduced.
[51] The 3D rendering unit 230 includes a first renderer 231, a second renderer 232, and a third renderer 233. The first renderer 231 generates a down-mix signal by performing a 3D rendering operation on an encoder 3D down-mix signal provided by the down- mix decoder 220. For example, the first renderer 231 may generate a non-3D down- mix signal by removing 3D effects from the encoder 3D down-mix signal. The 3D effects of the encoder 3D down-mix signal may not be completely removed by the first renderer 231. In this case, a down-mix signal output by the first renderer 231 may have some 3D effects.
[52] The first renderer 231 may convert the 3D down-mix signal provided by the down- mix decoder 220 into a down-mix signal with 3D effects removed therefrom using an inverse filter of the filter used by the 3D rendering unit 120 of the encoding unit 100. Information regarding the filter used by the 3D rendering unit 120 or the inverse filter of the filter used by the 3D rendering unit 120 may be included in the input bitstream.
[53] The filter used by the 3D rendering unit 120 may be an HRTF filter. In this case, the coefficients of the HRTF used by the encoding unit 100 or the coefficients of the inverse function of the HRTF may also be included in the input bitstream. If the co-
efficients of the HRTF used by the encoding unit 100 are included in the input bitstream, the HRTF coefficients may be inversely converted, and the results of the inverse conversion may be used during the 3D rendering operation performed by the first renderer 231. If the coefficients of the inverse function of the HRTF used by the encoding unit 100 are included in the input bitstream, they may be readily used during the 3D rendering operation performed by the first renderer 231 without being subjected to any inverse conversion operation. In this case, the amount of computation of the first decoding apparatus 100 may be reduced.
[54] The input bitstream may also include filter information (e.g., information indicating whether the coefficients of the HRTF used by the encoding unit 100 are included in the input bitstream) and information indicating whether the filter information has been inversely converted.
[55] The multi-channel decoder 240 generates a 3D multi-channel signal with three or more channels based on the down-mix signal with 3D effects removed therefrom and the spatial information extracted from the input bitstream.
[56] The second renderer 232 may generate a 3D down-mix signal with 3D effects by performing a 3D rendering operation on the down-mix signal with 3D effects removed therefrom. In other words, the first renderer 231 removes 3D effects from the encoder 3D down-mix signal provided by the down-mix decoder 220. Thereafter, the second renderer 232 may generate a combined 3D down-mix signal with 3D effects desired by the first decoding apparatus 200 by performing a 3D rendering operation on a down- mix signal obtained by the removal performed by the first renderer 231, using a filter of the first decoding apparatus 200.
[57] The first decoding apparatus 200 may include a renderer in which two or more of the first, second, and third Tenderers 231, 232, and 233 that perform the same operations are integrated.
[58] A bitstream generated by the encoding unit 100 may be input to a second decoding apparatus 300 which has a different structure from the first decoding apparatus 200. The second decoding apparatus 300 may generate a 3D down-mix signal based on a down-mix signal included in the bitstream input thereto.
[59] More specifically, the second decoding apparatus 300 includes a bit unpacking unit
310, a down-mix decoder 320, and a 3D rendering unit 330. The bit unpacking unit 310 receives an input bitstream from the encoding unit 100 and extracts an encoded down-mix signal and spatial information from the input bitstream. The down-mix decoder 320 decodes the encoded down-mix signal. The 3D rendering unit 330 performs a 3D rendering operation on the decoded down-mix signal so that the decoded down-mix signal can be converted into a 3D down-mix signal.
[60] FIG. 2 is a block diagram of an encoding apparatus according to an embodiment of
the present invention. Referring to FIG. 2, the encoding apparatus includes rendering units 400 and 420 and a multi-channel encoder 410. Detailed descriptions of the same encoding processes as those of the embodiment of FIG. 1 will be omitted.
[61] Referring to FIG. 2, the 3D rendering units 400 and 420 may be respectively disposed in front of and behind the multi-channel encoder 410. Thus, a multi-channel signal may be 3D-rendered by the 3D rendering unit 400, and then, the 3D-rendered multi-channel signal may be encoded by the multi-channel encoder 410, thereby generating a pre-processed, encoder 3D down-mix signal. Alternatively, the multichannel signal may be down-mixed by the multi-channel encoder 410, and then, the down-mixed signal may be 3D-rendered by the 3D rendering unit 420, thereby generating a post-processed, encoder down-mix signal.
[62] Information indicating whether the multi-channel signal has been 3D-rendered before or after being down-mixed may be included in a bitstream to be transmitted.
[63] The 3D rendering units 400 and 420 may both be disposed in front of or behind the multi-channel encoder 410.
[64] FIG. 3 is a block diagram of a decoding apparatus according to an embodiment of the present invention. Referring to FIG. 3, the decoding apparatus includes 3D rendering units 430 and 450 and a multi-channel decoder 440. Detailed descriptions of the same decoding processes as those of the embodiment of FIG. 1 will be omitted.
[65] Referring to FIG. 3, the 3D rendering units 430 and 450 may be respectively disposed in front of and behind the multi-channel decoder 440. The 3D rendering unit 430 may remove 3D effects from an encoder 3D down-mix signal and input a down- mix signal obtained by the removal to the multi-channel decoder 430. Then, the multichannel decoder 430 may decode the down-mix signal input thereto, thereby generating a pre-processed 3D multi-channel signal. Alternatively, the multi-channel decoder 430 may restore a multi-channel signal from an encoded 3D down-mix signal, and the 3D rendering unit 450 may remove 3D effects from the restored multi-channel signal, thereby generating a post-processed 3D multi-channel signal.
[66] If an encoder 3D down-mix signal provided by an encoding apparatus has been generated by performing a 3D rendering operation and then a down-mixing operation, the encoder 3D down-mix signal may be decoded by performing a multi-channel decoding operation and then a 3D rendering operation. On the other hand, if the encoder 3D down-mix signal has been generated by performing a down-mixing operation and then a 3D rendering operation, the encoder 3D down-mix signal may be decoded by performing a 3D rendering operation and then a multi-channel decoding operation.
[67] Information indicating whether an encoded 3D down-mix signal has been obtained by performing a 3D rendering operation before or after a down-mixing operation may
be extracted from a bitstream transmitted by an encoding apparatus.
[68] The 3D rendering units 430 and 450 may both be disposed in front of or behind the multi-channel decoder 440.
[69] FIG. 4 is a block diagram of an encoding apparatus according to another embodiment of the present invention. Referring to FIG. 4, the encoding apparatus includes a multi-channel encoder 500, a 3D rendering unit 510, a down-mix encoder 520, and a bit packing unit 530. Detailed descriptions of the same encoding processes as those of the embodiment of FIG. 1 will be omitted.
[70] Referring to FIG. 4, the multi-channel encoder 500 generates a down-mix signal and spatial information based on an input multi-channel signal. The 3D rendering unit 510 generates a 3D down-mix signal by performing a 3D rendering operation on the down-mix signal.
[71] It may be determined whether to perform a 3D rendering operation on the down- mix signal at a user's choice or according to the capabilities of the encoding apparatus, the characteristics of a reproduction environment, or required sound quality.
[72] The down-mix encoder 520 encodes the down-mix signal generated by the multichannel encoder 500 or the 3D down-mix signal generated by the 3D rendering unit 510.
[73] The bit packing unit 530 generates a bitstream based on the spatial information and either the encoded down-mix signal or an encoded, encoder 3D down-mix signal. The bitstream generated by the bit packing unit 530 may include down-mix identification information indicating whether an encoded down-mix signal included in the bitstream is a non-3D down-mix signal with no 3D effects or an encoder 3D down-mix signal with 3D effects. More specifically, the down-mix identification information may indicate whether the bitstream generated by the bit packing unit 530 includes a non-3D down-mix signal, an encoder 3D down-mix signal or both.
[74] FIG. 5 is a block diagram of a decoding apparatus according to another embodiment of the present invention. Referring to FIG. 5, the decoding apparatus includes a bit unpacking unit 540, a down-mix decoder 550, and a 3D rendering unit 560. Detailed descriptions of the same decoding processes as those of the embodiment of FIG. 1 will be omitted.
[75] Referring to FIG. 5, the bit unpacking unit 540 extracts an encoded down-mix signal, spatial information, and down-mix identification information from an input bitstream. The down-mix identification information indicates whether the encoded down-mix signal is an encoded non-3D down-mix signal with no 3D effects or an encoded 3D down-mix signal with 3D effects.
[76] If the input bitstream includes both a non-3D down-mix signal and a 3D down-mix signal, only one of the non-3D down-mix signal and the 3D down-mix signal may be
extracted from the input bitstream at a user's choice or according to the capabilities of the decoding apparatus, the characteristics of a reproduction environment or required sound quality.
[77] The down-mix decoder 550 decodes the encoded down-mix signal. If a down-mix signal obtained by the decoding performed by the down-mix decoder 550 is an encoder 3D down-mix signal obtained by performing a 3D rendering operation, the down-mix signal may be readily reproduced.
[78] On the other hand, if the down-mix signal obtained by the decoding performed by the down-mix decoder 550 is a down-mix signal with no 3D effects, the 3D rendering unit 560 may generate a decoder 3D down-mix signal by performing a 3D rendering operation on the down-mix signal obtained by the decoding performed by the down- mix decoder 550.
[79] FIG. 6 is a block diagram of a decoding apparatus according to another embodiment of the present invention. Referring to FIG. 6, the decoding apparatus includes a bit unpacking unit 600, a down-mix decoder 610, a first 3D rendering unit 620, a second 3D rendering unit 630, and a filter information storage unit 640. Detailed descriptions of the same decoding processes as those of the embodiment of FIG. 1 will be omitted.
[80] The bit unpacking unit 600 extracts an encoded, encoder 3D down-mix signal and spatial information from an input bitstream. The down-mix decoder 610 decodes the encoded, encoder 3D down-mix signal.
[81] The first 3D rendering unit 620 removes 3D effects from an encoder 3D down-mix signal obtained by the decoding performed by the down-mix decoder 610, using an inverse filter of a filter of an encoding apparatus used for performing a 3D rendering operation. The second rendering unit 630 generates a combined 3D down-mix signal with 3D effects by performing a 3D rendering operation on a down-mix signal obtained by the removal performed by the first 3D rendering unit 620, using a filter stored in the decoding apparatus.
[82] The second 3D rendering unit 630 may perform a 3D rendering operation using a filter having different characteristics from the filter of the encoding unit used to perform a 3D rendering operation. For example, the second 3D rendering unit 630 may perform a 3D rendering operation using an HRTF having different coefficients from those of an HRTF used by an encoding apparatus.
[83] The filter information storage unit 640 stores filter information regarding a filter used to perform a 3D rendering, for example, HRTF coefficient information. The second 3D rendering unit 630 may generate a combined 3D down-mix using the filter information stored in the filter information storage unit 640.
[84] The filter information storage unit 640 may store a plurality of pieces of filter in-
formation respectively corresponding to a plurality of filters. In this case, one of the plurality of pieces of filter information may be selected at a user's choice or according to the capabilities of the decoding apparatus or required sound quality.
[85] People from different races may have different ear structures. Thus, HRTF coefficients optimized for different individuals may differ from one another. The decoding apparatus illustrated in FIG. 6 can generate a 3D down-mix signal optimized for the user. In addition, the decoding apparatus illustrated in FIG. 6 can generate a 3D down-mix signal with 3D effects corresponding to an HRTF filter desired by the user, regardless of the type of HRTF provided by a 3D down-mix signal provider.
[86] FIG. 7 is a block diagram of a 3D rendering apparatus according to an embodiment of the present invention. Referring to FIG. 7, the 3D rendering apparatus includes first and second domain conversion units 700 and 720 and a 3D rendering unit 710. In order to perform a 3D rendering operation in a predetermined domain, the first and second domain conversion units 700 and 720 may be respectively disposed in front of and behind the 3D rendering unit 710.
[87] Referring to FIG. 7, an input down-mix signal is converted into a frequency- domain down-mix signal by the first domain conversion unit 700. More specifically, the first domain conversion unit 700 may convert the input down-mix signal into a DFT-domain down-mix signal or a FFT-domain down-mix signal by performing DFT or FFT.
[88] The 3D rendering unit 710 generates a multi-channel signal by applying spatial information to the frequency-domain down-mix signal provided by the first domain conversion unit 700. Thereafter, the 3D rendering unit 710 generates a 3D down-mix signal by filtering the multi-channel signal.
[89] The 3D down-mix signal generated by the 3D rendering unit 710 is converted into a time-domain 3D down-mix signal by the second domain conversion unit 720. More specifically, the second domain conversion unit 720 may perform IDFT or IFFT on the 3D down-mix signal generated by the 3D rendering unit 710.
[90] During the conversion of a frequency-domain 3D down-mix signal into a time- domain 3D down-mix signal, data loss or data distortion such as aliasing may occur.
[91] In order to generate a multi-channel signal and a 3D down-mix signal in a frequency domain, spatial information for each parameter band may be mapped to the frequency domain, and a number of filter coefficients may be converted to the frequency domain.
[92] The 3D rendering unit 710 may generate a 3D down-mix signal by multiplying the frequency-domain down-mix signal provided by the first domain conversion unit 700, the spatial information, and the filter coefficients.
[93] A time-domain signal obtained by multiplying a down-mix signal, spatial in-
formation and a plurality of filter coefficients that are all represented in an M-point frequency domain has M valid signals. In order to represent the down-mix signal, the spatial information and the filter in the M-point frequency domain, M-point DFT or M- point FFT may be performed.
[94] Valid signals are signals that do not necessarily have a value of 0. For example, a total of x valid signals can be generated by obtaining x signals from an audio signal through sampling. Of the x valid signals, y valid signals may be zero-padded. Then, the number of valid signals is reduced to (x-y). Thereafter, a signal with a valid signals and a signal with b valid signals are convoluted, thereby obtaining a total of (a+b-1) valid signals.
[95] The multiplication of the down-mix signal, the spatial information, and the filter coefficients in the M-point frequency domain can provide the same effect as convoluting the down-mix signal, the spatial information, and the filter coefficients in a time-domain. A signal with (3*M-2) valid signals can be generated by converting the down-mix signal, the spatial information and the filter coefficients in the M-point frequency domain to a time domain and convoluting the results of the conversion.
[96] Therefore, the number of valid signals of a signal obtained by multiplying a down- mix signal, spatial information, and filter coefficients in a frequency domain and converting the result of the multiplication to a time domain may differ from the number of valid signals of a signal obtained by convoluting the down-mix signal, the spatial information, and the filter coefficients in the time domain. As a result, aliasing may occur during the conversion of a 3D down-mix signal in a frequency domain into a time-domain signal.
[97] In order to prevent aliasing, the sum of the number of valid signals of a down-mix signal in a time domain, the number of valid signals of spatial information mapped to a frequency domain, and the number of filter coefficients must not be greater than M. The number of valid signals of spatial information mapped to a frequency domain may be determined by the number of points of the frequency domain. In other words, if spatial information represented for each parameter band is mapped to an N-point frequency domain, the number of valid signals of the spatial information may be N.
[98] Referring to FIG. 7, the first domain conversion unit 700 includes a first zero- padding unit 701 and a first frequency-domain conversion unit 702. The third rendering unit 710 includes a mapping unit 711, a time-domain conversion unit 712, a second zero-padding unit 713, a second frequency-domain conversion unit 714, a multi-channel signal generation unit 715, a third zero-padding unit 716, a third frequency-domain conversion unit 717, and a 3D down-mix signal generation unit 718.
[99] The first zero-padding unit 701 performs a zero-padding operation on a down-mix signal with X samples in a time domain so that the number of samples of the down-mix
signal can be increased from X to M. The first frequency-domain conversion unit 702 converts the zero-padded down-mix signal into an M-point frequency-domain signal. The zero-padded down-mix signal has M samples. Of the M samples of the zero- padded down-mix signal, only X samples are valid signals.
[100] The mapping unit 711 maps spatial information for each parameter band to an N- point frequency domain. The time-domain conversion unit 712 converts spatial information obtained by the mapping performed by the mapping unit 711 to a time domain. Spatial information obtained by the conversion performed by the time-domain conversion unit 712 has N samples.
[101] The second zero-padding unit 713 performs a zero-padding operation on the spatial information with N samples in the time domain so that the number of samples of the spatial information can be increased from N to M. The second frequency-domain conversion unit 714 converts the zero-padded spatial information into an M-point frequency-domain signal. The zero-padded spatial information has N samples. Of the N samples of the zero-padded spatial information, only N samples are valid.
[102] The multi-channel signal generation unit 715 generates a multi-channel signal by multiplying the down-mix signal provided by the first frequency-domain conversion unit 712 and spatial information provided by the second frequency-domain conversion unit 714. The multi-channel signal generated by the multi-channel signal generation unit 715 has M valid signals. On the other hand, a multi-channel signal obtained by convoluting, in the time domain, the down-mix signal provided by the first frequency- domain conversion unit 712 and the spatial information provided by the second frequency-domain conversion unit 714 has (X+N-l) valid signals.
[103] The third zero-padding unit 716 may perform a zero-padding operation on Y filter coefficients that are represented in the time domain so that the number of samples can be increased to M. The third frequency-domain conversion unit 717 converts the zero- padded filter coefficients to the M-point frequency domain. The zero-padded filter coefficients have M samples. Of the M samples, only Y samples are valid signals.
[104] The 3D down-mix signal generation unit 718 generates a 3D down-mix signal by multiplying the multi-channel signal generated by the multi-channel signal generation unit 715 and a plurality of filter coefficients provided by the third frequency-domain conversion unit 717. The 3D down-mix signal generated by the 3D down-mix signal generation unit 718 has M valid signals. On the other hand, a 3D down-mix signal obtained by convoluting, in the time domain, the multi-channel signal generated by the multi-channel signal generation unit 715 and the filter coefficients provided by the third frequency-domain conversion unit 717 has (X+N+Y-2) valid signals.
[105] It is possible to prevent aliasing by setting the M-point frequency domain used by the first, second, and third frequency-domain conversion units 702, 714, and 717 to
satisfy the following equation: M≥(X+N+Y-2). In other words, it is possible to prevent aliasing by enabling the first, second, and third frequency-domain conversion units 702, 714, and 717 to perform M-point DFT or M-point FFT that satisfies the following equation: M≥(X+N+Y-2).
[106] The conversion to a frequency domain may be performed using a filter bank other than a DFT filter bank, an FFT filter bank, and QMF bank. The generation of a 3D down-mix signal may be performed using an HRTF filter.
[107] The number of valid signals of spatial information may be adjusted using a method other than the above-mentioned methods or may be adjusted using one of the above- mentioned methods that is most efficient and requires the least amount of computation.
[108] Aliasing may occur not only during the conversion of a signal, a coefficient or spatial information from a frequency domain to a time domain or vice versa but also during the conversion of a signal, a coefficient or spatial information from a QMF domain to a hybrid domain or vice versa. The above-mentioned methods of preventing aliasing may also be used to prevent aliasing from occurring during the conversion of a signal, a coefficient or spatial information from a QMF domain to a hybrid domain or vice versa.
[109] Spatial information used to generate a multi-channel signal or a 3D down-mix signal may vary. As a result of the variation of the spatial information, signal discontinuities may occur as noise in an output signal.
[110] Noise in an output signal may be reduced using a smoothing method by which spatial information can be prevented from rapidly varying.
[I l l] For example, when first spatial information applied to a first frame differs from second spatial information applied to a second frame when the first frame and the second frame are adjacent to each other, a discontinuity is highly likely to occur between the first and second frames.
[112] In this case, the second spatial information may be compensated for using the first spatial information or the first spatial information may be compensated for using the second spatial information so that the difference between the first spatial information and the second spatial information can be reduced, and that noise caused by the discontinuity between the first and second frames can be reduced. More specifically, at least one of the first spatial information and the second spatial information may be replaced with the average of the first spatial information and the second spatial information, thereby reducing noise.
[113] Noise is also likely to be generated due to a discontinuity between a pair of adjacent parameter bands. For example, when third spatial information corresponding to a first parameter band differs from fourth spatial information corresponding to a second parameter band when the first and second parameter bands are adjacent to each
other, a discontinuity is likely to occur between the first and second parameter bands.
[114] In this case, the third spatial information may be compensated for using the fourth spatial information or the fourth spatial information may be compensated for using the third spatial information so that the difference between the third spatial information and the fourth spatial information can be reduced, and that noise caused by the discontinuity between the first and second parameter bands can be reduced. More specifically, at least one of the third spatial information and the fourth spatial information may be replaced with the average of the third spatial information and the fourth spatial information, thereby reducing noise.
[115] Noise caused by a discontinuity between a pair of adjacent frames or a pair of adjacent parameter bands may be reduced using methods other than the above- mentioned methods.
[116] More specifically, each frame may be multiplied by a window such as a Hanning window, and an "overlap and add" scheme may be applied to the results of the multiplication so that the variations between the frames can be reduced. Alternatively, an output signal to which a plurality of pieces of spatial information are applied may be smoothed so that variations between a plurality of frames of the output signal can be prevented.
[117] The decorrelation between channels in a DFT domain using spatial information, for example, ICC, may be adjusted as follows.
[118] The degree of decorrelation may be adjusted by multiplying a coefficient of a signal input to a one-to-two (OTT) or two-to-three (TTT) box by a predetermined value. The predetermined value can be defined by the following equation: (A+(l-A*A)Λ0.5*i) where A indicates an ICC value applied to a predetermined band of the OTT or TTT box and i indicates an imaginary part. The imaginary part may be positive or negative.
[119] The predetermined value may accompany a weighting factor according to the characteristics of the signal, for example, the energy level of the signal, the energy characteristics of each frequency of the signal, or the type of box to which the ICC value A is applied. As a result of the introduction of the weighting factor, the degree of decorrelation may be further adjusted, and interframe smoothing or interpolation may be applied.
[120] As described above with reference to FIG. 7, a 3D down-mix signal may be generated in a frequency domain by using an HRTF or a head related impulse response (HRIR), which is converted to the frequency domain.
[121] Alternatively, a 3D down-mix signal may be generated by convoluting an HRIR and a down-mix signal in a time domain. A 3D down-mix signal generated in a frequency domain may be left in the frequency domain without being subjected to
inverse domain transform.
[122] In order to convolute an HRIR and a down-mix signal in a time domain, a finite impulse response (FIR) filter or an infinite impulse response (HR) filter may be used.
[123] As described above, an encoding apparatus or a decoding apparatus according to an embodiment of the present invention may generate a 3D down-mix signal using a first method that involves the use of an HRTF in a frequency domain or an HRIR converted to the frequency domain, a second method that involves convoluting an HRIR in a time domain, or the combination of the first and second methods.
[124] FIGS. 8 through 11 illustrate bitstreams according to embodiments of the present invention.
[125] Referring to FIG. 8, a bitstream includes a multi-channel decoding information field which includes information necessary for generating a multi-channel signal, a 3D rendering information field which includes information necessary for generating a 3D down-mix signal, and a header field which includes header information necessary for using the information included in the multi-channel decoding information field and the information included in the 3D rendering information field. The bitstream may include only one or two of the multi-channel decoding information field, the 3D rendering information field, and the header field.
[126] Referring to FIG. 9, a bitstream, which contains side information necessary for a decoding operation, may include a specific configuration header field which includes header information of a whole encoded signal and a plurality of frame data fields which includes side information regarding a plurality of frames. More specifically, each of the frame data fields may include a frame header field which includes header information of a corresponding frame and a frame parameter data field which includes spatial information of the corresponding frame. Alternatively, each of the frame data fields may include a frame parameter data field only.
[127] Each of the frame parameter data fields may include a plurality of modules, each module including a flag and parameter data. The modules are data sets including parameter data such as spatial information and other data such as down-mix gain and smoothing data which is necessary for improving the sound quality of a signal.
[128] If module data regarding information specified by the frame header fields is received without any additional flag, if the information specified by the frame header fields is further classified, or if an additional flag and data are received in connection with information not specified by the frame header, module data may not include any flag.
[129] Side information regarding a 3D down-mix signal, for example, HRTF coefficient information, may be included in at least one of the specific configuration header field, the frame header fields, and the frame parameter data fields.
[130] Referring to FIG. 10, a bitstream may include a plurality of multi-channel decoding information fields which include information necessary for generating multi-channel signals and a plurality of 3D rendering information fields which include information necessary for generating 3D down-mix signals.
[131] When receiving the bitstream, a decoding apparatus may use either the multichannel decoding information fields or the 3D rendering information field to perform a decoding operation and skip whichever of the multi-channel decoding information fields and the 3D rendering information fields are not used in the decoding operation. In this case, it may be determined which of the multi-channel decoding information fields and the 3D rendering information fields are to be used to perform a decoding operation according to the type of signals to be reproduced.
[132] In other words, in order to generate multi-channel signals, a decoding apparatus may skip the 3D rendering information fields, and read information included in the multi-channel decoding information fields. On the other hand, in order to generate 3D down-mix signals, a decoding apparatus may skip the multi-channel decoding information fields, and read information included in the 3D rendering information fields.
[133] Methods of skipping some of a plurality of fields in a bitstream are as follows.
[134] First, field length information regarding the size in bits of a field may be included in a bitstream. In this case, the field may be skipped by skipping a number of bits corresponding to the size in bits of the field. The field length information may be disposed at the beginning of the field.
[135] Second, a syncword may be disposed at the end or the beginning of a field. In this case, the field may be skipped by locating the field based on the location of the syncword.
[136] Third, if the length of a field is determined in advance and fixed, the field may be skipped by skipping an amount of data corresponding to the length of the field. Fixed field length information regarding the length of the field may be included in a bitstream or may be stored in a decoding apparatus.
[137] Fourth, one of a plurality of fields may be skipped using the combination of two or more of the above-mentioned field skipping methods.
[138] Field skip information, which is information necessary for skipping a field such as field length information, syncwords, or fixed field length information may be included in one of the specific configuration header field, the frame header fields, and the frame parameter data fields illustrated in FIG. 9 or may be included in a field other than those illustrated in FIG. 9.
[139] For example, in order to generate multi-channel signals, a decoding apparatus may skip the 3D rendering information fields with reference to field length information, a syncword, or fixed field length information disposed at the beginning of each of the 3D
rendering information fields, and read information included in the multi-channel decoding information fields.
[140] On the other hand, in order to generate 3D down-mix signals, a decoding apparatus may skip the multi-channel decoding information fields with reference to field length information, a syncword, or fixed field length information disposed at the beginning of each of the multi-channel decoding information fields, and read information included in the 3D rendering information fields.
[141] A bitstream may include information indicating whether data included in the bitstream is necessary for generating multi-channel signals or for generating 3D down- mix signals.
[142] However, even if a bitstream does not include any spatial information such as CLD but includes only data (e.g., HRTF filter coefficients) necessary for generating a 3D down-mix signal, a multi-channel signal can be reproduced through decoding using the data necessary for generating a 3D down-mix signal without a requirement of the spatial information.
[143] For example, a stereo parameter, which is spatial information regarding two channels, is obtained from a down-mix signal. Then, the stereo parameter is converted into spatial information regarding a plurality of channels to be reproduced, and a multichannel signal is generated by applying the spatial information obtained by the conversion to the down-mix signal.
[144] On the other hand, even if a bitstream includes only data necessary for generating a multi-channel signal, a down-mix signal can be reproduced without a requirement of an additional decoding operation or a 3D down-mix signal can be reproduced by performing 3D processing on the down-mix signal using an additional HRTF filter.
[145] If a bitstream includes both data necessary for generating a multi-channel signal and data necessary for generating a 3D down-mix signal, a user may be allowed to decide whether to reproduce a multi-channel signal or a 3D down-mix signal.
[146] Methods of skipping data will hereinafter be described in detail with reference to respective corresponding syntaxes.
[147] Syntax 1 indicates a method of decoding an audio signal in units of frames.
[148]
[149] [Syntax 1]
[150]
SpatialFrameO
FraminglπfoQ; bslπde peπd eπcy FIa g;
OttDalaO;
TttDataQ;
SmgDataQ;
Te m p Sha p«Data (J; if [bs Arbitrary D own mix) { ArbitraryDowπ mixDataQ;
if (bsResidual€odiitg) {
ResidualData();
[151] [152] In Syntax 1, Ottdata() and TttData() are modules which represent parameters (such as spatial information including a CLD, ICC, and CPC) necessary for restoring a multichannel signal from a down-mix signal, and SmgData(), TempShapeData(), Arbitrary- DownmixDataO, and ResidualData() are modules which represent information necessary for improving the quality of sound by correcting signal distortions that may have occurred during an encoding operation.
[153] For example, if a parameter such as a CLD, ICC or CPC and information included in the module ArbitraryDownmixData() are only used during a decoding operation, the modules SmgData() and TempShapeData(), which are disposed between the modules TttDataO and ArbitraryDownmixData(), may be unnecessary. Thus, it is efficient to skip the modules SmgData() and TempShapeData().
[154] A method of skipping modules according to an embodiment of the present invention will hereinafter be described in detail with reference to Syntax 2 below.
[155] [156] [Syntax 2] [157]
TttData();
SkipData(K bsSkipBits;
SmgDataf);
Te m p Sha peData ( ) ; if (bsArbitraryDowπmix) {
Arbitrary DownmιxData( );
[158] [159] Referring to Syntax 2, a module SkipData() may be disposed in front of a module to be skipped, and the size in bits of the module to be skipped is specified in the module SkipData() as bsSkipBits.
[160] In other words, assuming that modules SmgData() and TempShapeData() are to be skipped, and that the size in bits of the modules SmgData() and TempShapeData() combined is 150, the modules SmgData() and TempShapeData() can be skipped by setting bsSkipBits to 150.
[161] A method of skipping modules according to another embodiment of the present invention will hereinafter be described in detail with reference to Syntax 3.
[162] [163] [Syntax 3] [164]
THDataQ; bsSkipSyncflag; SmgDa.a(); TempShapeDataO; bsSkipSyncword; if (bsArbitrarγDownmix) { ArbitraryDownmixDataO;
[165]
[166] Referring to Syntax 3, an unnecessary module may be skipped by using bsSkipSyncflag, which is a flag indicating whether to use a syncword, and
bsSkipSyncword, which is a syncword that can be disposed at the end of a module to be skipped.
[167] More specifically, if the flag bsSkipSyncflag is set such that a syncword can be used, one or more modules between the flag bsSkipSyncflag and the syncword bsSkipSyncword, i.e., modules SmgData() and TempShapeData(), may be skipped.
[168] Referring to FIG. 11, a bitstream may include a multi-channel header field which includes header information necessary for reproducing a multi-channel signal, a 3D rendering header field which includes header information necessary for reproducing a 3D down-mix signal, and a plurality of multi-channel decoding information fields, which include data necessary for reproducing a multi-channel signal.
[169] In order to reproduce a multi-channel signal, a decoding apparatus may skip the 3D rendering header field, and read data from the multi-channel header field and the multichannel decoding information fields.
[170] A method of skipping the 3D rendering header field is the same as the field skipping methods described above with reference to FIG. 10, and thus, a detailed description thereof will be skipped.
[171] In order to reproduce a 3D down-mix signal, a decoding apparatus may read data from the multi-channel decoding information fields and the 3D rendering header field. For example, a decoding apparatus may generate a 3D down-mix signal using a down- mix signal included in the multi-channel decoding information field and HRTF coefficient information included in the 3D down-mix signal.
[172] FIG. 12 is a block diagram of an encoding/decoding apparatus for processing an arbitrary down-mix signal according to an embodiment of the present invention. Referring to FIG. 12, an arbitrary down-mix signal is a down-mix signal other than a down-mix signal generated by a multi-channel encoder 801 included in an encoding apparatus 800. Detailed descriptions of the same processes as those of the embodiment of FIG. 1 will be omitted.
[173] Referring to FIG. 12, the encoding apparatus 800 includes the multi-channel encoder 801, a spatial information synthesization unit 802, and a comparison unit 803.
[174] The multi-channel encoder 801 down-mixes an input multi-channel signal into a stereo or mono down-mix signal, and generates basic spatial information necessary for restoring a multi-channel signal from the down-mix signal.
[175] The comparison unit 803 compares the down-mix signal with an arbitrary down- mix signal, and generates compensation information based on the result of the comparison. The compensation information is necessary for compensating for the arbitrary down-mix signal so that the arbitrary down-mix signal can be converted to be approximate to the down-mix signal. A decoding apparatus may compensate for the arbitrary down-mix signal using the compensation information and restore a multi-
channel signal using the compensated arbitrary down-mix signal. The restored multichannel signal is more similar than a multi-channel signal restored from the arbitrary down-mix signal generated by the multi-channel encoder 801 to the original input multi-channel signal.
[176] The compensation information may be a difference between the down-mix signal and the arbitrary down-mix signal. A decoding apparatus may compensate for the arbitrary down-mix signal by adding, to the arbitrary down-mix signal, the difference between the down-mix signal and the arbitrary down-mix signal.
[177] The difference between the down-mix signal and the arbitrary down-mix signal may be down-mix gain which indicates the difference between the energy levels of the down-mix signal and the arbitrary down-mix signal.
[178] The down-mix gain may be determined for each frequency band, for each time/ time slot, and/or for each channel. For example, one part of the down-mix gain may be determined for each frequency band, and another part of the down-mix gain may be determined for each time slot.
[179] The down-mix gain may be determined for each parameter band or for each frequency band optimized for the arbitrary down-mix signal. Parameter bands are frequency intervals to which parameter-type spatial information is applied.
[180] The difference between the energy levels of the down-mix signal and the arbitrary down-mix signal may be quantized. The resolution of quantization levels for quantizing the difference between the energy levels of the down-mix signal and the arbitrary down-mix signal may be the same as or different from the resolution of quantization levels for quantizing a CLD between the down-mix signal and the arbitrary down-mix signal. In addition, the quantization of the difference between the energy levels of the down-mix signal and the arbitrary down-mix signal may involve the use of all or some of the quantization levels for quantizing the CLD between the down-mix signal and the arbitrary down-mix signal.
[181] Since the resolution of the difference between the energy levels of the down-mix signal and the arbitrary down-mix signal is generally lower than the resolution of the CLD between the down-mix signal and the arbitrary down-mix signal, the resolution of the quantization levels for quantizing the difference between the energy levels of the down-mix signal and the arbitrary down-mix signal may have a minute value compared to the resolution of the quantization levels for quantizing the CLD between the down-mix signal and the arbitrary down-mix signal.
[182] The compensation information for compensating for the arbitrary down-mix signal may be extension information including residual information which specifies components of the input multi-channel signal that cannot be restored using the arbitrary down-mix signal or the down-mix gain. A decoding apparatus can restore
components of the input multi-channel signal that cannot be restored using the arbitrary down-mix signal or the down-mix gain using the extension information, thereby restoring a signal almost indistinguishable from the original input multichannel signal.
[183] Methods of generating the extension information are as follows.
[184] The multi-channel encoder 801 may generate information regarding components of the input multi-channel signal that are lacked by the down-mix signal as first extension information. A decoding apparatus may restore a signal almost indistinguishable from the original input multi-channel signal by applying the first extension information to the generation of a multi-channel signal using the down-mix signal and the basic spatial information.
[185] Alternatively, the multi-channel encoder 801 may restore a multi-channel signal using the down-mix signal and the basic spatial information, and generate the difference between the restored multi-channel signal and the original input multichannel signal as the first extension information.
[186] The comparison unit 803 may generate, as second extension information, information regarding components of the down-mix signal that are lacked by the arbitrary down-mix signal, i.e., components of the down-mix signal that cannot be compensated for using the down-mix gain. A decoding apparatus may restore a signal almost indistinguishable from the down-mix signal using the arbitrary down-mix signal and the second extension information.
[187] The extension information may be generated using various residual coding methods other than the above-described method.
[188] The down-mix gain and the extension information may both be used as compensation information. More specifically, the down-mix gain and the extension information may both be obtained for an entire frequency band of the down-mix signal and may be used together as compensation information. Alternatively, the down-mix gain may be used as compensation information for one part of the frequency band of the down-mix signal, and the extension information may be used as compensation information for another part of the frequency band of the down-mix signal. For example, the extension information may be used as compensation information for a low frequency band of the down-mix signal, and the down-mix gain may be used as compensation information for a high frequency band of the down-mix signal.
[189] Extension information regarding portions of the down-mix signal, other than the low-frequency band of the down-mix signal, such as peaks or notches that may considerably affect the quality of sound may also be used as compensation information.
[190] The spatial information synthesization unit 802 synthesizes the basic spatial information (e.g., a CLD, CPC, ICC, and CTD) and the compensation information,
thereby generating spatial information. In other words, the spatial information, which is transmitted to a decoding apparatus, may include the basic spatial information, the down-mix gain, and the first and second extension information.
[191] The spatial information may be included in a bitstream along with the arbitrary down-mix signal, and the bitstream may be transmitted to a decoding apparatus.
[192] The extension information and the arbitrary down-mix signal may be encoded using an audio encoding method such as an AAC method, a MP3 method, or a BSAC method. The extension information and the arbitrary down-mix signal may be encoded using the same audio encoding method or different audio encoding methods.
[193] If the extension information and the arbitrary down-mix signal are encoded using the same audio encoding method, a decoding apparatus may decode both the extension information and the arbitrary down-mix signal using a single audio decoding method. In this case, since the arbitrary down-mix signal can always be decoded, the extension information can also always be decoded. However, since the arbitrary down-mix signal is generally input to a decoding apparatus as a pulse code modulation (PCM) signal, the type of audio codec used to encode the arbitrary down-mix signal may not be readily identified, and thus, the type of audio codec used to encode the extension information may not also be readily identified.
[194] Therefore, audio codec information regarding the type of audio codec used to encode the arbitrary down-mix signal and the extension information may be inserted into a bitstream.
[195] More specifically, the audio codec information may be inserted into a specific configuration header field of a bitstream. In this case, a decoding apparatus may extract the audio codec information from the specific configuration header field of the bitstream and use the extracted audio codec information to decode the arbitrary down- mix signal and the extension information.
[196] On the other hand, if the arbitrary down-mix signal and the extension information are encoded using different audio encoding methods, the extension information may not be able to be decoded. In this case, since the end of the extension information cannot be identified, no further decoding operation can be performed.
[197] In order to address this problem, audio codec information regarding the types of audio codecs respectively used to encode the arbitrary down-mix signal and the extension information may be inserted into a specific configuration header field of a bitstream. Then, a decoding apparatus may read the audio codec information from the specific configuration header field of the bitstream and use the read information to decode the extension information. If the decoding apparatus does not include any decoding unit that can decode the extension information, the decoding of the extension information may not further proceed, and information next to the extension in-
formation may be read.
[198] Audio codec information regarding the type of audio codec used to encode the extension information may be represented by a syntax element included in a specific configuration header field of a bitstream. For example, the audio codec information may be represented by bsResidualCodecType, which is a 4-bit syntax element, as indicated in Table 1 below.
[199]
[200] Table 1
[201]
bsResidualCodecType Codec
0 AAC
1 MP3
2 BSAC 3...1 5 Reserved
[202]
[203] The extension information may include not only the residual information but also channel expansion information. The channel expansion information is information necessary for expanding a multi-channel signal obtained through decoding using the spatial information into a multi-channel signal with more channels. For example, the channel expansion information may be information necessary for expanding a 5.1-channel signal or a 7.1-channel signal into a 9.1-channel signal.
[204] The extension information may be included in a bitstream, and the bitstream may be transmitted to a decoding apparatus. Then, the decoding apparatus may compensate for the down-mix signal or expand a multi-channel signal using the extension information. However, the decoding apparatus may skip the extension information, instead of extracting the extension information from the bitstream. For example, in the case of generating a multi-channel signal using a 3D down-mix signal included in the bitstream or generating a 3D down-mix signal using a down-mix signal included in the bitstream, the decoding apparatus may skip the extension information.
[205] A method of skipping the extension information included in a bitstream may be the same as one of the field skipping methods described above with reference to FIG. 10.
[206] For example, the extension information may be skipped using at least one of bit size information which is attached to the beginning of a bitstream including the extension information and indicates the size in bits of the extension information, a syncword which is attached to the beginning or the end of the field including the
extension information, and fixed bit size information which indicates a fixed size in bits of the extension information. The bit size information, the syncword, and the fixed bit size information may all be included in a bitstream. The fixed bit size information may also be stored in a decoding apparatus.
[207] Referring to FIG. 12, a decoding unit 810 includes a down-mix compensation unit
811, a 3D rendering unit 815, and a multi-channel decoder 816.
[208] The down-mix compensation unit 811 compensates for an arbitrary down-mix signal using compensation information included in spatial information, for example, using down-mix gain or extension information.
[209] The 3D rendering unit 815 generates a decoder 3D down-mix signal by performing a 3D rendering operation on the compensated down-mix signal. The multi-channel decoder 816 generates a 3D multi-channel signal using the compensated down-mix signal and basic spatial information, which is included in the spatial information.
[210] The down-mix compensation unit 811 may compensate for the arbitrary down-mix signal in the following manner.
[211] If the compensation information is down-mix gain, the down-mix compensation unit 811 compensates for the energy level of the arbitrary down-mix signal using the down-mix gain so that the arbitrary down-mix signal can be converted into a signal similar to a down-mix signal.
[212] If the compensation information is second extension information, the down-mix compensation unit 811 may compensate for components that are lacked by the arbitrary down-mix signal using the second extension information.
[213] The multi-channel decoder 816 may generate a multi-channel signal by sequentially applying pre-matrix Ml, mix-matrix M2 and post- matrix M3 to a down-mix signal. In this case, the second extension information may be used to compensate for the down-mix signal during the application of mix-matrix M2 to the down-mix signal. In other words, the second extension information may be used to compensate for a down-mix signal to which pre-matrix Ml has already been applied.
[214] As described above, each of a plurality of channels may be selectively compensated for by applying the extension information to the generation of a multichannel signal. For example, if the extension information is applied to a center channel of mix-matrix M2, left- and right-channel components of the down-mix signal may be compensated for by the extension information. If the extension information is applied to a left channel of mix-matrix M2, the left-channel component of the down-mix signal may be compensated for by the extension information.
[215] The down-mix gain and the extension information may both be used as the compensation information. For example, a low frequency band of the arbitrary down-mix signal may be compensated for using the extension information, and a high frequency
band of the arbitrary down-mix signal may be compensated for using the down-mix gain. In addition, portions of the arbitrary down-mix signal, other than the low frequency band of the arbitrary down-mix signal, for example, peaks or notches that may considerably affect the quality of sound, may also be compensated for using the extension information. Information regarding portion to be compensated for by the extension information may be included in a bitstream. Information indicating whether a down-mix signal included in a bitstream is an arbitrary down-mix signal or not and information indicating whether the bitstream includes compensation information may be included in the bitstream.
[216] In order to prevent clipping of a down-mix signal generated by the encoding unit
800, the down-mix signal may be divided by predetermined gain. The predetermined gain may have a static value or a dynamic value.
[217] The down-mix compensation unit 811 may restore the original down-mix signal by compensating for the down-mix signal, which is weakened in order to prevent clipping, using the predetermined gain.
[218] An arbitrary down-mix signal compensated for by the down-mix compensation unit
811 can be readily reproduced. Alternatively, an arbitrary down-mix signal yet to be compensated for may be input to the 3D rendering unit 815, and may be converted into a decoder 3D down-mix signal by the 3D rendering unit 815.
[219] Referring to FIG. 12, the down-mix compensation unit 811 includes a first domain converter 812, a compensation processor 813, and a second domain converter 814.
[220] The first domain converter 812 converts the domain of an arbitrary down-mix signal into a predetermined domain. The compensation processor 813 compensates for the arbitrary down-mix signal in the predetermined domain, using compensation information, for example, down-mix gain or extension information.
[221] The compensation of the arbitrary down-mix signal may be performed in a QMF/ hybrid domain. For this, the first domain converter 812 may perform QMF/hybrid analysis on the arbitrary down-mix signal. The first domain converter 812 may convert the domain of the arbitrary down-mix signal into a domain, other than a QMF/hybrid domain, for example, a frequency domain such as a DFT or FFT domain. The compensation of the arbitrary down-mix signal may also be performed in a domain, other than a QMF/hybrid domain, for example, a frequency domain or a time domain.
[222] The second domain converter 814 converts the domain of the compensated arbitrary down-mix signal into the same domain as the original arbitrary down-mix signal. More specifically, the second domain converter 814 converts the domain of the compensated arbitrary down-mix signal into the same domain as the original arbitrary down-mix signal by inversely performing a domain conversion operation performed by the first domain converter 812.
[223] For example, the second domain converter 814 may convert the compensated arbitrary down-mix signal into a time-domain signal by performing QMF/hybrid synthesis on the compensated arbitrary down-mix signal. Also, the second domain converter 814 may perform IDFT or IFFT on the compensated arbitrary down-mix signal.
[224] The 3D rendering unit 815, like the 3D rendering unit 710 illustrated in FIG. 7, may perform a 3D rendering operation on the compensated arbitrary down-mix signal in a frequency domain, a QMF/hybrid domain or a time domain. For this, the 3D rendering unit 815 may include a domain converter (not shown). The domain converter converts the domain of the compensated arbitrary down-mix signal into a domain in which a 3D rendering operation is to be performed or converts the domain of a signal obtained by the 3D rendering operation.
[225] The domain in which the compensation processor 813 compensates for the arbitrary down-mix signal may be the same as or different from the domain in which the 3D rendering unit 815 performs a 3D rendering operation on the compensated arbitrary down-mix signal.
[226] FIG. 13 is a block diagram of a down-mix compensation/3D rendering unit 820 according to an embodiment of the present invention. Referring to FIG. 13, the down- mix compensation/3D rendering unit 820 includes a first domain converter 821, a second domain converter 822, a compensation/3D rendering processor 823, and a third domain converter 824.
[227] The down-mix compensation/3D rendering unit 820 may perform both a compensation operation and a 3D rendering operation on an arbitrary down-mix signal in a single domain, thereby reducing the amount of computation of a decoding apparatus.
[228] More specifically, the first domain converter 821 converts the domain of the arbitrary down-mix signal into a first domain in which a compensation operation and a 3D rendering operation are to be performed. The second domain converter 822 converts spatial information, including basic spatial information necessary for generating a multi-channel signal and compensation information necessary for compensating for the arbitrary down-mix signal, so that the spatial information can become applicable in the first domain. The compensation information may include at least one of down-mix gain and extension information.
[229] For example, the second domain converter 822 may map compensation information corresponding to a parameter band in a QMF/hybrid domain to a frequency band so that the compensation information can become readily applicable in a frequency domain.
[230] The first domain may be a frequency domain such as a DFT or FFT domain, a
QMF/hybrid domain, or a time domain. Alternatively, the first domain may be a
domain other than those set forth herein.
[231] During the conversion of the compensation information, a time delay may occur. In order to address this problem, the second domain converter 822 may perform a time delay compensation operation so that a time delay between the domain of the compensation information and the first domain can be compensated for.
[232] The compensation/3D rendering processor 823 performs a compensation operation on the arbitrary down-mix signal in the first domain using the converted spatial information and then performs a 3D rendering operation on a signal obtained by the compensation operation. The compensation/3D rendering processor 823 may perform a compensation operation and a 3D rendering operation in a different order from that set forth herein.
[233] The compensation/3D rendering processor 823 may perform a compensation operation and a 3D rendering operation on the arbitrary down-mix signal at the same time. For example, the compensation/3D rendering processor 823 may generate a compensated 3D down-mix signal by performing a 3D rendering operation on the ar bitrary down-mix signal in the first domain using a new filter coefficient, which is the combination of the compensation information and an existing filter coefficient typically used in a 3D rendering operation.
[234] The third domain converter 824 converts the domain of the 3D down-mix signal generated by the compensation/3D rendering processor 823 into a frequency domain.
[235] FIG. 14 is a block diagram of a decoding apparatus 900 for processing a compatible down-mix signal according to an embodiment of the present invention. Referring to FIG. 14, the decoding apparatus 900 includes a first multi-channel decoder 910, a down-mix compatibility processing unit 920, a second multi-channel decoder 930, and a 3D rendering unit 940. Detailed descriptions of the same decoding processes as those of the embodiment of FIG. 1 will be omitted.
[236] A compatible down-mix signal is a down-mix signal that can be decoded by two or more multi-channel decoders. In other words, a compatible down-mix signal is a down-mix signal that is initially optimized for a predetermined multi-channel decoder and that can be converted afterwards into a signal optimized for a multi-channel decoder, other than the predetermined multi-channel decoder, through a compatibility processing operation.
[237] Referring to FIG. 14, assume that an input compatible down-mix signal is optimized for the first multi-channel decoder 910. In order for the second multichannel decoder 930 to decode the input compatible down-mix signal, the down-mix compatibility processing unit 920 may perform a compatibility processing operation on the input compatible down-mix signal so that the input compatible down-mix signal can be converted into a signal optimized for the second multi-channel decoder 930.
The first multi-channel decoder 910 generates a first multi-channel signal by decoding the input compatible down-mix signal. The first multi-channel decoder 910 can generate a multi-channel signal through decoding simply using the input compatible down-mix signal without a requirement of spatial information.
[238] The second multi-channel decoder 930 generates a second multi-channel signal using a down-mix signal obtained by the compatibility processing operation performed by the down-mix compatibility processing unit 920. The 3D rendering unit 940 may generate a decoder 3D down-mix signal by performing a 3D rendering operation on the down-mix signal obtained by the compatibility processing operation performed by the down-mix compatibility processing unit 920.
[239] A compatible down-mix signal optimized for a predetermined multi-channel decoder may be converted into a down-mix signal optimized for a multi-channel decoder, other than the predetermined multi-channel decoder, using compatibility information such as an inversion matrix. For example, when there are first and second multi-channel encoders using different encoding methods and first and second multichannel decoders using different encoding/decoding methods, an encoding apparatus may apply a matrix to a down-mix signal generated by the first multi-channel encoder, thereby generating a compatible down-mix signal which is optimized for the second multi-channel decoder. Then, a decoding apparatus may apply an inversion matrix to the compatible down-mix signal generated by the encoding apparatus, thereby generating a compatible down-mix signal which is optimized for the first multichannel decoder.
[240] Referring to FIG. 14, the down-mix compatibility processing unit 920 may perform a compatibility processing operation on the input compatible down-mix signal using an inversion matrix, thereby generating a down-mix signal which is optimized for the second multi-channel decoder 930.
[241] Information regarding the inversion matrix used by the down-mix compatibility processing unit 920 may be stored in the decoding apparatus 900 in advance or may be included in an input bitstream transmitted by an encoding apparatus. In addition, information indicating whether a down-mix signal included in the input bitstream is an arbitrary down-mix signal or a compatible down-mix signal may be included in the input bitstream.
[242] Referring to FIG. 14, the down-mix compatibility processing unit 920 includes a first domain converter 921, a compatibility processor 922, and a second domain converter 923.
[243] The first domain converter 921 converts the domain of the input compatible down- mix signal into a predetermined domain, and the compatibility processor 922 performs a compatibility processing operation using compatibility information such as an
inversion matrix so that the input compatible down-mix signal in the predetermined domain can be converted into a signal optimized for the second multi-channel decoder 930.
[244] The compatibility processor 922 may perform a compatibility processing operation in a QMF/hybrid domain. For this, the first domain converter 921 may perform QMF/ hybrid analysis on the input compatible down-mix signal. Also, the first domain converter 921 may convert the domain of the input compatible down-mix signal into a domain, other than a QMF/hybrid domain, for example, a frequency domain such as a DFT or FFT domain, and the compatibility processor 922 may perform the compatibility processing operation in a domain, other than a QMF/hybrid domain, for example, a frequency domain or a time domain.
[245] The second domain converter 923 converts the domain of a compatible down-mix signal obtained by the compatibility processing operation. More specifically, the second domain converter 923 may convert the domain of the compatibility down-mix signal obtained by the compatibility processing operation into the same domain as the original input compatible down-mix signal by inversely performing a domain conversion operation performed by the first domain converter 921.
[246] For example, the second domain converter 923 may convert the compatible down- mix signal obtained by the compatibility processing operation into a time-domain signal by performing QMF/hybrid synthesis on the compatible down-mix signal obtained by the compatibility processing operation. Alternatively, the second domain converter 923 may perform IDFT or IFFT on the compatible down-mix signal obtained by the compatibility processing operation.
[247] The 3D rendering unit 940 may perform a 3D rendering operation on the compatible down-mix signal obtained by the compatibility processing operation in a frequency domain, a QMF/hybrid domain or a time domain. For this, the 3D rendering unit 940 may include a domain converter (not shown). The domain converter converts the domain of the input compatible down-mix signal into a domain in which a 3D rendering operation is to be performed or converts the domain of a signal obtained by the 3D rendering operation.
[248] The domain in which the compatibility processor 922 performs a compatibility processing operation may be the same as or different from the domain in which the 3D rendering unit 940 performs a 3D rendering operation.
[249] FIG. 15 is a block diagram of a down-mix compatibility processing/3D rendering unit 950 according to an embodiment of the present invention. Referring to FIG. 15, the down-mix compatibility processing/3D rendering unit 950 includes a first domain converter 951, a second domain converter 952, a compatibility/3D rendering processor 953, and a third domain converter 954.
[250] The down-mix compatibility processing/3D rendering unit 950 performs a compatibility processing operation and a 3D rendering operation in a single domain, thereby reducing the amount of computation of a decoding apparatus.
[251] The first domain converter 951 converts an input compatible down-mix signal into a first domain in which a compatibility processing operation and a 3D rendering operation are to be performed. The second domain converter 952 converts spatial information and compatibility information, for example, an inversion matrix, so that the spatial information and the compatibility information can become applicable in the first domain.
[252] For example, the second domain converter 952 maps an inversion matrix corresponding to a parameter band in a QMF/hybrid domain to a frequency domain so that the inversion matrix can become readily applicable in a frequency domain.
[253] The first domain may be a frequency domain such as a DFT or FFT domain, a
QMF/hybrid domain, or a time domain. Alternatively, the first domain may be a domain other than those set forth herein.
[254] During the conversion of the spatial information and the compatibility information, a time delay may occur. In order to address this problem,
[255] In order to address this problem, the second domain converter 952 may perform a time delay compensation operation so that a time delay between the domain of the spatial information and the compensation information and the first domain can be compensated for.
[256] The compatibility/3D rendering processor 953 performs a compatibility processing operation on the input compatible down-mix signal in the first domain using the converted compatibility information and then performs a 3D rendering operation on a compatible down-mix signal obtained by the compatibility processing operation. The compatibility/3D rendering processor 953 may perform a compatibility processing operation and a 3D rendering operation in a different order from that set forth herein.
[257] The compatibility/3D rendering processor 953 may perform a compatibility processing operation and a 3D rendering operation on the input compatible down-mix signal at the same time. For example, the compatibility/3D rendering processor 953 may generate a 3D down-mix signal by performing a 3D rendering operation on the input compatible down-mix signal in the first domain using a new filter coefficient, which is the combination of the compatibility information and an existing filter coefficient typically used in a 3D rendering operation.
[258] The third domain converter 954 converts the domain of the 3D down-mix signal generated by the compatibility/3D rendering processor 953 into a frequency domain.
[259] FIG. 16 is a block diagram of a decoding apparatus for canceling crosstalk according to an embodiment of the present invention. Referring to FIG. 16, the
decoding apparatus includes a bit unpacking unit 960, a down-mix decoder 970, a 3D rendering unit 980, and a crosstalk cancellation unit 990. Detailed descriptions of the same decoding processes as those of the embodiment of FIG. 1 will be omitted.
[260] A 3D down-mix signal output by the 3D rendering unit 980 may be reproduced by a headphone. However, when the 3D down-mix signal is reproduced by speakers that are distant apart from a user, inter-channel crosstalk is likely to occur.
[261] Therefore, the decoding apparatus may include the crosstalk cancellation unit 990 which performs a crosstalk cancellation operation on the 3D down-mix signal.
[262] The decoding apparatus may perform a sound field processing operation.
[263] Sound field information used in the sound field processing operation, i.e., information identifying a space in which the 3D down-mix signal is to be reproduced, may be included in an input bitstream transmitted by an encoding apparatus or may be selected by the decoding apparatus.
[264] The input bitstream may include reverberation time information. A filter used in the sound field processing operation may be controlled according to the reverberation time information.
[265] A sound field processing operation may be performed differently for an early part and a late reverberation part. For example, the early part may be processed using a FIR filter, and the late reverberation part may be processed using an HR filter.
[266] More specifically, a sound field processing operation may be performed on the early part by performing a convolution operation in a time domain using an FIR filter or by performing a multiplication operation in a frequency domain and converting the result of the multiplication operation to a time domain. A sound field processing operation may be performed on the late reverberation part in a time domain.
[267] The present invention can be realized as computer-readable code written on a computer-readable recording medium. The computer-readable recording medium may be any type of recording device in which data is stored in a computer-readable manner. Examples of the computer-readable recording medium include a ROM, a RAM, a CD- ROM, a magnetic tape, a floppy disc, an optical data storage, and a carrier wave (e.g., data transmission through the Internet). The computer-readable recording medium can be distributed over a plurality of computer systems connected to a network so that computer-readable code is written thereto and executed therefrom in a decentralized manner. Functional programs, code, and code segments needed for realizing the present invention can be easily construed by one of ordinary skill in the art.
[268] As described above, according to the present invention, it is possible to efficiently encode multi-channel signals with 3D effects and to adaptively restore and reproduce audio signals with optimum sound quality according to the characteristics of a reproduction environment.
Industrial Applicability Other implementations are within the scope of the following claims. For example, grouping, data coding, and entropy coding according to the present invention can be applied to various application fields and various products. Storage media storing data to which an aspect of the present invention is applied are within the scope of the present invention.