METHOD AND APPARATUS FOR PHASE ESTIMATION IN A TRANSFORM CODER FOR HIGH QUALITY AUDIO

Abstract: A method and apparatus for phase estimation in a dual channel audio encoder, based on a psychoacoustic model of the human auditory system, is disclosed. The method and apparatus are applicable to audio encoders which utilise a coupling channel to combine certain frequency components of the input audio signals. The method ensures at least square error between the original channel frequency coefficients at the encoder and the estimated coefficients at the decoder by determining the sign of the dot product of the coefficients for one of the channels and the coupling coefficients. No restriction is placed on the strategy utilised for generating the coupling channel coefficients or the coupling coordinates.

Description: METHOD AND APPARATUS FOR PHASE ESTIMATION IN A TRANSFORM CODER FOR HIGH QUALITY AUDIO Technical Field This invention relates in general to digital signal processing of audio signals, such as music signals. More particularly, the invention relates to the implementation of a high quality dual- channel digital audio encoder, based on the psychoacoustic model of the human auditory system, for digital storage or transmission. Background Art In order to more efficiently broadcast or record audio signals, the amount of infoimation required to represent the audio signals may be reduced. In the case of digital audio signals, the amount of digital infoimation needed to accurately reproduce the original pulse code modulation (PCM) samples may be reduced by applying a digital compression algorimm, resulting in a digitally compressed representation of the original signal. The goal of the digital compression algoriώm is to produce a digital representation of an audio signal which, when decoded and reproduced, sounds the same as the original signal, while using a minimum of digital information for the compressed or encoded representation. Recently, the use of psychoacoustic models in the design of audio coders has led to high compression ratios while keeping audible degradation in the compressed signal to a minimum. Description of one such method can be found in the Advanced Television Systems Committee (ATSC) Standard document entitled "Digital Audio Compression (AC-3) Standard", Document A/52, 20 December, 1995. In the basic approach, the time domain signal is first converted to frequency domain using a bank of filters. Frequency domain masking of human auditory system is then exploited to maximise perceived fidelity of the signal transmitted at a given bit-rate. Further compression can be successively obtained by use of a well known technique called coupling. Coupling takes advantage of the way the human ear determines directionality for very high frequency signals, in order to allow a reduction in the .amount of data necessary to code an audio signal. At high audio frequency (approximately above 2KHz) the ear is physically unable to detect individual cycles of an audio waveform, and instead responds to the envelope of the wavefoπn. Consequently, the coder combines the high frequency coefficients of the individual channels to foi a common coupling channel. The original channels combined to form the said coupling channel are referred to as coupled channels. A basic encoder can form the coupling channel by simply taking the average of all the individual channel coefficients. A more sophisticated encoder can alter the sign of individual channels before adding them into the sum so as to avoid phase cancellations. The generated coupling channel is next sectioned into a number of frequency bands. Frequency sub-bands are grouped together to form coupling bands. For each such band and each coupled channel a coupling co-ordinate is transmitted to the decoder. To obtain the high frequency coefficients in .any frequency band, for a particular coupled channel, from the said coupling channel, the decoder multiplies the coupling channel coefficients in that frequency band by the coupling co-ordinate of that channel for that particular frequency band. For a dual channel implementation of such a decoder, a phase flag bit may also be provided for each coupled band of the coupling channel. A final step of ph-ase-correction is then performed, by the decoder, in which the coefficients in each band are multiplied by the phase flag bit for that band. The standard does not outline any specific method for determination of the phase flag bits. Ad hoc methods do exist but, due to their very nature, do not guarantee any assured performance, nor can be relied upon to provide minimum error between the original coefficients at encoder and the reconstructed, phase corrected, coefficients at the decoder. Summary of the Invention The phase flag for a band is, essentially, a function of the coefficients of the original channel and the coefficients of the coupling channel, in that band. Embodiments of the invention aim to minimise the difference between the original coefficients at the encoder and the reconstructed coefficients at the decoder. In accordance with the present invention, there is provided a method for computing a phase reconstruction coefficient in a dual channel digital audio encoder having first and second encoded channels and a coupling channel, comprising computing transfoπn coefficients for said first and second channels, computing coupling coefficients from the transfoim coefficients of the first and second channels, and computing a dot product of the corresponding transform coefficients for one of the first and second channels and the coupling coefficients, and determining the sign of the computed dot product. The present invention also provides a method for computing a phase reconstruction coefficient in a dual channel digital audio encoder having first and second encoded channels and a coupling channel, comprising determining transform coefficients for one of the first and second channels, deteimining coupling coefficients from the first and second channels, and computing the sign of the sum of corresponding transform and coupling coefficients over a predetermined frequency range of the coefficients. Preferably the method includes computing a phase reconstruction coefficient for each of a plurality of coupling frequency bands for said one of the first and second channels. Preferably the phase reconstruction coefficient computation is independent of a method used for computing the coupling coefficients, and independent of a method used for computing coupling coordinates for said first and second channels. The present invention also provides a dual channel encoder for coding of audio information which generates a coupling channel with at least one coupling band, comprising means for computing a dot product of input channel transform coefficients and coupling channel coefficients in said at least one coupling band, and means for determining the sign of said dot product for use as a phase flag corresponding to the at least one coupling band. The present invention also provides a dual channel encoder for coding of audio information which generates a coupling channel and phase estimation data such that a difference between original coupled channel coefficients generated at the encoder .and channel coefficients estimated at a compatible decoder have a least square error. There is further provided, in accordance with the present invention, an encoder for transform coding digital audio infoimation from first and second channels, the encoder producing a coupling channel arranged in at least one frequency band and at least one phase flag corresponding to the at least one frequency band, wherein the at least one phase flag is computed according to: phase flag = sign (∑(bj * c)) wherein bj represents transfoim coefficients for one of the first and second channels, Cj represents transfoim coefficients for the coupling channel, and index i extends over the frequency range of the band. Brief Description of the Drawings The invention is described in greater detail hereinbelow, by way of example only, through description of an embodiment thereof and with reference to the accompanying drawings, wherein: Figure 1 is a diagrammatic illustration of an audio encoding/decoding process including channel coupling and phase reconstruction; Figures 2a and 2b are vector space diagrams; and Figure 3 is a block diagram of a dual channel audio encoder apparatus constructed according to an embodiment of the invention. Detailed Description of the Preferred Embodiments As mentioned, one method for compression of digital audio signals is described in the ATSC Standard entitled "Digital Audio Compression (AC-3) Standard", (Document A/52, 20 December, 1995), and the contents of that document are expressly incorporated herein by reference. The following description of a preferred embodiment of the invention is presented in the context of an audio encoder which is compatible with the AC-3 Standard. An AC-3 encoder accepts PCM audio and produces an encoded bit stream consistent with the AC-3 standard. The specifics of the audio encoding process are not normative requirements of the standard, but a compatible encoder must produce a bit stream matching the syntax set out in the AC-3 standard document, which, when decoded as specified, produces audio of sufficient quality for the intended application. The AC-3 algorithm achieves high coding gain (the ratio of the input bit-rate to the output bit- rate) by coarsely quantizing a frequency domain representation of the audio signal. The basic encoding process is as follows. The first step in the encoding process is to transform the representation of audio from a sequence of PCM time samples into a sequence of blocks of frequency coefficients. This is done in the analysis filter bank. Overlapping blocks of 512 time samples are multiplied by a time window and transfoimed into the frequency domain. Due to the overlapping blocks, each PCM input sample is represented in two sequential transfoimed blocks. The frequency domain representation may then be decimated by a factor of two so that each block contains 256 frequency coefficients. The individual frequency coefficients are represented in binary exponential notation as a binary exponent and a mantissa. The set of exponents is encoded into a coarse representation of the signal spectrum which is referred to as the spectral envelope. This spectral envelope is used by a core bit allocation routine which determines how many bits to use to encode each individual mantissa. The spectral envelope and the coarsely quantized mantissas for 6 audio blocks (1536 audio samples) are formatted into an AC-3 frame. The AC-3 bit stream is a sequence of AC-3 frames. Channel coupling is performed during encoding by averaging certain transform coefficients across channels that are included in the coupling channel. Each coupled channel has a unique set of coupling coordinates which are used to preserve the high frequency envelopes of the original channels. The coupling process is performed for transform coefficients corresponding to frequencies above a coupling frequency that is defined by a pre-specified value, cplbegf. The decoder converts the coupling channel back into individual channels by multiplying the coupled channel transform coefficient values by the coupling coordinate for that channel and frequency band. An additional processing step occurs where only two channels are coupled and phase flag bits are employed. In this case a phase-flag-in-use bit (phsflginu) is set in the encoded bit-stream, and phase restoration bits are retrieved from the bit-stream by the decoder in the form of phase flag bits. The phase flag bits are arranged to represent the coupling bands in a frequency ascending order. If a phase flag bit is set for a particular band, all of the right channel transform coefficients within the coupled band are negated (inverted) after modification by the coupling coordinate, but before inverse transformation. Transform coefficients #37 through #252 are grouped into 18 sub-bands of 12 coefficients each, as shown below in Table 1. The parameter cplbegf indicates the number of the coupling sub-band which is the first to be included in the coupling process. Below the frequency (or transform coefficient number, tc#) indicated by cplbegf all channels are independently coded. Above the frequency indicated by cplbegf, channels included in the coupling process share the common coupling channel, up to the frequency (or tc#) indicated by a parameter cplendf. The coupling channel is coded up to the frequency (or tc#) indicated by cplendf, which indicates the last coupling sub-band which is coded. The parameter cplend " is interpreted by adding 2 to its value, so the last coupling sub-band which is coded can range from 2-17. The coupling ch.annel sub-bands are combined in to coupling bands for which coupling coordinates are generated for each coupled channel (and included in the bit stream). The coupling band structure is indicated by a parameter cplbndstrcfsbndj. Each bit of the cplbndstrcβ array indicates whether the sub-band corresponding to the index is combined into the previous (lower in frequency) coupling band. Coupling bands are thus each structured based on an integral number of coupling channel sub-bands. Figure 1 diagrammatically illustrates the general coupling process. In this Figure, the Figure portions la to li illustrate diagrammatically the various frequency coefficients, coupling coordinates and phase flag values as functions of frequency over a portion of an encoding followed by decoding process. In a dual channel encoder, the input bit stream comprises interleaved digitised signals of two channels, the two individual channels hereinafter being identified as a (left channel) and b (right channel). The first step is to extract a block of the digitised samples, for both channel a and b, from the input stream and transform it to the frequency domain using filter banks, to generate frequency domain coefficients. The general frequency domain coefficients for channels a and b are hereinafter identified as sequences a,- and b; (see Fig. la and lb), respectively, where the subscript identifies the corresponding frequency sequence number of the coefficient. A frequency point called f^ g (coupling begin frequency) is selected by the encoder based on the cp/teg/ ' parameter as outlined above. Frequency coefficients a t and b„ for all i below f cp i begf are sent individually by the encoder into the compressed bit stream (see Fig. lc and lh). Frequency coefficients α ; and b„ for all i above / cp a,,.^ are combined by a bin.ary operator to generate a new channel called the coupling channel, c. Channels α and b which are used to form the coupling channel, are refeued to as coupled channels. Any binary operator (Θ) can be used for generation of the coupling channel, its e.xact nature not being specified by the AC- 3 st^dard and independent of the phase deteimination strategy described herein. Thus, the method and apparatus described herein according to embodiments of the present invention, for estimation of phase reconstruction data, place no restriction on the coupling channel generation strategy. The coupling channel, c, comprises frequency domain coefficients which are identified as c ; = α t - θ ; b,. The coupling channel is sectioned into a number of consecutive bands (see Fig. le), the encoder controlling the coupling band structure (the bandwidth of each coupled band) as outlined above and described in the AC-3 standard. For each such band, and each coupled channel, a coupling co-ordinate value is generated by the encoder (see Fig. Id and If). To restore the original channel coefficients α, or bj in a particular band, the decoder must multiply each coupling channel coefficient c,- in that band by the coupling-coordinate value for that band and channel (see Fig. Id and le). For example, if ψ is the coupling co-ordinate for a band in the coupled channel b, the coefficients estimate for b at the decoder, called b ■„ will be b , = ψc, Eq. 1 The encoder mea^res the original signal power in the band for the individual coupled channel, as well as the power in the coupling channel for the same band. The ratio of original signal power within a band to the coupling channel power in the same band is teimed as the coupling co-ordinate for the band. However, once again, the phase estimation method described herein is independent of the coupling co-ordinate generation strategy. In a dual channel encoder, for the second (right) channel i.e. channel b, a phase flag information is transmitted for each coupling band to allow phase correction at the decoder (see Fig. lg). Therefore, Eq. 1 can be rewritten as b j = phase Jlag * ψc,- Eq. 2 A difficulty is how to determine the ph∑ise flags. A simple approach could be to compute the sum of the channel ^-coefficients in the band, i.e. _b„ and also the sum of the coefficients in the band for the coupling channel, i.e. ∑c ; . If both the sums are of the same sign, then phase flag is set to + 1 , else if they are of opposite signs, then phase flag is set to -1. That is, phase Jlag = sign[(∑b^*(∑c^] Eq. 3 However, this approach can lead to spurious results, and to gain insight into the functioning of the phase flag, a more detailed analysis is required. Channel coefficients for a particular band can be visualised as vectors, in a n-dimensional space, n being the number of frequency coefficient points in the band. Thus, 6 — (b b- b n and , ? = (ς_ q ς). Figures 2a and 2b illustrate the vector space formed by the channel coefficients in a band. The estimate of vector B at decoder can be, B ,= ψ e Eq. 4 or B 2 = - ψ ? Eq. 5 depending whether phase flag is sent as + 1 or -1, respectively. In Fig. 2a, xx ' is defined as the hyper-plane perpendicular to vector c , dividing the n- dimensional vector space into two parts. When b lies on the same side of the hyper-plane as ? , then £. is a better estimate of b than B- (as in the case shown in Fig. 2a), i.e. \ \ B - -? ι l | < l i -? - 2 1 1 • Similarly, when B lies on opposite side of the hyper- pl.ane as ? , then B 2 is a better approximation than B-. Adopting this approach, it is then apparent from Figures 2a and 2b that if the dot product ( • ) or the cosine of the angle between the vectors B and c is positive, i.e. the angle between them is less than 90°, then phase flag should be set as + 1, othe.rwise it should be -1. A statement of the method can be expressed as follows: phase Jlag = sign( -? • ? ) = sign( ∑(-7,*c,)) Eq. 6 Having noted the geometric inteipretation of the phase flag determination method, it is then possible to analyse it from the perspective of least-square-error between the original channel coefficient b t - at encoder and the estimated channel coefficients b at decoder. Assuming, + 1, it is then necess.ai7 to show that ψc, is a closer approximate than -ψc,-. That is, ∑(fc, - ψC;) 2 < ∑(fc; + ψC,) 2 -[∑lή - + ψ 2 ∑cj ] < [∑b 2 , + 2ψ∑ A + ψ 2 ∑C 2 , ] Cancelling identical terms on both sides of the inequality, — 2ψ∑ / c < 2ψ∑ ,c l ~∑bfi >0 which is true under the assumption. It can therefore be observed that Eq. 6, gives phase flag with guaranteed least-square-error between the original channel coefficients at encoder and the estimated channel coefficients. at decoder. In summai-y, assuming that the frequency coefficients within a particular coupling band are identified as: a„ for the first coupled channel, b„ for the second coupled channel, c,, for the coupling channel, and index i extends over the frequency range of the band. Then, the phase flag data for the coupling band can be computed according to: phase Jlag = sign (£(&, * c,)) Eq. 7 Note: the sign( ) function has the general interpretation, that is, it returns a+ 1 if the function parameter is a positive number and -1 if it is negative. For the case of .zero, any value + 1 or -1, can be considered as the signals are then essentially orthogonal (uncorrelated). Figure 3 is a block diagram showing a dual channel audio encoder apparatus 10 for implementing this phase estimation strategy. The encoder 10 receives PCM coded audio samples corresponding to left and right audio channels referred to as channel a (12) and channel b (14), respectively. The audio data from channels a and b are passed to respective analysis filter banks 16, 18 of conventional foπn, which transform the audio data into frequency domain transform coefficients ^ and bj. The transform coefficients are passed to a coupling processor 20 which generates coupling channel coefficients c,. The encoder 10 includes a coupling band determination processor 22, which determines how the bands in the coupling channel are structured according to predefined parameters (i.e. determines a correspondence between the coupling channel coefficients and the coupled channels' coupling coordinates). The banding structure processor 22 controls left and right channel coupling coordinate computation processors 24, 26. The coupling coordinate computation processors receive as input the coupling channel coefficients c ( and the respective left or right channel transform coefficients a^ b;, and generate respective channel coupling coordinates according to the coupling band structure dictated by the banding structure processor 22. A phase estimation processor 28 is also provided which receives as input the coupling channel coefficients q and the right channel coefficients bj. The phase estimation processor 28 is also controlled by the banding stnicture processor 22 so that the phase flags generated thereby corre ond to the predefined frequency bands of the channel coupling coordinates. For each coupling channel frequency band the phase estimation processor computes a corresponding phase flag according to the operation outlined by Eq. 7, above. The phase flags are output to be included in the encoded bit stream along with the coupling channel coefficients c i5 and the left and right channel coupling coordinates. The dual channel audio encoder apparatus 10 is preferably implemented as part of an application specific integrated circuit, in which case the functional blocks described above may comprise circuit portions which interact with one another under control of timing and control circuitry. Alternatively, however, the encoder apparatus may be implemented by a more general purpose data processing circuit such as a conventional microprocessor, and in that case the functions performed by the individu.al functional blocks as above described may all be performed by the same microprocessor circuit according to instructions defining the functions which are stored as, for example, micro-code. The foregoing detailed description of embodiments of the invention have been presented by way of example only, and this description is not intended to be considered limiting to the invention as defined in the claims appended hereto.

