Title of Invention

METHOD AND APPARATUS FOR ENCODING AND DECODING AUDIO SIGNALS

Abstract The invention relates to a method for encoding audio channels, the method comprising : generating two or more cue codes for one or more audio channels, wherein at least one cue code is an envelope cue code generated by characterizing a temporal envelope in one of the one or more audio channels, wherein the two or more cue codes further comprise one or more of inter- channel correlation (ICC) codes, inter-channel level difference (ICLD) codes, and inter-channel time difference (ICTD) codes, wherein a first time resolution associated with the envelope cue code is finer than a second time resolution associated with the other cue code(s), and wherein the temporal envelope is characterized in that, for the corresponding audio channel in a time domain or individually for different signal sub bands of the corresponding audio channel in a sub band domain; and transmitting the two or more cue codes.
Full Text

INDIVIDUAL CHANNEL SHAPING FOR BCC SCHEMES AND THE LIKE
BACKGROUND OF THE INVENTION
Cross-Reference to Related Applications
This application claims the benefit of the filing date of U.S. provisional application no.
60/620,480, filed on 10/20/04 as attorney docket no. Allamanche 2-3-18-4, the teachings of which are
incorporated herein by reference.
In addition, the subject matter of this application is related to the subject matter of the following
U.S. applications , the teachings of all of which are incorporated herein by reference:
o U.S. application serial number 09/848,877, filed on 05/04/01 as attorney docket no. Faller 5;
o U.S. application serial number 10/045,458, filed on 11/07/01 as attorney docket no. Baumgarte 1-
6-8, which itself claimed the benefit of the filing date of U.S. provisional application no.
60/311,565, filed on 08/10/01;
o U.S. application serial number 10/155,437, filed on 05/24/02 as attorney docket no. Baumgarte 2-
10;
o U.S. application serial number 10/246,570, filed on 09/18/02 as attorney docket no. Baumgarte 3-
11;
o U.S. application serial number 10/815,591, filed on 04/01/04 as attorney docket no. Baumgarte 7-
12;
o U.S. application serial number 10/936,464, filed on 09/08/04 as attorney docket no. Baumgarte 8-
7-15;
o U.S. application serial number 10/762,100, filed on 01/20/04 (Faller 13-1); and
o U.S. application serial number 10/xxx,xxx, filed on the same date as this application as attorney
docket no. Allamanche 1-2-17-3.
The subject matter of this application is also related to subject matter described in the following
papers, the teachings of all of which are incorporated herein by reference:
o F. Baumgarte and C. Faller, "Binaural Cue Coding - Part I: Psychoacoustic fundamentals and
design principles," IEEE Trans, on Speech and Audio Proc, vol. 11, no. 6, Nov. 2003;
o C. Faller and F. Baumgarte, "Binaural Cue Coding - Part II: Schemes and applications," IEEE
Trans, on Speech and Audio Proc, vol. 11, no. 6, Nov. 2003; and
o C. Faller, "Coding of spatial audio compatible with different playback formats," Preprint 117th
Conv. Aud. Eng. Soc, October 2004.

Field of the Invention
The present invention relates to the encoding of audio signals and the subsequent synthesis of
auditory scenes from the encoded audio data.
Description of the Related Art
When a person hears an audio signal (i.e., sounds) generated by a particular audio source, the
audio signal will typically arrive at the person's left and right ears at two different times and with two
different audio (e.g., decibel) levels, where those different times and levels are functions of the
differences in the paths through which the audio signal travels to reach the left and right ears,
respectively. The person's brain interprets these differences in time and level to give the person the
perception that the received audio signal is being generated by an audio source located at a particular
position (e.g., direction and distance) relative to the person. An auditory scene is the net effect of a
person simultaneously hearing audio signals generated by one or more different audio sources located at
one or more different positions relative to the person.
The existence of this processing by the brain can be used to synthesize auditory scenes, where
audio signals from one or more different audio sources are purposefully modified to generate left and
right audio signals that give the perception that the different audio sources are located at different
positions relative to the listener.
Fig. 1 shows a high-level block diagram of conventional binaural signal synthesizer 100, which
converts a single audio source signal (e.g., a mono signal) into the left and right audio signals of a
binaural signal, where a binaural signal is defined to be the two signals received at the eardrums of a
listener. In addition to the audio source signal, synthesizer 100 receives a set of spatial cues
corresponding to the desired position of the audio source relative to the listener. In typical
implementations, the set of spatial cues comprises an inter-channel level difference (ICLD) value (which
identifies the difference in audio level between the left and right audio signals as received at the left and
right ears, respectively) and an inter-channel time difference (ICTD) value (which identifies the
difference in time of arrival between the left and right audio signals as received at the left and right ears,
respectively). In addition or as an alternative, some synthesis techniques involve the modeling of a
direction-dependent transfer function for sound from the signal source to the eardrums, also referred to as
the head-related transfer function (HRTF). See, e.g., J. Blauert, The-Psychophysics of Human Sound
Localization, MIT Press, 1983, the teachings of which are incorporated herein by reference.
Using binaural signal synthesizer 100 of Fig. 1, the mono audio signal generated by a single
sound source can be processed such that, when listened to over headphones, the sound source is spatially
placed by applying an appropriate set of spatial cues (e.g., ICLD, ICTD, and/or HRTF) to generate the

audio signal for each ear. See, e.g., D.R. Begault, 3-D Sound for Virtual Reality and Multimedia,
Academic Press, Cambridge, MA, 1994.
Binaural signal synthesizer 100 of Fig. 1 generates the simplest type of auditory scenes: those
having a single audio source positioned relative to the listener. More complex auditory scenes
comprising two or more audio sources located at different positions relative to the listener can be
generated using an auditory scene synthesizer that is essentially implemented using multiple instances of
binaural signal synthesizer, where each binaural signal synthesizer instance generates the binaural signal
corresponding to a different audio source. Since each different audio source has a different location
relative to the listener, a different set of spatial cues is used to generate the binaural audio signal for each
different audio source.
SUMMARY OF THE INVENTION
According to one embodiment, the present invention is a method, apparatus, and machine-
readable medium for encoding audio channels. One or more cue codes are generated and transmitted for
one or more audio channels, wherein at least one cue code is an envelope cue code generated by
characterizing a temporal envelope in one of the one or more audio channels.
According to another embodiment, the present invention is an apparatus for encoding C input
audio channels to generate E transmitted audio channel(s). The apparatus comprises an envelope
analyzer, a code estimator, and a downmixer. The envelope analyzer characterizes an input temporal
envelope of at least one of the C input channels. The code estimator generates cue codes for two or more
of the C input channels. The downmixer downmixes the C input channels to generate the E transmitted
channels), where O>E. 4, wherein the apparatus transmits information about the cue codes and the
characterized input temporal envelope to enable a decoder to perform synthesis and envelope shaping
during decoding of the E transmitted channel(s).
According to another embodiment, the present invention is an encoded audio bitstream generated
by encoding audio channels, wherein one or more cue codes are generated for one or more audio
channels, wherein at least one cue code is an envelope cue code generated by characterizing a temporal
envelope in one of the one or more audio channels. The one or more cue codes and E transmitted audio
channel(s) corresponding to the one or more audio channels, where E* i, are encoded into the encoded
audio bitstream.
According to another embodiment, the present invention is an encoded audio bitstream
comprising one or more cue codes and E transmitted audio channel(s). The one or more cue codes are
generated for one or more audio channels, wherein at least one cue code is an envelope cue code

