|
Description  |
|
|
NOTICE OF MATERIAL SUBJECT TO COPYRIGHT PROTECTION
Material in this patent document may be subject to copyright protection under the copyright laws of the United States and other countries. The owner of the copyright has no right to exclude facsimile reproduction of the patent specification as
it appears in files or records which are available to members of the general public from the United States Patent and Trademark Office, but owner otherwise reserves any and all copyright rights therein.
BACKGROUND OF THE INVENTION
1. Field of the Invention
This invention relates generally to data communications and, more specifically, to techniques for implementing redundant data compression in communication or storage systems which are vulnerable to errors. Such systems may be used to compress
signals such as speech, audio, and/or video.
2. Description of Prior Art
Many communication systems, such as cellular telephones, personal communications systems, voice-over-Internet protocol (VoIP), as well as audio or video over packet-based networks, rely on electromagnetic or wired communications links to convey
information from one place to another. These communications links generally operate in less than ideal environments with the result that fading, attenuation, multipath distortion, interference, network congestion, network delay, and other adverse
propagational effects may occur. Similarly, such less than ideal environments may also occur in storage systems. In cases where information is represented digitally as a series of bits, such propagational effect may cause the loss or corruption of one
or more bits. Oftentimes, the bits are organized into frames, such that predetermined fixed number of bits comprises a frame. A frame erasure refers to the loss or substantial corruption of a bit or a set of bits communicated to the receiver.
To provide for an efficient utilization of a given bandwidth (or storage space), communication (or storage) systems directed to signal communications (or storage) often use signal coding techniques. Such signal can be for example speech, audio,
or video. Many existing signal coding techniques are executed on a frame-by frame basis. For speech coding, such frame is about 10-80 milliseconds in length. The signal coder extracts parameters that are representative of the signal. These parameters
are then quantized and transmitted (or stored) via the communications channel (or storage medium).
If a frame of bits is lost, then the receiver has no bits to interpret during a given time interval. Under such circumstances, the receiver may produce a meaningless or distorted result. Although it is possible to replace the lost frame with a
new frame, estimated from the previous or the next frame, this introduces inaccuracies which may not be tolerated or desirable in the context of many real-world applications. In predictive coding systems, such errors will then propagate to all the
future frames. The result is a poorly-reconstructed and distorted signal.
The problem of packet loss in packet-switch networks employing speech, audio, or video coding techniques, is very similar to the problem of frame erasure in the context of Internet, or wireless communication links. Due to packet loss, a signal
decoder may either fail to receive a frame or receive a frame having a significant number of missing bits. In either case, the signal decoder is presented with essentially the same problem: the need to reconstruct a signal, despite the loss of
compressed signal information. Both frame erasure and packet loss concern a communication channel (or storage medium) problem which results in the loss of transmitted (or stored) bits. Therefore, for purposes of the present disclosure, the term "frame
erasure" may be deemed synonymous with "packet loss".
SUMMARY OF THE INVENTION
An improved signal coding technique encodes signal parameters into a plurality of overlapped super-frames, each super-frame having a predetermined number of bits. These encoded signal parameters may be decoded into plurality of non-overlapping
frames. Redundant information derived from an overlapping portion of the super-frames is used to reconstruct frames which have been subjected to frame erasure. This technique reduces or eliminates the need for prior art error concealment schemes, which
are commonly based on interpolation or extrapolation (or both), to reconstruct an approximation of the signal within the erased frame or frames. The invention can also be utilized as an enhancement layer added to standard or other prior art coding
systems. In such cases, an existing, possibly standard, coding scheme may operate as a base layer, and the present invention can be used as enhancement layer for less than ideal communication (or storage) environments.
BRIEF DESCRIPTION OF THE
DRAWINGS
FIG. 1 is a hardware block diagram setting forth a signal coding system in accordance with a present embodiment disclosed herein;
FIG. 2 is a hardware block diagram setting forth a signal coding system in accordance with a present embodiment disclosed herein;
FIG. 3 is a hardware block diagram setting forth a speech coding system in accordance with a present embodiment disclosed herein;
FIG. 4 is a prior art data structure diagram for use with a prior art signal compression method that could be employed in conjunction with the systems described in FIG. 1-FIG. 3, in which the encoder encodes exactly one frame at a time, such
that, whenever frame erasure occurs, the decoder applies error concealment techniques, based on interpolation or extrapolation (or both), to reconstruct approximation of a whole erased frame (n+1);
FIG. 5 is a data structure diagram for use with the signal compression methods disclosed herein, and which may be utilized in conjunction with the systems and methods of FIGS. 1-3, 11, and/or 12, in which the encoder encodes a super-frame
including a frame and some look-ahead information, such that the super-frame is longer than one frame but shorter than two frames, and whenever frame erasure occurs, the decoder decodes a previous super-frame and applies error concealment techniques,
which can be based on interpolation or extrapolation (or both), to reconstruct an approximation of a portion of the erased frame (n+1);
FIG. 6 is a data structure diagram for use with the signal compression methods disclosed herein, and which may be utilized in conjunction with the systems and methods of FIGS. 1-3, 11, and/or 12, in which the encoder encodes a super-frame,
consists of a frame and some look-ahead, such that it is two times longer than one frame, and whenever frame erasure occurs the decoder decodes a previous super-frame and does not require any error concealment techniques for the reconstruction of the
erased frame (n+1);
FIG. 7 is a data structure diagram for use with the signal compression methods disclosed herein, and which may be utilized in conjunction with the systems and methods of FIGS. 1-3, 11, and/or 12, in which the encoder encodes a super-frame,
consists of a frame and some look-ahead, such that it is k times longer than one frame, and whenever frame erasure occurs the decoder decodes a previous super-frame and does not require any error concealment techniques for the reconstruction of k erased
frames;
FIG. 8 is a data structure diagram for use with the signal compression methods disclosed herein, and which may be utilized in conjunction with the systems and methods of FIGS. 1-3, 11, and/or 12, in which the encoder encodes a super-frame, that
consists of a frame and some look-back and look-ahead, such that it is longer than one frame but shorter than two frames, and whenever frame erasure occurs the decoder decodes a previous super-frame and applies error concealment techniques, which are
commonly based on interpolation or extrapolation (or both), to reconstruct approximation of a portion of the erased frame (n+1);
FIG. 9 is a data structure diagram for use with the signal compression methods disclosed herein, and which may be utilized in conjunction with the systems and methods of FIGS. 1-3, 11, and/or 12, in which the encoder encodes a super-frame,
consists of a frame and some look-back and look-ahead, such that it is two times longer than one frame, and whenever frame erasure occurs the decoder decodes a previous super-frame and does not require any error concealment techniques for the
reconstruction of the erased frame (n+1);
FIG. 10 is a data structure diagram for use with the signal compression methods disclosed herein, and which may be utilized in conjunction with the systems and methods of FIGS. 1-3, 11, and/or 12, in which the encoder encodes a super-frame,
consists of a frame and some look-back and look-ahead, such that it is k times longer than one frame, and whenever frame erasure occurs the decoder decodes a previous super-frame and does not require any error concealment techniques for the
reconstruction of k erased frames;
FIG. 11 is a software flowchart setting forth a speech encoding method performed in accordance with a preferred embodiment disclosed herein;
FIG. 12 is a software flowchart setting forth a speech decoding method performed in accordance with a preferred embodiment disclosed herein;
FIG. 13 is a data structure diagram of a two-dimensional signal compression method in accordance with a preferred embodiment disclosed herein for use in conjunction with the systems and methods of FIGS. 1-3, 11, and/or 12, in which super-frames
have overlap .DELTA..sub.x along the X axis and overlap .DELTA..sub.y along the Y axis. The encoder encodes a super-frame including a frame and some X axis look-ahead information, as well as some Y axis look-ahead information. This encoding is
accomplished such that, along the X axis, as well as the Y axis, the super-frame is longer than one frame, but shorter than two frames. Whenever frame erasure occurs, the decoder decodes a previous super-frame and provides error concealment techniques,
which can be based upon interpolation or extrapolation (or both), to reconstruct an approximation of a portion of the erased frame along each axis;
FIG. 14 is a data structure diagram of a three-dimensional signal compression method in accordance with a preferred embodiment disclosed herein for use in conjunction with the systems and methods of FIGS. 1, 3, 11, and/or 12, in which
super-frames have overlap .DELTA..sub.x along the X axis. The encoder encodes a super-frame including a frame and some X axis look-ahead information, such that along the X axis the super-frame is longer than one frame but shorter than two frames, and
whenever frame erasure occurs, the decoder decodes a previous super-frame and applies error concealment techniques, which can be based on interpolation or extrapolation (or both), to reconstruct an approximation of a portion of the erased frame along the
X axis;
FIG. 15 is a data structure diagram of a three-dimensional signal compression method in accordance with a preferred embodiment disclosed herein for use in conjunction with the systems and methods of FIGS. 1, 3, 11, and/or 12, in which
super-frames have overlap .DELTA..sub.y along the Y axis. The encoder encodes a super-frame including a frame and some Y axis look-ahead information, such that along the Y axis the super-frame is longer than one frame but shorter than two frames, and
whenever frame erasure occurs, the decoder decodes a previous super-frame and applies error concealment techniques, which can be based on interpolation or extrapolation (or both), to reconstruct an approximation of a portion of the erased frame along the
Y axis; and
FIG. 16 is a data structure diagram of a three-dimensional signal compression method in accordance with a preferred embodiment disclosed herein for use in conjunction with the systems and methods of FIGS. 1, 3, 11, and/or 12, in which
super-frames have overlap .DELTA..sub.z along the Z axis. The encoder encodes a super-frame including a frame and some Z axis look-ahead information, such that along the Z axis the super-frame is longer than one frame but shorter than two frames, and
whenever frame erasure occurs, the decoder decodes a previous super-frame and applies error concealment techniques, which can be based on interpolation or extrapolation (or both), to reconstruct an approximation of a portion of the erased frame along the
Z axis.
DETAILED DESCRIPTION OF THE PRESENT EMBODIMENT
Refer to FIG. 1, which is a is a hardware block diagram setting forth a signal coding system in accordance with a preferred embodiment of the invention to be described hereinafter. A signal, represented as x(i), is coupled to a conventional
signal encoder 50. Signal encoder may include elements such as an analog-to-digital converter, one or more frequency-selective filters, digital sampling circuitry, and/or an input transformation (denoted by T(n)).
Irrespective of the specific internal structure of the signal encoder 50, this encoder produces an output in the form of a digital bit stream D. The form of a digital bit stream D, is the encoded data of x(i), and hence, includes "parameters"
(denoted by D={T, P.sub.1, . . . ,P.sub.M } which correspond to one or more characteristics of x(i). Since x(i) is a function which changes with time, the output signal of the signal decoder is periodically updated at regular time intervals.
Therefore, during a first time interval T.sub.1, the output signal comprises a set of values corresponding to parameters D={T, P.sub.1, . . . ,P.sub.M }, during time interval T.sub.1. During a first time interval T.sub.2, the value of parameters D={T,
P.sub.1, . . . ,P.sub.M }, may change, taking on values differing from those of the first interval. Parameters collected during time interval T.sub.1 are represented by a plurality of bits (denoted as D.sub.1) comprising a first frame, and parameters
collected during time interval T.sub.2 are represented by a plurality of bits D.sub.2 comprising a second frame. Therefore D.sub.n refers to a set of bits representing all parameters collected during the n-th time interval.
The output signal encoder 50 is coupled to MUX 10 and may or may not be coupled to logic circuitry 51. MUX 10 is a conventional digital multiplexer device which in the present context, combines the plurality of bits representing a given D.sub.n
onto single signal line. D.sub.n is multiplexed onto this signal line together with or without a series of bits denoted as D'.sub.n, produced by logic circuitry 51.
The output of multiplexer 10, including a multiplexed version of D'.sub.n and D'.sub.n, is conveyed to another location over a communications channel (or is stored on a storage medium) 11. At the receiving end of the channel, the received (or
read from storage medium) signal, is fed to the demultiplexer DEMUX 13, that processes it to retrieve D'.sub.n and D'n. The D'.sub.n and D'.sub.n are then processed by signal decoder 60 to reconstruct the output signal x(i). Suitable devices for
implementation of decoders for signals such as speech, audio or video decoder are well known to those skilled in the art. Signal decoder 60 is configured to decode signal which was encoded by the signal encoder 50.
FIG. 2 is a hardware block diagram setting forth a signal coding system in accordance with a present embodiment disclosed herein. A signal is fed to input 01 of an input (analysis) transformation 02. The transformation 02 may or may not be
derived from the input signal. The transformation 02 may or may not be quantized. If the transformation 02 is quantized, then its parameters are placed in signal line 04. The transformation's output is the input transformed signal 03 (denoted by
y(i)). The selection and operation of a suitable transformation decoder for signals such as speech, audio or video, or other types of signals, is a matter within the knowledge of those skilled in the art.
The input transformed signal on line 03 is input to a transformed signal encoder 05. The transformed signal encoder 05 consists of parameter extraction device 06, and may or may not consist of parameter extraction memory 07. Parameter
extraction device 06 is equipped to isolate and remove one or more parameters from the input transformed signal. The parameter extraction device 06 may be implemented using a parameter extraction memory 07 for storing the extracted values of one or more
parameters. In the example in FIG. 2, several parameters are extracted from the transformed signal, denoted by P.sub.1 (n) 08, . . . , P.sub.M (n) 09. Note that the parameter extraction device 105 could extract a fewer number of parameters or a
greater number of parameters than that shown in FIG. 2.
All parameters are processed by channel encoder and MUX 10, where all or some of the parameters are processed by its logic circuitry 51. All original and processed parameters are multiplexed together using a conventional multiplexer device, MUX
52. The multiplexer signal is sent out over a conventional communications channel (or stored to storage medium) 11.
The communications channel (or storage device) 11 conveys the output of the channel encoder and MUX 10 to a frame erasure/error detector 12. The frame erasure/error detector 12 is equipped to detect bit errors and/or erased frames. Such errors
and erasures typically arise in the context of practical, real-world communications channels which may employ wired and/or wireless electromagnetic communications links (as well as in the context of storage media which utilize optical, magnetic, or
semiconductor devices) in less-than-ideal operational environments. These communications links and/or storage media are represented schematically in FIG. 2 as communications channel 11.
Frame erasure/error detector 12 is coupled to a DEMUX and channel decoder 13. Frame erasure/error detector 12 conveys the demodulated bitstream retrieved from the communications channel (or storage medium) 11 to the DEMUX and channel decoder 13,
along with an indication as to whether or not a frame erasure has occurred. DEMUX and channel decoder 13 processes the demodulated bitstream to retrieve parameters T(n) 22, and P.sub.1 (n) 14, . . . , P.sub.M (n) 15. In addition, the DEMUX and channel
decoder 13, or the error concealment device 25, may be employed to relay the presence or absence of a frame erasure, as determined by frame erasure/error detector 12, to a transformed signal decoder 16, and/or to an output inverse (synthesis)
transformation 23. Alternatively, a signal line may be provided, coupling frame erasure/error detector 12 directly to transformed signal decoder 16 and/or to an output inverse (synthesis) transformation 23, for the purpose of conveying the existence or
non-existence of a frame erasure to the transformed signal decoder 16 and/or to an output inverse (synthesis) transformation 23.
The physical structure of the transformed signal decoder 16, for decoding of signals such as speech, audio, video or other types of signals, is a matter well known to those skilled in the art. Functionally, the transformed signal decoder 16,
examines a plurality of parameters T(n) 22, and P.sub.1 (n) 14, . . . , P.sub.M (n) 15 and fetches one or more entries from codebook tables 17 stored in transformed signal decoder 16 to locate a table that is associated with, or that most closely
corresponds with, the specific values of input parameters input into the transformed signal decoder 16. The table entries in the codebook table 17 may be updated and augmented after parameters for each new frame are received. In such case, new and/or
amended table entries are calculated by transformed signal decoder 16 as the output inverse (synthesis) transformation 23 produces reconstructed signal output. These calculations are mathematical functions based upon the values of a given set of
parameters, the values retrieved from the codebook tables, and the resulting output signal at the reconstructed signal output 24. The use of accurate codebook table entries 17 results in the generation of reconstructed signal for future frames, which
most closely approximates the original input signal. The reconstructed signal is produced at the reconstructed signal output 24. If incorrect or garbled parameters are received at transformed signal decoder 16, incorrect table parameters will be
calculated and placed into the codebook tables 17. As discussed previously, these parameters can be garbled and/or corrupted due to the occurrence of frame erasure or bit errors. These frame erasures or bit errors will degrade the integrity of the
codebook tables 17. A codebook table 17 having incorrect table entry values will cause the generation of distorted, garbled reconstructed signal output 24 in subsequent frames.
Transformed signal decoder 16 is equipped with memory used to store parameters from present frame 20, and from Q frames 19 that proceed frame n. If no frame erasure has been detected by frame erasure/error detector 12, then the extracted code
vectors are computed by transformed signal decoder 16 on line 21. If a frame erasure is detected by frame erasure/error detector 12, then the transformed signal decoder 16 can be used to compensate for the missing frame. In the presence of frame
erasure or bit errors, the transformed signal decoder 16 will not receive reliable values of decoded parameters T(n) 22, and P.sub.1 (n) 14, . . . , P.sub.M (n) 15, for the case where the frame n is erased. Under these circumstances, the transformed
signal decoder 16 is presented with insufficient information to enable the retrieval of code vectors from the transformed signal decoder memory 18. If frame n had not been erased, these code vectors would be retrieved from the transformed signal decoder
memory 18 based upon the parameter values stored in transformed signal decoder past memory 19. In this case, since the present frame parameter present memory 20 is not loaded with accurate parameters corresponding to frame n, the transformed signal
decoder must generate a substitute transformed signal for use in reconstructing the output signal. This substitute transformed signal should be produced in a manner so as to accurately and efficiently compensate for the erased frame. Such an operation
is called error concealment, and it is performed by the error concealment device 25, which typically uses techniques such as parameter (or signal) interpolation, extrapolation, or both. The implementation of such concealment techniques for signals such
as speech, audio, video, or other types of signals, is well known to those skilled in the art.
We now provide an example of such coding system applied to coding speech signal. FIG. 3 is a hardware block diagram setting forth a speech coding system in accordance with a present embodiment disclosed below. A speech signal, represented as
s(i), is coupled to a conventional speech encoder 150. Speech encoder may include elements such as an analog-to-digital converter, one or more frequency-selective filters, digital sampling circuitry, and/or an input analysis and transformation in the
form of linear predictive coding (LPC) analysis 102. A speech signal is fed to the input of LPC analyzer and encoder 102. The quantized LPC coefficient vector for frame n is denoted by A.sub.n, shown on signal line 104. The digital encoding process
which converts the speech to the residual domain effectively applies a filtering function A(z) to the input speech signal, an operation known as whitening. The output of the LPC whitening filter A(z) is the residual signal r(i) shown on signal line 103. The residual signal r(i) is input to the residual encoder 105. The residual signal r(i) on line 103 is input to a residual signal encoder 105. The residual signal encoder 105 consists of parameter extraction device 106, and may or may not consist of
parameter extraction memory 107. Parameter extraction device 106 is equipped to isolate and remove one or more parameters from the input residual signal. The parameter extraction device 106 may be implemented using a parameter extraction memory 107 for
storing the extracted values of one or more parameters. In the example in FIG. 3, several parameters are extracted from the residual signal, denoted by P.sub.1 108, . . . , P.sub.M 109. Note that the parameter extraction device 105 could extract a
fewer number of parameters or a greater number of parameters than that shown in FIG. 3.
The selection and operation of a suitable LPC coder, as well as a suitable residual coder, are matters within the knowledge of those skilled in the art.
All parameters are processed by channel encoder and MUX 10, where all or some of the parameters are processed by its logic circuitry 51. All original and processed parameters are multiplexed together using a conventional multiplexer device, MUX
52. The multiplexer signal is sent out over a conventional communications channel (or stored to storage medium) 11.
The communications channel (or storage device) 11 conveys the output of the channel encoder and MUX 10 to a frame erasure/error detector 12. The frame erasure/error detector 12 is equipped to detect bit errors and/or erased frames. Frame
erasure/error detector 12 is coupled to a DEMUX and channel decoder 13. Frame erasure/error detector 12 conveys the demodulated bitstream retrieved from the communications channel (or storage medium) 11 to the DEMUX and channel decoder 13, along with an
indication as to whether or not a frame erasure has occurred. DEMUX and channel decoder 13 processes the demodulated bitstream to retrieve parameters An 122, and P.sub.1 (n) 114, .., P.sub.M (n) 115. In addition, the DEMUX and channel decoder 13, or
the error concealment device 125, may be employed to relay the presence or absence of a frame erasure, as determined by frame erasure/error detector 12, to a excitation signal decoder 116 and/or to a LPC synthesizer 123. Alternatively, a signal line may
be provided, coupling frame erasure/error detector 12 directly to excitation signal decoder 116 and/or to a LPC synthesizer 123, for the purpose of conveying the existence or non-existence of a frame erasure to the excitation signal decoder 116 and/or to
a LPC synthesizer 123.
The digital decoding process which converts the excitation to the speech domain is performed by a linear predictive synthesizer 123, which commonly applies a filtering function 1/A(z) to the output excitation signal 121, r(i), an operation known
as synthesis. The synthesis may or may not be combined with, preceded by, or followed by an additional filtering, which is used to enhance the perceived quality of the reconstructed speech. Such an additional enhancement filtering is commonly known as
post-filtering. When no error occurs, the decoded LPC parameters 122, A.sub.n, are used for an LPC synthesizer 123, and the parameters P.sub.1 (n) 114, . . . , P.sub.M (n) 115 are input to an excitation synthesizer 116. The excitation signal r(i) 121
is output from the excitation synthesizer 116, and is input to the LPC synthesis filter 1/A(z) 123. The speech signal s(i) on line 124 is output from the synthesis 123.
The physical structure of the excitation signal decoder 116, and LPC synthesizer, for decoding of signals such as speech is a matter well known to those skilled in the art. Functionally, the excitation signal decoder 116, examines a plurality of
parameters A.sub.n 122, and P.sub.1 (n) 114, . . . , P.sub.M (n) 115 and fetches one or more entries from codebook tables 117 stored in excitation signal decoder 116 to locate a table that is associated with, or that most closely corresponds with, the
specific values of input parameters input into the excitation signal decoder 116. The table entries in the codebook table 117 may be updated and augmented after parameters for each new frame are received. In such case, new and/or amended table entries
are calculated by excitation signal decoder 116 as the output LPC synthesis filter 1/A(z) 123 produces reconstructed signal output. These calculations are mathematical functions based upon the values of a given set of parameters, the values retrieved
from the codebook tables, and the resulting output signal at the reconstructed signal output 124. The use of accurate codebook table entries 117 results in the generation of reconstructed signal for future frames, which most closely approximates the
original input signal. The reconstructed signal is produced at the reconstructed signal output 124. If incorrect or garbled parameters are received at excitation signal decoder 116, incorrect table parameters will be calculated and placed into the
codebook tables 117. As discussed previously, these parameters can be garbled and/or corrupted due to the occurrence of frame erasure or bit errors. These frame erasures or bit errors will degrade the integrity of the codebook tables 117. A codebook
table 117 having incorrect table entry values will cause the generation of distorted, garbled reconstructed signal output 124 in subsequent frames.
Excitation signal decoder 116 is equipped with memory used to store parameters from present frame 120, and from Q frames 119 that precede frame n. If no frame erasure has been detected by frame erasure/error detector 12, then the extracted code
vectors are computed by excitation signal decoder 116 on line 121. If a frame erasure is detected by frame erasure/error detector 12, then the excitation signal decoder 116 can be used to compensate for the missing frame. In the presence of frame
erasure or bit errors, the excitation signal decoder 116 will not receive reliable values of decoded parameters A.sub.n 122, and P.sub.1 (n) 114, . . . , P.sub.M (n) 115, for the case where the frame n is erased. Under these circumstances, the
excitation signal decoder 116 is presented with insufficient information to enable the retrieval of code vectors from the excitation signal decoder memory 118. If frame n had not been erased, these code vectors would be retrieved from the excitation
signal decoder memory 118 based upon the parameter values stored in excitation signal decoder past memory 119. In this case, since the present frame parameter present memory 120 is not loaded with accurate parameters corresponding to frame n, the
excitation signal decoder must generate a substitute excitation signal for use in reconstructing the output signal. This substitute excitation signal should be produced in a manner so as to accurately and efficiently compensate for the erased frame.
Such an operation is called error concealment, and it is performed by the error concealment device 125, which typically uses techniques such as parameter (or signal) interpolation, extrapolation, or both. The implementation of such concealment
techniques for speech signal decoders is well known to those skilled in the art.
FIG. 4 is a data structure diagram utilized in conjunction with a prior art signal compression method and possibly in conjunction with the systems and methods of FIG. 1-FIG. 3. At time T.sub.n-1, the encoders encodes input frame (n-1) 401 having
length T, for which it uses some look-ahead buffered data 402 of length .DELTA. that is usually used for computing and encoding the input analysis transformation 02 (or 102). Similarly, at time T.sub.n, to encode frame n 403, analysis look-ahead
buffered data 404 is used. Similarly, at time T.sub.n+2, to encode frame (n+2) 406, analysis look-ahead buffered data 407 is used. As illustrated in FIG. 4, the bits describing the parameters corresponding to frame (n+1) 405 are lost during the
transmission, and therefore they are not available to the decoder. Prior art decoder will at best applies error concealment techniques, which are commonly based on interpolation or extrapolation (or both), to reconstruct approximation of a whole erased
frame (n+1) 408. The decoder output data is marked by the black underline 409. Note that the number of frames to which error concealment is applied could be a greater number of frames than that shown in FIG. 4. Whenever frame erasure is detected, the
prior art decoder has no way to exactly reconstruct the erased frame or frames or any part of a frame, it uses error concealment techniques to reconstruct approximation to the erased frame or frames.
FIG. 5 is a data structure diagram for use with the signal compression methods disclosed herein, and which may be utilized in conjunction with the systems and methods of FIGS. 1-3, 11, and/or 12. The encoder encodes a super-frame (n-1) 501
having length (T+.DELTA.), that consists of a frame 502 having length T, and some coded look-ahead 503 having length .DELTA., such that it is longer than one frame but shorter than two frames. The coded look-ahead length 503 may or may not be equal to
the analysis look-ahead 504. At time T.sub.n-1, for the frame (n-1), the decoder decodes only the T-length frame part 502 of the encoded super-frame 501. Similarly, at time T.sub.n, the encoder encodes super-frame n 505, that consists of a frame 506
and some look-ahead 507, such that it is longer than one frame but shorter than two frames. Similarly, at time T.sub.n+2, the encoder encodes super-frame (n+2) 510, that consists of a frame 511 and some look-ahead 513, such that it is longer than one
frame but shorter than two frames.
As illustrated in FIG. 5, the bits describing the parameters corresponding to frame (n+1) 509 are lost during the transmission, and therefore they are not available at the decoder. For frames (n-1), and (n+2), the decoder decodes only the
T-length frame part of the associated super-frame. Since frame (n+1) is lost, the decoder decodes the whole super-frame n, which overlaps with part of frame (n+1), and the rest of frame (n+1) 512 is approximated by error concealment techniques, which
are commonly based on interpolation or extrapolation (or both). This present embodiment reduces 512 the part of lost frame that is approximated by error concealment techniques from T-length segment to (T-.DELTA.)length segment. When the coded
look-ahead length 503 is smaller than or equal to the analysis look-ahead 504, the present embodiment adds no delay to the coding system, and therefore may be very useful for applications in which the delay is limited.
FIG. 6 is a data structure diagram for use with the signal compression methods disclosed herein, and which may be utilized in conjunction with the systems and methods of FIGS. 1-3, 11, and/or 12. The encoder encodes a super-frame (n-1) 601, that
consists of a frame 602 having length T, and coded look-ahead 603 having length T, such that its length is equal to two frames, i.e. (2T). In general, the coded look-ahead length 603 may or may not be equal to the analysis look-ahead 604. At time
T.sub.n-1, for the frame (n-1), the decoder decodes only the frame part 602 of the encoded super-frame 601. Similarly, at time T.sub.n, the encoder encodes super-frame n 605, that consists of a frame 606 and some coded look-ahead 607, such that its
length is equal to two frames. Similarly, at time T.sub.n+2, the encoder encodes super-frame (n+2) 610, that consists of a frame 611 and some look-ahead 612, such that its length is equal to two frames.
As illustrated in FIG. 6, the bits describing the parameters corresponding to frame (n+1) 609 are lost during the transmission, and therefore they are not available to the decoder. The decoder decodes the whole super-frame n, which overlaps with
frame (n+1) which therefore can be fully reconstructed in spite of the erased super-frame (n+1) 609,and nothing is needed to be approximated by error concealment techniques. This present embodiment eliminates the use of error concealment approximation
techniques for the reconstruction of one erased frame. In case where more than one frame is erased, then one frame may still be reconstructed by the present embodiment, and the rest may be approximated by common error co | | |