Sign In to Follow Application
View All Documents & Correspondence

Coder Using Forward Aliasing Cancellation

Abstract: A codec supporting switching between time-domain aliasing cancellation transform coding mode and time-domain coding mode is made less liable to frame loss by adding a further syntax portion to the frames, depending on which the parser of the decoder may select between a first action of expecting the current frame to comprise, and thus reading forward aliasing cancellation data from the current frame and a second action of not-expecting the current frame to comprise, and thus not reading forward aliasing cancellation data from the current frame. In other words, while a bit of coding efficiency is lost due to the provision of the new syntax portion, it is merely the new syntax portion which provides for the ability to use the codec in case of a communication channel with frame loss. Without the new syntax portion, the decoder would not be capable of decoding any data stream portion after a loss and will crash in trying to resume parsing. Thus, in an error prone environment, the coding efficiency is prevented from vanishing by the introduction of the new syntax portion.

Get Free WhatsApp Updates!
Notices, Deadlines & Correspondence

Patent Information

Application #
Filing Date
13 June 2025
Publication Number
36/2025
Publication Type
INA
Invention Field
ELECTRONICS
Status
Email
Parent Application

Applicants

FRAUNHOFER-GESELLSCHAFT ZUR FÖRDERUNG DER ANGEWANDTEN FORSCHUNG E.V.
Hansastraße 27c 80686 München, Germany

Inventors

1. LECOMTE, Jérèmie
Turnstrasse 7 90763 Fuerth Germany
2. WARMBOLD, Patrick
Mausdorf 50 91448 Emskirchen Germany
3. BAYER, Stefan
Dortmunder Strasse 14 90425 Nuernberg Germany

Specification