generated by characterizing a temporal envelope in one of the one or more audio channels. The E
transmitted audio channel(s) correspond to the one or more audio channels.
According to another embodiment, the present invention is a method, apparatus, and machine-
readable medium for decoding E transmitted audio channel(s) to generate C playback audio channels,
where C>E. 1. Cue codes corresponding to the E transmitted channel(s) are received, wherein the cue
codes comprise an envelope cue code corresponding to a characterized temporal envelope of an audio
channel corresponding to the E transmitted channel(s). One or more of the E transmitted channel(s) are
upmixed to generate one or more upmixed channels. One or more of the C playback channels are
synthesized by applying the cue codes to the one or more upmixed channels, wherein the envelope cue
code is applied to an upmixed channel or a synthesized signal to adjust a temporal envelope of the
synthesized signal based on the characterized temporal envelope such that the adjusted temporal envelope
substantially matches the characterized temporal envelope.
BRIEF DESCRIPTION OF THffDRAWINGS
Other aspects, features, and advantages of the present invention will become more fully apparent
from the following detailed description, the appended claims, and the accompanying drawings in which
like reference numerals identify similar or identical elements.
Fig. 1 shows a high-level block diagram of conventional binaural signal synthesizer;
Fig. 2 is a block diagram of a generic binaural cue coding (BCC) audio processing system;
Fig. 3 shows a block diagram of a downmixer that can be used for the downmixer of Fig. 2;
Fig. 4 shows a block diagram of a BCC synthesizer that can be used for the decoder of Fig. 2;
Fig. 5 shows a block diagram of the BCC estimator of Fig. 2, according to one embodiment of the
present invention;
Fig. 6 illustrates the generation of ICTD and ICLD data for five-channel audio;
Fig. 7 illustrates the generation of ICC data for five-channel audio;
Fig. 8 shows a block diagram of an implementation of the BCC synthesizer of Fig. 4 that can be
used in a BCC decoder to generate a stereo or multi-channel audio signal given a single transmitted sum
signal s(n) plus the spatial cues;
Fig. 9 illustrates how ICTD and ICLD are varied within a subband as a function of frequency;
Fig. 10 shows a block diagram of time-domain processing that is added to a BCC encoder, such as
the encoder of Fig. 2, according to one embodiment of the present invention;
Fig. 11 illustrates an exemplary time-domain application of TP processing in the context of the
BCC synthesizer of Fig. 4;

Figs. 12(a) and (b) show possible implementations of the TPA of Fig. 10 and the TP of Fig. 11,
respectively, where envelope shaping is applied only at frequencies higher than the cut-off frequency fTP;
Fig. 13 shows a block diagram of frequency-domain processing that is added to a BCC encoder,
such as the encoder of Fig. 2, according to an alternative embodiment of the present invention;
Fig. 14 illustrates an exemplary frequency-domain application of TP processing in the context of
the BCC synthesizer of Fig. 4;
Fig. 15 shows a block diagram of frequency-domain processing that is added to a BCC encoder,
such as the encoder of Fig. 2, according to another alternative embodiment of the present invention;
Fig. 16 illustrates another exemplary frequency-domain application of TP processing in the
context of the BCC synthesizer of Fig. 4;
Figs. 17(a)-(c) show block diagrams of possible implementations of the TPAs of Figs. 15 and 16
and the ITP and TP of Fig. 16; and
Figs. 18(a) and (b) illustrate two exemplary modes of operating the control block of Fig. 16.
DETAILED DESCRIPTION
In binaural cue coding (BCC), an encoder encodes C input audio channels to generate E
transmitted audio channels, where C>E.1. In particular, two or more of the C input channels are
provided in a frequency domain, and one or more cue codes are generated for each of one or more
different frequency bands in the two or more input channels in the frequency domain. In addition, the C
input channels are downmixed to generate the E transmitted channels. In some downmixing
implementations, at least one of the E transmitted channels is based on two or more of the C input
channels, and at least one of the E transmitted channels is based on only a single one of the C input
channels.
In one embodiment, a BCC coder has two or more filter banks, a code estimator, and a
downmixer. The two or more filter banks convert two or more of the C input channels from a time
domain into a frequency domain. The code estimator generates one or more cue codes for each of one or
more different frequency bands in the two or more converted input channels. The downmixer downmixes
the C input channels to generate the E transmitted channels, where C>E.1.
In BCC decoding, E transmitted audio channels are decoded to generate C playback audio
channels. In particular, for each of one or more different frequency bands, one or more of the E
transmitted channels are upmixed in a frequency domain to generate two or more of the C playback
channels in the frequency domain, where C>E.1. One or more cue codes are applied to each of the one
or more different frequency bands in the two or more playback channels in the frequency domain to
generate two or more modified channels, and the two or more modified channels are converted from the

frequency domain into a time domain. In some upmixing implementations, at least one of the C playback
channels is based on at least one of the E transmitted channels and at least one cue code, and at least one
of the C playback channels is based on only a single one of the E transmitted channels and independent of
any cue codes.
In one embodiment, a BCC decoder has an upmixer, a synthesizer, and one or more inverse filter
banks. For each of one or more different frequency bands, the upmixer upmixes one or more of the E
transmitted channels in a frequency domain to generate two or more of the C playback channels in the
frequency domain, where C>E.1. The synthesizer applies one or more cue codes to each of the one or
more different frequency bands in the two or more playback channels in the frequency domain to generate
two or more modified channels. The one or more inverse filter banks convert the two or more modified
channels from the frequency domain into a time domain.
Depending on the particular implementation, a given playback channel may be based on a single
transmitted channel, rather than a combination of two or more transmitted channels. For example, when
there is only one transmitted channel, each of the C playback channels is based on that one transmitted
channel. In these situations, upmixing corresponds to copying of the corresponding transmitted channel.
As such, for applications in which there is only one transmitted channel, the upmixer may be
implemented using a replicator that copies the transmitted channel for each playback channel.
BCC encoders and/or decoders may be incorporated into a number of systems or applications
including, for example, digital video recorders/players, digital audio recorders/players, computers,
satellite transmitters/receivers, cable transmitters/receivers, terrestrial broadcast transmitters/receivers,
home entertainment systems, and movie theater systems.
Generic BCC Processing
Fig. 2 is a block diagram of a generic binaural cue coding (BCC) audio processing system 200
comprising an encoder 202 and a decoder 204. Encoder 202 includes downmixer 206 and BCC estimator
208.
Downmixer 206 converts C input audio channels xi(n) into E transmitted audio channels yi(n),
where C>E.1. In this specification, signals expressed using the variable n are time-domain signals, while
signals expressed using the variable k are frequency-domain signals. Depending on the particular
implementation, downmixing can be implemented in either the time domain or the frequency domain.
BCC estimator 208 generates BCC codes from the C input audio channels and transmits those BCC codes
as either in-band or out-of-band side information relative to the E transmitted audio channels. Typical
BCC codes include one or more of inter-channel time difference (ICTD), inter-channel level difference
(ICLD), and inter-channel correlation (ICC) data estimated between certain pairs of input channels as a

function of frequency and time. The particular implementation will dictate between which particular
pairs of input channels, BCC codes are estimated.
ICC data corresponds to the coherence of a binaural signal, which is related to the perceived
width of the audio source. The wider the audio source, the lower the coherence between the left and right
channels of the resulting binaural signal. For example, the coherence of the binaural signal corresponding
to an orchestra spread out over an auditorium stage is typically lower than the coherence of the binaural
signal corresponding to a single violin playing solo. In general, an audio signal with lower coherence is
usually perceived as more spread out in auditory space. As such, ICC data is typically related to the
apparent source width and degree of listener envelopment. See, e.g., J. Blauert, The Psychophysics of
Human Sound Localization, MIT Press, 1983.
Depending on the particular application, the E transmitted audio channels and corresponding BCC
codes may be transmitted directly to decoder 204 or stored in some suitable type of storage device for
subsequent access by decoder 204. Depending on the situation, the term "transmitting" may refer to
either direct transmission to a decoder or storage for subsequent provision to a decoder. In either case,
decoder 204 receives the transmitted audio channels and side information and performs upmixing and
BCC synthesis using the BCC codes to convert the E transmitted audio channels into more than E
(typically, but not necessarily, C) playback audio channels for audio playback. Depending on the
particular implementation, upmixing can be performed in either the time domain or the frequency domain.
In addition to the BCC processing shown in Fig. 2, a generic BCC audio processing system may
include additional encoding and decoding stages to further compress the audio signals at the encoder and
then decompress the audio signals at the decoder, respectively. These audio codecs may be based on
conventional audio compression/decompression techniques such as those based on pulse code modulation
(PCM), differential PCM (DPCM), or adaptive DPCM (ADPCM).
When downmixer 206 generates a single sum signal (i.e., E=1), BCC coding is able to represent
multi-channel audio signals at a bitrate only slightly higher than what is required to represent a mono
audio signal. This is so, because the estimated ICTD, ICLD, and ICC data between a channel pair contain
about two orders of magnitude less information than an audio waveform.
Not only the low bitrate of BCC coding, but also its backwards compatibility aspect is of interest.
A single transmitted sum signal corresponds to a mono downmix of the original stereo or multi-channel
signal. For receivers that do not support stereo or multi-channel sound reproduction, listening to the
transmitted sum signal is a valid method of presenting the audio material on low-profile mono
reproduction equipment. BCC coding can therefore also be used to enhance existing services involving
the delivery of mono audio material towards multi-channel audio. For example, existing mono audio
radio broadcasting systems can be enhanced for stereo or multi-channel playback if the BCC side

