Information Signal Representation using Lapped Transform
Description
The present application is concerned with information signal representation using lapped
transforms and in particular the representation of an information signal using a lapped
transform representation of the information signal requiring aliasing cancellation such as
used, for example, in audio compression techniques.
Most compression techniques are designed for a specific type of information signal and
specific transmission conditions of the compressed data stream such as maximum allowed
delay and available transmission bitrate. For example, in audio compression, transform
based codecs such as AAC tend to outperform linear prediction based time-domain codecs
such as ACELP, in case of higher available bitrate and in case of coding music instead of
speech. The USAC codec, for example, seeks to cover a greater variety of application
sceneries by unifying different audio coding principles within one codec. However, it
would be favorable to further increase the adaptivity to different coding conditions such as
varying available transmission bitrate in order to be able to take advantage thereof, so as to
achieve, for example, a higher coding efficiency or the like.
Accordingly, it is an object of the present invention to provide such a concept by providing
a lapped transform information signal representation scheme which enables representing an
information signal by a lapped transform representation requiring aliasing cancellation so
that it is possible to adapt the lapped transform representation to the actual need, thereby
providing the possibility to achieve higher coding efficiency.
This object is achieved by the subject matter of the pending independent claims.
The main thoughts which lead to the present invention are the following. Lapped transform
representations of information signals are often used in order to form a pre-state in
efficiently coding the information signal in terms of, for example, rate/distortion ratio
sense. Examples of such codecs are AAC or TCX or the like. Lapped transform
representations may, however, also be used to perform re-sampling by concatenating
transform and re-transform with different spectral resolutions. Generally, lapped transform
representations causing aliasing at the overlapping portions of the individual retransforms
of the transforms of the windowed versions of consecutive time regions of the information
signal have an advantage in terms of the lower number of transform coefficient levels to be
coded so as to represent the lapped transform representation. In an extreme form, lapped
transforms are "critically sampled". That is, do not increase the number of coefficients in
the lapped transform representation compared to the number of time sample of the
information signal. An example of a lapped transform representation is an MDCT
(Modified Discrete Cosine Transform) or QMF (Quadratur Mirror Filters) filterbank.
Accordingly, it is often favorable to use such a lapped transform representations as a prestate
in efficiently coding information signals. However, it would also be favorable to be
able to allow the sample rate at which the information signal is represented using the
lapped transform representation to change in time so as to be adapted, for example, to the
available transmission bitrate or other environmental conditions. Imagine a varying
available transmission bitrate. Whenever the available transmission bitrate falls below
some predetermined threshold, for example, it may be favorable to lower the sample rate,
and when the available transmission rate raises again it would be favorable to be able to
increase the sample rate at which the lapped transform representation represents the
information signal. Unfortunately, the overlapping aliasing portions of the retransforms of
the lapped transform representation seem to form a bar against such sample rate changes,
which bar seems to be overcome only by completely interrupting the lapped transform
representation at instances of sample rate changes. The inventors of the present invention,
however, realized a solution to the above-outlined problem, thereby enabling an efficient
use of lapped transform representations involving aliasing and the sample rate variation in
concern. In particular, by interpolation, the preceding and/or succeeding region of the
information signal is resampled at the aliasing cancellation portion according to the sample
rate change at the border between both regions. A combiner is then able to perform the
aliasing cancellation at the border between the retransforms for the preceding and
succeeding regions as obtained by the resampling at the aliasing cancellation portion. By
this measure, sampling rate changes are efficiently traversed with avoiding any
discontinuity of the lapped transform representation at the sample rate changes/transitions.
Similar measures are also feasible at the transform side so as to appropriately generate a
lapped transform.
Using the idea just outlined, it is possible to provide information signal compression
techniques, such as audio compression techniques, which have high coding efficiency over
a wide range of environmental coding conditions such as available transmission bandwidth
by adapting the conveyed sample rate to these conditions with no penalty by the sample
rate change instances themselves.
Advantageous aspects of the present invention are the subject of the dependent claims of
the pending claim set. Moreover, preferred embodiments of the present invention are
described below with respect to the figures, among which:
Fig. l a shows a block diagram of an information encoder where embodiments of
the present invention could be implemented;
Fig. l b shows a block diagram of an information signal decoder where
embodiments of the present invention could be implemented;
Fig. 2a shows a block diagram of a possible internal structure of the core encoder of
Fig. la;
Fig. 2b shows a block diagram of a possible internal structure of the core decoder of
Fig. lb;
Fig. 3a shows a block diagram of a possible implementation of the resampler of Fig.
la;
Fig. 3b shows a block diagram of a possible internal structure of the resampler of
Fig. lb;
Fig. 4a shows a block diagram of an information signal encoder where
embodiments of the present invention could be implemented;
Fig. 4b shows a block diagram of an information signal decoder where
embodiments of the present invention could be implemented;
Fig. 5 shows a block diagram of an information signal reconstructor in accordance
with an embodiment;
Fig. 6 shows a block diagram of an information signal transformer in accordance
with embodiment;
Fig. 7a shows a block diagram of an information signal encoder in accordance with
a further embodiment where an information signal reconstructor according
to Fig. 5 could be used;
Fig. 7b shows a block diagram of an information signal decoder in accordance with
a further embodiment where an information signal reconstructor according
to Fig. 5 could be used;
Fig. 8 shows a schematic showing the sample rate switching scenarios occurring in
the information signal encoder and decoder of Figs. 6a and 6b in accordance
with an embodiment.
In order to motivate the embodiments of the present invention further described below,
preliminarily, embodiments are discussed within which embodiments of the present
application may be used, and which render the intention and the advantages of the
embodiments of the present application outlined further below clear.
Figs l a and lb show, for example, a pair of an encoder and a decoder where the
subsequently explained embodiments may be advantageously used. Fig. l a shows the
encoder while Fig. l b shows the decoder. The information signal encoder 10 of Fig. l a
comprises an input 12 at which the information signal enters, a resampler 14 and a core
encoder 16, wherein the resampler 14 and the core encoder 16 are serially connected
between the input 12 and an output 18 of encoder 10. At the output 8 encoder 10 outputs
the data stream representing the information signal of input 12. Likewise, the decoder
shown in Fig. l b with reference sign 20 comprises a core decoder 22 and a resampler 24
which are serially connected between an input 26 and an output 28 of decoder 20 in the
manner shown in Fig. lb.
If the available transmission bitrate for conveying the data stream output at output 18 to the
input 26 of decoder 20 is high, it may in terms of coding efficiency be favorable to
represent the information signal 12 within the data stream at a high sample rate, thereby
covering a wide spectral band of the information signal's spectrum. That is, a coding
efficiency measure such as a rate/distortion ratio measure may reveal that a coding
efficiency is higher if the core encoder 6 compresses the input signal 12 at a higher
sample rate when compared to a compression of a lower sample rate version of information
signal 12. On the other hand, at lower available transmission bitrates, it may occur that the
coding efficiency measure is higher when coding the information signal 12 at a lower
sample rate. In this regard, it should be noted that the distortion may be measured in a
psycho-acoustically motivated manner, i.e. with taking distortions within perceptually
more relevant frequency regions into account more intensively than within perceptually
less relevant frequency regions, i.e. frequency regions where the human ear is, for
example, less sensitive. Generally, low frequency regions tend to be more relevant than
higher frequency regions, and accordingly lower sample rate coding excludes frequency
components of the signal at input 1 , lying above the Nyquist frequency from being coded,
but on the other hand, the bit rate saving resulting therefrom may, in rate/distortion rate
sense, result in this lower sample rate coding to be preferred over higher sample rate
coding. Similar discrepancies in the significance of distortions between lower and higher
frequency portions also exist in other information signals such as measurement signals or
the like.
Accordingly, resampler 14 is for varying the sample rate at which information signal 12 is
sampled. By appropriately controlling the sample rate in dependency on the external
transmission conditions such as defined, inter alias, by the available transmission bitrate
between output 18 and input 26, encoder 10 is able to achieve an increased coding
efficiency despite the external transmission condition changing over time. The decoder 20,
in turn, comprises core decoder 22 which decompresses the data stream, wherein the
resampler 24 takes care that the reconstructed information signal output at output 28 has a
constant sample rate again.
However, problems result whenever a lapped transform representation is used in the
encoder/decoder pair of Figs l a and lb. A lapped transform representation involving
aliasing at the overlapping regions of the retransforms form an effective tool for coding,
but due to the necessary time aliasing cancellation, problems occur if the sample rate
changes. See, for example, Figs. 2a and 2b. Figs. 2a and 2b show possible implementations
for core encoder 16 and core decoder 22 assuming that both are of the transform coding
type. Accordingly, the core encoder 16 comprises a transformer 30 followed by a
compressor 32 and the core decoder shown in Fig. 2b comprises a decompressor 34
followed, in turn, by a retransformer 36. Figs. 2a and 2b shall not be interpreted to the
extent that no other modules could be present within core encoder 16 and core decoder 22.
For example, a filter could precede transformer 30 so that the latter would transform the
resampled information signal obtained by resampler 14 not directly, but in a pre-filtered
form. Similarly, a filter having an inverse transfer function could succeed retransformer 36
so that the retransform signal could be inversely filtered subsequently.
The compressor 32 would compress the resulting lapped transform representation output
by transformer 30, such as by use of lossless coding such as entropy coding including
examples like Huffman or arithmetic coding, and the decompressor 34 could do the inverse
process, i.e. decompressing, by, for example, entropy decoding such as Huffman or
arithmetic decoding to obtain the lapped transform representation which is then fed to
retransformer 36.
In the transform coding environment shown in Figs. 2a and 2b, problems occur whenever
resampler 14 changes the sampling rate. The problem is less severe at the encoding side as
the information signal 12 is present anyway and accordingly, the transformer 30 could be
provided with continuously sampled regions for the individual transformations using a
windowed version of the respective regions even across instances of a sampling rate
change. A possible embodiment for implementing transformer 30 accordingly, is described
in the following with respect to Fig. 6. Generally, the transformer 30 could be provided
with a windowed version of a preceding region of the information signal in a current
sampling rate, with then feeding transformer 30 by resampler 14 with a next, partially
overlapping region of the information signal, the transform of the windowed version of
which is then generated by transformer 30. No additional problem occurs since the
necessary time aliasing cancellation needs to be done at the retransformer 36 rather than
the transformer 30. At the retransformer 36, however, the change in sampling rate causes
problems in that the retransformer 36 is not able to perform the time aliasing cancellation
as the retransforms of the afore-mentioned immediately following regions relate to
different sampling rates. The embodiments described further below overcome these
problems. The retransformer 36 may, according to these embodiments, be replaced by an
information signal reconstructor further described below.
However, in the environment described with respect to Figs, l a and lb, problems do not
only occur in the case of the core encoder 16 and the core decoder 22 being of the
transform coding type. Rather, problems may also occur in the case of using lapped
transform based filterbanks for forming the resamplers 14 and 24, respectively. See, for
example, Figs. 3a and 3b. Figs. 3a and 3b show one specific embodiment for realizing
resamplers 14 and 24. In accordance with the embodiment of Figs. 3a and 3b, both
resamplers are implemented by using a concatenation of analysis filterbanks 38 and 40,
respectively, followed by synthesis filterbanks 32 and 44, respectively. As illustrated in
Figs. 3a and 3b, analysis and synthesis filterbanks 38 to 44 may be implemented as QMF
filterbanks, i.e. MDCT based filterbanks using QMF for splitting the information signal
beforehand, and re-joining the signal again. The QMF may be implemented similar to the
QMF used in the SBR part of MPEG HE-AAC or AAC-ELD meaning a multi-channel
modulated filter bank with an overlap of 10 blocks, wherein 10 is just an example. Thus, a
lapped transform representation is generated by the analysis filterbanks 38 and 40, and the
re-sampled signal is reconstructed from this lapped transform representation in case of the
synthesis filterbanks 42 and 44. In order to yield a sampling rate change, synthesis
filterbank 42 and analysis filterbank 40 may be implemented to operate at varying
transform length, wherein however the filterbank or QMF rate, i.e. the rate at which the
consecutive transforms are generated by analysis filterbanks 38 and 40, respectively, on the
one hand and retransformed by synthesis filterbanks 42 and 44, respectively, on the other
hand, is constant and the same for all components 38 to 44. Changing the transform length,
however, results in a sampling rate change. Consider, for example, the pair of analysis
filterbank 38 and synthesis filterbank 42. Assume that the analysis filterbank 38 operates
using a constant transform length and a constant filterbank or transform rate. In this case,
the lapped transform representation of the input signal output by analysis filterbank 38
comprises for each of consecutive, overlapping regions of the input signal, having constant
sample length, a transform of a windowed version of the respective region, the transforms
also having a constant length. In other words, the analysis filterbank 38 would forward to
synthesis filterbank 42 a spectrogram of a constant time/frequency resolution. The
synthesis filterbank' s transform length, however, would change. Consider, for example, the
case of downsampling from a first downsampling rate between input sample rate at the
input of analysis filterbank 38 and the sampling rate of the signal output at the output of
synthesis filterbank 42, to a second downsampling rate. As long as the first downsampling
rate is valid, the lapped transform representation or spectrogram output by the analysis
filterbank 38 would merely partially be used to feed the retransformations within the
synthesis filterbank 42. The retransformation of the synthesis filterbank 42 would simply
be applied to the lower frequency portion of the consecutive transforms within the
spectrogram of analysis filterbank 38. Due to the lower transform length used in the
retransformation of the synthesis filterbank 42, the number of samples within the
retransforms of the synthesis filterbank 42 would also be lower than compared to the
number of samples having been subject, in clusters of the overlapping time portions, to
transformations in the filterbank 38, thereby resulting in a lower sampling rate when
compared to the original sampling rate of the information signal entering the input of the
analysis filterbank 38. No problems, would occur as long as the downsampling rate stays
the same as it is still no problem for the synthesis filterbank 42 to perform the time aliasing
cancellation at the overlap between the consecutive retransforms and the consecutive,
overlapping regions of the output signal at the output of filterbank 42.
The problem occurs whenever a change in the downsampling rate occurs such as the
change from a first downsampling rate to a second, greater downsampling rate. In this
case, the transform length used within the retransformation of the synthesis filterbank 42
would be further reduced, thereby resulting in an even lower sampling rate for the
respective subsequent regions after the sampling rate change point in time. Again,
problems occur for the synthesis filterbank 42 as the time aliasing cancellation between the
retransform concerning the region immediately preceding the sample rate change point in
time and the retransform concerning the region of the resampled signal immediately
succeeding the sample rate change point in time, disturbs the time aliasing cancellation
between the retransforms in question. Accordingly, it does not help very much that similar
problems do not occur at the decoding side where the analysis filterbank 40 with a varying
transform length precedes the synthesis filterbank 44 of constant transform length. Here,
the synthesis filterbank 44 applies to the spectrogram of constant QMF/transform rate, but
of different frequency resolution, i.e. the consecutive transforms forwarded from the
analysis filterbank 40 to synthesis filterbank 44 at a constant rate but with a different or
time-varying transform length to preserve the lower-frequency portion of the entire
transform length of the synthesis filterbank 44 with padding the higher frequency portion
of the entire transform length with zeros. The time aliasing cancellation between the
consecutive retransforms output by the synthesis filterbank 44 is not problematic as the
sampling rate of the reconstructed signal output at the output of synthesis filterbank 44 has
a constant sample rate.
Thus, again there is a problem in trying to realize the sample rate variation/adaption
presented above with respect to Figs l a and lb, but these problems may be overcome by
implementing the inverse or synthesis filterbank 42 of Fig. 3a in accordance with some of
the subsequently explained embodiments for an information signal reconstructor.
The above thoughts with regard to a sampling rate adaption/variation are even more
interesting when considering coding concepts according to which a higher frequency
portion of an information signal to be coded is coded in a parametric way, e.g. by using
Spectral Band Replication (SBR), whereas a lower frequency portion thereof is coded
using transform coding and/or predictive coding or the like. See, for example, Figs. 4a and
4b showing a pair of information signal encoder and information signal decoder. At the
encoding side, the core encoder 16 succeeds a resampler embodied as shown in Fig. 3a, i.e.
a concatenation of an analysis filterbank 38 and a varying transform length synthesis
filterbank 42. As noted above, in order to achieve a time-varying downsample rate between
the input of analysis filterbank 38 and the output of synthesis filterbank 42, the synthesis
filterbank 42 applies its retransformation onto a subportion of the constant range spectrum,
i.e. the transforms of constant length and constant transform rate 46, output by the analysis
filterbank 38, of which the subportions have the time-varying length of the transform
length of the synthesis filterbank 42. The time variation is illustrated by the double-headed
arrow 48. While the lower frequency portion 50 resampled by the concatenation of
analysis filterbank 38 and synthesis filterbank 42 is encoded by core encoder 16, the
remainder, i.e. the higher frequency portion 52 making up the remaining frequency portion
of spectrum 46, may be subject to a parametric coding of its envelope in parametric
envelope coder 54. The core data stream 56 is thus accompanied by a parametric coding
data stream 58 output by a parametric envelope coder 54.
At the decoding side, the decoder likewise comprises core decoder 22, followed by a
resampler implemented as shown in Fig. 3b, i.e. by an analysis filterbank 40 followed by a
synthesis filterbank 44, with the analysis filterbank 40 having a time-varying transform
length synchronized to the time variation of the transform length of the synthesis filterbank
42 at the encoding side. While core decoder 22 receives the core data stream 56 in order to
decode same, a parametric envelope decoder 60 is provided in order to receive the
parametric data stream 58 and derive therefrom a higher frequency portion 52',
complementing a lower frequency portion 50 of a varying transform length, namely a
length synchronized to the time variation of the transform length used by the synthesis
filterbank 42 at the encoding side and synchronized to the variation of the sampling rate
output by core decoder 22.
In the case of the encoder of Fig. 4a, it is advantageous that the analysis filterbank 38 is
present anyway so that the formation of the resampler merely necessitates the addition of
the synthesis filterbank 42. By switching the sample rate, it is possible to adapt the ratio of
LF portion of the spectrum 46, which is subject to a more accurate core encoding
compared to the HF portion which is subject to merely parametric envelope coding. In
particular, the ratio may be controlled in an efficient way depending on external conditions
such as available transmission bandwidth for transmitting the overall data stream or the
like. The time variation controlled at the encoding side is easy to signalize to the decoding
side via respective side information data, for example.
Thus, with respect to Figs. 1a to 4b it has been shown that it would be favorable if one
would have a concept at hand which effectively enables a sampling rate change despite the
use of lapped transform representations necessitating time aliasing cancellation. Fig. 5
shows an embodiment of an information signal reconstructor which would, if used for
implementing the synthesis filterbank 42 or the retransformer 36 in Fig. 2b, overcome the
problems outlined above and achieve the advantages of exploiting the advantages of such a
sample rate change as outlined above.
The information signal reconstructor shown in Fig. 5 comprises a retransformer 70, a
resampler 72 and a combiner 74, which are serially connected in the order of their
mentioning between an input 76 and an output 78 of information signal reconstructor 80.
The information signal reconstructor shown in Fig. 5 is for reconstructing, using aliasing
cancellation, an information signal from a lapped transform representation of the
information signal entering at input 76. That is, the information signal reconstructor is for
outputting at output 78 the information signal at a time-varying sample rate using the
lapped transform representation of this information signal as entering input 76. The lapped
transform representation of the information signal comprises, for each of consecutive,
overlapping time regions (or time intervals) of the information signal, a transform of a
windowed version of the respective region. As will be outlined in more detail below, the
information signal reconstructor 80 is configured to reconstruct the information signal at a
sample rate which changes at a border 82 between a preceding region 84 and a succeeding
region 86 of the information signal 90.
In order to explain the functionality of the individual modules 70 to 74 of information
signal reconstructor 80, it is preliminarily assumed that the lapped transform representation
of the information signal entering at input 76 has a constant time/frequency resolution, i.e.
a resolution constant in time and frequency. Later-on another scenario is discussed.
According to the just-mentioned assumption, the lapped transform representation could be
thought of as shown at 92 in Fig. 5. As is shown, the lapped transform representation
comprises a sequence of transforms which are consecutive in time with a certain transform
rate At. Each transform 94 represents a transform of a windowed version of a respective
time region i of the information signal. In particular, as the frequency resolution is constant
in time for representation 92, each transform 94 comprises a constant number of transform
coefficients, namely Nk. This effectively means that the representation 92 is a spectrogram
of the information signal comprising Nk spectral components or subbands which may be
strictly ordered along a spectral axis k as illustrated in Fig. 5. In each spectral component
or subband, the transform coefficients within the spectrogram occur at the transform rate
t .
A lapped transform representation 92 having such a constant time/frequency resolution is,
for example, output by a QMF analysis filterbank as shown in Fig. 3a. In this case, each
transform coefficient would be complex valued, i.e. each transform coefficient would have
a real and an imaginary part, for example. However, the transform coefficients of the
lapped transform representation 92 are not necessarily complex valued, but could also be
solely real valued, such as in the case of a pure MDCT. Besides this, it is noted that the
embodiment of Fig. 5 would also be transferable onto other lapped transform
representations causing aliasing at the overlapping portions of the time regions, the
transforms 94 of which are consecutively arranged within the lapped transform
representation 92.
The retransformer 70 is configured to apply a retransformation on the transforms 94 so as
to obtain, for each transform 94, a retransform illustrated by a respective time envelope 96
for consecutive time regions 84 and 86, the time envelope roughly corresponding to the
window applied to the afore-mentioned time portions of the information signal in order to
yield the sequence of transforms 94. As far as the preceding time region 84 is concerned,
Fig. 5 assumes that the retransformer 70 has applied the retransformation onto the full
transform 94 associated with that region 84 in the lapped transform representation 92 so
that the retransform 96 for region 84 comprises, for example, Nk samples or two times Nk
samples - in any case, as many samples as made up the windowed portion from which the
respective transform 94 was obtained - sampling the full temporal length t · a of time
region 84 with the factor a being a factor determining the overlap between the consecutive
time regions in units of which the transforms 94 of representation 92 have been generated.
It should be noted here that the equality (or duplicity) of the number of time samples
within time region 84 and the number of transform coefficients within transform 94
belonging to that time region 84 has merely been chosen for illustration purposes and that
the equality (or duplicity) may be also be replaced by another constant ratio between both
numbers in accordance with an alternative embodiment, depending on the detailed lapped
transform used.
It is now assumed that the information signal reconstructor seeks to change the sample rate
of the information signal between time region 84 and time region 86. The motivation to do
so may stem from an external signal 98. If, for example, the information signal
reconstructor 80 is used for implementing the synthesis filterbank 42 of Fig. 3a and Fig. 4a,
respectively, the signal 98 may be provided whenever a sample rate change promises a
more efficient coding, such as the course of a change in the transmission conditions of the
data stream.
In the present case, it is for illustration purposes assumed that the information signal
reconstructor 80 seeks to reduce the sample rate between time regions 84 and 86.
Accordingly, retransformer 70 also applies a retransformation on the transform of the
windowed version of the succeeding region 86 so as to obtain the retransform 100 for the
succeeding region 86, but this time the retransformer 70 uses a lower transform length for
performing the retransformation. To be more precise, retransformer 70 performs the
retransformation onto the lowest Nk' < of the transform coefficients of the transform for
the succeeding region 86 only, i.e. transform coefficients 1 . . . N ' , so that the retransform
100 obtained comprises a lower sample rate, i.e. it is sampled with merely Nk' instead of
N (or a corresponding fraction of the latter number).
As is illustrated in Fig. 5, the problem occurring between retransforms 96 and 100 is the
following. The retransform 96 for the preceding region 84 and the retransform 100 for the
succeeding region 86 overlap at an aliasing cancellation portion 102 at a border 82 between
the preceding and succeeding regions 84 and 86, with the time length of the aliasing
cancellation portion being, for example, (a - 1) At, but the number of samples of the
retransform 96 within this aliasing cancellation portion 102 is different from (in this very
example, is higher than) the number of samples of retransform 100 within the same
aliasing cancellation portion 102. Thus, the time aliasing cancellation by performing
overlap-adding both retransforms 96 and 100 in that time interval 102 is not straight
forward.
Accordingly, resampler 72 is connected between retransformer 70 and combiner 74, the
latter one of which is responsible for performing the time aliasing cancellation. In
particular, the resampler 72 is configured to resample, by interpolation, the retransform 96
for the preceding region 84 and/or the retransform 100 for the succeeding region 86 at the
aliasing cancellation portion 102 according to the sample rate change at the border 82. As
the retransform 96 reaches the input of resampler 72 earlier than retransform 100, it may be
preferable that resampler 72 performs the resampling onto the retransform 96 for the
preceding region 84. That is, by interpolation 104, the corresponding portion of the
retransform 96 as contained within aliasing cancellation portion 102 would be resampled
so as to correspond to the sampling condition or sample positions of retransform 100
within the same aliasing cancellation portion 102. The combiner 74 may then simply add
co-located samples from the re-sampled version of retransform 96 and the retransform 100
in order to obtain the reconstructed signal 90 within that time interval 102 at the new
sample rate. In that case, the sample rate in the output reconstructed signal would switch
from the former to the new sample rate at the leading end (beginning) of time portion 86.
However, the interpolation could also be applied differently for a leading and trailing half
of time interval 102 so as to achieve another point 82 in time for the sample rate switch in
the reconstructed signal 90. Thus, time instant 82 has been drawn in Fig. 5 to be in the mid
of the overlap between portion 84 and 86 merely for illustration purposes and in
accordance with other embodiments same point in time may lie somewhere else between
the beginning of portion 86 and the end of portion 84, both inclusively.
Accordingly, the combiner 74 is then able to perform the aliasing cancellation between the
retransforms 96 and 100 for the preceding and succeeding regions 84 and 86, respectively,
as obtained by the resampling at the aliasing cancellation portion 102. To be more precise,
in order to cancel the aliasing within the aliasing cancellation portion 102, combiner 74
performs an overlap-add process between retransforms 96 and 100 within portion 102,
using the resampled version as obtained by resampler 72. The overlap-add process yields,
along with the windowing for generating the transforms 94, an aliasing free and constantly
amplified reconstruction of the information signal 90 at output 78 even across border 82,
even though the sample rate of information signal 90 changes at time instant 82 from a
higher sample rate to a lower sample rate.
Thus, as it turns out from the above description of Fig. 5, the ratio of the transform length
of the retransformation applied to the transform 94 of the windowed version of the
preceding time region 84 to a temporal length of the preceding region 84 differs from a
ratio of a transform length of the retransformation applied to the windowed version of the
succeeding region 86 to a temporal length of the succeeding region 86 by a factor which
corresponds to the sample rate change at border 82 between both regions 84 and 86. In the
example just described, this ratio change has been initiated illustratively by an external
signal 98. The temporal length of the preceding and succeeding time regions 84 and 86
have been assumed to be equal to each other and the retransformer 70 was configured to
restrict the application of the retransformation on the transform 94 of the windowed
version of the succeeding region 86 on a low-frequency portion thereof, such as, for
example, up to the Nk'-th transform coefficient of the transform. Naturally, such grabbing
could have already been taken place with respect to the transform 94 of the windowed
version of the preceding region 84, too. Moreover, contrary to the above illustration, the
sample rate change at the border 82 could have been performed into the other direction,
and thus no grabbing may be performed with respect to the succeeding region 86, but
merely with respect to the transform 94 of the windowed version of the preceding region
84 instead.
To be more precise, up to now, the mode of operation of the information signal
reconstructor of Fig. 5 has been illustratively described for a case where a transform length
of the transform 94 of the windowed version of the regions of the information signal and a
temporal length of the regions of the information signal are constant, i.e. the lapped
transform representation 92 was a spectrogram having a constant time/frequency
resolution. In order to locate the border 82, the information signal reconstructor 80 was
exemplarily described to be responsive to a control signal 98.
Accordingly, in this configuration the information signal reconstructor 80 of Fig. 5 could
be part of resampler 14· of Fig. 3a. In other words, the resampler 14 of Fig. 3a could be
composed of a concatenation of a filterbank 38 for providing a lapped transform
representation of an information signal, and an inverse filterbank comprising an
information signal reconstructor 80 configured to reconstruct, using aliasing cancellation,
the information signal from the lapped transform representation of the information signal
as described up to now. The retransformer 70 of Fig. 5 could accordingly be configured as
a QMF synthesis filterbank, with the filterbank 38 being implemented as QMF analysis
filterbank, for example.
As became clear from the description of Figs, l a and 4a, an information signal encoder
could comprise such a resampler along with a compression stage such as core encoder 16
or the conglomeration core encoder 16 and parametric envelope coder 54. The
compression stage would be configured to compress the reconstructed information signal.
As is shown in Figs. 1 and 4a, such an information signal encoder could further comprise a
sample rate controller configured to control the control signal 98 depending on an external
information on available transmission bitrate, for example.
However, alternatively, the information signal reconstructor of Fig. 5 could be configured
to locate the border 82 by detecting a change in the transform length of the windowed
version of the regions of the information signal within the lapped transform representation.
In order to make this possible implementation clearer, see 92' in Fig. 5 where an example
of an inbound lapped transform representation is shown according to which the
consecutive transforms 94 within the representation 92' are still arriving at the
retransformer 70 at a constant transform rate At, but the transform length of the individual
transform changes. In Fig. 5, it is, for example, assumed that the transform length of the
transform of the windowed version of the preceding time region 84 is greater than (namely
N ) the transform length of the transform of the windowed version of the succeeding
region 86, which is assumed to be merely N ' . Somehow, retransformer 70 is able to
correctly parse the information on the lapped transform representation 92' from the input
data stream and accordingly retransformer 70 may adapt a transform length of the
retransformation applied on the transform of the windowed version of the consecutive
regions of the information signal to the transform length of the consecutive transforms of
the lapped transform representation 92'. Accordingly, retransformer 70 may use a
transform length of N for the retransformation of the transform 94 of the windowed
version of the preceding time region 84, and a transform length of a ' for the
retransformation of the transform of the windowed version of the succeeding time region
86, thereby obtaining the sample rate discrepancy between retransformations which has
already been discussed above and is shown in Fig. 5 in the top middle of this figure.
Accordingly, as far as the mode of operation of the information signal reconstructor 80 of
Fig. 5 is concerned, this mode of operation coincides with the above description besides
the just mentioned difference in adapting the retransformation's transform length to the
transform length of the transforms within the lapped transform representation 92'.
Thus, in accordance with the latter functionality, the information signal reconstructor
would not have to be responsive to an external control signal 98. Rather, the inbound
lapped transform representation 92' could be sufficient in order to inform the information
signal reconstructor on the sample rate change points in time.
The information signal reconstructor 80 operating as just described could be used in order
to form the retransformer 36 of Fig. 2b. That is, an information signal decoder could
comprise a decompressor 34 configured to reconstruct the lapped transform representation
92' of the information signal from a data stream. The reconstruction could, as already
described above, involve entropy decoding. The time-varying transform length of the
transforms 94 could be signaled within the data stream entering decompressor 34 in an
appropriate way. An information signal reconstructor as shown in Fig. 5 could be used as
the reconstructor 36. Same could be configured to reconstruct, using aliasing cancellation,
the information signal from the lapped transform representation as provided by
decompressor 34. In the latter case, the retransformer 70 could, for example, be performed
to use an IMDCT in order to perform the retransformations, and the transform 94 could be
represented by real valued coefficients rather than complex valued ones.
Thus, the above embodiments enable the achievement of many advantages. For audio
codecs operating at a full range of bitrate, for example, such as from 8 kb per second to
128 kb per second, an optimal sample rate may depend on the bitrate as has been described
above with respect to Fig. 4a and 4b. For lower bitrates, only the lower frequency should,
for example, be coded with more accurate coding methods like ACELP or transform
coding while the higher frequencies should be coded in a parametric way. For high bitrates
the full spectrum would, for example, be coded with the accurate methods. This would
mean, for example, that those accurate methods should always code signals at an optimal
representation. The sample rate of those signals should be optimized allowing the
transportation of the most relevant signal frequency components according to the Nyquist
theorem. Thus, look at Fig. 4a. The sample rate controller 120 shown therein could be
configured to control the sample bitrate at which the information signal is fed into core
encoder 16 depending on the available transmission bitrate. This corresponds to feeding
only a lower-frequency subportion of the analysis filterbank's spectrum into the core
encoder 16. The remaining higher-frequency portion could be fed into the parametric
envelope coder 54. Time-variance in the sample rate and the transmission bitrate is,
respectively, as described above, not a problem.
The description of Fig. 5 concerns the information signal reconstruction which could be
used in order to deal with a time aliasing cancellation problem at the sample rate change
time instances. As already mentioned above with respect to Figs. 1 to 4b, some measures
also have to be done at interfaces between consecutive modules in the sceneries of Figs. 1
to 4b, where a transformer is to generate a lapped transform representation as then entering
the information signal reconstructor of Fig. 5.
Fig. 6 shows such an embodiment for an information signal transformer. The information
signal transformer of Fig. 6 comprises an input 105 for receiving an information signal in
the form of a sequence of samples, a grabber 106 configured to grab consecutive,
overlapping regions of the information signal, a resampler 107 configured to apply a
resampling onto at least a subset of the consecutive, overlapping regions so that each of the
consecutive, overlapping regions has a constant sample rate, wherein however the constant
sample rate varies among the consecutive, overlapping regions, a windower 108
configured to apply a windowing on the consecutive, overlapping regions, and a
transformer configured to apply a transformation individually onto the windowed portions
so as to obtain a sequence of transforms 94 forming the lapped transform representation
92' which is then output at an output 110 of information signal transformer of Fig. 6. The
windower 108 may use a Hamming windowing or the like.
The grabber 106 may be configured to perform the grabbing such that the consecutive,
overlapping regions of the information signal have equal length in time such as, for
example, 20 ms each.
Thus, grabber 106 forwards to resampler 107 a sequence of information signal portions.
Assuming that the inbound information signal has a time-varying sample rate which
switches from a first sample rate to a second sample rate at a predetermined time instant,
for example, the resampler 107 may be configured to resample, by interpolation, the
inbound information signal portions temporally encompassing the predetermined time
instant such that the consecutive sample rate changes once from the first sample rate to the
second sample rate as illustrated at 1 1 in Fig. 6. To make this clearer, Fig. 6 illustratively
shows a sequence of samples 112 where the sample rate switches at some time instant 113,
wherein the constant time-length regions 114a to 114d exemplarily are grabbed with a
constant region offset 115 At defining - along with the constant region time-length - an
predetermined overlap between consecutive regions 114a to 114d such as an overlap of
50% per consecutive pairs of regions, although this is merely to be understood as an
example. The first sample rate before time instant 113 is illustrated with dί and the sample
rate after time instant 13 is indicated by dί 2. As illustrated at 111, resampler 107 may, for
example, be configured to resample region 114b so as to have the constant sample rate 5ti,
wherein however region 14c succeeding in time is resampled to have the constant sample
rate t . In principle, it may suffice if the resampler 107 resamples, by interpolation, the
subpart of the respective regions 114b and 114c temporally encompassing time instant 113,
which does not yet have the target sample rate. In case of region 114b, for example, it may
suffice if resampler 107 resamples the subpart thereof succeeding in time, time instant 113,
whereas in case of region 114c, the subpart preceding time instant 113 may be resampled
only. In that case, due to the constant time length of grabbed regions 114a to 114d, each
resampled region has a number of time samples N 2 corresponding to the respective
constant sample rate t . Windower 108 may adapt its window or window length to this
number of samples for each inbound portion, and the same applies to transformer 109
which may adapt its transform length of its transformation accordingly. That is, in case of
the example illustrated at 11 in Fig. 6, the lapped transform representation at output 10
has a sequence of transforms, the transform length of which varies, i.e. increases and
decreases, in line with, i.e. linear dependent on, the number of samples of the consecutive
regions and, in turn, on the constant sample rate at which the respective region has been
resampled.
It should be noted that the resampler 107 may be configured such that same registers the
sample rate change between the consecutive regions 114a to 114d such that the number of
samples which have to be resampled within the respective regions is minimum. However,
the resampler 107 may, alternatively, be configured differently. For example, the resampler
107 may be configured to prefer upsampling over downsampling or vice versa, i.e. to
perform the resampling such that all regions overlapping with time instant 113 are either
resampled onto the first sample rate dΐ i or onto the second sample rate t2.
The information signal transformer of Fig. 6 may be used, for example, in order to
implement the transformer 30 of Fig. 2a. In that case, for example, the transformer 109
may be configured to perform an MDCT.
In this regard, it should be noted that the transform length of the transformation applied by
the transformer 109 may even be greater than the size of regions 14c measured in the
number of resampled samples. In that case, the areas of the transform length which extend
beyond the windowed regions output by windower 108 may be set to zero before applying
the transformation onto them by transformer 109.
Before proceeding to describe possible implementations for realizing the interpolation 104
in Fig. 5 and the interpolation within resampler 107 in Fig. 6 in more detail, reference is
made to Figs. 7a and 7b which show possible implementations for the encoders and
decoders of Figs, l a and lb. In particular, the resamplers 14 and 24 are embodied as shown
in Figs. 3a and 3b, whereas the core encoder and core decoder 16 and 22, respectively, are
embodied as a codec being able to switch between MDCT-based transform coding on the
one hand and CELP coding, such as ACELP coding, on the other hand. The MDCT based
coding/decoding branches 122 and 124, respectively, could be for example a TCX encoder
and TCX decoder, respectively. Alternatively, an AAC coder/decoder pair could be used.
For the CELP coding an ACELP encoder 126 could form the other coding branch of the
core encoder 16, with an ACELP decoder 128 forming the other decoding branch of core
decoder 22. The switching between both coding branches could be performed on a frame
by frame basis as it is the case in USAC [2] or AMR-WB+ [1] to the standard text of
which reference is made- for more details regarding these coding modules.
Taking the encoder and the decoder of Figs. 7a and 7b as a further specific example, a
scheme of allowing a switching of the internal sampling rate for entering the coding
branches 122 and 126 and for reconstruction by decoding branches 124 and 128 is
described in more detail below. In particular, the input signal entering at input 12 may have
a constant sample rate such as, for example, 32 kHz. The signal may be resampled using
the QMF analysis and synthesis filterbank pair 38 and 42 in the manner described above,
i.e. with a suitable analysis and synthesis ratio regarding the number of bands such as 1.25
or 2.5, leading to an internal time signal entering the core encoder 16 which has a
dedicated sample rate of, for example, 25.6 kHz or 12.8 kHz. The downsampled signal is
thus coded using either one of the coding branches of coding modes such as using an
MDCT representation and a classic transform coding scheme in case of coding branch 122,
or in time-domain using ACELP, for example, in the coding branch 126. The data stream
thus formed by the coding branches 126 and 122 of the core encoder 16 is output and
transported to the decoding side where same is subject to reconstruction.
For switching the internal sample rate, the filterbanks 38 to 44 need to be adapted on a
frame by frame basis according to the internal sample rate at which core encoder 16 and
core decoder 22 shall operate. Fig. 8 shows some possible switching scenarios wherein Fig.
8 merely shows the MDCT coding path of encoder and decoder.
In particular, Fig. 8 shows that the input sample rate which is assumed to be 32 kHz may
be downsampled to any of 25.6 kHz, 12.8 kHz or 8 kHz with a further possibility of
maintaining the input sample rate. Depending on the chosen sample rate ratio between
input sample rate and internal sample rate, there is a transform length ratio between
filterbank analysis on the one hand and filterbank synthesis on the other hand. The ratios
are derivable from Figs. 8 within the grey shaded boxes: 40 subbands in filterbanks 38 and
44, respectively, independent from the chosen internal sample rate, and 40, 32, 16 or 10
subbands in filterbanks 42 and 40, respectively, depending on the chosen internal sample
rate. The transform length of the MDCT used within the core encoder is adapted to the
resulting internal sample rate such that the resulting transform rate or transform pitch
interval measured in time is constant or independent from the chosen internal sample rate.
It may, for example, be constantly 20 ms resulting in a transform length of 640, 512, 256
and 160, respectively, depending on the chosen internal sample rate.
Using the principals outlined above, it is possible to switch the internal sample rate with
obeying the following constraints regarding the filterbank switch:
No additional delay is caused during a switch;
The switch or sample rate change may happen instantaneously;
The switching artifacts are minimized or at least reduced; and
The computational complexity is low.
Basically, filterbanks 38-44 and the MDCT within the core coder, are lapped transforms
wherein the filterbanks may use a higher overlap of the windowed regions when compared
to the MDCT of the core encoder and decoder. For example, a 10-times overlap may apply
for the filterbanks, whereas a 2-times overlap may apply for the MDCT 122 and 124. For
lapped transforms, the state buffers may be described as an analysis-window buffer for
analysis filterbanks and MDCTs, and overlap-add buffers for synthesis filterbanks and
IMDCTs.In case of rate switching, those state buffers should be adjusted according to the
sample rate switch in the manner having been described above with respect to Fig. 5 and
Fig. 6. In the following, a more detailed discussion is provided regarding the interpolation
which may also be performed at the analysis side discussed in Fig. 6, rather than the
synthesis case discussed with respect to Fig. 5. The prototype or window of the lapped
transform may be adapted. In order to reduce the switching artifacts, the signal components
in the state buffers should be preserved in order to maintain the aliasing cancellation
property of the lapped transform.
In the following, a more detailed description is provided as to how to perform the
interpolation 104 within resampler 72.
Two cases may be distinguished:
1) Switching up is a process according to which the sample rate increases from
preceding time portion 84 to a subsequent or succeeding time portion 86.
2) Switching down is a process according to which the sample rate decreased from
preceding time region 84 to succeeding time region 86.
Assuming a switching-up, i.e. such as from 12.8 kHz (256 samples per 20 ms) to 32 kHz
(640 sample per 20 ms), the state buffers such as the state buffer of resampler 72
illustratively shown with reference sign 130 in Fig. 5, or its content needs to be expanded
by a factor corresponding to the sample rate change, such as 2.5 in the given example.
Possible solutions for an expansion without causing additional delay are, for example, a
linear interpolation or spline interpolation. That is, resampler 72 may, on the fly,
interpolate the samples of the tail of retransform 96 concerning the preceding time region
84, as lying within time interval 102, within state buffer 130. The state buffer may, as
illustrated in Fig. 5, act as a first-in-first-out buffer. Naturally, not all frequency
components which are necessary for a complete aliasing cancellation can be obtained by
this procedure, but at least a lower frequency such as, for example, from 0 to 6.4 kHz can
be generated without any distortions and from a psychoacoustical point of view, those
frequencies are the most relevant ones.
For the cases of switching down to lower sample rates, linear or spline interpolation can
also be used to decimate the state buffer accordingly without causing additional delay. That
is, resampler 72 may decimate the sample rate by interpolation. However, a switch down to
sample rates where the decimation factor is large, such as switching from 32 kHz (640
samples per 20 ms) to 12.8 kHz (256 samples per 20 ms) where the decimation factor is
2.5, can cause severely disturbing aliasing if the high frequency components are not
removed. To come around this phenomenon, the synthesis filtering may be engaged, where
higher frequency components can be removed by "flushing" the filterbank or
retransformer. This means that the filterbank synthesizes less frequency components at the
switching instant and therefore clears up the overlap-add buffer from high spectral
components. To be more precise, imagine a switching-down from a first sample rate for
preceding time region 84 to a lower sample rate for succeeding time region 86. Deviating
from the above description, retransformer 70 may be configured to prepare the switchingdown
by not letting all frequency components of the transform 94 of the windowed version
of the preceding time region 84 participate in the retransformation. Rather, retransformer
70 may exclude non-relevant high frequency components of the transform 94 from the
retransformation by setting them to 0, for example or otherwise reducing their influence
onto the retransform such as by gradually attenuating these higher frequency components
increasingly. For example, the affected high frequency components may be those above
frequency component N ' . Accordingly, in the resulting information signal, a time region
84 has intentionally been reconstructed at a spectral bandwidth which is lower than the
bandwidth which would have been available in the lapped transform representation input at
input 76. On the other hand, however, aliasing problems otherwise occurring at the
overlap-add process by unintentionally introducing higher frequency portions into the
aliasing cancellation process within combiner 74 despite the interpolation 104 are avoided.
As an alternative, an additional low sample representation can be generated simultaneously
to be used in an appropriate state buffer for a switch from a higher sample rate
representation. This would ensure that the decimation factor (in case decimation would be
needed) is always kept relatively low (i.e. smaller than 2) and therefore no disturbing
artifacts, caused from aliasing, will occur. As mentioned before, this would not preserve all
frequency components but at least the lower frequencies that are of interest regarding
psychoacoustic relevance.
Thus, in accordance with a specific embodiment, it could be possible to modify the USAC
codec in the following way in order to obtain a low delay version of USAC. Firstly, only
TCX and ACELP coding modes could be allowed. AAC modes could be avoided. The
frame length could be selected to obtain a framing of 20 ms. Then, the following system
parameters could be selected depending on the operation mode (super-wideband (SWB),
wideband (WB), narrowband (NB), full bandwidth (FB)) and on the bitrate. An overview
of the system parameters is given in the following table.
As far as the narrow band mode is concerned, the sample rate increase could be avoided
and replaced by setting the internal sampling rate to be equal to the input sampling rate, i.e.
8 kHz with selecting the frame length accordingly, i.e. to be 160 samples long. Likewise,
16 kHz could be chosen for the wideband operating mode with selecting the frame length
of the MDCT for TCX to be 320 samples long instead of 256.
In particular, it would be possible to support switching operation through an entire list of
operation points, i.e. supported sampling rates, bit rates and bandwidths. The following
table outlines the various configurations regarding the internal sampling rate of a justanticipated
low-delay version of an USAC codec.
Table showing matrix of internal sampling rate modes of a low-delay USAC codec
As a side information, it should be noted that the resampler according to Fig. 2a and 2b
needs not to be used. An IIR filter set could alternately be provided to assume
responsibility for the resampling functionality from the input sampling rate to the dedicated
core sampling frequency. The delay of those IIR filters is below 0.5 s but due to the odd
ratio between input and output frequency, the complexity is quite considerable. Assuming
an identical delay for all IIR filters, switching between different sampling rates can be
enabled.
Accordingly, the use of resampler embodiment of Fig. 2a and 2b may be preferred. The
QMF filter bank of the parametric envelope module (i.e. SBR) may participate in cooperating
to instantiate the resampling functionality as described above. In case of SWB,
this would add a synthesis filter bank stage to the encoder while the analysis stage is
already in use due to the SBR encoder module. At the decoder side, the QMF is already
responsible for providing the upsampling functionality when SBR is enabled. This scheme
can be used in all other bandwidth modes. The following table provides an overview of the
necessary QMF configurations.
Table List of QMF configurations at encoder side (number of analysis bands /
number of synthesis bands). Another possible configuration can be obtained by
dividing all numbers by a factor of 2.
Assuming a constant input sampling frequency, the switching between internal sampling
rates is enabled by switching the QMF synthesis prototype. At the decode side the inverse
operation can be applied. Note that the bandwidth of one QMF band is identical over the
entire range of operation points.
Although some aspects have been described in the context of an apparatus, it is clear that
these aspects also represent a description of the corresponding method, where a block or
device corresponds to a method step or a feature of a method step. Analogously, aspects
described in the context of a method step also represent a description of a corresponding
block or item or feature of a corresponding apparatus. Some or all of the method steps may
be executed by (or using) a hardware apparatus, like for example, a microprocessor, a
programmable computer or an electronic circuit. In some embodiments, some one or more
of the most important method steps may be executed by such an apparatus.
Depending on certain implementation requirements, embodiments of the invention can be
implemented in hardware or in software. The implementation can be performed using a
digital storage medium, for example a floppy disk, a DVD, a Blu-Ray, a CD, a ROM, a
PROM, an EPROM, an EEPROM or a FLASH memory, having electronically readable
control signals stored thereon, which cooperate (or are capable of cooperating) with a
programmable computer system such that the respective method is performed. Therefore,
the digital storage medium may be computer readable.
Some embodiments according to the invention comprise a data carrier having
electronically readable control signals, which are capable of cooperating with a
programmable computer system, such that one of the methods described herein is
performed.
Generally, embodiments of the present invention can be implemented as a computer
program product with a program code, the program code being operative for performing
one of the methods when the computer program product runs on a computer. The program
code may for example be stored on a machine readable carrier.
Other embodiments comprise the computer program for performing one of the methods
described herein, stored on a machine readable carrier.
In other words, an embodiment of the inventive method is, therefore, a computer program
having a program code for performing one of the methods described herein, when the
computer program runs on a computer.
A further embodiment of the inventive methods is, therefore, a data carrier (or a digital
storage medium, or a computer-readable medium) comprising, recorded thereon, the
computer program for performing one of the methods described herein. The data carrier,
the digital storage medium or the recorded medium are typically tangible and/or nontransitionary.
A further embodiment of the inventive method is, therefore, a data stream or a sequence of
signals representing the computer program for performing one of the methods described
herein. The data stream or the sequence of signals may for example be configured to be
transferred via a data communication connection, for example via the Internet.
A further embodiment comprises a processing means, for example a computer, or a
programmable logic device, configured to or adapted to perform one of the methods
described herein.
A further embodiment comprises a computer having installed thereon the computer
program for performing one of the methods described herein.
A further embodiment according to the invention comprises an apparatus or a system
configured to transfer (for example, electronically or optically) a computer program for
performing one of the methods described herein to a receiver. The receiver may, for
example, be a computer, a mobile device, a memory device or the like. The apparatus or
system may, for example, comprise a file server for transferring the computer program to
the receiver .
In some embodiments, a programmable logic device (for example a field programmable
gate array) may be used to perform some or all of the functionalities of the methods
described herein. In some embodiments, a field programmable gate array may cooperate
with a microprocessor in order to perform one of the methods described herein. Generally,
the methods are preferably performed by any hardware apparatus.
The above described embodiments are merely illustrative for the principles of the present
invention. It is understood that modifications and variations of the arrangements and the
details described herein will be apparent to others skilled in the art. It is the intent,
therefore, to be limited only by the scope of the impending patent claims and not by the
specific details presented by way of description and explanation of the embodiments
herein.
Literature:
[1]: 3GPP, "Audio codec processing functions; Extended Adaptive Multi-Rate - Wideband
(AMR-WB+) codec; Transcoding functions", 2009, 3GPP TS 26.290.
[2]: USAC codec (Unified Speech and Audio Codec), ISO/IEC CD 23003-3 dated
September 24, 2010
Claims
Information signal reconstructor configured to reconstruct, using aliasing
cancellation, an information signal from a lapped transform representation of the
information signal comprising, for each of consecutive, overlapping regions of the
information signal, a transform of a windowed version of the respective region,
wherein the information signal reconstructor is configured to reconstruct the
information signal at a sample rate which changes at a border (82) between a
preceding region. (84) and a succeeding region (86) of the information signal, the
information signal reconstructor comprises
a retransformer (70) configured to apply a retransformation on the transform (94) of
the windowed version of the preceding region (84) so as to obtain a retransform
(96) for the preceding region (84), and apply a retransformation on the transform of
the windowed version of the succeeding region (86) so as to obtain a retransform
(100) for the succeeding region (86), wherein the retransform (96) for the preceding
region (84) and the retransform (106) for the succeeding region (86) overlap at an
aliasing cancellation portion (102) at the border (82) between the preceding and
succeeding regions;
a resampler (72) configured to resample, by interpolation, the retransform (96) for
preceding region (84) and/or the retransform (100) for the succeeding region (86) at
the aliasing cancellation portion (102) according to a sample rate change at the
border (82); and
a combiner (74) configured to perform aliasing cancellation between the
retransforms (96, 100) for the preceding and succeeding regions (84, 86) as
obtained by the resampling at the aliasing cancellation portion (102).
Information signal reconstructor according to claim 1, wherein the resampler is
configured to resample the retransform (96) for the preceding region at the aliasing
cancellation portion according to the sample rate change at the border.
Information signal reconstructor according to claim 1 or 2, wherein a ratio of a
transform length of the retransformation applied to the transform (94) of the
windowed version of the preceding region (84) to a temporal length of the
preceding region (84) differs from a ratio of a transform length of the
retransformation applied to the windowed version of the succeeding region (86) to a
temporal length of the succeeding region (86) by a factor corresponding to the
sample rate change.
4. Information signal reconstructor according to claim 3, wherein the temporal lengths
of the preceding and succeeding regions (84, 86) are equal to each other, and the
retransformer (70) is configured to restrict the application of the retransformation
on the transform of the windowed version of the preceding region (84) to a lowfrequency
portion of the transform of the windowed version of the preceding region
and/or restrict the application of the retransformation on the transform of the
windowed version of the succeeding region on a low-frequency portion of the
transform of the windowed version of the succeeding region.
5. Information signal reconstructor according to any of claims 1 to 4, wherein a
transform length of the transform of the windowed version of the regions of the
information signal and a temporal length of the regions of the information signal
are constant, and the information signal reconstructor is configured to locate the
border (82) responsive to a control signal (98).
6. Resampler composed of a concatenation of a filterbank (38) for providing a lapped
transform representation of an information signal, and an inverse filterbank (42)
comprising an information signal reconstructor (80) configured to reconstruct,
using aliasing cancellation, the information signal from the lapped transform
representation of the information signal according to claim 5.
7. Information signal encoder comprising a resampler according to claim 6 and a
compression stage (16) configured to compress the reconstructed information
signal, the information signal encoder further comprising a sample rate control
configured to control the control signal (98) depending on an external information
on available transmission bitrate.
8. Information signal reconstructor according to any of claims 1 to 4, wherein the
transform length of the transform of the windowed version of the regions of the
information signal varies, while a temporal length of the regions of the information
signal is constant, wherein the information signal reconstructor is configured to
locate the border (82) by detecting a change in the transform length of the
windowed version of the regions of the information signal.
9. Information signal reconstructor according to claim 8, wherein the retransformer is
configured to adapt a transform length of the retransformation applied on the
transform of the windowed version of the preceding and succeeding regions to the
transform length of the transform of the windowed version of the preceding and
succeeding regions.
10. Information signal reconstructor comprising a decompressor (34) configured to
reconstruct a lapped transform representation of an information signal from a data
stream, and an information signal reconstructor according to claim 9 configured to
reconstruct, using aliasing cancellation, the information signal from the lapped
transform representation.
11. Information signal reconstructor according to any of claims 1 to 5, 8, and 9,
wherein the lapped transform is critically sampled such as an MDCT.
12. Information signal reconstructor according to any of claims 1 to 5, 8, and 9,
wherein the lapped transform representation is a complex valued filterbank.
13. Information signal reconstructor according to any of claims 1 to 5, 8, 9, 1 and 12,
wherein resampler is configured to use a linear or spline interpolation for the
interpolation.
14. Information signal reconstructor according to any of claims 1 to 5, 8, 9, 11 and 12,
wherein the sample rate decreases at the border (82) and the retransformer (70) is
configured to, in applying the retransformation on the transform (94) of the
windowed version of the preceding region (84), attenuate, or set to zero, higher
frequencies of the transform (94) of the windowed version of the preceding region
(84).
15. Information signal transformer configured to generate a lapped transform
representation of an information signal using an aliasing-causing lapped transform,
comprising
an input (105) for receiving the information signal in the form of a sequence of
samples;
a grabber (106) configured to grab consecutive, overlapping regions of the
information signal;
a resampler (107) configured to apply, by interpolation, a resampling onto at least a
subset of the consecutive, overlapping regions of the information signals so that
each of the consecutive, overlapping portions has a respective constant sample rate,
but the respective constant sample rate varies among the consecutive, overlapping
regions;
a windower (108) configured to apply a windowing on the consecutive, overlapping
regions of the information signal; and
a transformer (109) configured to individually apply a transform on the windowed
regions.
Information signal transformer according to claim 15, wherein the grabber (106) is
configured to perform the grabbing of the consecutive, overlapping regions of the
information signal such that the consecutive, overlapping regions of the information
signal are of constant time length.
Information signal transformer according to claim 15 or 16, wherein the grabber
(106) is configured to perform the grabbing of the consecutive, overlapping regions
of the information signal such that the consecutive, overlapping regions of the
information signal have a constant time offset.
Information signal transformer according to claim 6 or 17, wherein the sequence
of samples has a varying sample rate switching from a first sample rate to a second
sample rate at a predetermined time instant ( 13), wherein the resampler (107) is
configured to apply the resampling onto the consecutive, overlapping regions
( 1 14b,c) overlapping with the predetermined time instant so that the constant
sample rate thereof switches merely once from the first sample rate to the second
sample rate.
Information signal transformer according to claim 18, wherein the transformer is
configured to adapt a transform length of the transform of each windowed region to
a number of samples of the respective windowed region.
Method for reconstructing, using aliasing cancellation, an information signal from a
lapped transform representation of the information signal comprising, for each of
consecutive, overlapping regions of the information signal, a transform of a
windowed version of the respective region, wherein the information signal
reconstructor is configured to reconstruct the information signal at a sample rate
which changes at a border (82) between a preceding region (84) and a succeeding
region (86) of the information signal, the method comprising
applying a retransformation on the transform (94) of the windowed version of the
preceding region (84) so as to obtain a retransform (96) for the preceding region
(84), and apply a retransformation on the transform of the windowed version of the
succeeding region (86) so as to obtain a retransform (100) for the succeeding region
(86), wherein the retransform (96) for the preceding region (84) and the retransform
(106) for the succeeding region (86) overlap at an aliasing cancellation portion
(102) at the border (82) between the preceding and succeeding regions;
resampling, by interpolation, the retransform (96) for preceding region (84) and/or
the retransform (100) for the succeeding region (86) at the aliasing cancellation
portion (102) according to a sample rate change at the border (82); and
performing aliasing cancellation between the retransforms (96, 100) for the
preceding and succeeding regions (84, 86) as obtained by the resampling at the
aliasing cancellation portion (102).
Method for generating a lapped transform representation of an information signal
using an aliasing-causing lapped transform, comprising
receiving the information signal in the form of a sequence of samples;
grabbing consecutive, overlapping regions of the information signal;
applying, by interpolation, a resampling onto at least a subset of the consecutive,
overlapping regions of the information signals so that each of the consecutive,
overlapping portions has a respective constant sample rate, but the respective
constant sample rate varies among the consecutive, overlapping regions;
applying a windowing on the consecutive, overlapping regions of the information
signal; and
individually applying a transformation on the windowed regions.
22. Computer program having a program code for performing, when running on a
computer, a method according to claim 20 ro 2 1.