Packet loss concealment based on forced waveform alignment after packet loss
First Claim
1. A method for concealing a lost segment in a speech or audio signal that comprises a series of segments, the method comprising:
- (a) generating an extrapolated waveform based on a segment that precedes the lost segment in the series of segments and on one or more segments that follow the lost segment in the series of segments;
(b) generating a replacement waveform for the lost segment based on a first portion of the extrapolated waveform; and
(c) overlap-adding a second portion of the extrapolated waveform with a decoded waveform associated with the one or more segments following the lost segment in the series of segments;
wherein step (a) comprises;
performing a first-pass periodic waveform extrapolation using a pitch period associated with the segment that precedes the lost segment to generate a first-pass extrapolated waveform;
identifying a time lag between the first-pass extrapolated waveform and the decoded waveform associated with the one or more segments that follow the lost segment;
calculating a pitch contour based on the identified time lag; and
performing a second-pass periodic waveform extrapolation using the pitch contour to generate the extrapolated waveform; and
wherein at least one of steps (a), (b) and (c) is performed by a processor.
6 Assignments
0 Petitions
Accused Products
Abstract
A packet loss concealment method and system is described that attempts to reduce or eliminate destructive interference that can occur when an extrapolated waveform representing a lost segment of a speech or audio signal is merged with a good segment after a packet loss. This is achieved by guiding a waveform extrapolation that is performed to replace the bad segment using a waveform available in the first good segment or segments after the packet loss. In another aspect of the invention, a selection is made between a packet loss concealment method that performs the aforementioned guided waveform extrapolation and one that does not. The selection may be made responsive to determining whether the first good segment or segments after the packet loss are available and also to whether a segment preceding the lost segment and the first good segment following the lost segment are deemed voiced.
-
Citations
18 Claims
-
1. A method for concealing a lost segment in a speech or audio signal that comprises a series of segments, the method comprising:
-
(a) generating an extrapolated waveform based on a segment that precedes the lost segment in the series of segments and on one or more segments that follow the lost segment in the series of segments; (b) generating a replacement waveform for the lost segment based on a first portion of the extrapolated waveform; and (c) overlap-adding a second portion of the extrapolated waveform with a decoded waveform associated with the one or more segments following the lost segment in the series of segments; wherein step (a) comprises; performing a first-pass periodic waveform extrapolation using a pitch period associated with the segment that precedes the lost segment to generate a first-pass extrapolated waveform; identifying a time lag between the first-pass extrapolated waveform and the decoded waveform associated with the one or more segments that follow the lost segment; calculating a pitch contour based on the identified time lag; and performing a second-pass periodic waveform extrapolation using the pitch contour to generate the extrapolated waveform; and wherein at least one of steps (a), (b) and (c) is performed by a processor. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8)
-
-
9. A computer program product comprising a computer-readable storage unit having computer program logic recorded thereon for enabling a processor to conceal a lost segment in a speech or audio signal that comprises a series of segments, the computer program logic comprising:
-
first means for enabling the processor to generate an extrapolated waveform based on a segment that precedes the lost segment in the series of segments and on one or more segments that follow the lost segment in the series of segments; second means for enabling the processor to generate a replacement waveform for the lost segment based on a first portion of the extrapolated waveform; and third means for enabling the processor to overlap-add a second portion of the extrapolated waveform with a decoded waveform associated with the one or more segments following the lost segment in the series of segments; wherein the first means comprises; means for enabling the processor to perform a first-pass periodic waveform extrapolation using a pitch period associated with the segment that precedes the lost segment to generate a first-pass extrapolated waveform; means for enabling the processor to identify a time lag between the first-pass extrapolated waveform and the decoded waveform associated with the one or more segments that follow the lost segment; means for enabling the processor to calculate a pitch contour based on the identified time lag; and means for enabling the processor to perform a second-pass periodic waveform extrapolation using the pitch contour to generate the extrapolated waveform. - View Dependent Claims (10, 11, 12, 13, 14, 15, 16)
-
-
17. A method for concealing a lost segment in a speech or audio signal that comprises a series of segments, the method comprising:
-
determining if one or more segments that follow the lost segment in the series of segments are available; if one or more segments that follow the lost segment in the series of segments are available, determining if the segment that precedes the lost segment and the first of the one or more segments that follow the lost segments are deemed voiced segments; performing packet loss concealment using periodic waveform extrapolation based on a segment that precedes the lost segment in the series of segments and on the one or more segments that follow the lost segment responsive to a determination that the one or more segments that follow the lost segment are available and to a determination that the segment that precedes the lost segment and the first of the one or more segments that follow the lost segment are deemed voiced segments; and performing packet loss concealment using waveform extrapolation based on the segment that precedes the lost segment but not on any segments that follow the lost segment responsive to a determination that the one or more segments that follow the lost segment are not available or to a determination that either the segment that precedes the lost segment or the first of the one or more segments that follow the lost segment is not deemed a voiced segment; wherein at least one of the determining or performing steps is performed by a processor.
-
-
18. A computer program product comprising a computer-readable storage unit having computer program logic recorded thereon for enabling a processor to conceal a lost segment in a speech or audio signal that comprises a series of segments, the computer program logic comprising:
-
first means for enabling the processor to determine if one or more segments that follow the lost segment in the series of segments are available; second means for enabling the processor to determine if the segment that precedes the lost segment and the first of the one or more segments that follow the lost segments are deemed voiced segments if one or more segments that follow the lost segment in the series of segments are available; third means for enabling the processor to perform packet loss concealment using periodic waveform extrapolation based on a segment that precedes the lost segment in the series of segments and on the one or more segments that follow the lost segment responsive to a determination that the one or more segments that follow the lost segment are available and to a determination that the segment that precedes the lost segment and the first of the one or more segments that follow the lost segment are deemed voiced segments; and fourth means for enabling the processor to perform packet loss concealment using waveform extrapolation based on the segment that precedes the lost segment but not on any segments that follow the lost segment responsive to a determination that the one or more segments that follow the lost segment are not available or to a determination that either the segment that precedes the lost segment or the first of the one or more segments that follow the lost segment is not deemed a voiced segment.
-
Specification