information can be embedded into the existing transmission channel. Analogous capabilities exist when
downmixing multi-channel audio to two sum signals that correspond to stereo audio.
BCC processes audio signals with a certain time and frequency resolution. The frequency
resolution used is largely motivated by the frequency resolution of the human auditory system.
Psychoacoustics suggests that spatial perception is most likely based on a critical band representation of
the acoustic input signal. This frequency resolution is considered by using an invertible filterbank (e.g.,
based on a fast Fourier transform (FFT) or a quadrature mirror filter (QMF)) with subbands with
bandwidths equal or proportional to the critical bandwidth of the human auditory system.
Generic Downmixing
In preferred implementations, the transmitted sum signal(s) contain all signal components of the
input audio signal. The goal is that each signal component is fully maintained. Simply summation of the
audio input channels often results in amplification or attenuation of signal components. In other words,
the power of the signal components in a "simple" sum is often larger or smaller than the sum of the power
of the corresponding signal component of each channel. A downmixing technique can be used that
equalizes the sum signal such that the power of signal components in the sum signal is approximately the
same as the corresponding power in all input channels.
Fig. 3 shows a block diagram of a downmixer 300 that can be used for downmixer 206 of Fig. 2
according to certain implementations of BCC system 200. Downmixer 300 has a filter bank (FB) 302 for
each input channel xi(n), a downmixing block 304, an optional scaling/delay block 306, and an inverse FB
(IFB) 308 for each encoded channel yi(n).
Each filter bank 302 converts each frame (e.g., 20 msec) of a corresponding digital input channel
xi(n) in the time domain into a set of input coefficients in the frequency domain. Downmixing
block 304 downmixes each sub-band of C corresponding input coefficients into a corresponding sub-band
of E downmixed frequency-domain coefficients. Equation (1) represents the downmixing of the kth sub-
band of input coefficients to generate the kth sub-band of downmixed
coefficients as follows:


where DCE is a real-valued C-by-E downmixing matrix.
Optional scaling/delay block 306 comprises a set of multipliers 310, each of which multiplies a
corresponding downmixed coefficient by a scaling factor ei(k) to generate a corresponding scaled
coefficient . The motivation for the scaling operation is equivalent to equalization generalized for
downmixing with arbitrary weighting factors for each channel. If the input channels are independent,
then the power of the downmixed signal in each sub-band is given by Equation (2) as follows:

where is derived by squaring each matrix element in the C-by-E downmixing matrix DCEand
is the power of sub-band k of input channel i.
If the sub-bands are not independent, then the power values of the downmixed signal will
be larger or smaller than that computed using Equation (2), due to signal amplifications or cancellations
when signal components are in-phase or out-of-phase, respectively. To prevent this, the downmixing
operation of Equation (1) is applied in sub-bands followed by the scaling operation of multipliers 310.
The scaling factors ei(k) (1 • h• E) can be derived using Equation (3) as follows:

where is the sub-band power as computed by Equation (2), and is power of the
corresponding downmixed sub-band signal
In addition to or instead of providing optional scaling, scaling/delay block 306 may optionally
apply delays to the signals.

Each inverse filter bank 308 converts a set of corresponding scaled coefficients in the
frequency domain into a frame of a corresponding digital, transmitted channel yi(n).
Although Fig. 3 shows all C of the input channels being converted into the frequency domain for
subsequent downmixing, in alternative implementations, one or more (but less than C-1) of the C input
channels might bypass some or all of the processing shown in Fig. 3 and be transmitted as an equivalent
number of unmodified audio channels. Depending on the particular implementation, these unmodified
audio channels might or might not be used by BCC estimator 208 of Fig. 2 in generating the transmitted
BCC codes.
In an implementation of downmixer 300 that generates a single sum signal y(n), E=1 and the
signals . of each subband of each input channel c are added and then multiplied with a factor e(k),
according to Equation (4) as follows:

the factor e(k) is given by Equation (5) as follows:

where is a short-time estimate of the power of at time index k, and is a short-
time estimate of the power of . The equalized subbands are transformed back to the time
domain resulting in the sum signal y{n) that is transmitted to the BCC decoder.
Generic BCC Synthesis
Fig. 4 shows a block diagram of a BCC synthesizer 400 that can be used for decoder 204 of Fig. 2
according to certain implementations of BCC system 200. BCC synthesizer 400 has a filter bank 402 for
each transmitted channel yi(n), an upmixing block 404, delays 406, multipliers 408, correlation block 410,
and an inverse filter bank 412 for each playback channel

Each filter bank 402 converts each frame of a corresponding digital, transmitted channel yi(n) in
the time domain into a set of input coefficients in the frequency domain. Upmixing block 404
upmixes each sub-band off corresponding transmitted-channel coefficients into a corresponding sub-
band of Cupmixed frequency-domain coefficients. Equation (4) represents the upmixing of the kth sub-
band of transmitted-channel coefficients to generate the kth sub-band of
upmixed coefficients as follows:

where UEC is a real-valued is-by-C upmixing matrix. Performing upmixing in the frequency-domain
enables upmixing to be applied individually in each different sub-band.
Each delay 406 applies a delay value di(k) based on a corresponding BCC code for ICTD data to
ensure that the desired ICTD values appear between certain pairs of playback channels. Each multiplier
408 applies a scaling factor ai(k) based on a corresponding BCC code for ICLD data to ensure that the
desired ICLD values appear between certain pairs of playback channels. Correlation block 410 performs
a decorrelation operation A based on corresponding BCC codes for ICC data to ensure that the desired
ICC values appear between certain pairs of playback channels. Further description of the operations of
correlation block 410 can be found in U.S. Patent Application No. 10/155,437, filed on 05/24/02 as
Baumgarte2-10.
The synthesis of ICLD values may be less troublesome than the synthesis of ICTD and ICC
values, since ICLD synthesis involves merely scaling of sub-band signals. Since ICLD cues are the most
commonly used directional cues, it is usually more important that the ICLD values approximate those of
the original audio signal. As such, ICLD data might be estimated between all channel pairs. The scaling
factors ai(k) (1. r C) for each sub-band are preferably chosen such that the sub-band power of each
playback channel approximates the corresponding power of the original input audio channel.
One goal may be to apply relatively few signal modifications for synthesizing ICTD and ICC
values. As such, the BCC data might not include ICTD and ICC values for all channel pairs. In that case,
BCC synthesizer 400 would synthesize ICTD and ICC values only between certain channel pairs.

Each inverse filter bank 412 converts a set of corresponding synthesized coefficients in
the frequency domain into a frame of a corresponding digital, playback channel .
Although Fig. 4 shows all E of the transmitted channels being converted into the frequency
domain for subsequent upmixing and BCC processing, in alternative implementations, one or more (but
not all) of the E transmitted channels might bypass some or all of the processing shown in Fig. 4. For
example, one or more of the transmitted channels may be unmodified channels that are not subjected to
any upmixing. In addition to being one or more of the C playback channels, these unmodified channels,
in turn, might be, but do not have to be, used as reference channels to which BCC processing is applied to
synthesize one or more of the other playback channels. In either case, such unmodified channels may be
subjected to delays to compensate for the processing time involved in the upmixing and/or BCC
processing used to generate the rest of the playback channels.
Note that, although Fig. 4 shows C playback channels being synthesized from E transmitted
channels, where C was also the number of original input channels, BCC synthesis is not limited to that
number of playback channels. In general, the number of playback channels can be any number of
channels, including numbers greater than or less than C and possibly even situations where the number of
playback channels is equal to or less than the number of transmitted channels.
"Perceptually relevant differences" between audio channels
Assuming a single sum signal, BCC synthesizes a stereo or multi-channel audio signal such that
ICTD, ICLD, and ICC approximate the corresponding cues of the original audio signal. In the following,
the role of ICTD, ICLD, and ICC in relation to auditory spatial image attributes is discussed.
Knowledge about spatial hearing implies that for one auditory event, ICTD and ICLD are related
to perceived direction. When considering binaural room impulse responses (BRIRs) of one source, there
is a relationship between width of the auditory event and listener envelopment and ICC data estimated for
the early and late parts of the BRIRs. However, the relationship between ICC and these properties for
general signals (and not just the BRIRs) is not straightforward.
Stereo and multi-channel audio signals usually contain a complex mix of concurrently active
source signals superimposed by reflected signal components resulting from recording in enclosed spaces
or added by the recording engineer for artificially creating a spatial impression. Different source signals
and their reflections occupy different regions in the time-frequency plane. This is reflected by ICTD,
ICLD, and ICC, which vary as a function of time and frequency. In this case, the relation between
instantaneous ICTD, ICLD, and ICC and auditory event directions and spatial impression is not obvious.