Description
5
The present invention is concerned with a codec supporting a time-domain aliasing cancellation transform coding mode and a time-domain coding mode as well as forward aliasing
cancellation for switching between both modes.
10 It is favorable to mix different coding modes in order to code general audio signals
representing a mix of audio signals of different types such as speech, music or the like. The
individual coding modes may be adapted for particular audio types, and thus, a multi-mode
audio encoder may take advantage of changing the encoding mode over time corresponding to the change of the audio content type. In other words, the multi-mode audio encoder
15 may decide, for example, to encode portions of the audio signal having speech content,
using a coding mode especially dedicated for coding speech, and to use another coding
mode in order encode different portions of the audio content representing non-speech content such as music. Time-domain coding modes such as codebook excitation linear prediction coding modes, tend to be more suitable for coding speech contents, whereas transform
20 coding modes tend to outperform time-domain coding modes as far as the coding of music
is concerned, for example.
There have already been solutions for addressing the problem of coping with the coexistence of different audio types within one audio signal. The currently emerging USAC, for
25 example, suggests switching between a frequency domain coding mode largely complying
with the AAC standard, and two further linear prediction modes similar to sub-frame modes of the AMR-WB plus standard, namely a MDCT. (Modified Discrete Cosine Transformation) based variant of the TCX (TCX = transform coded .excitation) mode and an
ACELP (adaptive codebook excitation linear prediction) mode. To be more precise, in the
30 AMR-W13+ standard, TCX is based on a DFT transform, but in USAC TCX has a MDCT
transform base. A certain framing structure is used in order to switch between FD coding
domain similar to AAC and the linear prediction domain similar to AMR-WB+. The
AMR-WB+ standard itself uses an own framing structure forming a sub-framing structure
relative to the USAC standard. The AMR-WB+ standard allows for a certain sub-division
35 configuration sub-dividing the AMR-WB+ frames into smaller TCX and/or ACELP
frames. Similarly, the AAC standard uses a basis framing structure, but allows for the use
of different window lengths in order to transfottm code the frame content. For example,
2
either a long window and an associated long transform length may be used, or eight short
windows with associated transformations of shorter length.
MDCT causes aliasing. This is, thus, true, at TXC and FD frame boundaries. In other
5 words, just as any frequency domain coder using MDCT, aliasing occurs at the window
overlap regions, that is cancelled by the help of the neighbouring frames. That is, for any
transitions between two FD frames or between two TCX (MDCT) frames or transition between either FD to TCX or TCX to FD, there is an implicit aliasing cancelation by the
overlap/add procedure within the reconstruction at the decoding side. Then, there is no
10 more aliasing after the overlap add. However, in case of transitions with ACELP, there is
no inherent aliasing cancelation. Then, a new tool has to be introduced which may be
called FAC (forward aliasing cancellation). FAC is to cancel the aliasing coming from the
neighbouring frames if they are different from ACELP.
15 In other words, aliasing cancellation problems occur whenever transitions between transform coding mode and time domain coding mode, such as ACELP, occur. In order to perform the transformation from the time domain to the spectral domain as effective as possible, time-domain aliasing cancellation transform coding is used, such as MDCT, i.e. a coding mode using a overlapped transform where overlapping windowed portions of a signal
20 are transformed using a transform according to which the number of transform coefficients
per portion is less than the number of samples per portion so that aliasing occurs as far as
the individual portions are concerned, with this aliasing being cancelled by time-domain
aliasing cancellation, i. e. by adding the overlapping aliasing portions of neighboring retransformed signal portions. MDCT is such a time-domain aliasing cancellation transform.
25 Disadvantageously, the TDAC (time-domain aliasing cancellation) is not available at transitions between the IC coding mode and the time-domain coding mode.
In order to solve this problem, forward aliasing cancellation (FAC) may be used according
to which the encoder signals within the data stream additional FAC data within a current
30 frame whenever a change in the coding mode from transform coding to time-domain cod=
ing occurs. This, however, necessitates the decoder to compare the coding modes of consecutive frames in order to ascertain as to whether the currently decoded frame comprises
FAC data within its syntax or not. This, in turn, means that there may be frames for which
the decoder may not be sure as to whether same has to read or parse FAC data from the
35 current frame or not. In other words, in case that one or more frames were lost during
transmission, the decoder does not know for the immediately succeeding (received) frames
as to whether a coding mode change occurred or not, and as to whether the bit stream of
the current frame encoded data contains FAC data or not. Accordingly, the decoder has to
3
discard the current frame and wait for the next frame. Alternatively, the decoder may parse
the current frame by performing two decoding trials, one assuming that FAC data is
present, and another assuming that FAC data is not present, with subsequently deciding as
to whether one of both alternatives fails. The decoding process would most likely make the
5 decoder crashing in one of the two conditions. That is, in reality, the latter possibility is not
a feasible approach. The decoder should at any time know how to interpret the data and not
rely on its own speculation on how to treat the data.
Accordingly, it is an object of the present invention to provide a codec which is more error
10 robust or frame loss robust with, however, supporting switching between time-domain
aliasing cancellation transform coding mode and time-domain coding mode.
This object is achieved by the subject matter of any of the independent claims attached
herewith.
15
The present invention is based on the finding that a more error robust or frame loss robust
codec supporting switching between time-domain aliasing cancellation transform coding
mode and time-domain coding mode is achievable if a further syntax portion is added to
the frames depending on which the parser of the decoder may select between a first action
20 of expecting the current frame to comprise, and thus reading forward aliasing cancellation
data from the current frame and a second action of not-expecting the current frame to coin,
prise, and thus not reading forward aliasing cancellation data from the current frame. In
other words, while a bit of coding efficiency is lost due to the provision of the second syntax portion, it is merely the second syntax portion which provides for the ability to use the
25 codec in case of a communication channel with frame loss. Without the second syntax portion, the decoder would not be capable of decoding any data stream portion after a loss and
will crash in trying to resume parsing. Thus, in an error prone environment, the coding
efficiency is prevented from vanishing by the introduction of the second syntax portion..
30 Further preferred embodiments of the present invention are subject of the dependent
claims. Further, preferred embodiments of the present invention are described in more detail below with regard to the figures. In particular
Figure 1 shows a schematic block diagram of a decoder according to an embo35 diment; '
Figure 2 shows a schematic block diagram of an encoder according to an emboTliment;
4
Figure 3 shows a block diagram of a possible implementation of the reconstructor of Figure 2;
5 Figure 4 shows a block diagram of a possible implementation of the FD decoding module of Figure 3;
Figure 5 shows a block diagram of possible implementation of the LPD decoding modules of Figure 3;
I0
Figure 6 shows schematic diagram illustrating the encoding procedure in order to
generate FAC data in accordance with an embodiment;
Figure 7 shows a schematic diagram of the possible TDAC transform re15 transform in accordance with an embodiment ,
Figure 8,9 show block diagrams for illustrating a path lineation of the FAC data at
the encoder of a further processing in the encoder in order to test the
coding mode change an optimization sense;
20
Figure 10, 11 show block diagrams of the decoder handling in order to arrive the FAC
data figures 8 and 9 from the data stream;
Figure 12 shows a schematic diagram of the FAC based reconstruction the decod25 ing side cross from boundaries frames of different coding mode;
Figures 13, 14 show schematically the processing performed at the transition handler of
figure 3 in order to perform the reconstruction of figure 12;
30 Figure 15 to 19 show portions of a syntax structure in accordance with an embodiment;
and
Figure 20 to 22 show portions of a syntax structure in accordance with another embodiment.
35
Figure 1 shows a decoder 10 according to an embodiment of the present invention. Decoder 10 is for decoding a data stream comprising a sequence of frames 14; 14b and 14c into
which time segments 16a-c of an information signal 18 are coded, respectively. As is illu5
strated idfigure 1, the time segments 16a to 16c are non-overlapping segments which directly abut each other in time and are sequentially ordered in time. As illustrated in figure
1, the time segments 16a to 16c may be of equal size but alternative embodiments are also
feasible. Each of the time segments 16a to 16c is coded into a respective one of frames I4a
5 to 14c. In other words, each time segment 16a to 16c is uniquely associated with one of
frames 14a to 14c which, in turn, have also an order defined among them, which follows
the order of the segments 16a to 16c which are coded into the frames 14a to 14c, respectively. Although figure 1 suggests that each frame 14a to 14c is of equal length measured
in, for example, coded bits, this is, of course, not mandatory. Rather, the length of frames
10 14a to 14c may vary according to the complexity of the time segment 16a to 16c the respective frame 14a to 14c is associated with.
For ease of explanation of the below-outlined embodiments, it is assumed that the information signal 18 is an audio signal. However, it should be noted that the information signal
15 could also be any other signal, such as a signal output by a physical sensor or the like, such
as an optical sensor or the like. In particular, signal 18 may be sampled at a certain sampling rate and the time segments 16a to 16c may cover immediately consecutive portions
of this signal 18 equal in time and number of samples, respectively. A number of samples
per time segment 16a to 16c may, for example, be 1024 samples.
20
The decoder 10 comprises a parser 20 and a reconstructor 22. The parser 20 is configured
to parse the data stream 12 and, in parsing the data stream 12, read a first syntax portion 24
and a second syntax portion 26 from a current frame 14b, i.e. a frame currently to be decoded. In figure 1, it is exemplarily assumed that frame 14b is the frame currently to be
25 decoded whereas frame 14a is the frame which has been decoded immediately before.
Each frame 14a to 14c has a first syntax portion and a second syntax portion incorporated
therein with a significance or meaning thereof being outlined below. In figure I, the first
syntax portion within frames 14a to 14c is indicated with a box having a "1" in it and the
second syntax portion indicated with a box entitled "2".
30
Naturally, each frame 14a to 14c also has further information incorporated therein which is
for representing the associated time segment 16a to 16c in a way outlined in more detail
below. This information is indicated in figure 1 by a hatched block wherein a reference
sign 28 is used for the further information of the current 'frame 14b. The parser 20 is confi35 gured to, in parsing the data stream 12, also read the information 28 from the current frame
1411
6
The reconstructor 22 is configured to reconstruct the current time segment 166 of the information signal 18 associated with the current frame 146 based of the further information
28 using a selected one of the time-domain aliasing cancellation transform decoding mode
and a time-domain decoding mode. The selection depends on the first syntax element 24.
5 Both decoding modes differ from each other by the presence or absence of any transition
from spectral domain back to time-domain using a re-transform. The re-transform (along
with its corresponding transform) introduces aliasing as far as the individual time segments
are concerned which aliasing is, however, compensable by a time-domain aliasing cancellation as far as the transitions at boundaries between consecutive frames coded in the time10 domain aliasing cancellation transform coding mode is concerned. The time-domain decoding mode does not necessitate any re-transform. Rather, the decoding remains in timedomain. Thus, generally speaking, the time-domain abasing cancellation transform decoding mode of reconstructor 22 involves a re-transform being performed by reconstructor 22.
This retransform maps a first number of transform coefficients as obtained from informa15 tion 28 of the current frame 146 (being of the TDAC transform decoding mode) onto a retransformed signal segment having a sample length of a second number of samples which
is greater than the first number thereby causing abasing. The time-domain decoding mode,
in turn, may involve a linear prediction decoding mode according to which the excitation
and linear prediction coefficients are reconstructed from the information 28 of the current
20 frame which, in that case, is of the time-domain coding mode.
Thus, as became clear from the above discussion, in the time-domain aliasing cancellation
transform decoding mode, reconstructor 22 obtains from information 28 a signal segment
for reconstructing the information signal at the respective time segment 166 by a re25 transform. The re-transformed signal segment is longer than the current time segment 16b
actually is and participates in the reconstructiOn of the information signal 18 within a time
portion which includes and extends beyond time segment 166. Figure 1 illustrates a transform window 32 used in transforming the original signal or in both, transforming and retransforming. As can be seen, window 32 may comprise the.zero portion 321at the begin30 ning thereof and a zero-portion 322at a trailing end thereof, and aliasing portions 323and
324at a leading and trailing edge of the current time segment 16b wherein a non-aliasing
portion 325where window 32 is one, may be positioned between both aliasing portions 323
and 324. The zero-portions 32, and 322are optional. It is also possible that merely one of
the zero-portions 321and 322is present. As is shown in Fig. 1, the window function may
35 be monotonically increasing/decreasing within the aliasing portions. Aliasing occurs within
the aliasing portions 323and 324where window 32 continuously leads from zero to one or
these versa. The abasing is not critical as long as the previous and succeeding time segments are coded in the time-domain abasing cancellation transform coding mode, too, This
7
possibility is illustrated in figure 1 with respect to the time segment 16c. A dotted line illustrates a respective transform window 32 for time segment 16c the aliasing portion of
which coincides with the aliasing portion 324 of the current time segment 16b. Adding the
re-transformed segment signals of time segments 16b and 16c by reconstructor 22 cancels5 out the aliasing of both re-transformed signal segments against each other.
However, in cases where the previous or succeeding frame 14a or 14c is coded in the timedomain coding mode, a transition between different coding modes results at the leading or
trailing edge of the current time segment 1613 and, in order to account for respective alias10 ing, the data stream 12 comprises forward aliasing cancellation data within the respective
frame immediately following the transition for enabling the decoder 10 to compensate for
the aliasing occurring at this respective transition. For example, it may happen that the current frame 14b is of the time-domain aliasing cancellation transform coding mode, but decoder 10 does not know as to whether the previous frame 14a was of the time-domain cod15 ing mode. For example, frame 14a may have got lost during transmission and decoder 10
has no access thereto, accordingly. However, depending on the coding mode of frame 14a,
the current frame 14b comprises forward aliasing cancellation data in order to compensate
for the aliasing occurring at aliasing portion 323or not. Similarly, if the current frame 14b
was of the time-domain coding mode, and the previous frame 14a has not been received by
20 decoder 10, then the current frame 14b has forward aliasing cancellation data incorporated
into it or not depending on the mode of the previous frame 14a. In particular, if the previous frame 14a was of the other coding mode, i.e. time-domain aliasing cancellation transform coding mode, then forward aliasing cancellation data would be present in the current
frame 14b in order to cancel the aliasing otherwise occurring at boundary between time
25 segments 16a and 16b. However, if the previous frame 14a was of the same coding mode,
i. e. time-domain coding mode, then parser 20 would not have to expect forward aliasing
cancellation data to be present in the current frame 14b.
Accordingly, the parser 20 exploits a second syntax portion 26 in order to ascertain as to
30 whether forward aliasing cancellation data 34 is present in the current frame 14b or not. In
parsing the data stream 12, parser 20 may selected one of a first action of expecting the
current frame 14b to comprise, and thus reading forward aliasing cancellation data 34 from
the current frame 14b and a second action of not-expecting the current frame 14b to comprise, and thus not reading forward aliasing cancellation data 34 from the current frame
35 14b. the selection depending on the second syntax portion 26. If present, the reconstructor
22 is configured to perform forward aliasing cancellation at the boundary between the current time segment 16b and the previous time segment 16a of the previous frame I 4a using
the forward aliasing cancellation data.
8
Thus, compared to the situation where the second syntax portion is not present, the decoder
of figure 1 does not have to discard, or unsuccessfully interrupt parsing, the current frame
14b even in case the coding mode of the previous frame Ma is unknown to the decoder 10
5 due to frame loss, for example. Rather, decoder 10 is able to exploit the second syntax portion 26 in order to ascertain as to whether the current frame 14b has forward aliasing cancellation data 34 or not. In other words, the second syntax portion provides for a clear criterion on as to whether one of the alternatives, i.e. FAC data for the boundary to the preceding frame being present or not, applies and ensures that any decoder may behave the
10 same irrespective from their implementation, even in case of frame loss. Thus, the aboveoutlined embodiment introduces mechanisms to overcome the problem of frame loss.
Before describing more detailed embodiments further below, an encoder able to generate
the data stream 12 of figure 1 is described with the respective figure 2. The encoder of fig15 ure 2 is generally indicated with reference sign 40 and is for encoding the information signal into the data stream 12 such that the data stream 12 comprises the sequence of frames
into which the time segments 16a to 16c of the information signal are coded, respectively.
The encoder 40 comprises a constructor 42 and an inserter 44. The constructor is configured to code a current time segment 16b of the information signal into information of the
20 current frame 14b using a first selected one of a time-domain aliasing cancellation transform coding mode and a time-domain coding mode. The inserter 44 is configured to insert
the information 28 into the current frame 14b along with a first syntax portion 24 and a
second syntax portion 26, wherein the first syntax portion signals the first selection, i.e. the
selection of the coding mode. The constructor 42, in turn, is configured to determine for25 ward aliasing cancellation data for forward aliasing cancellation at a boundary between the
current time segment 16b and a previous time segment 16a of a previous frame 14a and
inserts forward aliasing cancellation data 34 into the current frame 14b in case the current
frame 14b and the previous frame 14a are encoded using different ones of a time-domain
aliasing cancellation transform coding mode and a time-domain coding mode, and refrain30 ing from inserting any forward aliasing cancellation data into the current frame 14b in case
the current frame 14b and the previous frame 14a are encoded using equal ones of the
time-domain abasing cancellation transform coding mode and the time-domain coding
mode. That is, whenever constructor 42 of encoder 40 decides that it is preferred, in some
optimization sense, to switch from one of both coding modes ( to the other, constructor 42
35 and inserter 44 are configured to determine and insert forward abasing cancellation data 34
into the current frame 14b, while, if keeping the coding mode between frames Ma and 14b,
FAC data 34 is not inserted into the current frame 1411. In order to enable the decoder to
derive from the current frame 14b, without knowledge of the content of the previous frame
9
14a, as to whether FAC data 34 is present within the current frame 14b or not, the certain
syntax portion 26 is set depending on as to whether the current frame 14b and the previous
frame 14a are encoded using equal or different ones of the time-domain aliasing cancellation transform coding mode and the time-domain coding mode. Specific examples for rea5 lizing the second syntax portion 26 will be outlined below/.
In the following, an embodiment is described according to which a codec, a decoder and an
encoder of the above described embodiments belong to, supports a special type of frame
structure according to which the frames 14a to 14c itself are the subject to sub-framing,
10 and two distinct versions of the time-domain aliasing cancellation transform coding mode
exist. In particular, according to these embodiments further described below, the first syntax portion 24 associates the respective frame from which same has been read, with a first
frame type called FD (frequency domain) coding mode hi the following, or a second frame
type called LPD coding mode in the following, and, if the respective frame is of the second
15 frame type, associates sub-frames of a sub-division of the respective frame, composed of a
number of sub-frames, with a respective one of a first sub-frame type and a second subframe type. As will outlined in more detail below, the first sub-frame type may involve the
corresponding sub-frames to be TCX coded while the second sub-frame type may involve
this respective sub-frames to be coded using ACELP, i.e. Adaptive Codebook Excitation
20 Linear Prediction. Either, any other codebook excitation linear prediction coding mode
may be used as well.
The reconstructor 22 of figure I is configured to handle these different coding mode possibilities. To this end, the reconstructor 22 may be constructed as depicted in figure 3. Ac25 cording to the embodiment of figure 3, the reconstructor 22 comprises two switches 50 and
52 and three decoding modules 54, 56 and 58 each of which is configured to decode
frames and sub-frames of specific type as will be described in more detail below.
Switch 50 has an input at which the information 28 of the currently decoded frame 14b
30 enters, and a control input via which switch 50 is controllable depending on the first syntax
portion 25 of the current frame. Switch 50 has two outputs one of which is connected to the
input of decoding module 54 responsible for FD decoding (FD = frequency domain), and
the other one of which is connected to the input of sub-switch 52 which has also two outputs one of which is connected to an input decoding module 56 responsible for transform
35 coded excitation linear prediction decoding, and the other one of which is connected to an
input of module 58 responsible for codebook excitation linear prediction decoding. All
coding modules 54 to 58 output signal segments reconstructing the respective time segments associated with the respective frames and sub-frames from which these signal seg10
ments have been derived by the respective decoding mode, and a transition handler 60
receives the signal segments at respective inputs thereof in order to perform the transition
handling and aliasing cancellation described above and described in more detail below in
order to output at its output of the reconstructed information signal. Transition handler 60
5 uses the forward aliasing cancellation data 34 as illustrated in figure 3.
According to the embodiment of figure 3, the reconstructor 22 operates as follows. If the
first syntax portion 24 associates the current frame with a first frame type, FD coding
mode, switch 50 forwards the information 28 to FD decoding module 54 for using fre10 quency domain decoding as a first version of the time-domain aliasing cancellation transform decoding mode to reconstruct the time segment lfil) associated with the current frame
15b. Otherwise, i.e. if the first syntax portion 24 associates the current frame 14b with the
second frame type, LPD coding mode, switch 50 forwards information 28 to sub-switch 52
which, in turn, operates on the sub-frame structure of the current frame 14. To be more
15 precise, in accordance with the LPD mode, a frame is divided into one or more sub-frames,
the sub-division corresponding to a sub-division of the corresponding time segment 161)
into un-overlapping sub-portions of the current time segment 16b as it will be outlined in
more detail below with respect to the following figures. The syntax portion 24 signals for
each of the one or more sub-portions as to whether same is associated with a first or a
20 second sub-frame type, respectively. If a respective sub-frame is of the first sub-frame type
sub-switch 52 forwards the respective information 28 belonging to that sub-frame to the
TCX decoding module 56 in order to use transform coded excitation linear prediction decoding as a second version of the time-domain aliasing cancellation transform decoding
mode to reconstruct the respective sub-portion of the current time segment 16b. If, howev25 Cr, the respective sub-frame is of the second sub-frame type sub-switch 52 forwards the
information 28 to module 58 in order to perform codebook excitation linear prediction coding as the time-domain decoding mode to reconstruct the respective sub-portion of the current time signal 1611
30 The reconstructed signal segments output by modules 54 to 58 are put together by transition handler 60 in the correct (presentation) time order with performing the respective transition handling and overlap-add and time-domain aliasing cancellation processing as described above and described in more detail below.
35 In particular, the FD decoding module 54 may be constructed as shown in figure 4 and
operate as describe below. According to figure 4, the FD decoding module 54 comprises a
de-quantizer 70 and a re-transformer 72 serially connected to each other. As described
above, if the current frame 14b is an FD frame, same is forwarded to module 54 and the
11
device-quantizer 70 performs a spectral varying de-quantization of transform coefficient
information 74 within information 28 of the current frame 14b using scale factor information 76 also comprised by information 28. The scale factors have been determined at encoder side using, for example, psycho acoustic principles so as to keep the quantization
5 noise below the human masking threshold.
Re-transformer 72 then performs a re-transform on the de-quantized transform coefficient
information to obtain a re-transformed signal segment 78 extending, in time, over and
beyond the time segment 166 associated with the current frame 14b. As will be outlined in
10 more detail below, the re-transform performed by re-transformer 72 may be an IMDCT
(Inverse Modified Discrete Cosine Transform) involving a DCT IV followed by an unfolding operation wherein after a windowing is performed using a re-transform window which
might be equal to, or deviate from, the transform window used in generating the transform
coefficient information 74 by performing the afore-mentioned steps in the inverse order,
15 namely windowing followed by a folding operation followed by a DCT IV followed by the
quantization which may be steered by psycho acoustic principles in order to keep the quantization noise below the masking threshold.
It is worthwhile to note that the amount of transform coefficient information 28 is due to
20 the TDAC nature of the re-transform of re-transformer 72, lower than the number of samples which the reconstructed signal segment 78 is long. In case of IMDCT, the number of
transform coefficients within information 47 is rather equal to the number of samples of
time segment 166. That is, the underlying transforray be called a critically sampling
transform necessitating time-domain aliasing cancellation in order to cancel the aliasing
25 occurring due to the transform at the boundaries, i.e. the leading and trailing edges of the
current time segment 166.
As a minor note it should be noted that similar to the sub-frame structure of LPD frames,
the FD frames could be the subject of a sub-framing structure, too. For example, Fb
30 frames could be of long window mode in which a single window is used to window a signal portion extending beyond the leading and trailing edge of the current time segment
order to code the respective time segment, or of a short window mode in which the respective signal portion extending beyond the borders of the current time segment of the FD
frame is sub-divided into smaller sub-portions each of which is subject to a respective win35 dowing and transform individually. In that case, FD coding module 54 would output a retransformed signal segment for sub:portion of the current time segment 166.
12
After having described a possible implementation of the FD coding module 54, a possible
implementation of the TCX LP decoding module and the codebook excitation LP decoding
module 56 and 58, respectively, is described with respect to figure 5. In other words, figure
5 deals with the case where the current frame is an LPD frame. In that case, the current
5 frame 146 is structured into one or more sub-frames. In the present case a structuring into.
three sub-frames 90a, 90b and 90c is illustrated. It might be that a structuring is, by default,
restricted to certain sub-structuring possibilities. Each of the sub-portions is associated
with a respective one of sub-portions 92a, 926 and 92c of the current time segment 16b.
That is, the one or more sub-portions 92a to 92c gap-less cover, without overlap, the whole
10 time segment 16b. According to the order of the sub-portions 92a to 92c within the time
segment 16b, a sequential order is defined among the sub-frames 92a to 92c. As is illustrated in figure 5, the current frame 146 is not completely sub-divided into the sub-frames
90a to 90c. In even other words, some portions of the current frame 146 belong to all subframes commonly such as the first and second syntax portions 24 and 26, the FAC data 34
15 and potentially further data as the LPC information as will be described below in further
detail although the LPC information may also be sub-structured into the individual subframes.
In order to deal with the TCX sub-frames the TCX LP decoding module 56 comprises a
20 spectral weighting derivator 94, a spectral weighter 96 and a re-transformer 98. For illustration of purposes, the first sub-frame 90a is shown to be a TCX sub-frame, whereas the
second sub-frame 906 is assumed to be ACELP sub-frame.
In order to process the TCX sub-frame 90a, derivator 94 derives a spectral weighting filter
25 from LPC information 104 within information 28 of the current frame 146, and spectral
weighter 96 spectrally weights transform coefficient information within the respect of subframe 90a using the spectral weighting filter received from derivator 94 as shown by arrow
106.
30 Re-transformer 98, in turn, re-transforms the spectrally weighted transform coefficient information to obtain a re-transformed signal segment 108 extending, in time t, over and
beyond the sub-portion 92a of the current time segment. The re-transform performed by retransformer 98 may be the same as performed by re-transformer 72. In effect, retransformer 72 and 98 may have hardware, a software-routine or a programmable hardware
35 portion in common.
The LPC information 104 comprised by the information 28 of the current LPD frame 166
may represent LPC coeffieients of one-time instant within time segment 166 or for several
13
time instances within time segment 16b such as one set of LPC coefficients for each subportion 92a to 92c. The spectral weighting filter derivator 94 converts the LPC coefficients
into spectral weighting factors spectrally weighting the transform coefficients within information 90a according to a transfer function which is derived from the LPC coefficients
5 by derivator 94 such that same substantially approximates the LPC synthesis filter or some
modified version thereof Any db-quantization performed beyond the spectral weighting by
weighter 96, may be spectrally invariant. Thus, differing from FD decoding mode, the
quantization noise according to the TCX coding mode is spectrally formed using LPC
analysis.
10
Due to the use of the re-transform, however, the re-transformed signal segment 108 suffers
from aliasing. By using the same re-transform, however, re-transform signal segments 78
and 108 of consecutive frames and sub-frames, respectively, may have their aliasing cancelled out by transition handler 60 merely by adding the overlapping portions thereof.
15
In processing the (A)CELP sub-frames 906, the excitatioirsignal derivator 100 derives an
excitation signal from excitation update information within the respective sub-frame 906
and the LPC synthesis filter 102 performs LPC synthesis filtering on the excitation signal
using the LPC information 104 in order to obtain an LP synthesized signal segment 110 for
20 the sub-portion 92b of the current time segment 16b.
Derivators 94 and 100 may be configured to perform some interpolation in order to adapt
the LPC information 104 within the current frame 16b to the varying position of the current sub-frame corresponding to the current sub-portion Within the current time segment •
25 166.
Commonly describing figures 3 to 5, the various signal segments 108, 110 and 78 enter
transition handler 60 which, in turn, puts togetherall signal segments in the correcrnime
order. In particular, the transition handler 60 performs time,domain aliasing cancellation
30 within temporarily overlapping window portions at boundaries between time segments of
immediately consecutive ones of FD frames and TCX sub-frames to reconstruct the information signal across these boundaries. Thus, there is no need for forward aliasing cancellation data for boundaries between.'consecutive FD frames, boundaries between FD frames
followed by TCX frames and TCX sub-frames followed by FD frames, respectively.
35
However, the situation changes whenever an FD frame or TCX sub-frame (both
representing a transform coding mode variant) proceeds an ACELP sub-frame
(representing a form of time domain coding mode). In that case, transition handler 16 de14
rives a forward abasing cancellation synthesis signal from the forward aliasing cancellation
data from the current frame and adds the first forward aliasing cancellation synthesis signal
to the re-transformed signal segment 100 or 78 of the immediately preceding time segment
to re-construct the information signal across respective the boundary. If the boundary falls
5 into the inner of the current time segment 16b because a TCX sub-frame and an ACELP
sub-frame within the current frame define the boundary between the associated time segment sub-portions, transition handler may ascertain the existence of the respective forward
abasing cancellation data for these transitions from first syntax portion 24 and the subframing structure defined therein. The syntax portion 26 is not needed. The previous frame
10 14a may have got lost or not.
However, in case of the boundary coinciding with the boundary between consecutive time
segments 16a and 16b, parser 20 has to inspect the second syntax portion 26 within the
current frame in order to determine as to whether the current frame 14b has forward alias15 ing cancellation data 34, the FAC data 34 being for cancelling aliasing occurring at the
leading end of the current time segment 16b, because either the previous frame is an FD
frame or the last sub-frame of the preceding LPD frame is a TCX sub-frame. At least,
parser 20 needs to know syntax portion 26 in case, the content of the previous frame got
lost.
20
Similar statements apply for transitions into the other direction, i.e. from ACELP subframes to FD frames or TCX frames. As long as the respective boundaries between the
respective segments and segment sub-portions fall within the inner of the current time
segment, the parser 20 has no problem in determining the existence of the forward abasing
25 cancellation data 34 for these transitions from the current frame 14b itself, namely from the
first syntax portion 24. The second syntax portion is not needed and is .even irrelevant.
However, if the boundary occurs at, or coincides with, a boundary between the previous
time segment 16a and the current time segment 16b, parser 20 needs to inspect the second
syntax portion 26 in order to determine as to whether forward aliasing cancellation data 34
30 is present for the transition at the leading end of the current time segment 161) or not — at
least in case of having no access to the previous frame.
In case of transitions from ACELP to FD or TCX, the transition handler 60 derives a
second forward aliasing cancellation synthesis signal from the forward abasing cancella35 tion data 34 and adds the second forward aliasing cancellation synthesis signal to the retransformed signal segment within the current time segment. In order to reconstruct the
information signal across the boundary.
15
After having described embodiments with regard to figures 3 to 5 which generally referred
to an embodiment according to which frames and sub-frames of different coding modes
existed, a specific implementation of these embodiments will be outlined in more detail
below. The description of these embodiments concurrently includes possible measures in
5 generating the respective data stream comprising such frames and sub-frames, respectively.
In the following, this specific embodiment is described as an unified speech and audio codec (USAC) although the principles outlined therein would also be transferrable to other
signals.
10 Window switching in USAC has several purposes. It mixes FD frames, i.e. frames encoded
with frequency coding, and LPD frames which are, in turn, structured into ACELP (sub-.
)frames and TCX (sub-)frames. ACELP frames (time-domain coding) apply a rectangular,
non-overlapping windowing to the input samples while TCX frames (frequency-domain
coding) apply a non-rectangular, overlapping windowing to the input samples and then
15 encode the signal using a time-domain aliasing cancellation (TDAC) transform, namely the
MDCT, for example. To harinonize the overall windows, TCX frames may use centered
windows with homogeneous shapes and to manage the transitions at ACELP frame boundaries, explicit information for cancelling the time-domain aliasing and windowing effects
of the harmonized TCX windows are transmitted. This additional information can be seen
20 as forward aliasing cancellation (FAC). FAC data is quantized in the following embodiment in the LPC weighted domain so that quantization noises of FAC and decoded MDCT
are of the same nature.
Figure 6 shows the processing at the encoder in a frame 120 encoded with transform cod25 ing (TC) which is preceded and followed by a frame 122, 124 encoded with ACELP. In
line with the above discussion, the notion of IC includes MDCT over long and short
blocks using AAC, as well as MDCT based TCX. That is, frame 120 may either be an FD
frame or an TCX (sub-)frame as the sub-frame 90a, 92a in figure 5, for example. Figure 6
shows time-domain markers and frame boundaries. Frame or time segment boundaries are
30 indicated by dotted lines while the time-domain markers are the short vertical lines along
the horizontal axes. It should be mentioned that in the following description the terms
"time segment- and "frame- are sometimes used synonymously due to the unique association there between.
35 Thus. the vertical dotted lines in figure 6 show the beginning and end of the frame 120
which may be a sub-frame/time segment subpart or a frame/time segment. 1.,PC1 and LPC2
shall indicate the center of an analysis window corresponding to LPC filter coefficients or
LPC filters which are used in the following in order to perform the aliasing cancellation.
16
These filter coefficients are derived at the decoder by, for example, the reconstructor 22 or
the derivators 90 and 100 by use of interpolation using the LPC information 104 (see figure 5). The LPC filters comprise: LPC1 corresponding to a calculation thereof at the beginning of the frame 120, and LPC2 corresponding to a calculation thereof at the end of
5 frame 120. Frame 122 is assumed to have been encoded with ACELP. The same applies to
frame 124.
Figure 6 is structured into four lines numbered at the right hand side of figure 6. Each line
represents a step in the processing at the encoder. It is to be understood that each line is
10 time alined with the line above.
Line 1 of figure 6 represents the original audio signal, segmented in frames 122, 120 and
124 as stated above. Hence, at the left of marker "LPC1", the original signal is encoded
with ACELP. Between markers "LPC1" and "LPC2", the original signal is encoded using
15 TC. As described above, in TC the noise shaping is applied directly in the transform domain rather than in the time domain. To the right of marker LPC2, the original signal is
again encoded with ACELP, i.e. a time domain coding mode. This sequence of coding
modes (ACELP then TC then ACELP) is chosen so as to illustrate the processing in FAC
since FAC is concerned with both transitions (ACELP to TC and TC to ACELP).
20
Note, however, that the transitions at LPC1 and LPC2 in Fig. 6 may occur within the inner
of a current time segment or may coincide with the leading end thereof. In the first case,
the determination of the existence of the associated FAC data may be performed by parser
20 merely based on the first syntax portion 24, whereas in case of frame loss, parser 20
25 may need the syntax portion 26 to do so in the latter case.
Line 2 of figure 6 corresponds to the decoded (synthesis) signals in each of frames 122,
120 and 124. Accordingly, the reference sign 110 of figure 5 is used within frame 122 corresponding to the possibility that the last sub-portion of frame 122 is an ACELP encoded
30 sub-portion like 92b in figure 5, while a reference sign combination 108/78 is used in order
to indicated the signal contribution for frame 120, analogously to figures 5 and 4. Again, at
the left of marker LPC I, the synthesis of that frame 122 is assumed to have been encoded
with ACELP. Hence, the synthesis signal 110 at tlw left of marker LPC I is identified as an
ACELP synthesis signal. There is, in principal, a high similarity between the ACELP syn35 thesis and the original signal in that frame 122 since ACELP attends to encode the wave
form as accurately as possible. Then, the segment:between markers LPC1 and LPC2 on
line 2 of figure 6 represents the output of the inverse MDCT of that segment 120 as seen at
the decoder. Again, segment 120 may be the time segment 166 of an FD frame or a sub17
portion of a TCX coded sub-frame, such as 90b in figure 5, for example. In the figure, this
segment 108/78 is named "IC frame output". In figures 4 and 5, this segment was called
re-transformed signal segment. In case of frame/segment 120 being a TCX segment subpart, the TC frame output represents a re-windowed TLP synthesis signal, where TLP
5. stands for "Transform-coding with Linear Prediction" to indicate that in case of TCX,
noise shaping of the respective segment is accomplished in the transform domain by filtering the MDCT coefficients using spectral information from the LPC filters LPC1 and
LPC2, respectively, what has also been described above with respect to figure 5 with regard to spectral weighter 96. Note also, that the synthesis signal, i.e. the preliminarily re10 constructed signal including the aliasing, between markers "LPC1" and "LPC2" on line 2
of figure 6, i.e. signal 108/78, contains windowing effects and time-domain aliasing at its
beginning and end. In case of MDCT as the TDAC transform, the time-domain aliasing
may be symbolized as unfoldings 126a and 1266, respectively. In other words, the upper
curve in line 2 of figure 6 which extends from the beginning to the end of that segment 120
15 and is indicated with reference signs 108/78, shows the windowing effect due to the transform windowing being flat in the middle in order to leave the transformed signal unchanged, but not at the beginning and end. The folding effect is shown by the lower curves
126a and 1266 at the beginning and end of the segment 120 with the minus sign at the beginning of the segment and the plus sign at the end of the segment. This windowing and
20 time-domain aliasing (or folding) effect is inherent to the MDCT which serves as an explicit example for TDAC transforms. The aliasing can be cancelled when two consecutive
frames are encoded using the MDCT as it has been described above. However, in case
where the "MDCT coded" frame 120 is not, preceded and/or followed by.other MDCT
frames, its windowing and time-domain aliasing is not cancelled and remains in the time25 domain signal after the inverse MDCT. Forward aliasing cancellation (FAC) can then be
used to correct these effects as has been described above. Finally, the segment 124 after
marker LPC2 in figure 6 is also assumed to be encoded using ACELP. Note that to obtain
the synthesis signal in that frame, the filter states of the LPC filter 102 (see figure 5), i.e.
the memory of long-term and short-term predictors, at the beginning of the frame 124 must
30 be self properly which implies that the time-aliasing and windowing effects at the end of
the previous frame 120 between markers LPC1 and LPC2 must be cancelled by the application of FAC in a specific way which will be explained below. To summarize, line 2 in
figure 6 contains the synthesis of preliminary reconstructed signals from the consecutive
frames 122, 120 and 124, including the effect of windoWing in time-domain aliasing at the
35 output of the inverse MDCT for the frame between markers LPC 1 and LPC2.
18
To obtain line 3 of figure 6, the difference between line 1 of figure 6, i.e. in the original
audio signal 18, and line 2 of figure 6, i.e. the synthesis signals 110 and 108/78, respectively, as described above, is computed. This yields a first difference signal 128.
5 The further processing at the encoder side regarding frame 120 is explained in the following with respect to line 3 of figure 6. At the beginning of frame 120, firstly, two contributions taken from the ACELP synthesis 110 at the left of marker LPC I on line 2 of figure 6,
are added to each other as follows:
10 The first contribution 130 is a windowed and time-reversed (of folded) version of the last
ACELP synthesis samples, i.e. the last samples of signal segment 110 shown in figure S.
The window length and shape for this time-reversed signal is the same as the aliasing part
of the transform window to the left of frame 120. This contribution 130 can be seen as a
good approximation of the time-domain aliasing present in the MDCT frame 120 of line 2
15 in figure 6.
The second contribution 132 is a windowed zero-input response (ZIR) of the LPC1 synthesis filter with the initial state taken as the final states of this filter at the end of the ACELP
synthesis 110, i.e. at the end of frame 122. The window length and shape of this second
20 contribution may be the same as for the first contribution 130.
With new line 3 in figure 6, i.e. after adding the two contributions 130 and 132 above, a
new difference is taken by the encoder to obtain line 4 in figure 6. Note that the difference
signal 134 stops at marker LPC2. An approximate view of the expected envelope of the
25 error signal in the time-domain is shown on line 4 in figure 6. The error in the ACELP
frame 122 is expected to be approximately flat in amplitude in the time-domain. Then, the
error in the TC frame 120 is expected to exhibit the general shape, i.e. time-domain
envelope, as shown in this segment 120 of line 4 in figure 6. This expected shape of the
error amplitude is only shown here for illustration purposes.
30
Note that if the decoder were to use only the synthesis signals of line 3 in figure 6 to produce or reconstruct the decoded audio signal, then the quantization noise would be typically as the expected envelope of the error signal 136 on line 4 of figure 6. It is thus to be understood that a correction should be sent to the decoder to compensate for this error at the
35 beginning and end of the TC frame 120. This error comes from the windowing and timedomain aliasing effects inherent-to the MDCT/inverse.MDCT pair. The windowing and
time-domain aliasing have been reduced at the beginning of the TC frame 120 by adding
the tube contributions 132 and 130 from the previous ACELP frame 122 as stated above,
19
but cannot be completely cancelled as in the actual TDAC operation of consecutive MDCT
frames. At the right of the TC frame 120 on line 4 in figure 6 just before marker LPC2, all
the windowing and time-domain aliasing remains from the MDCT/inverse MDCT pair and
has to be, thus, completely cancelled by forward aliasing cancellation.
5
Before proceeding to describe the encoding process in order to obtain the forward aliasing
cancellation data, reference is made to figure 7 in order to briefly explain the MDCT as
one example of TDAC transform processing. Both transform directions are depicted and
described with respect to figure 7. The transition from time-domain to transform-domain is
10 illustrated in the upper half of figure 7, whereas the re-transform is depicted in the lower
part of figure 7.
In transitioning from the time-domain to transform-domain, the TDAC transform involves
a windowing 150 applied to an interval 152 of the signal to be transformed which extends
15 beyond the time segment 154 for which the later resulting transform coefficients are actually be transmitted within the data stream. The window applied in the windowing 150 is
shown in figure 7 as comprising an aliasing part Lk crossing the leading end of time segment 154 and an aliasing part Rk at a rear end of time segment 154 with a non-aliasing part
Mk extending therebetween. An MDCT 156 is applied to the windowed signal. That is, a
20 folding 158 is performed so as to fold a first quarter of interval 152 extending between the
leading end of interval 152 and the leading end of time segment 154 back along the left
hand (leading) boundary of time segment 154. The same is done with regard to aliasing
portion Rk. Subsequently, a DCT IV 160 is performed on the resulting windowed and
folded signal having as much samples as time sighal 154 so as to obtain transform coeffi25 cients of the same number. A conversation is performed then at 162. Naturally, the quantization 162 may be seen as being not comprised by the TDAC transform.
A re-transform does the reverse. That is, following a de-quantization 164, an IMDCT 166
is performed involving, firstly, a DCT4 IV 168 so as to obtain time samples the number of
30 which equals the number of samples of the time, segment 154 to be re-constructed. Thereafter, an unfolding process 168 is performed on the inversely transformed signal portion
received from module 168 thereby expanding the time interval or the number of time samples of the IMDCT result by doubling the length of the aliasing portions. Then, a windowing is performed at 170, using a re-transform window 172 which may be same as the one
35 used by windowing 150, but may also be different..The remaining blocks in figure 7 illustrate the TDAC or overlap/add processing performed at the overlapping portions of consecutive segments 154, i.e. the adding of the unfolded aliasing portions thereof, as per20
formed bV the transition handler in Fig. 3. As illustrated in figure 7, the TDAC by blocks
172 and 174 results in aliasing cancellation.
The description of figure 6 is now proceeded further. To efficiently compensate window5 ing and time-domain aliasing effects at the beginning and end of the TC frame 120 on line
4 of figure 6, and assuming that the TC frame 120 uses frequency-domain noise shaping
(FDNS), forward aliasing correction (MC) is applied following the processing described
in figure 8. First, it should be noted that figure 8 describes this processing for both, the left
part of the TC frame 120 around marker LPCI, and for the right part of the TC frame 120
10 around marker LPC2. Recall that the TC frame 120 in figure 6 as assumed to be preceded
by an ACELP frame 122 at the LPC1 marker boundary and followed by an ACELP frame
124 at the LPC2 marker boundary.
To compensate for the windowing and time-domain aliasing effects• around marker LPC I,
15 the processing is described in figure 8. First, a weighting filter W(z) is computed from the
LPC1 filter. The weighting filter W(z) might be a modified analysis or whitening filter
A(z) of LPC1. For example W(z) = A(z/X) with X being a predetermined weighting factor.
The error signal at the beginning of the TC frame is indicated with reference sign 138 jus
as it is the case on line 4 of figure 6. This error is called the FAC target in figure 8. The
20 error signal 138 is filtered by filter W (z) at 140, with an initial state of this filter, i.e. with
an initial state if its filter memory, being the ACELP error 141 in the ACELP frame 122 on
line 4 in figure 6. The output of filter W(z) then forms the input of a transform 142 in figure 6. The transform is exemplarily shown to be an MDCT. The transform coefficients
output by the MDCT are then quantized and encoded in processing module 143. These
25 encoded coefficients might form at least a part of the afore-rnentioned FAC data 34. These
encoded coefficients may be transmitted to the coding side. The output of process Q,
namely the quantized MDCT coefficients, is then the input of an inverse transform such as
an IMDCT 144 to fonn a time-domain signal which is then filtered by the inverse filter
1/W(z) at 145 which has zero-memory (zero initial state). Filtering through 1/W(z) is ex30 tended to past the length of the FAC target using zero-input for the samples that extend
after the FAC target. The output of filter 1/W(z) is a FAC synthesis signal 146, which is a
correction signal that may now be applied at the beginning of the TC frame 120 to compensate for the windowing and time-domain aliasing effect occurring there.
35 Now, the processing for the windowing and time-domain aliasing correction at the end of
the TC frame 120 (before marker LPC2) is deseribed. To this-end, reference is made to
figure 9..
21
The errof signal at the end of the TC frame 120 on line 4 in figure 6 is provided with reference sign 147 and represents the FAC target in figure 9. The FAC target 147 is subject to
the same process sequence as FAC target 138 of figure 8 with the processing merely differing in the initial state of the weighting filter W(z) 140. The initial state of filter 140 in or5 der to filter FAC target 147 is the error in the TC frame 120 on line 4 of figure 6, indicated
by reference sign 148 in figure 6. Then, the further processing steps 142 to 145 are the
same as in figure 8 which dealt with the processing of the FAC target at the beginning of
the TC frame 120.
10 The processing in figures 8 and 9 is performed completely from left to right when applied
at the encoder to obtain the local FAC synthesis and to compute the resulting reconstruction in order to ascertain as to whether the change of the coding mode involved by choosing the TC coding mode of frame 120 is the optimum choice or not. At the decoder, the
processing in figures 8 and 9 is only applied from the middle to the right. That is, the en15 coded and quantized transform coefficients transmitted by processor Q 143 are decoded to
form the input of the IMDCT. Look, for example to figures 10 and 11. Figure 10 equals the
right hand side of figure 8 whereas figure 11 equals the right hand side of figure 9. Transition handler 60 of figure 3 may, in accordance with the specific embodiment outlined now,
be implemented in accordance with figures 10 and 11. That is, transition handler 60 may
20 subject transform coefficient information within the FAC data 34 present within the current
frame 146 to a re-transform in order to yield a first FAC synthesis signal 146 in case of
transition from an ACELP time segment sub-part to an FD time segment or TCX sup-part,
or a second FAC synthesis signal 149 when transitioning from an FD time segment or
TCX sub-part of an time segment to an ACELP time segment sub-part.
25
Note again, the FAC data 34 may relate to such a transition occurring inside the current
time segment in which case the existence of the FAC data 34 is derivable for parser 20
from solely from syntax portion 24, whereas parser 20 needs to, in case of the previous
frame having got lost, exploit the syntax portion 26 in order to determine as to whether
30 FAC data 34 exists for such transitions at the leading edge of the current time segment 166.
Figure 12 shows how to the complete synthesis or reconstructed signal for the current
frame 120 can be obtained by using the FAC synthesis signals in figures 8 to 11 and applying the inverse steps of figure 6. Note again, that even the steps which are shown now in
35 figure 12, are also performed by the encoder in order to ascertain as to whether the coding
mode for the current frame leads to the best optimization in, for example, rate/distortion
sense or the like. In figure 12, it is assumed that the ACELP frame 122 at the left of marker
LPC1 is already synthesized or reconstructed such as by module 58 of figure 3, up to
22
marker LPC1 thereby leading to the ACELP synthesis signal on line 2 of figure 12 with
reference sign 110. Since a FAC correction is also used at the end of the TC frame, it is
also assumed that the frame 124 after marker LPC2 will be an ACELP frame. Then, to
produce a synthesis or reconstructed signal in the TC frame 120 between markers LPC1
5 and LPC2 in figure 12, the following steps are performed. These steps are also illustrated
in figures 13 and 14, with figure 13 illustrating the steps performed by transition handler
60 in order to cope with transitions from a TC coded segment or segment sub-part to an
ACELP coded segment sub-part, whereas figure 14 describes the operation of transition
handler for the reverse transitions.
10
One step is to decode the MDCT-encoded TC frame and position the thus obtained
time-domain signal between markers LPC1 and LPC2 as shown in line 2 of figure 12. Decoding is performed by module 54 or module 56 and includes the inverse MDCT as an
example for a TDAC re-transform so that the decoded TC frame contains windowing and
15 time-domain aliasing effects. In other words, the segment or time segment sub-part currently to be decoded and indicated by index k in figures 13 and 14, may be an ACELP
coded time segment sub-part 92b as illustrated in figure 13 or a time segment 166 which is
FD coded or a TCX coded sub-part 92a as illustrated in figure 14. In case of figure 13, the
previously processed frame is thus a TC coded segment or time segment sub-part and in
20 case of figure 14, the previously processed time segment is ACELP coded sub-part. The
reconstructions or synthesis signal as output by modules 54 to 58 partially suffer from the
aliasing effects. This is also true for the signal segments 78/108.
Another step in the processing of the transition handler 60 is the generation of the FAC
25 synthesis signal according to figure 10 in case of figure 14, and in accdrdance with figure
11 in case of figure 13. That is, transition handler 60 may perform a re-transform 191 onto
transform coefficients within the FAC data 34, in order to obtain the FAC synthesis signals
146 and 149, respectively. The FAC synthesis signals 146 and 149 are positioned at the
beginning and end of the TC coded segment which, in turn, suffers from the abasing ef30 fects and is registered to the time segment 78/108. In case of figure 13, for example, transition handler 60 positions FAC synthesis signal 149 at the end of the TC coded frame k-1 as
also shown in line 1 of figure 12. In case of figure 14, transition handler 60 positions the
FAC synthesis signal 146 at the beginning of the TC coded frame k as is also shown in line
1 of figure 12. Note again that frame k is the frame currently to be decoded, and that frame
35 k-1 is the previously decoded frame.
As far as the situation of figure 14 is concerned where the coding mode change occurs at
the at beginning of the current TC frame k, the windowed and folded (inverted) ACELP
23
synthesis signal 130 from the ACELP frame k-1 preceding the TC frame k, and the windowed zero-input response, or ZIR, of the LPC1 synthesis filter, i.e. signal 132, are positioned so as to be registered to the re-transformed signal segment 78/108 suffering from
aliasing. This contribution is shown in line 3 of figure 12. As shown in figure 14 and as
5 already being described above, transition handler 60 obtains aliasing cancellation signal
132 by continuing the LPC synthesis filtering of the preceding CELP sub-frame beyond
the leading boundary of the current time segment k and windowing the continuation of
signal 110 within the current signal k with both steps being indicated with reference signs
190 and 192 in figure 14. In order to obtain aliasing cancellation signal 130, the transition
10 handler 60 also windows in step 194 the reconstructed signal segment 110 of the preceding
CELP frame and uses this windowed and time-reversed signal as the signal 130.
4. The contributions of lines 1,2 and 3 of figure 12 and the contributions 78/108, 132, 130
and 146 in figure 14 and contributions 78/108, 149 and 196 in Fig. 13, are added by transi15 lion handler 60 in the registered positions explained above, to form the synthesis or reconstructed audio signal for the current frame k in the original domain as shown in line 4 of
figure 12. Note that the processing of Fig. 13 and 14 produces a synthesis or reconstructed
signal 198 in a TC frame where time-domain aliasing and windowing effects are cancelled
at the beginning and end of the frame, and where the potential discontinuity of the frame
20 boundary around marker LPC I has been smoothed and perceptually masked by the filter
1/W(z) in figure 12.
Thus, figure 13 pertains the current processing of the CELP coded frame k and leads to
forward aliasing cancellation at the end of the preceding TC coded segment. As illustrated
25 at 196, the finally reconstructed audio signal is aliasing less reconstructed across the boundary between segments k-1 and k. Processing of figure 14 leads to forward aliasing cancellation at• the beginning of the current TC coded segment k as illustrated at reference sign
198 showing the reconstructed signal across the boundary between segments k and k-1.
The remaining aliasing at the rear end of the current segment k is either cancelled by
30 TDAC in case the following segment is a TC coded segment, or FAC according to figure
13 in case the subsequent segment is ACELP coded segment. Figure 13 mentions this latter
possibility by assigning reference sign 198 to signal. segment of time segment k-1.
In the following, specific possibilities will be mentioned as to how the second syntax por35 tion 26 may be implemented.
For example, in order to handle the occurrence of lost frames, the syntax portion 26 may be
embodied as a 2-bit field prey mode that signals within the current frame 146 explicitly
24
the coding mode that was applied in the previous frame 14a according to the following
table:
prey mode
ACELP 0 0
TCX 0 1
FD_Iong 1 0
FD short 1 1
5
With other words, this 2-bit field may be called prev_mode and may thus indicate a coding
mode of the previous frame 14a. In case of the just-mentioned example, four different
states are differentiated, namely:
10 1) The previous frame 14a is an LPD frame, the last sub-frame of which is an ACELP sub:
frame;
the previous frame I4a is an LPD frame, the last sub-frame of which is a TCX coded
sub-frame;
the previous frame is an FD frame using a long transform window and
15 4) the previous frame is an FD frame using short transform windows.
The possibility of potentially using different window lengths of FD coding mode has already been mentioned above with respect to the description of figure 3. Naturally, the syntax portion 26 may have merely three different states and the FD coding mode may merely
20 be operated with a constant window length thereby summarizing the two last ones of the
above-listed options 3 and 4.
In any case, based on the above-outlined 2-bit field, the parser 20 is able to decide as to
whether FAC data for the transition between the current time segment and the previous
25 time segment I6a is present within the current frame 14a or not. As will be outlined in
more detail below, parser 20 and reconstructor 22 are even able to determine based on
prev_mode as to whether the previous frame I4a has been an FD frame using a long window (FD long) or as to whether the previous frame has been an FD frame using short windows (PD short) and as to whether the current frame 14b (if the current frame is an LPD
30 frame) succeeds an FD frame or an LPD frame which differentiation is necessary according to the following embodiment in order to correctly parse the data stream and reconstruct
the infonnation signal, respectively.
25
Thus, in accordance with the just-mentioned possibility of using a 2-Bit identifier as the
syntax portion 26, each frame 16a to 16c would be provided with an additional 2-bit identifier in addition to the syntax portion 24 which defines the coding mode of the current
frame to be a FD or LPD coding mode and the sub-framing structure in case of LPD cod5 ing mode.
For all of the above embodiments, it should be mentioned that other inter-frame dependencies should be avoided as well, For example, the decoder of figure 1 could be capable of
SBR. In that case, a crossover frequency could be parsed by parser 20 from every frame
10 16a to 16c within the respective SBR extension data instead of parsing such a crossover
frequency with an SBR header which could be transmitted within the data stream 12 less
frequently. Other inter-frame dependencies could be removed in a similar sense.
It is worthwhile to note for all the above-described embodiments, that the parser 20 could
15 be configured to buffer at least the currently decoded frame 14b within a buffer with passing all the frames 14a to 14c through this buffer in a FIFO (first in first out) manner. In
buffering, parser 20 could perform the removal of frames from this buffer in units of
frames 14a to 14c. That is, the filling and removal of the buffer of parser 20 could be performed in units of frames 14a to 14c so as to obey the constraints imposed by the maximal20 ly available buffer space which, for example, accommodates merely one, or more than one,
frames of maximum size at a time.
An alternative signaling possibility for syntax portion 26 with reduced bit consumption
will be described next. According to this alternative, a different construction structure of
25 the syntax portion 26 is used. In the embodiment described before, the syntax portion 26
was a 2-bit field which is transmitted in every frame 14a to 14c of the encoded USAC data
stream. Since for the FD part it is only important for the decoder to know whether it has to
read FAC data from the bit stream in case the previous frame 14a was lost, these 2-bits can
be divided into two 1-bit flags where one of them is signaled within every frame 14a to 14c
30 as fac_data_present. This bit may be introduced in the single channel_element and channel_pair_element structure accordingly as shown in the tables of figures 15 and 16. Fig. 15
and 16 may be seen as a high level structure definition of the syntax of the frames 14 in
accordance with the present embodiment, where functions "function name(...)" call subroutines, and bold written syntax element names indicate the reading of the respective syn35 tax element from the data stream. In other words, the marked portions or hatched portions
in figures 15 and 16 show that each frame I 4a to 14c is, in accordance with this embodiment, provided with a flag fac_data_present. Reference signs 199 show these portions.
26
The other 1-bit flag prey frame was lpd is then only transmitted in the current frame if
same was encoded using the LPD part of USAC, and signals whether the previous frame
was encoded using the LPD path of the USAC as well. This is shown in the table of figure
17.
5
The table of figure 17 shows a part of the information 28 in figure 1 in case of the current
fame 14b being an LPD frame. As shown at 200, each LPD frame is provided with a flag
prey frame was_lpd. This information is used to parse the syntax of the current LPD
frame. That the content and the position of the FAC data 34 in LPD frames depends on the
10 transition at the leading end of the current LPD frame being a transition between TCX coding mode and CELP coding mode or a transition from FD coding mode to CELP coding
mode is derivable from figure 18. In particular, if the currently decoded frame 14b is an
LPD frame just preceded by an FD frame 14a, and fac_data_present signals that FAC data
is present in the current LPD frame (because the leading sub-frame is an ACELP sub15 frame) then FAC data is read at the end of the LPD frame syntax at 202 with the FAC data
34 including, in that case, a gain factor fac_gain as shown at 204 in figure 18. With this
gain factor, the contribution 149 of figure 13 is gain-adjusted.
If, however, the current frame is an LPD frame with the preceding frame being also an
20 LPD frame, i.e. if a transition between TCX and CELP sub-frames occurs between the
current frame and the previous frame, FAC data is read at 206 without the gain adjustability option, i.e. without the FAC data 34 including the FAC gain syntax element fac_gain.
Futher, the position of the FAC data read at 206 differs from the position at which FAC
data is read at 202 in case of the current frame being an LPD frame and the previous frame
25 being an FD frame. While the position of reading 202 occurs at the end of the current LPD
frame, the reading of the FAC data at 206 occurs before the reading of the sub-frame specific data, i.e. the ACELP or TCX data depending on the modes of the sub-frames of the
sub-frames structure, at 208 and 210, respectively.
30 In the example of figures 15 to IS, the LPC information 104 (figure 5) is read after the subframes specific data such as 90a and 90b (compare figure 5) at 212.
For completeness only, the syntax structure of the LPD frame according to figure 17 is
further explained with regard to FAC data potentially additionally contained within the
35 LPD frame in order to provide FAC information with regard to transitions between TCX
and ACELP sub-frames in the inner of the current LPD coded time segment. In particular,
in accordance with the embodiment of figures 15 to 18, the LPD sub-frame structure is
restricted to sub-divide the current LPD coded time segment merely in units of quarters
27
with assigning these quarters to either TCX or ACELP. The exact LPD structure is defined
by the syntax element Ipd_mode read at 214. The first and the second and the third and the
fourth quarter may form together a TCX sub-frame whereas ACELP frames are restricted
to the length of a quarter only. A TCX sub-frame may also extend over the whole LPD
5 encoded time segment in which case the number sub-frames is merely one. The while loop
in figure 17 steps through the quarters of the currently LPD coded time segment and
transmits, whenever the current quarter k is the beginning of a new sub-frame within the
inner of the currently LPD coded time segment, FAC data at 216 provided the immediately
preceding sub-frame of the currently beginning/decoded LPD frame is of the other mode,
10 i.e. TCX mode if the current sub-frame is of ACELP mode and these versa.
For sake of completeness only, figure 19 shows a possible syntax structure of an FD frame
in accordance with the embodiment of figures 15 to 18. It can be seen that FAC data is
read at the end of the FD frame with the decision as to whether FAC data 34 is present of
15 not, merely involving the fac_data_present flag. Compared thereto, parsing of the fac_data
34 in case of LPD frames as shown in figure 17 necessitates, for a correct parsing, the
knowledge of the flag prev_frame wasipd.
Thus, the 1-bit flag prev_frame_was lpd is only transmitted if the current frame is encoded
20 using the LPD part of USAC and signals whether the previous frame was encoded using
the LPD path of the USAC codec (see Syntax of lpd channel_stream() in Fig. 17)
Regarding the embodiment of figure 15 to 19, it should be further noted, that a further syntax element could be transmitted at 220, i.e. in the case the current frame is an LPD frame
25 and the previous frame is an FD frame (with a first frame of the current LPD frame being
an ACELP frame) so that FAC data is to be read at 202 for addressing the transition from
FD frame to ACELP sub-frame at the leading end of the current LPD frame. This additional syntax element read at 220 could indicate as to whether the previous FD frame 14a is of
FD long or FD_short. Depending on this syntax element, the FAC data 202 could be influ30 enced. For example, the length of the synthesis signal 149 could be influenced depending
on the length of the window used for transforming the previous LPD frame. Summarizing
the embodiment of figures 15 and 19 and transferring features mentioned therein onto the
embodiment described with respect to figures 1 to 14, the following could be applied onto
the latter embodiments either individually or in combination:
35
I) The FAC data 34 mentioned in the previous figures was meant to primarily note the
FAC data present in the current frame 141) in order to enable forward aliasing cancellation
occurring at the transition between the previous frame 14a and the current frame 146, i.e.
28
between the corresponding time segments 16a and 16b. However, further FAC data may be
present. This additional FAC data, however, deals with the transitions between TCX coded
sub-frames and CELP coded sub-frames positioned internally to the current frame 14b in
case the same is of the LPD mode. The presence or absence of this additional FAC data is
5 independent from the syntax portion 26. In figure 17, this additional FAC data was read at
216. The presence or existence thereof merely depends on lpd mode read at 214. The latter
syntax element, in turn, is part of the syntax portion 24 revealing the coding mode of the
current frame. lpd mode along with core_mode read at 230 and 232 shown in figures 15
and 16 corresponds to syntax portion 24.
10
2) Further, the syntax portion 26 may be composed of more than one syntax element as
described above. The .flag FAC data_present indicates as to whether fac data for the
boundary between the previous frame and the current frame is present or not. This flag is
present at an LPD frame as well as FD frames. A further flag, in the above embodiment
15 called prev_frame_was lpd, is transmitted in LPD frames only in order to denote as to
whether the previous frame 14a was of the LPD mode or not. In other words, this second
flag included in the syntax portion 26 indicates as to whether the previous fame 14a was an
FD frame. The parser 20 expects and reads this flag merely in case of the current frame
being an LPD frame. In figure 17, this flag is read at 200. Depending on this flag, parser 20
20 may expect the FAC data to comprise, and thus read from the current frame, a gain value
fac_gain. The gain value is used by the reconstructor to set a gain of the FAC synthesis
signal for FAC at the transition between the current and the previous time segments. In the
embodiment of figures 15 to 19, this syntax element is read at 204 with the dependency on
the second flag being clear from comparing the conditions leading to reading 206 and 202,
25 respectively. Alternatively or additionally, prev_frame_was lpd may control a position
where parser 20 expects and reads the FAC data. In the embodiment of figures 15 to 19
these positions were 206 or 202. Further, the second syntax portion 26 may further comprise a further flag in case of the current frame being an LPD frame with the leading subframe of which being an ACELP frame and a previous frame.being an FD frame in order
30 indicate as to whether the previous FD frame is encoded using a long transform window or
a short transform window. The latter flag could be read at 220 in case of the previous embodiment of figures 15 to 19, The knowledge about this FD transform length may be used
in order to determine the length of the FAC synthesis signals and the sin of the FAC data
38, respectively. By this measure, the FAC data may be adapted in size to the overlap
35 length of the Window of the previous FD frame so that a better compromise between coding quality and coding rate may be achieved.
29
3) By dividing-up the second syntax portion 26 into the just-mentioned three flags, it is
possible to transmit merely one flag or bit to signal the second syntax portion 26 in case of
the current frame being an FD frame, merely two flags or bits in case of the current frame
being an LPD frame and the previous frame being an LPD frame, too. Merely in case of a
5 transition from an FD frame to a current LPD frame, a third flag has to be transmitted in
the current frame. Alternatively, as stated above, the second syntax portion 26 may be a 2-
bit indicator transmitted for every frame and indicating the mode the frame preceding this
frame to the extent needed for the parser to decide as to whether FAC data 38 has to be
read from the current frame or not, and if so, from where and how long the FAC synthesis
10 signal is. That is, the specific embodiment of figure 15 to 19 could be easily transferred to
the embodiment of using the above 2-bit identifier for implementing the second syntax
portion 26. Instead of FAC data_present in figures 15 and 16, the 2-bit identifier would be
transmitted. Flags at 200 and 220 would not have to be transmitted. Instead, the content of
fac data_present in the if-clause leading to 206 and 218, could be derived by the parser 20
15 from the 2-bit identifier. The following table could be accessed at the decoder to exploit
the 2-bit indicator
prev_mode core mode _
of current frame
(superframe)
first_lpd_flag
ACELP 1 0
TCX 1 0
FD_Iong 1 1
FD short 1 1
A syntax portion 26 could also merely have three different possible values in case FD
20 frames will use only one possible length.
A slightly differing, but very similar syntax structure to that described above with respect
to 15 to 19 is shown in Fig. 20 to 22 using the same reference signs as used with respect to
Fig. 15 to 19, so that reference is made to that embodiment for explanation of the embodi25 ment of Fig. 20 to 22.
With regard to the embodiments described with respect to Fig. 3 et seq., it is noted that any
transform coding scheme with aliasing propriety may be used in connection with the TCX
frames, other than MDCT. Furthermore, a transform coding scheme such as FFT could
30 also be used, then without aliasing in the LPD mode, i.e. without FAC for subframe transitions within LPD frames, and thus, without the need for transmitting FAC data for sub30
frame boundaries in between LTD boundaries. FAC data would then merely be included
for every transition from FD to LPD and vice versa.
With regard to the embodiments described with respect to Fig. I et seq., it is noted that
5 same were directed to the case where the additional syntax portion 26 was set in line, i.e.
uniquely depending on a comparison between the coding mode of the current frame and
the coding mode of the previous frame as defined in the first syntax portion of that previous frame, so that in all of the above embodiments the decoder or parser was able to
uniquely anticipate the content of the second syntax portion of the current frame by use of,
10 or comparing, the first syntax portion of these frames, namely the previous and the current
frame. That is, in case of no frame lobs, it was possible for the decoder or parser to derive
from the transitions between frames whether FAC data is present or not in the current
frame. If a frame is lost, the second syntax portion such as the flag fac_data_present bit
explicitly gives that information. However, in accordance with another embodiment, the
15 encoder could exploit this explicit signalisation possibility offered by the second syntax
portion 26 so as to apply a converse coding according which the syntax portion 26 is adaptively, i.e. with the decision there upon being performed on a frame by frame basis, for
example - set such that although the transition between the current frame and the previous
frame is of the type which usually comes along with FAC data (such as FD/TCX, i.e any
20 IC coding mode, to ACELP, i.e. any time domain coding mode, or vice versa) the current
frames' syntax portion indicates the absence of FAC. The decoder could then be implemented to strictly act according to the syntax portion 26, thereby effectively disabling, or
suppressing, the FAC data transmission at the encoder which signals this suppression
merely by setting, for example, fac data_present = 0. The scenario where this might be a
25 favourable option is when coding at very low bit rates where the additional FAC data
might cost too much bits whereas the resulting aliasing artefact might be tolerable compared to the overall sound quality.
Although some aspects have been described in the context of .an apparatus, it is clear that
30 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 pro35 grammable 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.
31
The inventive encoded audio signal can be stored on a digital storage medium or can be
transmitted on a transmission medium such as a wireless transmission medium or a wired
transmission medium such as the Internet.
5 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 Blue-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 pro10 grammable 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
15 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
20 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.
25 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
30 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 non—
transitionary.
35 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.
32
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.
5
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 con10 figured 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 .
15
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
20 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, there25 fore, 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.
33
1. Decoder (10) for decoding a data stream (12) comprising a sequence of frames into
which time segments of an information signal (18) are coded, respectively, comprising
a parser (20) configured to parse the data stream (12) , wherein the parser is configured
to, in parsing the data stream (12), read a first syntax portion (24) and a second syntax
portion from a current frame (14b); and
a reconstructor (22) configured to reconstruct a current time segment (16b) of the
information signal (18) associated with the current frame (14b) based on information
(28) obtained from the current frame by the parsing, by performing a first selection out
of a Time-Domain Aliasing Cancellation transform decoding mode and a time-domain
decoding mode depending on the first syntax portion (24) to obtain a first selected
decoding mode and performing a reconstruction of the current time segment (16b) of
the information signal (18) using the first selected decoding mode, ,
wherein the time-domain aliasing cancellation transform decoding mode involves a use
of different window lengths and,
wherein the parser (20) is configured to, in parsing the data stream (12), perform,
depending on the second syntax portion, a second selection out of a first action and a
second action to obtain a second selected action, wherein the parser and the
reconstructor are configured to,
in case of the first action being the second selected action, read forward
aliasing cancellation data (34) from the current frame (14b) and perform
forward aliasing cancellation at a boundary between the current time segment
(16b) and a previous time segment (16a) of a previous frame (14a) using the
forward aliasing cancellation data (34), and
in case of the second action being the second selected action, not read, in the
parsing the data stream, forward aliasing cancellation data (34) from the
current frame (14b).
34
2. Decoder (10) according to claim 1, wherein the first syntax portion and the second
syntax portion are comprised by each frame, wherein the first syntax portion (24)
associates the respective frame, from which same has been read, with a first frame type
or a second frame type and, if the respective frame is of the second frame type,
associates sub frames of a sub division of the respective frame, composed of a number
of sub frames, with a respective one of a first sub frame type and a second sub frame
type, wherein the reconstructor (22) is configured to, if the first syntax portion (24)
associates the respective frame with the first frame type, use frequency domain
decoding as a first version of the time-domain aliasing cancellation transform decoding
mode to reconstruct the time segment associated with the respective frame, and, if the
first syntax portion (24) associates the respective frame with the second frame type, use,
for each sub frame of the respective frame, transform coded excitation linear prediction
decoding as a second version of the time-domain aliasing cancellation transform
decoding mode to reconstruct a sub portion of the time segment of the respective frame,
which is associated with respective sub frame, if the first syntax portion (24) associates
the respective sub frame of the respective frame with the first sub frame type, and use
codebook excitation linear prediction decoding as the time-domain decoding mode to
reconstruct a sub portion of the time segment of the respective frame, which is
associated with the respective sub frame, if the first syntax portion (24) associates the
respective sub frame with a second sub frame type.
3. Decoder (10) according to claim 2, wherein the second syntax portion has a set of
possible values each of which is uniquely associated with one of a set of possibilities
comprising
the previous frame (14a) being of the first frame type,
the previous frame (14a) being of the second frame type with the last sub frame
thereof being of the first sub frame type, and
the previous frame (14a) being of the second frame type with the last sub frame
thereof being of the second sub frame type, and
wherein the parser (20) is configured to perform the second selection based on a
comparison between the second syntax portion of the current frame (14b) and the first
syntax portion (24) of the previous frame (14a).
35
4. Decoder according to claim 3, wherein the parser (20) is configured to perform the
reading of the forward aliasing cancellation data (34) from the current frame (14b), if
the current frame (14b) is of the second frame type, depending on the previous frame
(14a) being of the second frame type with the last sub frame thereof being of the first
sub frame type or the previous frame (14a) being of the first frame type in that a
forward aliasing cancellation gain is parsed from the forward aliasing cancellation data
(34) in case of the previous frame (14a) being of the first frame type, and not if previous
frame being of the second frame type with the last sub frame thereof being of the first
sub frame type, wherein the reconstructor (22) is configured to perform the forward
aliasing cancellation at an intensity which depends on the forward aliasing cancellation
gain in case of the previous frame (14a) being of the first frame type.
5. Decoder (10) according to claim 4, wherein the parser (20) is configured to read, if the
current frame (14b) is of the first frame type, a forward aliasing cancellation gain from
the forward aliasing cancellation data (34), wherein the reconstructor is configured to
perform the forward aliasing cancellation at an intensity which depends on the forward
aliasing cancellation gain.
6. Decoder (10) according to any of claims 2 to 5, wherein the reconstructor is configured
to
per frame of the first frame type, perform a spectral varying inverse-quantization (70) of
transform coefficient information within the respective frame of the first frame type
based on scale factor information within the respective frame of the first frame type, and
a re-transform on the inverse-quantized transform coefficient information to obtain a retransformed signal segment (78) extending, in time, over and beyond the time segment
associated with the respective frame of the first frame type, and
per frame of the second frame type,
per sub frame of the first sub frame type of the respective frame of the second frame
type,
36
derive (94) a spectral weighting filter from LPC information within the
respective frame of the second frame type,
spectrally weight (96) transform coefficient information within the respective
sub frame of the first sub frame type using the spectral weighting filter, and
re-transform (98) the spectrally weighted transform coefficient information to
obtain a re-transformed signal segment extending, in time, over and beyond the
sub portion of the time segment associated with the respective sub frame of the
first sub frame type, and,
per sub frame of the second sub frame type of the respective frame of the second
frame type,
derive (100) an excitation signal from excitation update information within the
respective sub frame of the second sub frame type and
perform LPC synthesis filtering (102) on the excitation signal using the LPC
information within the respective frame of the second frame type in order to
obtain an LP synthesized signal segment for the sub portion of the time
segment associated with the respective sub frame of the second sub frame type,
and
perform time-domain aliasing cancellation within temporarily overlapping window
portions at boundaries between time segments of immediately consecutive frames of the
first frame type and sub portions of time segments of frames of the second frame type,
which are associated with sub frames of the first sub frame type, to reconstruct the
information signal (18) across the temporarily overlapping window portions, and
if the previous frame is of the first frame type or the previous frame is of the second
frame type with a last sub frame thereof being of the first sub frame type, and the
current frame (14b) is of the second frame type with a first sub frame thereof being of
37
the second sub frame type, derive a first forward aliasing cancellation synthesis signal
from the forward aliasing cancellation data (34) and add the first forward aliasing
cancellation synthesis signal to the re-transformed signal segment (78) within the
previous time segment to reconstruct the information signal (18) across the boundary
between the previous frame and the current frame (14a, 14b), and
if the previous frame (14a) is of the second frame type with a last sub frame thereof
being of the second sub frame type, and the current frame (14b) is of the first frame type
or the current frame (14b) is of the second frame type with a first sub frame thereof
being of the first sub frame type, derive a second forward aliasing cancellation synthesis
signal from the forward aliasing cancellation data (34) and add the second forward
aliasing cancellation synthesis signal to the re-transformed signal segment within the
current time segment (16b) to reconstruct the information signal (18) across the
boundary between the previous and current time segments (16a, 16b).
7. Decoder (10) according to claim 6, wherein the reconstructor is configured to
derive the first forward aliasing cancellation synthesis signal from the forward aliasing
cancellation data (34) by performing a re-transform on transform coefficient
information comprised by the forward aliasing cancellation data (34) and/or
derive the second forward aliasing cancellation synthesis signal from the forward
aliasing cancellation data (34) by performing a re-transform on transform coefficient
information comprised by the forward aliasing cancellation data (34).
8. Decoder according to claim 6 or claim 7, wherein the second syntax portion comprises a
first flag signaling as to whether forward aliasing cancellation data (34) is present or not
in the respective frame, and the parser is configured to perform the second selection
depending on the first flag, and wherein the second syntax portion further comprises a
second flag merely within frames of the second frame type, the second flag signaling as
to whether the previous frame is of the first frame type or of the second frame type.
38
9. Decoder according to claim 8, wherein the parser is configured to perform the reading
of the forward aliasing cancellation data (34) from the current frame (14b), if the current
frame (14b) is of the second frame type, depending on the second flag in that a forward
aliasing cancellation gain is parsed from the forward aliasing cancellation data (34) in
case of the previous frame being of the first frame type, and not if previous frame being
of the second frame type with the last sub frame thereof being of the first sub frame
type, wherein the reconstructor is configured to perform the forward aliasing
cancellation at an intensity which depends on the forward aliasing cancellation gain in
case of the previous frame being of the first frame type.
10. Decoder according to any of the claims 6 to 9, wherein the reconstructor is configured
to, if the previous frame is of the second frame type with a last sub frame thereof being
of the second sub frame type and the current frame (14b) is of the first frame type or the
second frame type with the last sub frame thereof being of the first sub frame type,
perform a windowing on the LP synthesis signal segment of the last sub frame of the
previous frame to obtain a first aliasing cancellation signal segment and add the first
aliasing cancellation signal segment to the re-transformed signal segment within the
current time segment.
11. Decoder according to any of the claims 6 to 10, wherein the reconstructor is configured
to, if the previous frame is of the second frame type with a last sub frame thereof being
of the second sub frame type and the current frame (14b) is of the first frame type or the
second frame type with a first sub frame thereof being of the first sub frame type,
continue the LPC synthesis filtering performed on the excitation signal from the
previous frame into the current frame, window a thus derived continuation of the LP
synthesis signal segment of the previous frame within the current frame (14b) to obtain
a second aliasing cancellation signal segment and add the second aliasing cancellation
signal segment to the re-transformed signal segment within the current time segment.
12. Method for decoding a data stream (12) comprising a sequence of frames into which
time segments of an information signal (18) are coded, respectively, comprising
39
parsing the data stream (12), wherein parsing the data stream comprises reading a first
syntax portion (24) and a second syntax portion from a current frame (14b); and
reconstructing a current time segment of the information signal (18) associated with the
current frame (14b) based on information obtained from the current frame (14b) by the
parsing, by performing a first selection out of a Time-Domain Aliasing Cancellation
transform decoding mode and a time-domain decoding mode depending on the first
syntax portion (24) to obtain a first selected decoding mode and performing a
reconstruction of the current time segment (16b) of the information signal (18) using the
first selected decoding mode,
wherein the time-domain aliasing cancellation transform decoding mode involves a use
of different window lengths and
wherein, in parsing the data stream (12), a second selection out of a first action and a
second action is performed, wherein
in case of the first action being the second selected action, forward aliasing
cancellation data (34) is read from the current frame (14b) and forward aliasing
cancellation is performed at a boundary between the current time segment (16b) and a
previous time segment (16a) of a previous frame (14a) using the forward aliasing
cancellation data (34), and
in case of the second action being the second selected action, the parsing the data
stream does not comprise reading forward aliasing cancellation data (34) from the
current frame (14b).
13. A computer program having a program code for performing, when running on a
computer, a method according to claim 12.
40
Coder using forward aliasing cancellation

Documents

Application Documents

# Name Date
1 202538057190-STATEMENT OF UNDERTAKING (FORM 3) [13-06-2025(online)].pdf 2025-06-13
2 202538057190-REQUEST FOR EXAMINATION (FORM-18) [13-06-2025(online)].pdf 2025-06-13
3 202538057190-PROOF OF RIGHT [13-06-2025(online)].pdf 2025-06-13
4 202538057190-FORM 18 [13-06-2025(online)].pdf 2025-06-13
5 202538057190-FORM 1 [13-06-2025(online)].pdf 2025-06-13
6 202538057190-FIGURE OF ABSTRACT [13-06-2025(online)].pdf 2025-06-13
7 202538057190-DRAWINGS [13-06-2025(online)].pdf 2025-06-13
8 202538057190-DECLARATION OF INVENTORSHIP (FORM 5) [13-06-2025(online)].pdf 2025-06-13
9 202538057190-COMPLETE SPECIFICATION [13-06-2025(online)].pdf 2025-06-13
10 202538057190-FORM-26 [24-07-2025(online)].pdf 2025-07-24