Claims: Claims: 1. A method for computing a phase reconstruction coefficient in a dual channel digital audio encoder having first and second encoded channels and a coupling channel, comprising computing transform coefficients for said first and second channels, computing coupling coefficients from the transform coefficients of the first and second channels, and computing a dot product of the corresponding transform coefficients for one of the first and second channels and the coupling coefficients, and determining the sign of the computed dot product. 2. A method as claimed in claim 1, including computing a phase reconstruction coefficient for each of a plurality of coupling frequency bands for said one of the first and second channels. 3. A method as claimed in claim 1 or 2 which is independent of a method used for computing the coupling coefficients. 4. A method for computing a phase reconstruction coefficient in a dual channel digital audio encoder having first and second encoded channels and a coupling channel, comprising determining transform coefficients for one of the first and second channels, determining coupling coefficients from the first and second channels, and computing the sign of the sum of corresponding transform and coupling coefficients over a predetermined frequency range of the coefficients. 5. A method as claimed in claim 4, including computing a plurality of phase reconstruction coefficients for different predetermined frequency bands. 6. A method as claimed in claim 4 or 5 which is independent of a method used for computing the coupling coefficients. 7. A method as claimed in claim 6 which is independent of a method used for computing coupling coordinates for said first and second channels. 8. A dual channel encoder for coding of audio information which generates a coupling channel with at least one coupling band, comprising means for computing a dot product of input channel transform coefficients and coupling channel coefficients in said at least one coupling band, and means for determining the sign of said dot product for use as a phase flag corresponding to the at least one coupling band. 9. A dual channel encoder for coding of audio information which generates a coupling channel and phase estimation data ^ch that a difference between original coupled channel coefficients generated at the encoder and channel coefficients estimated at a compatible decoder have a least square error. 10. An encoder for transform coding digital audio information from first and second channels, the encoder producing a coupling channel arranged in at least one frequency band and at least one phase flag corresponding to the at least one frequency band, wherein the at least one phase flag is computed according to: phase flag = sign (∑(b { * c ) wherein bj represents transfoim coefficients for one of the first and second channels, c, represents transform coefficients for the coupling ch.annel, and index i extends over the frequency range of the band.

Inventors: ABSAR MOHAMMED JAVED, ALVAREZ-TINOCO ANTONIO MARIO, GEORGE SAPNA, ABSAR, MOHAMMED, JAVED, ALVAREZ-TINOCO, ANTONIO, MARIO, GEORGE, SAPNA
Applicants: ABSAR MOHAMMED JAVED, ALVAREZ TINOCO ANTONIO MARIO, GEORGE SAPNA, SGS THOMSON MICROELECTRONICS A, ABSAR, MOHAMMED, JAVED, ALVAREZ-TINOCO, ANTONIO, MARIO, GEORGE, SAPNA, SGS-THOMSON MICROELECTRONICS ASIA PACIFIC (PTE) LTD.
Application year: 1997
Main classification: H04B1
IPC codes: H04B1, H04S1