The strategy of certain embodiments of BCC is to blindly synthesize these cues such that they
approximate the corresponding cues of the original audio signal.
Filterbanks with subbands of bandwidths equal to two times the equivalent rectangular bandwidth
(ERB) are used. Informal listening reveals that the audio quality of BCC does not notably improve when
choosing higher frequency resolution. A lower frequency resolution may be desired, since it results in
less ICTD, ICLD, and ICC values that need to be transmitted to the decoder and thus in a lower bitrate.
Regarding time resolution, ICTD, ICLD, and ICC are typically considered at regular time
intervals. High performance is obtained when ICTD, ICLD, and ICC are considered about every 4 to 16
ms. Note that, unless the cues are considered at very short time intervals, the precedence effect is not
directly considered. Assuming a classical lead-lag pair of sound stimuli, if the lead and lag fall into a
time interval where only one set of cues is synthesized, then localization dominance of the lead is not
considered. Despite this, BCC achieves audio quality reflected in an average MUSHRA score of about 87
(i.e., "excellent" audio quality) on average and up to nearly 100 for certain audio signals.
The often-achieved perceptually small difference between reference signal and synthesized signal
implies that cues related to a wide range of auditory spatial image attributes are implicitly considered by
synthesizing ICTD, ICLD, and ICC at regular time intervals. In the following, some arguments are given
on how ICTD, ICLD, and ICC may relate to a range of auditory spatial image attributes.
Estimation of spatial cues
In the following, it is described how ICTD, ICLD, and ICC are estimated. The bitrate for
transmission of these (quantized and coded) spatial cues can be just a few kb/s and thus, with BCC, it is
possible to transmit stereo and multi-channel audio signals at bitrates close to what is required for a single
audio channel.
Fig. 5 shows a block diagram of BCC estimator 208 of Fig. 2, according to one embodiment of
the present invention. BCC estimator 208 comprises filterbanks (FB) 502, which may be the same as
filterbanks 302 of Fig. 3, and estimation block 504, which generates ICTD, ICLD, and ICC spatial cues
for each different frequency subband generated by filterbanks 502.
Estimation of ICTD. ICLD. and ICC for stereo signals
The following measures are used for ICTD, ICLD, and ICC for corresponding subband signals



Estimation of ICTD, ICLD. and ICC for multi-channel audio signals
When there are more than two input channels, it is typically sufficient to define ICTD and ICLD
between a reference channel (e.g., channel number 1) and the other channels, as illustrated in Fig. 6 for
the case of C=5 channels, where denote the ICTD and ICLD, respectively,
between the reference channel 1 and channel c.
As opposed to ICTD and ICLD, ICC typically has more degrees of freedom. The ICC as defined
can have different values between all possible input channel pairs. For C channels, there are C(C-1)/2
possible channel pairs; e.g., for 5 channels there are 10 channel pairs as illustrated in Fig. 7(a). However,
such a scheme requires that, for each subband at each time index, C(C-1)/2 ICC values are estimated and
transmitted, resulting in high computational complexity and high bitrate.

Alternatively, for each subband, ICTD and ICLD determine the direction at which the auditory
event of the corresponding signal component in the subband is rendered. One single ICC parameter per
subband may then be used to describe the overall coherence between all audio channels. Good results can
be obtained by estimating and transmitting ICC cues only between the two channels with most energy in
each subband at each time index. This is illustrated in Fig. 7(b), where for time instants k-\ and A: the
channel pairs (3, 4) and (1,2) are strongest, respectively. A heuristic rule may be used for determining
ICC between the other channel pairs.
Synthesis of spatial cues
Fig. 8 shows a block diagram of an implementation of BCC synthesizer 400 of Fig. 4 that can be
used in a BCC decoder to generate a stereo or multi-channel audio signal given a single transmitted sum
signal s(n) plus the spatial cues. The sum signal s(n) is decomposed into subbands, where ?(&) denotes
one such subband. For generating the corresponding subbands of each of the output channels, delays dc,
scale factors ac, and filters hc are applied to the corresponding subband of the sum signal. (For simplicity
of notation, the time index k is ignored in the delays, scale factors, and filters.) ICTD are synthesized by
imposing delays, ICLD by scaling, and ICC by applying de-correlation filters. The processing shown in
Fig. 8 is applied independently to each subband.

The delay for the reference channel, d„ is computed such that the maximum magnitude of the delays dc is
minimized. The less the subband signals are modified, the less there is a danger for artifacts to occur. If
the subband sampling rate does not provide high enough time-resolution for ICTD synthesis, delays can
be imposed more precisely by using suitable all-pass filters.
ICLD synthesis
In order that the output subband signals have desired ICLDs AL12 (k) between channel c and the
reference channel 1, the gain factors ac should satisfy Equation (13) as follows:


Additionally, the output subbands are preferably normalized such that the sum of the power of all output
channels is equal to the power of the input sum signal. Since the total original signal power in each
subband is preserved in the sum signal, this normalization results in the absolute subband power for each
output channel approximating the corresponding power of the original encoder input audio signal. Given
these constraints, the scale factors ac are given by Equation (14) as follows:

ICC synthesis
In certain embodiments, the aim of ICC synthesis is to reduce correlation between the subbands
after delays and scaling have been applied, without affecting ICTD and ICLD. This can be achieved
by designing the filters hc in Fig. 8 such that ICTD and ICLD are effectively varied as a function of
frequency such that the average variation is zero in each subband (auditory critical band).
Fig. 9 illustrates how ICTD and ICLD are varied within a subband as a function of frequency.
The amplitude of ICTD and ICLD variation determines the degree of de-correlation and is controlled as a
function of ICC. Note that ICTD are varied smoothly (as in Fig. 9(a)), while ICLD are varied randomly
(as in Fig. 9(b)). One could vary ICLD as smoothly as ICTD, but this would result in more coloration of
the resulting audio signals.
Another method for synthesizing ICC, particularly suitable for multi-channel ICC synthesis, is
described in more detail in C. Faller, "Parametric multi-channel audio coding: Synthesis of coherence
cues," IEEE Trans, on Speech and Audio Proc, 2003, the teachings of which are incorporated herein by
reference. As a function of time and frequency, specific amounts of artificial late reverberation are added
to each of the output channels for achieving a desired ICC. Additionally, spectral modification can be
applied such that the spectral envelope of the resulting signal approaches the spectral envelope of the
original audio signal.
Other related and unrelated ICC synthesis techniques for stereo signals (or audio channel pairs)
have been presented in E. Schuijers, W. Oomen, B. den Brinker, and J. Breebaart, "Advances in
parametric coding for high-quality audio," in Preprint 114th Conv. Aud. Eng. Soc, Mar. 2003, and J.
Engdegard, H. Purnhagen, J. Roden, and L. Liljeryd, "Synthetic ambience in parametric stereo coding," in

Preprint 117th Conv. And. Eng. Soc, May 2004, the teachings of both of which are incorporated here by
reference.
C-to-E BCC
As described previously, BCC can be implemented with more than one transmission channel. A
variation of BCC has been described which represents C audio channels not as one single (transmitted)
channel, but as E channels, denoted C-to-E BCC. There are (at least) two motivations for C-to-E BCC:
o BCC with one transmission channel provides a backwards compatible path for upgrading existing
mono systems for stereo or multi-channel audio playback. The upgraded systems transmit the
BCC downmixed sum signal through the existing mono infrastructure, while additionally
transmitting the BCC side information. C-to-i? BCC is applicable to is-channel backwards
compatible coding of C-channel audio,
o C-to-E BCC introduces scalability in terms of different degrees of reduction of the number of
transmitted channels. It is expected that the more audio channels that are transmitted, the better
the audio quality will be.
Signal processing details for C-to-E BCC, such as how to define the ICTD, ICLD, and ICC cues, are
described in U.S. application serial number 10/762,100, filed on 01/20/04 (Faller 13-1).
Individual Channel Shaping
In certain embodiments, both BCC with one transmission channel and C-to-E BCC involve
algorithms for ICTD, ICLD, and/or ICC synthesis. Usually, it is enough to synthesize the ICTD, ICLD,
and/or ICC cues about every 4 to 30 ms. However, the perceptual phenomenon of precedence effect
implies that there are specific time instants when the human auditory system evaluates cues at higher time
resolution (e.g., every 1 to 10 ms).
A single static filterbank typically cannot provide high enough frequency resolution, suitable for
most time instants, while providing high enough time resolution at time instants when the precedence
effect becomes effective.
Certain embodiments of the present invention are directed to a system that uses relatively low
time resolution ICTD, ICLD, and/or ICC synthesis, while adding additional processing to address the
time instants when higher time resolution is required. Additionally, in certain embodiments, the system
eliminate the need for signal adaptive window switching technology which is usually hard to integrate in
a system's structure. In certain embodiments, the temporal envelopes of one or more of the original
encoder input audio channels are estimated. This can be done, e.g., directly by analysis of the signal's
time structure or by examining the autocorrelation of the signal spectrum over frequency. Both

