U.S. patent application number 11/843289 was filed with the patent office on 2008-06-05 for frame error concealment method and apparatus and error concealment scheme construction method and apparatus.
This patent application is currently assigned to Samsung Electronics Co., Ltd.. Invention is credited to Ki-hyun Choo, Jung-hoe Kim, Kang-eun Lee, Eun-mi Oh, Chang-yong Son, Ho-sang SUNG.
Application Number | 20080133242 11/843289 |
Document ID | / |
Family ID | 39468020 |
Filed Date | 2008-06-05 |
United States Patent
Application |
20080133242 |
Kind Code |
A1 |
SUNG; Ho-sang ; et
al. |
June 5, 2008 |
FRAME ERROR CONCEALMENT METHOD AND APPARATUS AND ERROR CONCEALMENT
SCHEME CONSTRUCTION METHOD AND APPARATUS
Abstract
Provided are a frame error concealment method and apparatus and
an error concealment scheme construction method and apparatus. The
frame error concealment method includes generating a new signal by
synthesizing a plurality of previous signals that are similar to a
signal of an error frame and reconstructing the signal of the error
frame using the generated signal.
Inventors: |
SUNG; Ho-sang; (Yongin-si,
KR) ; Choo; Ki-hyun; (Seoul, KR) ; Kim;
Jung-hoe; (Seoul, KR) ; Oh; Eun-mi;
(Seongnam-si, KR) ; Son; Chang-yong; (Gunpo-si,
KR) ; Lee; Kang-eun; (Gangneung-si, KR) |
Correspondence
Address: |
STANZIONE & KIM, LLP
919 18TH STREET, N.W., SUITE 440
WASHINGTON
DC
20006
US
|
Assignee: |
Samsung Electronics Co.,
Ltd.
Suwon-si
KR
|
Family ID: |
39468020 |
Appl. No.: |
11/843289 |
Filed: |
August 22, 2007 |
Current U.S.
Class: |
704/262 ;
704/E19.003 |
Current CPC
Class: |
G10L 19/005 20130101;
G10L 19/0017 20130101; G10L 19/022 20130101 |
Class at
Publication: |
704/262 |
International
Class: |
G10L 13/00 20060101
G10L013/00 |
Foreign Application Data
Date |
Code |
Application Number |
Nov 30, 2006 |
KR |
2006-120107 |
Claims
1. A frame error concealment method comprising: (a) extracting a
first signal and a second signal that are similar to a signal of a
current frame having an error from a previous frame preceding the
current frame; (b) generating a synthetic signal for reconstructing
the signal of the current frame using the extracted first signal
and second signal; and (c) reconstructing the signal of the current
frame using the generated synthetic signal.
2. The frame error concealment method of claim 1, wherein (a)
comprises: (a1) searching in the previous frame for a first block
and a second block that are similar to a previous block located
immediately previous to the current frame; and (a2) extracting the
first signal and the second signal by referring to the positions of
the found first block and second block.
3. The frame error concealment method of claim 2, wherein the first
block and the second block have the highest correlation with the
previous block.
4. The frame error concealment method of claim 2, wherein (a2)
comprises: extracting the first signal including the first block
and a next signal of a predetermined length, which follows the
first block; and extracting the second signal including the second
block and a next signal of the predetermined length, which follows
the second block.
5. The frame error concealment method of claim 2, wherein (b)
comprises: (b1) windowing the extracted first signal and second
signal; and (b2) overlapping and adding the windowed first signal
and second signal.
6. The frame error concealment method of claim 5, wherein (b1)
comprises: (b11) determining a first window function for windowing
the first signal based on correlation between the first block and
the previous block and determining a second window function for
windowing the second signal based on correlation between the second
block and the previous block; and (b12) windowing the first signal
and the second signal by multiplying the first signal by the
determined first window function and multiplying the second signal
by the determined second window function.
7. The frame error concealment method of claim 6, wherein (b11)
comprises determining the first window function and the second
window function so that the first window function and the second
window function are summed as 1.
8. The frame error concealment method of claim 7, wherein (b11)
comprises determining the first window function based on the
correlation between the first block and the previous block and
determining the second window function based on the correlation
between the second block and the previous block.
9. The frame error concealment method of claim 8, wherein (b11)
comprises determining the first window function and the second
window function so that the greater weight is applied to one of the
first signal and the second signal whose block has the higher
correlation with the previous block.
10. The frame error concealment method of claim 8, wherein (b11)
comprises determining the first window function and the second
window function so that one of the first signal and the second
signal whose block has the higher correlation with the previous
block is faded out and the other is faded in.
11. The frame error concealment method of claim 8, wherein (b11)
comprises determining a window function multiplied by one of the
first signal and the second signal whose block has the higher
correlation with the previous block as F(x) and determining a
window function multiplied by the other as 1-F(x), as follows: F (
x ) = ( 1 - x m ) k , ( 1 ) ##EQU00006## where m is the length of
the time axis of the first signal or the second signal and x is a
time-axis coordinate of the window function with respect to the
starting point of the first signal or the second signal.
12. The frame error concealment method of claim 11, wherein k is
determined as follows: k=1-BC1-BC2/2 (2), where BC1 is a
correlation between the first block and the previous block and BC2
is a correlation between the second block and the previous
block.
13. The frame error concealment method of claim 1, wherein (c)
comprises repeating the synthetic signal at least once in the
current frame.
14. The frame error concealment method of claim 13, wherein (c)
further comprises overlapping and adding a portion of a previous
signal preceding the synthetic signal and a portion of the
synthetic signal to smooth the previous signal and the synthetic
signal.
15. The frame error concealment method of claim 13, wherein (c)
further comprises overlapping and adding a portion of a next signal
following the synthetic signal and a portion of the synthetic
signal to smooth the next signal and the synthetic signal.
16. A frame error concealment method comprising: extracting a
plurality of signals that are similar to a signal of a current
frame having an error from a previous frame preceding the current
frame; generating a synthetic signal for reconstructing the signal
of the current frame using the extracted plurality of signals; and
reconstructing the signal of the current frame using the generated
synthetic signal.
17. An error concealment scheme construction method comprising: (a)
analyzing error concealment conditions of a previous frame
preceding and a next frame following a current frame having an
error; and (b) selecting an error concealment scheme for the
current frame from among an overlapping method, a repetition
method, and an interpolation method in a time domain based on the
analysis result.
18. The error concealment scheme construction method of claim 17,
wherein (a) comprises analyzing at least one of whether an error
occurs in the previous frame and if so, an error concealment scheme
for the previous frame, whether an error occurs in the next frame,
and whether the overlapping method has been used continuously over
a predetermined number of times to conceal the error of the
previous frame.
19. The error concealment scheme construction method of claim 18,
wherein (b) comprises selecting the overlapping method as the error
concealment scheme for the current frame when the previous frame is
a good frame having no error.
20. The error concealment scheme construction method of claim 18,
wherein (b) comprises selecting one of the overlapping method and
the interpolation method as the error concealment scheme for the
current frame when the repetition method has been used for the
previous frame.
21. The error concealment scheme construction method of claim 18,
wherein (b) comprises selecting one of the repetition method and
the interpolation method as the error concealment scheme for the
current frame when the repetition method has been used for the
previous frame continuously over the predetermined number of
times.
22. The error concealment scheme construction method of claim 18,
wherein (b) comprises selecting the interpolation method as the
error concealment scheme for the current frame when the next frame
is a good frame having no error.
23. An adaptive frame error concealment method comprising:
selecting one of an overlapping method, a repetition method, and an
interpolation method in a time domain as an error concealment
scheme for a current frame having an error based on error
concealment conditions of a previous frame preceding and a next
frame following the current frame; and concealing the error using
the selected error concealment scheme.
24. A computer-readable medium containing computer-readable codes
to perform a frame error method comprising (a) extracting a first
signal and a second signal that are similar to a signal of a
current frame having an error from a previous frame preceding the
current frame; (b) generating a synthetic signal for reconstructing
the signal of the current frame using the extracted first signal
and second signal; and (c) reconstructing the signal of the current
frame using the generated synthetic signal.
25. A frame error concealment apparatus comprising: a similar
signal extraction unit extracting a first signal and a second
signal that are similar to a signal of a current frame having an
error from a previous frame preceding the current frame; a
synthetic signal generation unit generating a synthetic signal for
reconstructing the signal of the current frame using the extracted
first signal and second signal; and a reconstruction unit
reconstructing the signal of the current frame using the generated
synthetic signal.
26. The frame error concealment apparatus of claim 25, wherein the
similar signal extraction unit searches in the previous frame for a
first block and a second block that are similar to a previous block
located immediately previous to the current frame and extracts the
first signal and the second signal by referring to the positions of
the found first block and second block.
27. The frame error concealment apparatus of claim 26, wherein the
first block and the second block have the highest correlation with
the previous block.
28. The frame error concealment apparatus of claim 26, wherein the
similar signal extraction unit extracts the first signal including
the first block and a next signal of a predetermined length, which
follows the first block, and extracts the second signal including
the second block and a next signal of the predetermined length,
which follows the second block.
29. The frame error concealment apparatus of claim 26, wherein the
synthetic signal generation unit comprises: a windowing unit
windowing the extracted first signal and second signal; and a
synthesis unit overlapping and adding the windowed first signal and
second signal.
30. The frame error concealment apparatus of claim 29, wherein the
windowing unit comprises: a window function determination unit
determining a first window function for windowing the first signal
based on correlation between the first block and the previous block
and determining a second window function for windowing the second
signal based on correlation between the second block and the
previous block; and a multiplication unit windowing the first
signal and the second signal by multiplying the first signal by the
determined first window function and multiplying the second signal
by the determined second window function.
31. The frame error concealment apparatus of claim 30, wherein the
window function determination unit determines the first window
function and the second window function so that the first window
function and the second window function are summed as 1.
32. The frame error concealment apparatus of claim 31, wherein the
window function determination unit determines the first window
function based on the correlation between the first block and the
previous block and determines the second window function based on
the correlation between the second block and the previous
block.
33. The frame error concealment apparatus of claim 32, wherein the
window function determination unit determines the first window
function and the second window function so that the greater weight
is applied to one of the first signal and the second signal whose
block has the higher correlation with the previous block.
34. The frame error concealment apparatus of claim 32, wherein the
window function determination unit determines the first window
function and the second window function so that one of the first
signal and the second signal whose block has the higher correlation
with the previous block is faded out and the other is faded in.
35. The frame error concealment apparatus of claim 32, wherein the
window function determination unit determines a window function
multiplied by one of the first signal and the second signal whose
block has the higher correlation with the previous block as F(x)
and determines a window function multiplied by the other as 1-F(x),
as follows: F ( x ) = ( 1 - x m ) k , ( 1 ) ##EQU00007## where m is
the length of the time axis of the first signal or the second
signal and x is a time-axis coordinate of the window function with
respect to the starting point of the first signal or the second
signal.
36. The frame error concealment apparatus of claim 35, wherein k is
determined as follows: k=1-BC1-BC2/2 (2), where BC1 is a
correlation between the first block and the previous block and BC2
is a correlation between the second block and the previous
block.
37. The frame error concealment apparatus of claim 25, wherein the
reconstruction unit repeats the synthetic signal at least once in
the current frame.
38. A frame error concealment apparatus comprising: a similar
signal extraction unit extracting a plurality of signals that are
similar to a signal of a current frame having an error from a
previous frame preceding the current frame; a synthetic signal
generation unit generating a synthetic signal for reconstructing
the signal of the current frame using the extracted plurality of
signals; and a reconstruction unit reconstructing the signal of the
current frame using the generated synthetic signal.
39. An error concealment scheme construction apparatus comprising:
an analysis unit analyzing error concealment conditions of a
previous frame preceding and a next frame following a current frame
having an error; and a selection unit selecting an error
concealment scheme for the current frame from among an overlapping
method, a repetition method, and an interpolation method in a time
domain based on the analysis result.
40. The error concealment scheme construction apparatus of claim
39, wherein the analysis unit analyzes at least one of whether an
error occurs in the previous frame and if so, an error concealment
scheme for the previous frame, whether an error occurs in the next
frame, and whether the overlapping method has been used
continuously over a predetermined number of times to conceal the
error of the previous frame.
41. The error concealment scheme construction apparatus of claim
39, wherein the selection unit selects the overlapping method as
the error concealment scheme for the current frame when the
previous frame is a good frame having no error.
42. The error concealment scheme construction apparatus of claim
39, wherein the selection unit selects one of the overlapping
method and the interpolation method as the error concealment scheme
for the current frame when the repetition method has been used for
the previous frame.
43. The error concealment scheme construction apparatus of claim
39, wherein the selection unit selects one of the repetition method
and the interpolation method as the error concealment scheme for
the current frame when the repetition method has been used for the
previous frame continuously over the predetermined number of
times.
44. The error concealment scheme construction apparatus of claim
39, wherein the selection unit selects the interpolation method as
the error concealment scheme for the current frame when the next
frame is a good frame having no error.
45. An adaptive frame error concealment apparatus comprising: an
error concealment scheme selection unit selecting one of an
overlapping method, a repetition method, and an interpolation
method in a time domain as an error concealment scheme for a
current frame having an error based on error concealment conditions
of a previous frame preceding and a next frame following the
current frame; and an error concealment unit concealing the error
using the selected error concealment scheme.
Description
CROSS-REFERENCE TO RELATED APPLICATIONS
[0001] This application claims the benefit of Korean Patent
Application No. 10-2006-0120107, filed on Nov. 30, 2006, in the
Korean Intellectual Property Office, the disclosure of which is
incorporated herein in its entirety by reference.
BACKGROUND OF THE INVENTION
[0002] 1. Field of the Invention
[0003] The present invention relates to a method of and apparatus
for concealing an error of a frame in the time domain, and more
particularly, to a frame error concealment method and apparatus, in
which an error of a frame, i.e., a frame error, is concealed by
reconstructing a signal of the frame using a signal of a previous
frame preceding the error frame and/or a signal of a next frame
following the error frame.
[0004] 2. Description of the Related Art
[0005] When some packets are lost or distorted during transmission
of an encoded audio signal over a wired/wireless network, an error
may be generated in a frame of a decoded audio signal due to a
transmission error. Error concealment may be classified into a
frequency-domain error concealment scheme and a time-domain error
concealment scheme. The frequency-domain error concealment scheme
may be divided into a repetition method that reconstructs a signal
of an error frame by reusing spectrum coefficients of a previous
frame in the error frame and an interpolation method that
reconstructs spectrum coefficients of an error frame by
interpolating spectrum coefficients of a previous frame and a next
frame. However, due to characteristics of Modulated Discrete Cosine
Transformation (MDCT) that transforms a time-domain signal into a
frequency-domain signal, when the window types of a previous frame
and the current frame are different from each other or a burst
error occurs, an error of a frame, i.e., a frame error, cannot be
concealed using the repetition method or the interpolation method
in the frequency domain. In this case, therefore, time-domain error
concealment is required.
[0006] The time-domain error concealment scheme can also be divided
into a repetition method that repetitively reproduces a time-domain
sample of a previous frame in an error frame, an interpolation
method that reconstructs a time-domain sample of an error frame by
interpolating time-domain samples of a previous frame and a next
frame, and other methods that reconstruct a signal of an error
frame by analyzing a signal of a previous frame. However, in the
case of the repetition method in the time domain, when an error
occurs over a long interval, the same spectrum signal of a previous
frame is repeated over the long interval, causing modulation noise.
Moreover, since the interpolation method in the time domain
conceals an error with reference to a next frame, it is not easy to
use the interpolation method when an error occurs over a long
interval. The other methods for time-domain error concealment
increase complexity due to the analysis of a signal of a previous
frame.
SUMMARY OF THE INVENTION
[0007] The present invention provides a frame error concealment
method and apparatus using an overlapping method that prevents
modulation noise from occurring by synthesizing a plurality of
previous signals to reconstruct a signal of an error frame.
[0008] The present invention also provides an error concealment
scheme construction method and apparatus, in which a plurality of
time-domain frame error concealment methods including the
overlapping method are properly combined in order to construct an
error concealment scheme for concealing frame errors occurring in a
plurality of frames in the time domain, thereby maximizing the
sound quality of reconstructed signals of the error frames.
[0009] The present invention also provides an adaptive frame error
concealment method and apparatus, in which an error concealment
scheme for concealing frame errors occurring in a plurality of
frames is constructed using the frame error concealment scheme
construction method and the frame errors are concealed using the
constructed error concealment scheme, thereby maximizing the sound
quality of reconstructed signals of the error frames.
[0010] The present invention also provides a computer-readable
recording medium having recorded thereon a program for implementing
one of the frame error concealment method using the overlapping
method, the error concealment scheme construction method, and the
adaptive frame error concealment method.
[0011] According to one aspect of the present invention, there is
provided a frame error concealment method including (a) extracting
a first signal and a second signal that are similar to a signal of
a current frame having an error from a previous frame preceding the
current frame, (b) generating a synthetic signal for reconstructing
the signal of the current frame using the extracted first signal
and second signal, and (c) reconstructing the signal of the current
frame using the generated synthetic signal.
[0012] (a) may include (a1) searching in the previous frame for a
first block and a second block that are similar to a previous block
located immediately previous to the current frame and (a2)
extracting the first signal and the second signal by referring to
the positions of the found first block and second block.
[0013] (b) may include (b1) windowing the extracted first signal
and second signal and (b2) overlapping and adding the windowed
first signal and second signal.
[0014] (b1) may include (b11) determining a first window function
for windowing the first signal based on correlation between the
first block and the previous block and determining a second window
function for windowing the second signal based on correlation
between the second block and the previous block and (b12) windowing
the first signal and the second signal by multiplying the first
signal by the determined first window function and multiplying the
second signal by the determined second window function.
[0015] (b11) may include determining the first window function and
the second window function so that the first window function and
the second window function are summed as 1. (b11) may include
determining the first window function based on the correlation
between the first block and the previous block and determining the
second window function based on the correlation between the second
block and the previous block. (b11) may include determining the
first window function and the second window function so that the
greater weight is applied to one of the first signal and the second
signal whose block has the higher correlation with the previous
block. (b11) may include determining the first window function and
the second window function so that one of the first signal and the
second signal whose block has the higher correlation with the
previous block is faded out and the other is faded in.
[0016] (c) may include repeating the synthetic signal at least once
in the current frame.
[0017] According to another aspect of the present invention, there
is provided a frame error concealment method including extracting a
plurality of signals that are similar to a signal of a current
frame having an error from a previous frame preceding the current
frame, generating a synthetic signal for reconstructing the signal
of the current frame using the extracted plurality of signals, and
reconstructing the signal of the current frame using the generated
synthetic signal.
[0018] According to another aspect of the present invention, there
is provided an error concealment scheme construction method
including (a) analyzing error concealment conditions of a previous
frame preceding and a next frame following a current frame having
an error and (b) selecting an error concealment scheme for the
current frame from among an overlapping method, a repetition
method, and an interpolation method in a time domain based on the
analysis result.
[0019] (a) may include analyzing at least one of whether an error
occurs in the previous frame and if so, an error concealment scheme
for the previous frame, whether an error occurs in the next frame,
and whether the overlapping method has been used continuously over
a predetermined number of times to conceal the error of the
previous frame.
[0020] According to another aspect of the present invention, there
is provided an adaptive frame error concealment method including
selecting one of an overlapping method, a repetition method, and an
interpolation method in a time domain as an error concealment
scheme for a current frame having an error based on error
concealment conditions of a previous frame preceding and a next
frame following the current frame and concealing the error using
the selected error concealment scheme.
[0021] According to another aspect of the present invention, there
is provided a frame error concealment apparatus including a similar
signal extraction unit, a synthetic signal generation unit, and a
reconstruction unit. The similar signal extraction unit extracts a
first signal and a second signal that are similar to a signal of a
current frame having an error from a previous frame preceding the
current frame. The synthetic signal generation unit generates a
synthetic signal for reconstructing the signal of the current frame
using the extracted first signal and second signal. The
reconstruction unit reconstructs the signal of the current frame
using the generated synthetic signal.
[0022] The similar signal extraction unit may search in the
previous frame for a first block and a second block that are
similar to a previous block located immediately previous to the
current frame and extracts the first signal and the second signal
by referring to the positions of the found first block and second
block.
[0023] The first block and the second block may have the highest
correlation with the previous block.
[0024] The synthetic signal generation unit may include a windowing
unit windowing the extracted first signal and second signal and a
synthesis unit overlapping and adding the windowed first signal and
second signal.
[0025] The windowing unit may include a window function
determination unit and a multiplication unit. The window function
determination unit determines a first window function for windowing
the first signal based on correlation between the first block and
the previous block and determines a second window function for
windowing the second signal based on correlation between the second
block and the previous block. The multiplication unit windows the
first signal and the second signal by multiplying the first signal
by the determined first window function and multiplying the second
signal by the determined second window function.
[0026] The window function determination unit may determine the
first window function and the second window function so that the
first window function and the second window function are summed as
1. The window function determination unit may determine the first
window function based on the correlation between the first block
and the previous block and determine the second window function
based on the correlation between the second block and the previous
block. The window function determination unit may determine the
first window function and the second window function so that the
greater weight is applied to one of the first signal and the second
signal whose block has the higher correlation with the previous
block. The window function determination unit may determine the
first window function and the second window function so that one of
the first signal and the second signal whose block has the higher
correlation with the previous block is faded out and the other is
faded in.
[0027] The reconstruction unit may repeat the synthetic signal at
least once in the current frame.
[0028] According to another aspect of the present invention, there
is provided a frame error concealment apparatus including a similar
signal extraction unit, a synthetic signal generation unit, and a
reconstruction unit. The similar signal extraction unit extracts a
plurality of signals that are similar to a signal of a current
frame having an error from a previous frame preceding the current
frame. The synthetic signal generation unit generates a synthetic
signal for reconstructing the signal of the current frame using the
extracted plurality of signals. The reconstruction unit
reconstructs the signal of the current frame using the generated
synthetic signal.
[0029] According to another aspect of the present invention, there
is provided an error concealment scheme construction apparatus
including an analysis unit and a selection unit. The analysis unit
analyzes error concealment conditions of a previous frame preceding
and a next frame following a current frame having an error. The
selection unit selects an error concealment scheme for the current
frame from among an overlapping method, a repetition method, and an
interpolation method in a time domain based on the analysis
result.
[0030] The analysis unit may analyze at least one of whether an
error occurs in the previous frame and if so, an error concealment
scheme for the previous frame, whether an error occurs in the next
frame, and whether the overlapping method has been used
continuously over a predetermined number of times to conceal the
error of the previous frame.
[0031] According to another aspect of the present invention, there
is provided an adaptive frame error concealment apparatus including
an error concealment scheme selection unit and an error concealment
unit. The error concealment scheme selection unit selects one of an
overlapping method, a repetition method, and an interpolation
method in a time domain as an error concealment scheme for a
current frame having an error based on error concealment conditions
of a previous frame preceding and a next frame following the
current frame. The error concealment unit conceals the error using
the selected error concealment scheme.
[0032] According to another aspect of the present invention, there
is provided a computer-readable recording medium having recorded
thereon a program for implementing one of the frame error
concealment method, the error concealment scheme construction
method, and the adaptive frame error concealment method.
BRIEF DESCRIPTION OF THE DRAWINGS
[0033] The above and other features and advantages of the present
invention will become more apparent by describing in detail
exemplary embodiments thereof with reference to the attached
drawings in which:
[0034] FIG. 1 is a reference diagram for explaining a frame error
concealment method using a repetition method according to an
exemplary embodiment of the present invention;
[0035] FIG. 2 is a flowchart illustrating a frame error concealment
method using an overlapping method according to an exemplary
embodiment of the present invention;
[0036] FIG. 3 is a reference diagram for explaining a frame error
concealment method using an overlapping method according to an
exemplary embodiment of the present invention;
[0037] FIGS. 4A, 4B and 4C are reference diagrams for explaining
the determination of a first window function and a second window
function illustrated in FIG. 2;
[0038] FIG. 5 is a block diagram of a frame error concealment
apparatus using an overlapping method according to an exemplary
embodiment of the present invention;
[0039] FIG. 6 is a reference diagram for explaining a frame error
concealment method using an interpolation method according to an
exemplary embodiment of the present invention;
[0040] FIG. 7 is a flowchart illustrating an adaptive frame error
concealment method using an error concealment scheme construction
method according to an exemplary embodiment of the present
invention;
[0041] FIG. 8 is a reference diagram for explaining the influence
of a frame error in a frequency domain upon a frame in a time
domain;
[0042] FIGS. 9A through 9C are reference diagrams illustrating
error concealment schemes constructed by an error concealment
scheme construction method according to an exemplary embodiment of
the present invention; and
[0043] FIG. 10 is a block diagram of an adaptive frame error
concealment apparatus including an error concealment scheme
construction apparatus according to an exemplary embodiment of the
present invention.
DETAILED DESCRIPTION OF THE PREFERRED EMBODIMENTS
[0044] Hereinafter, a frame error concealment method and apparatus
using an overlapping method, an error concealment construction
method and apparatus, and an adaptive frame error concealment
method and apparatus according to exemplary embodiments of the
present invention will be described in detail with reference to the
accompanying drawings.
[0045] First, a frame error concealment method using an overlapping
method (hereinafter, referred to as an overlapping method)
according to an exemplary embodiment of the present invention will
be described. Prior to the explanation of the overlapping method, a
frame error concealment method using a repetition method
(hereinafter, referred to as a repetition method) will be
described.
[0046] FIG. 1 is a reference diagram for explaining the repetition
method according to an exemplary embodiment of the present
invention. The repetition method searches in a previous frame for a
signal that is similar to a signal of the current frame having an
error and copies the found signal to the current frame, thereby
reconstructing a signal of the current frame.
[0047] Once it is determined that an error occurs in the current
nth frame 100, a similar block 120 having the highest correlation
with a signal of a previous block 110 located immediately previous
to the n.sup.th frame 100 is searched for in a search region of a
previous frame preceding the current n.sup.th frame 100. For
example, the correlation can be calculated as follows:
R ( d ) = k = 0 K S ( k ) S ( k - d ) k = 0 K S 2 k = 0 K S 2 ( k -
d ) , ( 1 ) ##EQU00001##
[0048] where R(d) is a correlation, S(n) is a signal of a previous
frame, and d is the position of a sample in a search region. As
illustrated in FIG. 1, once the similar block 120 having the
highest correlation with the previous block 110 is found, a
previous signal 150 including the found similar block 120 and the
following next signals 130 and 140 of a predetermined length are
copied to an error frame. Referring to FIG. 1, the previous signal
150 includes the signal 130 that is directly output as a signal of
the n.sup.th frame 100, the similar block 120 preceding the signal
130, and the overlapping block 140 of the same size as the similar
block 120, which follows the signal 130. The reason why the similar
block 120 and the overlapping block 140, together with the signal
130, are copied to the n.sup.th frame 100 is to prevent a
discontinuous signal from being output at a boundary between an
(n-1).sup.th frame and the n.sup.th frame by overlapping and adding
the previous block 110 at the boundary of the (n-1).sup.th frame to
the similar block 120 copied to the n.sup.th frame. Similarly, the
reason why the overlapping block 140, together with the signal 130,
is copied to the n.sup.th frame is to prevent discontinuity at the
boundary between the (n-1).sup.th frame and the n.sup.th frame by
overlapping and adding the overlapping block 140 copied to the
n.sup.th frame to a start portion of an (n+1).sup.th frame when the
n.sup.th frame and the (n+1).sup.th frame are good frames. Thus,
when a window function is used on a signal of the (n-1).sup.th
frame to reconstruct the n.sup.th frame by copying the signal of
the (n-1).sup.th frame, the size of the window function may be
determined using a linear function, a polynomial function, or a
trigonometric function in the similar block 120 or the overlapping
block 140 where overlapping occurs and a rectangular window may be
used in the signal 130 where overlapping does not occur. Here, it
has to be noted that weights applied to two functions in the
overlapping of two blocks are summed as 1. Therefore, for using a
window function on a block that overlaps the similar block 120 or
the overlapping block 140, it is desirable to use a window that is
out of phase with a window used for the similar block 120 or the
overlapping block 140.
[0049] However, as mentioned above, when a previous signal is
repeated over a long interval, the repetition method may cause
modulation noise due to repetition of a signal having the same
spectrum over the long interval. Therefore, it is necessary to
prevent the occurrence of modulation noise while reconstructing an
error frame using a previous signal.
[0050] Hereinafter, an overlapping method according to an exemplary
embodiment of the present invention will be described with
reference to FIGS. 2 and 3. FIG. 2 is a flowchart illustrating an
overlapping method according to an exemplary embodiment of the
present invention, and FIG. 3 is a reference diagram for explaining
the overlapping method according to an exemplary embodiment of the
present invention. The overlapping method searches in a previous
frame for a plurality of signals that are similar to a signal of
the current error frame, generates a new signal by synthesizing the
found signals, and copies the generated new signal to the current
error frame, thereby reconstructing the signal of the current error
frame.
[0051] Referring to FIGS. 2 and 3, in operation 200, it is
determined whether an error occurs in the current n.sup.th frame
300.
[0052] When it is determined that an error occurs in the n.sup.th
frame 300 in operation 200, two similar blocks having the highest
correlation with a signal of a previous block 310 located
immediately previous to the n.sup.th frame 300 are searched for in
a search region of a previous frame in operation 210. Let the first
found similar block be a first similar block 320 and let the second
found similar block be a second similar block 325.
[0053] In operations 220 through 240, a first previous signal 350
including the found first similar block 320 and its following first
next signal 330 of a predetermined length and a second previous
signal 355 including the found second similar block 325 and its
following second next signal 335 of a predetermined length are
synthesized in order to generate a synthetic signal 360 for
reconstructing the n.sup.th frame 300. Referring to FIG. 3, the
synthetic signal 360 includes a similar block 370, a portion 380
that is directly used for reconstructing a signal of the n.sup.th
frame 300, and an overlapping block 390.
[0054] Since the first similar block 320 and the second similar
block 325 have the highest correlation with the previous block 310,
consecutive next signals 330 and 340 following the first similar
block 320 and consecutive next signals 335 and 345 following the
second similar block 325 may be similar to the signal of the
n.sup.th frame 300. Here, as mentioned previously, the first
similar block 320 and the first overlapping (OV) block 340 are
included in the first previous signal 350, and the second similar
block 325 and the second overlapping block 345 are included in the
second overlapping (OV) block 345, so as to cause the synthetic
signal 360 to include the similar block 370 and the overlapping
block 390, thereby preventing the occurrence of discontinuity at
the boundary between the synthetic signal 360 and a signal that has
been output before or is to be output after the synthetic signal
360 when the synthetic signal 360 is copied to the current frame.
In other words, the synthetic signal 360 can be smoothed by
overlapping and adding the similar block 370 to the signal
preceding the synthetic signal 360 or overlapping and adding the
overlapping block 390 to the signal following the synthetic signal
360.
[0055] Hereinafter, operations 220 through 240 for generating the
synthetic signal 360 by synthesizing the first previous signal 350
and the second previous signal 355 will be described in more
detail.
[0056] In operation 220, a first window function for windowing the
first previous signal 350 and a second window function for
windowing the second previous signal 355 are determined based on a
correlation between the first similar block 320 and the previous
block 310 and based on a correlation between the second similar
block 325 and the previous block 310, respectively. Here, it is
preferable that the first window function and the second window
function be summed as 1. It is also desirable to determine the
first window function and the second window function so that the
greater weight is applied to one of the first previous signal 350
and the second previous signal 355 whose block has the higher
correlation with the previous block 310. By doing so, a previous
signal, which is more similar to a signal of an error frame than
the other previous signal, is used as the larger part of the
synthetic signal 360 generated by synthesizing the first previous
signal 350 and the second previous signal 355 that are windowed by
being multiplied by window functions, thereby generating the
synthetic signal 360 that more approximates the signal of the error
frame.
[0057] The first window function and the second window function may
also be determined so that in the synthetic signal 360 generated by
synthesizing the first previous signal 350 and the second previous
signal 355, one of the first previous signal 350 and the second
previous signal 355 whose block has the higher correlation with the
previous block 310 is faded out and the other previous signal is
faded in.
[0058] FIGS. 4A, 4B and 4C are reference diagrams for explaining
the determination of the first window function and the second
window function based on a correlation between the first similar
block 320 with the previous block 310 and a correlation between the
second similar block 325 with the previous block 310. According to
an exemplary embodiment of the present invention, the first window
function and the second window function are determined as
follows:
F ( x ) = ( 1 - x m ) k ( 0 .ltoreq. k .ltoreq. 1 , 0 .ltoreq. x
.ltoreq. m ) , ( 2 ) ##EQU00002##
[0059] where m is the number of time-domain samples constituting
the first previous signal 350 and the second previous signal 355 or
the synthetic signal 360. As illustrated in FIGS. 4A, 4B and 4C,
F(x) is a linear function 410 that reduces from 1 to 0 for k=0 and
is a constant function 430 having a value of 1 for k=1. Thus, for
0.ltoreq.k.ltoreq.1, F(x) ranges between the linear function 410
and the constant function 430.
[0060] As illustrated in FIGS. 4A, 4B and 4C, the first window
function F.sub.1(x) and the second window function F.sub.2(x) are
determined as in Equation 3 for the correlation of the first
similar block 320 with the previous block 310, which is a higher
correlation than the correlation of the second similar block 325
with the previous block 310, and are determined as in Equation 4
for the correlation of the second similar block 325 with the
previous block 310, which is a higher correlation than the
correlation of the first similar block 320 with the previous block
310.
F 1 ( x ) = y = ( 1 - x m ) k , F 2 ( x ) = 1 - y k = 1 - ( BC 1 -
BC 2 ) / 2 ( 3 ) F 1 ( x ) = 1 - y , F 2 ( x ) = y = ( 1 - x m ) k
k = 1 - ( BC 1 - BC 2 ) / 2 , ( 4 ) ##EQU00003##
[0061] where BC1 is a correlation between the first similar block
320 and the previous block 310, BC2 is a correlation between the
second similar block 325 and the previous block 310, and m is the
number of time-domain samples included in the first previous signal
350 and the second previous signal 355 or the synthetic signal
360.
[0062] As discussed above, according to an exemplary embodiment of
the present invention, the first window function and the second
window function are determined so that the greater weight is
applied to one of the first previous signal 350 and the second
previous signal 355 whose block has the higher correlation with the
previous block 310. Additionally, the first window function and the
second window function are determined so that one of the first
previous signal 350 and the second previous signal 355 whose block
has the higher correlation with the previous block 310 is output
prior to the other previous signal, thereby causing the synthetic
signal 360 generated by synthesizing the first previous signal 350
and the second previous signal 355 that are windowed by the first
window function and the second window function, so as to more
approximate the signal of the current n.sup.th frame.
[0063] After the determination of the first window function and the
second window function in operation 220, the first previous signal
350 and the second previous signal 355 are windowed by being
multiplied by the determined first window function and the
determined second window function, respectively, in operation 230,
and then are overlapped and added to each other, thereby generating
the synthetic signal 360 in operation 240.
[0064] In operation 250, the generated synthetic signal 360 is
copied to the n.sup.th frame at least once. The start portion of
the synthetic signal 360 is smoothed by overlapping and adding the
similar block 370 of the synthetic signal 360 to the previous block
310 of the previous (n-1).sup.th frame, so as to prevent
discontinuity at a boundary between the synthetic signal 360 and
another signal. Alternatively, the end portion of the synthetic
signal 360 is smoothed by overlapping and adding the overlapping
block 390 of the synthetic signal 360 to a block of the start
portion of the next (n+1).sup.th frame.
[0065] Hereinafter, a frame error concealment apparatus using the
overlapping method according to an exemplary embodiment of the
present invention will be described with reference to FIGS. 3
through 5. FIG. 5 is a block diagram of a frame error concealment
apparatus using the overlapping method according to an exemplary
embodiment of the present invention. The frame error concealment
apparatus includes a similar signal extraction unit 500, a
synthetic signal generation unit 510, and a reconstruction unit
520. The synthetic signal generation unit 510 includes a window
function determination unit 530 and a synthesis unit 540.
[0066] The similar signal extraction unit 500 searches in a search
range of a previous frame for two similar blocks having the highest
correlation with a signal of the previous block 310 located
immediately previous to the n.sup.th frame having an error. Let the
first found similar block be the first similar block 320 and let
the second found similar block be the second similar block 325.
[0067] The synthetic signal generation unit 510 generates the
synthetic signal 360 for reconstructing the n.sup.th frame by
synthesizing the first previous signal 350 including the found
first similar block 320 and its following first next signal 330 of
a predetermined length and the second previous signal 355 including
the found second similar block 325 and its following second next
signal 335 of a predetermined length. Referring to FIG. 3, the
synthetic signal 360 generated by synthesizing the first previous
signal 350 and the second previous signal 355 includes the similar
block 370, the portion 380 that is directly used for reconstructing
the signal of the n.sup.th frame, and the overlapping block 390.
Since the first similar block 320 and the second similar block 325
have the highest correlation with the previous block 310, the
consecutive next signals 330 and 340 following the first similar
block 320 and the consecutive next signals 335 and 345 following
the second similar block 325 may be similar to the signal of the
n.sup.th frame. Here, as mentioned previously, the first similar
block 320 and the first overlapping (OV) block 340 are included in
the first previous signal 350, and the second similar block 325 and
the second overlapping block 345 are included in the second
overlapping (OV) block 345, so as to cause the synthetic signal 360
to include the similar block 370 and the overlapping block 390,
thereby preventing the occurrence of discontinuity at the boundary
between the synthetic signal 360 and a signal that has been output
before or is to be output after the synthetic signal 360 when the
synthetic signal 360 is copied to the current frame. In other
words, the synthetic signal 360 can be smoothed by overlapping and
adding the similar block 370 to the signal preceding the synthetic
signal 360 or overlapping and adding the overlapping block 390 to
the signal following the synthetic signal 360.
[0068] The operations of the window function determination unit 530
and the synthesis unit 540 included in the synthetic signal
generation unit 510 will now be described.
[0069] The window function determination unit 530 determines the
first window function for windowing the first previous signal 350
based on a correlation between the first similar block 320 and the
previous block 310 and the second window function for windowing the
second previous signal 355 based on a correlation between the
second similar block 325 and the previous block 310. Here, it is
preferable that the first window function and the second window
function be summed as 1. It is also desirable to determine the
first window function and the second window function so that the
greater weight is applied to one of the first previous signal 350
and the second previous signal 355 whose block has the higher
correlation with the previous block 310. By doing so, a previous
signal that is more similar to a signal of an error frame than the
other previous signal, would be the larger part of the synthetic
signal 360 generated by synthesizing the first previous signal 350
and the second previous signal 355 that are windowed by being
multiplied by window functions, thereby generating the synthetic
signal 360 that more approximates the signal of the error
frame.
[0070] The window function determination unit 530 may also
determine the first window function and the second window function
so that in the synthetic signal 360 generated by synthesizing the
first previous signal 350 and the second previous signal 355, one
of the first previous signal 350 and the second previous signal 355
whose block has the higher correlation with the previous block 310
is faded out and the other previous signal is faded in.
[0071] FIGS. 4A, 4B and 4C are reference diagrams for explaining
the determination of the first window function and the second
window function based on a correlation between the first similar
block 320 with the previous block 310 and a correlation between the
second similar block 325 with the previous block 310. According to
an exemplary embodiment of the present invention, the first window
function and the second window function are determined as
follows:
F ( x ) = ( 1 - x m ) k ( 0 .ltoreq. k .ltoreq. 1 , 0 .ltoreq. x
.ltoreq. m ) , ( 5 ) ##EQU00004##
[0072] where m is the number of time-domain samples constituting
the first previous signal 350 and the second previous signal 355 or
the synthetic signal 360. As illustrated in FIGS. 4A, 4B and 4C,
F(x) is a linear function 410 that reduces from 1 to 0 for k=0 and
is a constant function 430 having a value of 1 for k=1. Thus, for
0.ltoreq.k.ltoreq.1, F(x) ranges between the linear function 410
and the constant function 430.
[0073] As illustrated in FIGS. 4A, 4B and 4C, the first window
function F.sub.1(x) and the second window function F.sub.2(x) are
determined as in Equation 6 for the correlation of the first
similar block 320 with the previous block 310, which is a higher
correlation than the correlation of the second similar block 325
with the previous block 310, and are determined as in Equation 7
for the correlation of the second similar block 325 with the
previous block 310, which is a higher correlation than the
correlation of the first similar block 320 with the previous block
310.
F 1 ( x ) = y = ( 1 - x m ) k , F 2 ( x ) = 1 - y k = 1 - ( BC 1 -
BC 2 ) / 2 ( 6 ) F 1 ( x ) = 1 - y , F 2 ( x ) = y = ( 1 - x m ) k
k = 1 - ( BC 1 - BC 2 ) / 2 , ( 7 ) ##EQU00005##
[0074] where BC1 is correlation between the first similar block 320
and the previous block 310, BC2 is a correlation between the second
similar block 325 and the previous block 310, and m is the number
of time-domain samples included in the first previous signal 350
and the second previous signal 355 or the synthetic signal 360.
[0075] As discussed above, according to an exemplary embodiment of
the present invention, the first window function and the second
window function are determined so that the greater weight is
applied to one of the first previous signal 350 and the second
previous signal 355 whose block has the higher correlation with the
previous block 310. Additionally, the first window function and the
second window function are determined so that one of the first
previous signal 350 and the second previous signal 355 whose block
has the higher correlation with the previous block 310 is output
prior to the other previous signal, thereby causing the synthetic
signal 360 generated by synthesizing the first previous signal 350
and the second previous signal 355 that are windowed by the first
window function and the second window function, so as to more
approximate the signal of the current n.sup.th frame.
[0076] The synthesis unit 540 windows the firsts previous signal
350 and the second previous signal 355 by multiplying the first
previous signal 350 by the first window function and the second
previous signal 355 by the second window function and overlaps and
adds the first previous signal 350 and the second previous signal
355 to each other, thereby generating the synthetic signal 360.
[0077] The reconstruction unit 520 copies the generated synthetic
signal 360 to the n.sup.th frame at least once, thereby
reconstructing the signal of the n.sup.th frame. At this time, the
reconstruction unit 520 smoothes the start portion of the synthetic
signal 360 by overlapping and adding the similar block 370 of the
synthetic signal 360 to the previous block 310 of the previous
(n-1).sup.th frame, so as to prevent discontinuity at a boundary
between the synthetic signal 360 and another signal. Alternatively,
the reconstruction unit 520 smoothes the end portion of the
synthetic signal 360 by overlapping and adding the overlapping
block 390 to a block of the start portion of the next (n+1).sup.th
frame.
[0078] As mentioned above, the frame error concealment method and
apparatus using the overlapping method according to an exemplary
embodiment of the present invention generates a new synthetic
signal using a plurality of previous signals that are similar to a
signal of an error frame and copies the synthetic signal to the
error frame so as to conceal the error of the error frame, thereby
preventing the generation of modulation noise that may be generated
in frame error concealment using a repetition method.
[0079] Hereinafter, an adaptive frame error concealment method
using an error concealment scheme construction method according to
an exemplary embodiment of the present invention will be described.
The error concealment scheme construction method constructs an
error concealment scheme for a plurality of frames by properly
combining the overlapping method, the repetition method, and a
frame error concealment method using an interpolation method
(hereinafter, referred to as an interpolation method) when errors
occur consecutively in the plurality of frames, thereby maximizing
reconstructed sound quality. Since the repetition method and the
overlapping method have already been described, the interpolation
method will be first described with reference to FIG. 6 and then
the adaptive frame error concealment method using the error
concealment scheme construction method according to an exemplary
embodiment of the present invention will be described. FIG. 6 is a
reference diagram for explaining the interpolation method according
to an exemplary embodiment of the present invention.
[0080] Referring to FIG. 6, the interpolation method applies linear
interpolation between a previous frame 600 and a next good frame
620. A future signal is provided in frame units due to a delay
problem, and thus relaxed interpolation using a window that is
modified for overlapping is applied. The window as illustrated in
FIG. 6 is used for relaxed interpolation. The window may use a
longitudinal window, a linear function, a polynomial function, or a
sine function. FIG. 8 illustrates an example of a window using a
linear function. It is noted that when a previous window 800 and a
next window 820 overlap with each other, the two windows have to be
summed as 1. In FIG. 6, a signal output by relaxed interpolation
that overlaps and adds two windows of the same size as a frame
further includes a signal of a block having a predetermined overlap
size OV_SIZE in addition to a signal of the frame size. The signal
of the block is overlapped and added to a signal of the next frame
620, thereby smoothing the rear boundary of a signal reconstructed
using the interpolation method. The signal of the block is
overlapped and added to a signal of the previous frame 600, thereby
smoothing the front boundary of the reconstructed signal.
[0081] The foregoing description regarding the overlapping method,
the repetition method, and the interpolation method, which conceal
a frame error by reconstructing a signal of an error frame in the
time domain, will now be followed by a description regarding the
characteristics of each of the overlapping method, the repetition
method, and the interpolation method.
[0082] First, since the overlapping method according to an
embodiment of the present invention reconstructs a signal of an
error frame using a new synthetic signal generated by synthesizing
a plurality of previous signals, modulation noise does not become
an issue. However, when an error occurs over a long interval like a
burst error, reconstruction of a signal of an error frame using the
overlapping method may attenuate the energy of a reconstructed
signal. In the case of the repetition method, modulation noise may
be an issue when an error occurs over a long interval like a burst
error. However, the repetition method maintains the energy of a
previous signal without attenuating the energy of the reconstructed
signal. The interpolation method may improve the accuracy of a
reconstructed signal by reconstructing an error frame using both a
previous frame and a next frame, but the next frame has to be a
good frame having no error.
[0083] As is apparent from the foregoing description, the
overlapping method, the repetition method, and the interpolation
method have different characteristics in frame error concealment.
Therefore, when errors occur consecutively in a plurality of
frames, the sound quality of a reconstructed signal can be
maximized by constructing an error concealment scheme for
concealing the errors of the plurality of frames by properly
combining the overlapping method, the repetition method, and the
interpolation method based on the different characteristics.
[0084] Hereinafter, an adaptive frame error concealment method
using an error concealment scheme construction method according to
an exemplary embodiment of the present invention will be described
with reference to FIG. 7.
[0085] In operation 700, error concealment conditions of a previous
frame preceding and a next frame following the current frame having
an error are analyzed. An error concealment scheme for the current
frame is selected based on the analysis result and the error of the
current frame is concealed according to the selected error
concealment scheme in operations 710 through 795. More
specifically, it is determined whether the next frame has an error
in operation 710. When it is determined that the next frame has no
error, i.e., the next frame is a good frame, in operation 710, the
interpolation is selected as the error concealment scheme for the
current frame in operation 720. When it is determined that the next
frame has an error in operation 710, it is further determined
whether the previous frame has an error in operation 730. When it
is determined that the previous frame has no error, i.e., the
previous frame is a good frame, in operation 730, the overlapping
method is selected as the error concealment scheme for the current
frame in operation 740. When it is determined that the previous
frame has an error in operation 730, it is further determined
whether the error of the previous frame has been concealed using
the overlapping method or the repetition method in operation 750.
Since the current frame has an error and thus the error of the
previous frame cannot have been concealed using the interpolation
method, it is not necessary to determine whether the error of the
previous frame has been concealed using the interpolation method.
When it is determined that the error of the previous frame has been
concealed using the repetition method in operation 750, the
overlapping method is selected as the error concealment scheme for
the current frame in operation 760. When it is determined that the
error of the previous frame has been concealed using the
overlapping method in operation 750, it is further determined
whether the overlapping method is used continuously over a
predetermined number of times in order to conceal errors of
previous frames in operation 770. Such a determination is intended
to prevent the energy of a signal reconstructed using the
overlapping method from being attenuated to a value that is lower
than a recommended threshold when the overlapping method is used
continuously over the predetermined number of times. When it is
determined that the overlapping method is used continuously over
the predetermined number of times in operation 770, the repetition
method is selected as the error concealment scheme for the current
frame in operation 780. When it is determined that the overlapping
method is not used continuously over the predetermined number of
times in operation 770, one of the overlapping method and the
repetition method is selected as the error concealment scheme for
the current frame in operation 790. Once the error concealment
scheme for the current frame has been selected in operations 710
through 790, a signal of the current frame is reconstructed using
the selected error concealment scheme in operation 795.
[0086] FIG. 8 is a reference diagram for explaining the influence
of a frame error in the frequency domain upon the time domain.
Referring to FIG. 8, during modulated discrete cosine
transformation (MDCT) with respect to time-domain samples in an
encoding phase, a 50% overlap window is generally used.
Consequently, when errors occur in N frames in the frequency domain
during transmission of an encoded audio signal, errors occur in
(N+1) frames in the time domain, in which N is an integer greater
than 1. Thus, when an error occurs in a frame in the frequency
domain and a signal of the error frame is reconstructed using the
repetition method, the same signal is repeated at least three
times, causing modulation noise. Therefore, it is necessary to
construct an error concealment scheme by properly combining the
overlapping method, the repetition method, and the interpolation
method while avoiding using the repetition method for more than one
frame, thereby preventing the generation of modulation noise.
[0087] FIGS. 9A through 9C are reference diagrams illustrating
error concealment schemes constructed by the error concealment
scheme construction method according to an exemplary embodiment of
the present invention. An error occurs in a single frame in the
frequency domain in FIG. 9A, errors occur in two frames in FIG. 9B,
and errors occur in three frames in FIG. 9C. In FIGS. 9A through
9C, `W/O ERROR` indicates a good frame having no error, and
`OVERLAPPING`, `REPETITION`, and `INTERPOLATION` indicate
respective selected error concealment schemes. It can be seen from
FIGS. 9A through 9C that an error of the current frame is concealed
using the interpolation method when the next frame is a good frame
and is concealed using the overlapping method when the previous
frame is a good frame, i.e., the error starts from the current
frame. Additionally, it can be seen that a frame whose error is
concealed using the repetition method is inserted between frames
whose errors are concealed using the overlapping method and the
repetition method is not used continuously.
[0088] FIG. 10 is a block diagram of an adaptive frame error
concealment apparatus including an error concealment scheme
construction apparatus according to an exemplary embodiment of the
present invention. Referring to FIG. 10, the adaptive frame error
concealment apparatus includes an error concealment scheme
selection unit 1000 and an error concealment unit 1010. The error
concealment scheme selection unit 1000 includes an analysis unit
1020 and a selection unit 1030.
[0089] The analysis unit 1020 analyzes error concealment conditions
of a previous frame preceding and a next frame following the
current frame having an error. The error concealment conditions may
include information about whether an error occurs in the previous
frame and if so, an error concealment scheme for the previous
frame, information about whether an error occurs in the next frame,
and information about whether the overlapping method has been used
continuously over a predetermined number of times to conceal the
error of the previous frame.
[0090] The selection unit 1030 selects an error concealment scheme
for the current frame from the overlapping method, the repetition
method, and the interpolation method in the time domain based on
the analysis result obtained by the analysis unit 1020.
[0091] For example, if the analysis result shows that the previous
frame is a good frame, the selection unit 1030 may select the
overlapping method as the error concealment scheme for the current
frame. If the analysis result shows that the repetition method has
been used for the previous frame, the selection unit 1030 may
select one of the overlapping method and the interpolation method
as the error concealment scheme for the current frame. If the
analysis result shows that the overlapping method has been used
continuously over the predetermined number of times to conceal the
error of the previous frame, the selection unit 1030 may select one
of the repetition method and the interpolation method as the error
concealment scheme for the current frame. If the analysis result
shows that the next frame is a good frame, the selection unit 1030
may select the interpolation method as the error concealment scheme
for the current frame.
[0092] More specifically, the selection unit 1030 operates as
follows. First, the selection unit 1030 determines whether an error
occurs in the next frame based on the analysis result obtained by
the analysis unit 1020. When the selection unit 1030 determines
that the next frame is a good frame, it selects the interpolation
method as the error concealment scheme for the current frame. When
the selection unit 1030 determines that an error occurs in the next
frame, it further determines whether an error occurs in the
previous frame. When the selection unit 1030 determines that the
previous frame is a good frame, it selects the overlapping method
as the error concealment scheme for the current frame. When the
selection unit 1030 determines that an error occurs in the previous
frame, it further determines whether the error of the previous
frame has been concealed using the overlapping method or the
repetition method. Since the current frame has an error and thus
the error of the previous frame cannot have been concealed using
the interpolation method, it is not necessary to determine whether
the error of the previous frame has been concealed using the
interpolation method. When the selection unit 1030 determines that
the error of the previous frame has been concealed using the
repetition method, it selects the overlapping method as the error
concealment scheme for the current frame. When the selection unit
1030 determines that the error of the previous frame has been
concealed using the overlapping method, it further determines
whether the overlapping method has been used continuously over a
predetermined number of times in order to conceal errors of
previous frames. Such a determination is intended to prevent the
energy of a signal reconstructed using the overlapping method from
being attenuated to a value that is lower than a recommended
threshold when the overlapping method is used continuously over the
predetermined number of times. When the selection unit 1030
determines that the overlapping method is used continuously over
the predetermined number of times, it selects the repetition method
as the error concealment scheme for the current frame. When the
selection unit 1030 determines that the overlapping method is not
used continuously over the predetermined number of times, it
selects one of the overlapping method and the repetition method as
the error concealment scheme for the current frame.
[0093] The error concealment unit 1010 reconstructs a signal of the
current frame using the error concealment scheme selected by the
selection unit 1030, thereby concealing the error of the current
frame.
[0094] As described above, the adaptive frame error concealment
method and apparatus using the error concealment scheme
construction method according to an exemplary embodiment of the
present invention construct an error concealment scheme for the
current frame having an error by properly combining the overlapping
method, the repetition method, and the interpolation method based
on the characteristics of these methods, thereby reconstructing a
signal of the current signal while maximizing reconstructed sound
quality. By reconstructing a signal of an error frame using
time-domain frame error concealment, the adaptive frame error
concealment method and apparatus may also be implemented by using a
stand alone structure that is independent of a core codec. In other
words, a signal of the current frame can be reconstructed using
only time-domain signals of a previous frame preceding or a next
frame following the current frame. Moreover, since a frame error is
concealed using the overlapping method, the repetition method, and
the interpolation method without a need for a complex process such
as the analysis of a signal of the previous frame, an embodiment of
the present invention can be implemented with a simple structure.
In addition, a frame error can be concealed at the minor cost of
one-frame delay.
[0095] Meanwhile, the present invention can be embodied as code
that is readable by a computer, including a device having an
information processing function, on a computer-readable recording
medium. The computer-readable recording medium includes all kinds
of recording devices storing data that is readable by a computer
system. Examples of the computer-readable recording medium include
read-only memory (ROM), random access memory (RAM), CD-ROMs,
magnetic tapes, floppy disks, optical data storage devices, and the
like.
[0096] As described above, the frame error concealment method and
apparatus using the overlapping method according to the present
invention synthesize a plurality of previous signals to reconstruct
a signal of an error frame, thereby preventing the generation of
modulation noise.
[0097] Moreover, the error concealment scheme construction method
and apparatus according to the present invention construct an error
concealment scheme for a plurality of consecutive error frames by
properly combining the overlapping method, the repetition method,
and the interpolation method, thereby maximizing reconstructed
sound quality.
[0098] Furthermore, the adaptive frame error concealment method and
apparatus according to the present invention conceal errors of a
plurality of consecutive error frames by properly combining the
overlapping method, the repetition method, and the interpolation
method, thereby maximizing reconstructed sound quality.
[0099] While the present invention has been particularly shown and
described with reference to exemplary embodiments thereof, it will
be understood by those of ordinary skill in the art that various
changes in form and detail may be made therein without departing
from the spirit and scope of the present invention as defined by
the following claims.
* * * * *