approaches will be elaborated on further in the subsequent implementation examples. The information
contained in these envelopes is transmitted to the decoder (as envelope cue codes) if perceptually required
and advantageous.
In certain embodiments, the decoder applies certain processing to impose these desired temporal
envelopes on its output audio channels:
o This can be achieved by TP processing, e.g., manipulation of the signal's envelope by
multiplication of the signal's time-domain samples with a time-varying amplitude modification
function. A similar processing can be applied to spectral/subband samples if the time resolution
of the subbands is sufficiently high enough (at the cost of a coarse frequency resolution),
o Alternatively, a convolution / filtering of the signal's spectral representation over frequency can
be used in a manner analogous to that used in the prior art for the purpose of shaping the
quantization noise of a low-bitrate audio coder or for enhancing intensity stereo coded signals.
This is preferred if the filterbank has a high frequency resolution and therefor a rather low time
resolution. For the convolution/filtering approach:
o The envelope shaping method is extended from intensity stereo to C-to-ii multi-channel
coding.
o The technique comprises a setup where the envelope shaping is controlled by parametric
information (e.g., binary flags) generated by the encoder but is actually carried out using
decoder-derived filter coefficient sets.
o In another setup, sets of filter coefficients are transmitted from the encoder, e.g., only when
perceptually necessary and/or beneficial.
The same is also true for the time domain/subband domain approach. Therefore, criteria (e.g.,
transient detection and a tonality estimate) can be introduced to additionally control transmission of
envelope information.
There may be situations when it is favorable to disable the TP processing in order to avoid
potential artifacts. In order to be on the safe side, it is a good strategy to leave the temporal processing
disabled by default (i.e., BCC would operate according to a conventional BCC scheme). The additional
processing is enabled only when it is expected that higher temporal resolution of the channels yields
improvement, e.g., when it is expected that the precedence effect becomes active.
As stated earlier, this enabling/disabling control can be achieved by transient detection. That is, if
a transient is detected, then TP processing is enabled. The precedence effect is most effective for
transients. Transient detection can be used with look-ahead to effectively shape not only single transients
but also the signal components shortly before and after the transient. Possible ways of detecting
transients include:

o Observing the temporal envelope of BCC encoder input signals or transmitted BCC sum signal(s).
If there is a sudden increase in power, then a transient occurred,
o Examining the linear predictive coding (LPC) gain as estimated in the encoder or decoder. If the
LPC prediction gain exceeds a certain threshold, then it can be assumed that the signal is transient
or highly fluctuating. The LPC analysis is computed on the spectrum's autocorrelation.
Additionally, to prevent possible artifacts in tonal signals, TP processing is preferably not applied
when the tonality of the transmitted sum signal(s) is high.
According to certain embodiments of the present invention, the temporal envelopes of the
individual original audio channels are estimated at a BCC encoder in order to enable a BCC decoder
generate output channels with temporal envelopes similar (or perceptually similar) to those of the original
audio channels. Certain embodiments of the present invention address the phenomenon of precedence
effect. Certain embodiments of the present invention involve the transmission of envelope cue codes in
addition to other BCC codes, such as ICLD, ICTD, and/or ICC, as part of the BCC side information.
In certain embodiments of the present invention, the time resolution for the temporal envelope
cues is finer than the time resolution of other BCC codes (e.g., ICLD, ICTD, ICC). This enables envelope
shaping to be performed within the time period provided by a synthesis window that corresponds to the
length of a block of an input channel for which the other BCC codes are derived.
Implementation Examples
Fig. 10 shows a block diagram of time-domain processing that is added to a BCC encoder, such as
encoder 202 of Fig. 2, according to one embodiment of the present invention. As shown in Fig. 10(a),
each temporal process analyzer (TPA) 1002 estimates the temporal envelope of a different original input
channel xc(n), although in general any one or more of the input channels can be analyzed.
Fig. 10(b) shows a block diagram of one possible time domain-based implementation of TPA
1002 in which the input signal samples are squared (1006) and then low-pass filtered (1008) to
characterize the temporal envelope of the input signal. In alternative embodiments, the temporal envelope
can be estimated using an autocorrelation / LPC method or with other methods, e.g., using a Hilbert
transform.
Block 1004 of Fig. 10(a) parameterizes, quantizes, and codes the estimated temporal envelopes
prior to transmission as temporal processing (TP) information (i.e., envelope cue codes) that is included in
the side information of Fig. 2.
In one embodiment, a detector (not shown) within block 1004 determines whether TP processing
at the decoder will improve audio quality, such that block 1004 transmits TP side information only during
those time instants when audio quality will be improved by TP processing.

Fig. 11 illustrates an exemplary time-domain application of TP processing in the context of BCC
synthesizer 400 of Fig. 4. In this embodiment, there is a single transmitted sum signal s(n), C base signals
are generated by replicating that sum signal, and envelope shaping is individually applied to different
synthesized channels. In alternative embodiments, the order of delays, scaling, and other processing may
be different. Moreover, in alternative embodiments, envelope shaping is not restricted to processing each
channel independently. This is especially true for convolution/filtering-based implementations mat
exploit coherence over frequency bands to derive information on the signal's temporal fine structure.
In Fig. 11(a), decoding block 1102 recovers temporal envelope signals a for each output channel
from the transmitted TP side information received from the BCC encoder, and each TP block 1104
applies the corresponding envelope information to shape the envelope of the output channel.
Fig. 11(b) shows a block diagram of one possible time domain-based implementation of TP 1104
in which the synthesized signal samples are squared (1106) and then low-pass filtered (1108) to
characterize the temporal envelope b of the synthesized channel. A scale factor (e.g., sqrt {alb)) is
generated (1110) and then applied (1112) to the synthesized channel to generate an output signal having a
temporal envelope substantially equal to that of the corresponding original input channel.
In alternative implementations of TPA 1002 of Fig. 10 and TP 1104 of Fig. 11, the temporal
envelopes are characterized using magnitude operations rather than by squaring the signal samples. In
such implementations, the ratio alb may be used as the scale factor without having to apply the square
root operation.
Although the scaling operation of Fig. 11(c) corresponds to a time domain-based implementation
of TP processing, TP processing (as well as TPA and inverse TP (iTP) processing) can also be
implemented using frequency-domain signals, as in the embodiment of Figs. 16-17 (described below). As
such, for purposes of this specification, the term "scaling function" should be interpreted to cover either
time-domain or frequency-domain operations, such as the filtering operations of Figs. 17(b) and (c).
In general, each TP 1104 is preferably designed such that it does not modify signal power (i.e.,
energy). Depending on the particular implementation, this signal power may be a short-time average
signal power in each channel, e.g., based on the total signal power per channel in the time period defined
by the synthesis window or some other suitable measure of power. As such, scaling for ICLD synthesis
(e.g., using multipliers 408) can be applied before or after envelope shaping.
Since full-band scaling of the BCC output signals may result in artifacts, envelope shaping might
be applied only at specified frequencies, for example, frequencies larger than a certain cut-off frequency
fTP (e.g., 500 Hz). Note that the frequency range for analysis (TPA) may differ from the frequency range
for synthesis (TP).

Figs. 12(a) and (b) show possible implementations of TPA 1002 of Fig. 10 and TP 1104 of Fig.
11 where envelope shaping is applied only at frequencies higher than the cut-off frequency fTP. In
particular, Fig. 12(a) shows the addition of high-pass filter 1202, which filters out frequencies lower than
fTP prior to temporal envelope characterization. Fig. 12(b) shows the addition of two-band filterbank 1204
having with a cut-off frequency offTP between the two subbands, where only the high-frequency part is
temporally shaped. Two-band inverse filterbank 1206 then recombines the low-frequency part with the
temporally shaped, high-frequency part to generate the output channel.
Fig. 13 shows a block diagram of frequency-domain processing that is added to a BCC encoder,
such as encoder 202 of Fig. 2, according to an alternative embodiment of the present invention. As
shown in Fig. 13(a), the processing of each TPA 1302 is applied individually in a different subband,
where each filterbank (FB) is the same as a corresponding FB 302 of Fig. 3 and block 1304 is a subband
implementation analogous to block 1004 of Fig. 10. In alternative implementations, the subbands for
TPA processing may differ from the BCC subbands. As shown in Fig. 13(b), TPA 1302 can be
implemented analogous to TPA 1002 of Fig. 10.
Fig. 14 illustrates an exemplary frequency-domain application of TP processing in the context of
BCC synthesizer 400 of Fig. 4. Decoding block 1402 is analogous to decoding block 1102 of Fig. 11,
and each TP 1404 is a subband implementation analogous to each TP 1104 of Fig. 11, as shown in Fig.
14(b).
Fig. 15 shows a block diagram of frequency-domain processing that is added to a BCC encoder,
such as encoder 202 of Fig. 2, according to another alternative embodiment of the present invention. This
scheme has the following setup: The envelope information for every input channel is derived by
calculation of LPC across frequency (1502), parameterized (1504), quantized (1506), and coded into the
bitstream (1508) by the encoder. Fig. 17(a) illustrates an implementation example of the TPA 1502 of
Fig. 15. The side information to be transmitted to the multichannel synthesizer (decoder) could be the
LPC filter coefficients computed by an autocorrelation method, the resulting reflection coefficients, or
line spectral pairs, etc., or, for the sake of keeping the side information data rate small, parameters derived
from, e.g., the LPC prediction gain like "transients present/not present" binary flags.
Fig. 16 illustrates another exemplary frequency-domain application of TP processing in the
context of BCC synthesizer 400 of Fig. 4. The encoding processing of Fig. 15 and the decoding
processing of Fig. 16 may be implemented to form a matched pair of an encoder/decoder configuration.
Decoding block 1602 is analogous to decoding block 1402 of Fig. 14, and each TP 1604 is analogous to
each TP 1404 of Fig. 14. In this multichannel synthesizer, transmitted TP side information is decoded
and used for controlling the envelope shaping of individual channels. In addition, however, the
synthesizer includes an envelope characterizer stage (TPA) 1606 for analysis of the transmitted sum

signals, an inverse TP (ITP) 1608 for "flattening" the temporal envelope of each base signal, where
envelope adjusters (TP) 1604 impose a modified envelope on each output channel. Depending on the
particular implementation, ITP can be applied either before or after upmixing. In detail, this is done using
the convolution/filtering approach where envelope shaping is achieved by applying LPC-based filters on
the spectrum across frequency as illustrated in Figs. 17(a), (b), and (c) for TPA, ITP, and TP processing,
respectively. In Fig. 16, control block 1610 determines whether or not envelope shaping is to be
implemented and, if so, whether it is to be based on (1) the transmitted TP side information or (2) the
locally characterized envelope data from TPA 1606.
Figs. 18(a) and (b) illustrate two exemplary modes of operating control block 1610 of Fig. 16. In
the implementation of Fig. 18(a), a set of filter coefficients is transmitted to the decoder, and envelope
shaping by convolution/filtering is done based on the transmitted coefficients. If transient shaping is
detected to be not beneficial by the encoder, then no filter data is sent and the filters are disabled (shown
in Fig. 18(a) by switching to a unity filter coefficient set "[1,0...]").
In the implementation of Fig. 18(b), only a "transient/non transient flag" is transmitted for each
channel and this flag is used to activate or deactivate shaping based on filter coefficient sets calculated
from the transmitted downmix signals in the decoder.
Further Alternative Embodiments
Although the present invention has been described in the context of BCC coding schemes in
which there is a single sum signal, the present invention can also be implemented in the context of BCC
coding schemes having two or more sum signals. In this case, the temporal envelope for each different
"base" sum signal can be estimated before applying BCC synthesis, and different BCC output channels
may be generated based on different temporal envelopes, depending on which sum signals were used to
synthesize the different output channels. An output channel that is synthesized from two or more
different sum channels could be generated based on an effective temporal envelope that takes into account
(e.g., via weighted averaging) the relative effects of the constituent sum channels.
Although the present invention has been described in the context of BCC coding schemes
involving ICTD, ICLD, and ICC codes, the present invention can also be implemented in the context of
other BCC coding schemes involving only one or two of these three types of codes (e.g., ICLD and ICC,
but not ICTD) and/or one or more additional types of codes. Moreover, the sequence of BCC synthesis
processing and envelope shaping may vary in different implementations. For example, when envelope
shaping is applied to frequency-domain signals, as in Figs. 14 and 16, envelope shaping could
alternatively be implemented after ICTD synthesis (in those embodiments that employ ICTD synthesis),

but prior to ICLD synthesis. In other embodiments, envelope shaping could be applied to upmixed
signals before any other BCC synthesis is applied.
Although the present invention has been described in the context of BCC encoders that generate
envelope cue codes from the original input channels, in alternative embodiments, the envelope cue codes
could be generated from downmixed channels corresponding to the original input channels. This would
enable the implementation of a processor (e.g., a separate envelope cue coder) that could (1) accept the
output of a BCC encoder that generates the downmixed channels and certain BCC codes (e.g., ICLD,
ICTD, and/or ICC) and (2) characterize the temporal envelope(s) of one or more of the downmixed
channels to add envelope cue codes to the BCC side information.
Although the present invention has been described in the context of BCC coding schemes in
which the envelope cue codes are transmitted with one or more audio channels (i.e., the E transmitted
channels) along with other BCC codes, in alternative embodiments, the envelope cue codes could be
transmitted, either alone or with other BCC codes, to a place (e.g., a decoder or a storage device) that
already has the transmitted channels and possibly other BCC codes.
Although the present invention has been described in the context of BCC coding schemes, the
present invention can also be implemented in the context of other audio processing systems in which
audio signals are de-correlated or other audio processing that needs to de-correlate signals.
Although the present invention has been described in the context of implementations in which the
encoder receives input audio signal in the time domain and generates transmitted audio signals in the time
domain and the decoder receives the transmitted audio signals in the time domain and generates playback
audio signals in the time domain, the present invention is not so limited. For example, in other
implementations, any one or more of the input, transmitted, and playback audio signals could be
represented in a frequency domain.
BCC encoders and/or decoders may be used in conjunction with or incorporated into a variety of
different applications or systems, including systems for television or electronic music distribution, movie
theaters, broadcasting, streaming, and/or reception. These include systems for encoding/decoding
transmissions via, for example, terrestrial, satellite, cable, internet, intranets, or physical media (e.g.,
compact discs, digital versatile discs, semiconductor chips, hard drives, memory cards, and the like).
BCC encoders and/or decoders may also be employed in games and game systems, including, for
example, interactive software products intended to interact with a user for entertainment (action, role
play, strategy, adventure, simulations, racing, sports, arcade, card, and board games) and/or education that
may be published for multiple machines, platforms, or media. Further, BCC encoders and/or decoders
may be incorporated in audio recorders/players or CD-ROM/DVD systems. BCC encoders and/or
decoders may also be incorporated into PC software applications that incorporate digital decoding (e.g.,

player, decoder) and software applications incorporating digital encoding capabilities (e.g., encoder,
ripper, recoder, and jukebox).
The present invention may be implemented as circuit-based processes, including possible
implementation as a single integrated circuit (such as an ASIC or an FPGA), a multi-chip module, a single
card, or a multi-card circuit pack. As would be apparent to one skilled in the art, various functions of
circuit elements may also be implemented as processing steps in a software program. Such software may
be employed in, for example, a digital signal processor, micro-controller, or general-purpose computer.
The present invention can be embodied in the form of methods and apparatuses for practicing
those methods. The present invention can also be embodied in the form of program code embodied in
tangible media, such as floppy diskettes, CD-ROMs, hard drives, or any other machine-readable storage
medium, wherein, when the program code is loaded into and executed by a machine, such as a computer,
the machine becomes an apparatus for practicing the invention. The present invention can also be
embodied in the form of program code, for example, whether stored in a storage medium, loaded into
and/or executed by a machine, or transmitted over some transmission medium or carrier, such as over
electrical wiring or cabling, through fiber optics, or via electromagnetic radiation, wherein, when the
program code is loaded into and executed by a machine, such as a computer, the machine becomes an
apparatus for practicing the invention. When implemented on a general-purpose processor, the program
code segments combine with the processor to provide a unique device that operates analogously to
specific logic circuits.
It will be further understood that various changes in the details, materials, and arrangements of the
parts which have been described and illustrated in order to explain the nature of this invention may be
made by those skilled in the art without departing from the scope of the invention as expressed in the
following claims.
Although the steps in the following method claims, if any, are recited in a particular sequence
with corresponding labeling, unless the claim recitations otherwise imply a particular sequence for
implementing some or all of those steps, those steps are not necessarily intended to be limited to being
implemented in that particular sequence.

WE CLAIM :
1. A method for encoding audio channels, the method comprising :
generating two or more cue codes for one or more audio channels,
wherein at least one cue code is an envelope cue code generated by
characterizing a temporal envelope in one of the one or more audio
channels, wherein the two or more cue codes further comprise one or
more of inter-channel correlation (ICC) codes, inter-channel level
difference (ICLD) codes, and inter-channel time difference (ICTD) codes,
wherein a first time resolution associated with the envelope cue code is
finer than a second time resolution associated with the other cue code(s),
and wherein the temporal envelope is characterized in that, for the
corresponding audio channel in a time domain or individually for different
signal sub bands of the corresponding audio channel in a sub band
domain; and
transmitting the two or more cue codes.
2. The method as claimed in claim 1, comprising transmitting E transmitted
audio channel(s) corresponding to the one or more audio channels, where
≥1.
3. The method as claimed in claim 2, wherein:
the one or more audio channels comprise C input audio channels, where
C>E; and
the C input channels are downmixed to generate the E transmitted
channel(s).

4. The method as claimed in claim 1, wherein the two or more cue codes are
transmitted to enable a decoder to perform envelope shaping during
decoding of E transmitted channel(s) based on the two or more cue
codes, wherein the E transmitted audio channel(s) correspond to the one
or more audio channels, where E≥1.
5. The method as claimed in claim 4, wherein the envelope shaping adjusts a
temporal envelope of a synthesized signal generated by the decoder to
match the characterized temporal envelope.
6. The method as claimed in claim 1, wherein the temporal envelope is
characterized only for specified frequencies of the corresponding audio
channel.
7. The method as claimed in claim 1, wherein the temporal envelope is
characterized only for frequencies of the corresponding audio channel
above a specified cutoff frequency.
8. The method as claimed in claim 1, wherein the sub band domain
corresponds to a quadrature mirror filter (QMF).
9. The method as claimed in claim 1, comprising determining whether to
enable or disable the characterizing.

10. The method as claimed in claim 9, comprising generating and transmitting
an enable/disable flag based on the determining to instruct a decoder
whether or not to implement envelope shaping during decoding of E
transmitted channel(s) corresponding to the one or more audio channels,
where E≥1.
11. The method as claimed in claim 9, wherein the determining is based on
analyzing an audio channel to detect transients in the audio channel such
that the characterizing is enabled if occurrence of a transient is detected.
12. The method as claimed in claim wherein the step of generating the
envelope cue code includes squaring (1006) or forming a magnitude and
low-pass filtering (1008) of signal samples of the audio channel or of sub
band signals of the audio channel in order to characterize the temporal
envelope.
13. The method as claimed in claim 1 or 12 wherein the step of generating
furthermore comprises a step of parametrizing quantizing and coding an
estimated temporal envelope.
14. Apparatus for encoding audio channels, the apparatus comprising :
means for generating two or more cue codes for one or more audio
channels, wherein at least one cue code is an envelope cue code
generated by characterizing a temporal envelope in one of the one or
more audio channels, wherein the two or more cue codes further
comprise one or more of inter-channel correlation (ICC) codes, inter-
channel level difference (ICLD) codes, and inter-channel time difference
(ICTD) codes, wherein a first time resolution associated with the envelope

cue code is finer than a second time resolution associated with the other
cue code(s) and wherein the temporal envelope is characterized in that for
the corresponding audio channel in a time domain or individually for
different signal sub bands of the corresponding audio channel in a sub
band domain; and
means for transmitting information about the two or more cue codes.
15. The apparatus as claimed in claim 14,
wherein the apparatus is operative for encoding C input audio channels to
generate E transmitted audio channel(s), wherein the means for
generating comprises an envelope analyzer adapted to characterize the
input temporal envelope of at least one of the C input channels,
wherein the means for generating comprises a code estimator adapted to
generate the cue codes for two or more of the C input channels and
wherein the apparatus comprises a downmixer adapted to downmix the C
input channels to generate the E transmitted channel(s) where C>E≥1,
wherein the means for transmitting is adapted to transmit the information
about the two or more cue codes to enable a decoder to perform
synthesis and envelope shaping during decoding of the E transmitted
channel(s).
16. The apparatus as claimed in claim 15, wherein:
the apparatus is selected from the group consisting of a digital video
recorder, a digital audio recorder, a computer, a satellite transmitter, a
cable transmitter, a terrestrial broadcast transmitter, a home
entertainment system, and a movie theater system; and
comprises the envelope analyzer, the code estimator, and the downmixer.

17. A method for decoding E transmitted audio channel(s) to generate C
playback audio channels, where C>E≥1, the method comprising:
receiving cue codes corresponding to the E transmitted channel(s),
wherein the cue codes comprise an envelope cue code corresponding to a
characterized temporal envelope of an audio channel corresponding to the
E transmitted channel(s), wherein the two or more cue codes further
comprise one or more of interchannel correlation (ICC) codes, inter-
channel level difference (ICLD) codes, and inter-channel time difference
(ICTD) codes, wherein a first time resolution associated with the envelope
cue code is finer than a second time resolution associated with the other
cue code(s);
upmixing one or more of the E transmitted channel(s) to generate one or
more upmixed channels; and synthesizing one or more of the C playback
channels by applying the cue codes to the one or more upmixed channel,
wherein the envelope cue code is applied to an upmixed channel or a
synthesized signal to adjust a temporal envelope of the synthesized signal
based on the characterized temporal envelope by scaling time domain or
sub band domain signal samples using a scaling factor such that the
adjusted temporal envelope matches the characterized temporal envelope
matches the characterized temporal envelope.

18. The method as claimed in claim 18, wherein the envelope cue code
corresponds to a characterized temporal envelope in an original input
channel used to generate the E transmitted channel(s).
19. The method as claimed in claim 19, wherein the synthesis comprises late-
reverberation ICC synthesis.
20. The method as claimed in claim 19, wherein the temporal envelope of the
synthesized signal is adjusted prior to ICLD synthesis.
21. The method as claimed in claim 18, wherein:
the temporal envelope of the synthesized signal is characterized; and
the temporal envelope of the synthesized signal is adjusted based on both
the characterized temporal envelope corresponding to the envelope cue
code and the characterized temporal envelope of the synthesized signal.
22. The method as claimed in claim 22, wherein:
a scaling function is generated based on the characterized temporal
envelope corresponding to the envelope cue code and the characterized
temporal envelope of the synthesized signal; and
the scaling function is applied to the synthesized signal.
23. The method as claimed in claim 18, comprising adjusting a transmitted
channel based on the characterized temporal envelope to generate a
flattened channel, wherein the upmixing and synthesis are applied to the
flattened channel to generate a corresponding playback channel.

24. The method as claimed in claim 18, comprising adjusting an upmixed
channel based on the characterized temporal envelope to generate a
flattened channel, wherein the synthesis is applied to the flattened
channel to generate a corresponding playback channel.
25. The method as claimed in claim 18, wherein the temporal envelope of the
synthesized signal is adjusted only for specified frequencies.
26. The method as claimed in claim 26, wherein the temporal envelope of the
synthesized signal is adjusted only for frequencies above a specified cutoff
frequency.
27. The method as claimed in claim 18, wherein temporal envelopes are
adjusted individually for different signal sub bands in the synthesized
signal.
28. The method as claimed in claim 18, wherein a sub band domain
corresponds to a QMF.
29. The method as claimed in claim 18, wherein the temporal envelope of the
synthesized signal is adjusted in a time domain.
30. The method as claimed in claim 18, comprising determining whether to
enable or disable the adjusting of the temporal envelope of the
synthesized signal.

31. The method as claimed in claim 31, wherein the determining is based on
an enable/disable flag generated by an audio encoder that generated the
E transmitted channel(s).
32. The method as claimed in claim 31, wherein the determining is based on
analyzing the E transmitted channel(s) to detect transients such that the
adjusting is enabled if occurrence of a transient is detected.
33. The method as claimed in claim 18, comprising:
characterizing a temporal envelope of a transmitted channel; and
determining whether to use (1) the characterized temporal envelope
corresponding to the envelope cue code or (2) the characterized temporal
envelope of the transmitted channel to adjust the temporal envelope of
the synthesized signal.
34. The method as claimed in claim 18, wherein power within a specified
window of the synthesized signal after adjusting the temporal envelope is
equal to power within a corresponding window of the synthesized signal
before the adjusting.
35. The method as claimed in claim 35, wherein the specified window
corresponds to a synthesis window associated with one or more non-
envelope cue codes.
36. Apparatus for decoding E transmitted audio channel(s) to generate C
playback audio channels, where C>E>1, the apparatus comprising:
means for receiving cue codes corresponding to the E transmitted
channel(s), wherein the cue codes comprise an envelope cue code

corresponding to a characterized temporal envelope of an audio channel
corresponding to the E transmitted channels, wherein the two or more cue
codes further comprise one or more of inter-channel correlation (ICC)
codes, inter-channel level difference (ICLD) codes, and interchannel time
difference (ICTD) codes, wherein a first time resolution associated with
the envelope cue code is fine than a second time resolution associated
with the other cue code(s);
means for upmixing one or more of the E transmitted channels to
generate one or more upmixed channels; and means for synthesizing one
or more of the C playback channels by applying the cue codes to the one
or more upmixed channels, wherein the envelope cue code is applied to
an upmixed channel or a synthesized signal to adjust a temporal envelope
of the synthesized signal based on the characterized temporal envelope by
scaling time domain or sub band domain signal samples using a scaling
factor such that the adjusted temporal envelope matchers the
characterized temporal envelope.
37. Apparatus for decoding E transmitted audio channel(s) to generate C
playback audio channels, where C>E>1, the apparatus comprising:
a receiver adapted to receive cue codes corresponding to the E
transmitted channel(s), wherein the cue codes comprise an envelope cue
code corresponding to a characterized temporal envelope of an audio
channel corresponding to the E transmitted channels, wherein the one or
more cue codes further comprise one or more of inter-channel correlation
(ICC) codes, inter-channel level difference (ICLD) codes, and inter-
channel time difference (ICTD) codes, wherein a first time resolution
associated with the envelope cue code is finer than a second time
resolution associated with the other cue code(s);

an upmixer adapted to upmix one or more of the E transmitted channels
to generate one or more upmixed channels; and
a synthesizer adapted to synthesize one or more of the C playback
channels by applying the cue codes to the one or more upmixed channels,
wherein the envelope cue code is applied to an upmixed channel or a
synthesized signal to adjust a temporal envelope of the synthesized signal
based on the characterized temporal envelope by scaling time domain or
sub band domain signal samples using a scaling factor such that the
adjusted temporal envelope substantially matches the characterized
temporal envelope.
38. The apparatus as claimed in claim 37, wherein:
The apparatus selected from the group consisting of a digital video player,
a digital audio player, a computer, a satellite receiver, a cable receiver, a
terrestrial broadcast receiver, a home entertainment system, and a movie
theater system; and comprises the receiver, the upmixer, and the
envelope adjuster.



ABSTRACT


TITLE " INDIVIDUAL CHANNEL SHAPING FOR BCC
SCHEMES AND THE LIKE"

The invention relates to a method for encoding audio channels, the method
comprising : generating two or more cue codes for one or more audio channels,
wherein at least one cue code is an envelope cue code generated by
characterizing a temporal envelope in one of the one or more audio channels,
wherein the two or more cue codes further comprise one or more of inter-
channel correlation (ICC) codes, inter-channel level difference (ICLD) codes, and
inter-channel time difference (ICTD) codes, wherein a first time resolution
associated with the envelope cue code is finer than a second time resolution
associated with the other cue code(s), and wherein the temporal envelope is
characterized in that, for the corresponding audio channel in a time domain or
individually for different signal sub bands of the corresponding audio channel in a
sub band domain; and transmitting the two or more cue codes.

Documents:

01097-kolnp-2007-abstract.pdf

01097-kolnp-2007-claims 1.0.pdf

01097-kolnp-2007-claims 1.1.pdf

01097-kolnp-2007-correspondence others 1.1.pdf

01097-kolnp-2007-correspondence others 1.2.pdf

01097-kolnp-2007-correspondence others 1.3.pdf

01097-kolnp-2007-corrospond others.pdf

01097-kolnp-2007-description complete.pdf

01097-kolnp-2007-drawings.pdf

01097-kolnp-2007-form 1 1.1.pdf

01097-kolnp-2007-form 1.pdf

01097-kolnp-2007-form 2.pdf

01097-kolnp-2007-form 3.pdf

01097-kolnp-2007-form 5.pdf

01097-kolnp-2007-gpa.pdf

01097-kolnp-2007-international publication.pdf

01097-kolnp-2007-international search report.pdf

01097-kolnp-2007-others.pdf

01097-kolnp-2007-pct request.pdf

01097-kolnp-2007-priority document.pdf

1097-KOLNP-2007-(02-08-2013)-ABSTRACT.pdf

1097-KOLNP-2007-(02-08-2013)-CORRESPONDENCE.pdf

1097-KOLNP-2007-(02-08-2013)-FORM-1.pdf

1097-KOLNP-2007-(02-08-2013)-FORM-2.pdf

1097-KOLNP-2007-(17-01-2012)-ABSTRACT.pdf

1097-KOLNP-2007-(17-01-2012)-AMANDED CLAIMS.pdf

1097-KOLNP-2007-(17-01-2012)-DESCRIPTION (COMPLETE).pdf

1097-KOLNP-2007-(17-01-2012)-DRAWINGS.pdf

1097-KOLNP-2007-(17-01-2012)-EXAMINATION REPORT REPLY RECIEVED.PDF

1097-KOLNP-2007-(17-01-2012)-FORM 1.pdf

1097-KOLNP-2007-(17-01-2012)-FORM 2.pdf

1097-KOLNP-2007-(17-01-2012)-FORM 3.pdf

1097-KOLNP-2007-(17-01-2012)-FORM 5.pdf

1097-KOLNP-2007-(17-01-2012)-OTHERS.pdf

1097-KOLNP-2007-(17-01-2012)-PETITION UNDER RULE 137.pdf

1097-KOLNP-2007-CANCELLED PAGES.pdf

1097-KOLNP-2007-CORRESPONDENCE.pdf

1097-KOLNP-2007-EXAMINATION REPORT.pdf

1097-KOLNP-2007-FORM 18.pdf

1097-KOLNP-2007-FORM 26.pdf

1097-KOLNP-2007-GRANTED-ABSTRACT.pdf

1097-KOLNP-2007-GRANTED-CLAIMS.pdf

1097-KOLNP-2007-GRANTED-DESCRIPTION (COMPLETE).pdf

1097-KOLNP-2007-GRANTED-DRAWINGS.pdf

1097-KOLNP-2007-GRANTED-FORM 1.pdf

1097-KOLNP-2007-GRANTED-FORM 2.pdf

1097-KOLNP-2007-GRANTED-FORM 3.pdf

1097-KOLNP-2007-GRANTED-FORM 5.pdf

1097-KOLNP-2007-GRANTED-SPECIFICATION-COMPLETE.pdf

1097-KOLNP-2007-INTERNATIONAL PUBLICATION.pdf

1097-KOLNP-2007-INTERNATIONAL SEARCH REPORT & OTHERS.pdf

1097-KOLNP-2007-OTHERS.pdf

1097-KOLNP-2007-PETITION UNDER RULE 137.pdf

1097-KOLNP-2007-REPLY TO EXAMINATION REPORT.pdf


Patent Number 257008
Indian Patent Application Number 1097/KOLNP/2007
PG Journal Number 37/2013
Publication Date 13-Sep-2013
Grant Date 26-Aug-2013
Date of Filing 29-Mar-2007
Name of Patentee FRAUNHOFER-GESELLSCHAFT ZUR FORDERUNG DER ANWANDTEN FORSCHUNG E.V.
Applicant Address HANSASTRASSE 27C, 80686, MUNICH, GERMANY
Inventors:
# Inventor's Name Inventor's Address
1 ERIC ALLAMANCHE GROSSREUTHERSTRASSE 130, 90425 NUERNBERG GERMANY
2 JUERGEN HERRE HALLERSTRASSE 24, 91054 BUCKENHOF / GERMANY
3 CHRISTOF FALLER GUETRAIN 1, 8274 TAEGERWILEN / SWITZERLAND
4 SASCHA DISCH TURNSTRASSE 7, 90763 FUERTH / GERMANY
PCT International Classification Number G10L 19/02
PCT International Application Number PCT/EP2005/009618
PCT International Filing date 2005-09-07
PCT Conventions:
# PCT Application Number Date of Convention Priority Country
1 11/006,482 2004-12-07 U.S.A.
2 60/620,480 2004-10-20 U.S.A.