EP0865029B1 - Interpolation de formes d'onde par décomposition en bruit et en signaux périodiques - Google Patents

Interpolation de formes d'onde par décomposition en bruit et en signaux périodiques Download PDF

Info

Publication number
EP0865029B1
EP0865029B1 EP98301546A EP98301546A EP0865029B1 EP 0865029 B1 EP0865029 B1 EP 0865029B1 EP 98301546 A EP98301546 A EP 98301546A EP 98301546 A EP98301546 A EP 98301546A EP 0865029 B1 EP0865029 B1 EP 0865029B1
Authority
EP
European Patent Office
Prior art keywords
speech signal
coding
codebook
encoder
spectra
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Expired - Lifetime
Application number
EP98301546A
Other languages
German (de)
English (en)
Other versions
EP0865029A1 (fr
Inventor
Yair Shoham
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Nokia of America Corp
Original Assignee
Lucent Technologies Inc
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Lucent Technologies Inc filed Critical Lucent Technologies Inc
Publication of EP0865029A1 publication Critical patent/EP0865029A1/fr
Application granted granted Critical
Publication of EP0865029B1 publication Critical patent/EP0865029B1/fr
Anticipated expiration legal-status Critical
Expired - Lifetime legal-status Critical Current

Links

Images

Classifications

    • GPHYSICS
    • G10MUSICAL INSTRUMENTS; ACOUSTICS
    • G10LSPEECH ANALYSIS OR SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING; SPEECH OR AUDIO CODING OR DECODING
    • G10L19/00Speech or audio signals analysis-synthesis techniques for redundancy reduction, e.g. in vocoders; Coding or decoding of speech or audio signals, using source filter models or psychoacoustic analysis
    • G10L19/04Speech or audio signals analysis-synthesis techniques for redundancy reduction, e.g. in vocoders; Coding or decoding of speech or audio signals, using source filter models or psychoacoustic analysis using predictive techniques
    • G10L19/08Determination or coding of the excitation function; Determination or coding of the long-term prediction parameters
    • G10L19/097Determination or coding of the excitation function; Determination or coding of the long-term prediction parameters using prototype waveform decomposition or prototype waveform interpolative [PWI] coders

Definitions

  • the present invention relates generally to the field of low bit-rate speech coding, and more particularly to a method and apparatus for performing low bit-rate speech coding with reduced complexity.
  • Speech coding systems include an encoder, which converts speech signals into code words for transmission over a channel, and a decoder, which reconstructs speech from received code words.
  • a goal of most speech coding systems concomitant with that of signal compression is the faithful reproduction of original speech sounds, such as, e.g, voiced speech.
  • Voiced speech is produced when a speaker's vocal cords are tensed and vibrating quasi-periodically.
  • a voiced speech signal appears as a succession of similar but slowly evolving waveforms referred to as pitch-cycles.
  • Each pitch-cycle has a duration referred to as a pitch-period.
  • the pitch-period Like the pitch-cycle waveform itself, the pitch-period generally varies slowly from one pitch-cycle to the next.
  • CELP code-excited linear prediction
  • LP time-varying linear prediction
  • the residual signal comprises a series of pitch-cycles, each of which includes a major transient referred to as a pitch-pulse and a series of lower amplitude vibrations surrounding it.
  • the residual signal is represented by the CELP system as a concatenation of scaled fixed-length vectors from a codebook.
  • CELP To achieve a high coding efficiency of voiced speech, most implementations of CELP also include a long-term predictor (or adaptive codebook) to facilitate reconstruction of a communicated signal with appropriate periodicity.
  • a long-term predictor or adaptive codebook
  • waveform coders operate by coding speech using waveforms which serve to characterize the speech signal to be coded. These waveforms are referred to as characterizing waveforms.
  • a characterizing waveform is a signal of a length which is typically at least one pitch-period (see above), and where the pitch-period is defined to be the output of a pitch detection process. (Note that a pitch detection process may be used so that it always supplies a pitch-period even for speech signals without obvious periodicity -- for unvoiced speech, such a pitch-period is essentially arbitrary.)
  • An illustrative characterizing waveform may be formed based on the output of a linear predictive (LP) filter which operates on an original speech signal (which signal is to be coded). As explained above, this output is referred to as the residual signal.
  • LP linear predictive
  • Low bit-rate coding systems which operate, for example, at rates of 2.4 kb/s are generally parametric in nature. That is, they operate by transmitting parameters describing pitch-period and the spectral envelope (or formants ) of the speech signal at regular intervals. Illustrative of these so-called parametric coders is the LP vocoder system. LP vocoders model a voiced speech signal with a single pulse per pitch period. This basic technique may be augmented to include transmission information about the spectral envelope, among other things. Although LP vocoders provide reasonable performance generally, they also may introduce perceptually significant distortion, typically characterized as buzziness.
  • WI waveform interpolation
  • SD signal decomposition
  • WI coders generally produce reasonably good quality reconstructed speech at low bit rates
  • the complexity of these prior art coders is often too high to be commercially viable for use, for example, in low-cost terminals. Therefore, it would be desirable if a WI coder were available having substantially less complexity than that of prior art WI coders, while maintaining an adequate level of performance (i.e., with respect to the quality of the reconstructed speech).
  • an improved, low-complexity method and apparatus for performing signal decomposition in a low bit-rate WI speech encoder is provided. Specifically, a time-ordered sequence of sets of time-domain parameters is generated based on samples of a speech signal to be coded, each set of time-domain parameters corresponding to a waveform characterizing the speech signal. A cross correlation is then performed between two or more of said sets of time-domain parameters to produce a set of signals which represents relatively high rates of evolution of characterizing waveform shape across the time-ordered sequence of sets. (This produced set of signals may be referred to as the "random spectrum" or the "unstructured" component.) Finally, the speech signal is coded based on the produced set of signals (i.e., the unstructured component).
  • a set of signals which represents relatively low rates of evolution of characterizing waveform shape across the time-ordered sequence of sets may also be produced.
  • a time-ordered sequence of sets of frequency -domain parameters is also generated based on the samples of the speech signal to be coded, and an average of two or more of these sets of frequency-domain parameters is then computed.
  • a set of signals which represents relatively low rates of evolution of characterizing waveform shape across the time-ordered sequence of sets is then produced based on the computed average, and the speech signal is then coded further based on this produced set of signals as well.
  • This latter produced set of signals may be referred to as the "average spectrum" or the "structured" component.
  • Figure 1 shows a surface comprising a series of smoothly evolving waveforms as may be advantageously produced by a waveform interpolation coder.
  • Figure 2 shows a block diagram of a conventional waveform interpolation coder.
  • Figure 3 shows a block diagram of waveform interpolation based on a cubic spline representation.
  • Figure 4 shows a block diagram of waveform interpolation based on a pseudo cardinal spline representation.
  • Figure 5 shows an illustrative set of smoothed spectra for a random spectrum codebook of a waveform interpolation coder, in accordance with an illustrative embodiment of the present invention.
  • Figure 6 shows a block diagram of a low-complexity waveform interpolation coder in accordance with an illustrative embodiment of the present invention.
  • the WI method is based on processing a time sequence of spectra.
  • a spectrum in such a sequence may, for example, be a phase-relaxed discrete Fourier transform (DFT) of a pitch-long snapshot of the speech signal.
  • the phase of the spectrum may be subjected to a circular shift. Snapshots are taken at update intervals which, in principle, may be as short as one sample. These update intervals can be totally pitch-independent, but, for the sake of efficient processing, they are preferably dynamically adapted to the pitch period.
  • DFT discrete Fourier transform
  • the WI process can be illustratively described as follows.
  • S(t,K) be a DFT of a snapshot at time t, with a time-varying pitch period P(t).
  • the inverse DFT (IDFT) of S(t,K), denoted by U(t,c), is taken with respect to a constant DFT basis function support of size t seconds.
  • This is known as time scale normalization, familiar to those skilled in the art.
  • U(t,c) may be viewed as a periodic function, with a period T, along the axis c.
  • s(t) is generated by sampling U(t,c) along the path defined by c(t), namely, at locations (t,c(t)).
  • the complete surface U(t,c) is shown in Figure 1 only for illustrative purposes. In practice, it is usually not necessary to generate ( i. e., interpolate) the entire surface prior to sampling.
  • the signal s(t) has most of the important characteristics of the original speech.
  • its pitch track follows the original one even though no pitch synchrony has been used and the update times may have been pitch independent. This implies a great deal of information reduction which is advantageous for low rate coding.
  • the pitch may be set to whatever essentially arbitrary value is computed by the encoder's pitch detector and does not, therefore, represent a real pitch cycle. Moreover, the resultant pitch value may be advantageously modified in order to smooth the pitch track. Such a pitch may be used by the system in the same way, regardless of its true nature. This approach advantageously eliminates voicing classification and provides for robust processing. Note that even in this case (in fact, for any signal), the interpolation framework described above works well whenever the update interval is less than half the pitch period.
  • a WI encoder typically analyzes and decomposes the speech signal for efficient compression.
  • the signal decomposition is advantageously performed on two levels.
  • standard 10th-order LPC analysis may be performed once per frame over frames of, for example, 25 msec to obtain spectral envelope (LPC) parameters and an LP residual signal.
  • LPC spectral envelope
  • Splitting the signal in this manner allows for perceptually efficient quantization of the spectrum. While a fairly accurate coding of the spectral envelope is preferable for producing high quality reconstructed speech, significant distortions of the fine-structured LP residual spectrum can often be tolerated, especially at higher frequencies.
  • the residual signal advantageously undergoes a 2nd-level decomposition, the purpose of which is to split the signal into structured and unstructured components.
  • the structured signal is essentially periodic whereas the unstructured one is non-periodic and essentially random ( i.e., noise-like).
  • the SEW mostly represents a periodic component whereas the REW mostly represents an aperiodic noise-like signal.
  • This decomposition may be advantageously performed in the LP residual domain.
  • the update snapshots of the residual may be obtained by taking pitch-size DFT's at times t n , thereby yielding the spectra R(t n , K).
  • the SEW sequence may be obtained by filtering each spectral component (i.e., for each value of K) of R(t n , K) along the temporal axis using, for example, a 20 Hz, 20-tap lowpass filter. This results in a sequence of SEW spectra, SEW(t n , K), which may then be advantageously down-sampled to, for example, one SEW spectrum per frame.
  • the sequence of REW spectra, REW(t n , K) may be similarly obtained. Since the spectral snapshots are usually not taken at exact pitch-cycle intervals, the spectra S(t n ) are advantageously aligned prior to filtering. This alignment may, for example, comprise high-resolution phase adjustment, equivalent to a time-domain circular shift, which advantageously maximizes the correlation between the current and previous spectra. This eliminates artificial spectral variations due to phase mismatches.
  • this decomposition is (at least in principle) lossless and reversible -- namely, the original (aligned) sequence R(t n , K) can be recovered.
  • this method does not force a ceiling on the coding performance. If the SEW and the REW are coded at sufficiently high bit rates, very high quality speech can be reconstructed by a conventional WI decoder (since the entire residual signal can be accurately reconstructed).
  • the spectra R(t n , K) are advantageously normalized to have a unit average root-mean-squared (RMS) value across the K axis. This removes level fluctuations, enhances the SEW/REW analysis and make it easier to quantize the REW and the SEW.
  • the RMS level i.e., the gain
  • the RMS level may be quantized separately. This also allows the system to take special care of perceptually important changes in signal levels (e.g., onsets), independently of other parameters.
  • FIG. 2 shows a block diagram for a conventional WI coder comprising encoder 21 and decoder 22.
  • LP analysis block 212 is applied to the input speech and the LP filter is used to get the LP residual (block 211).
  • Pitch estimator 214 is applied to the residual to get the current pitch period.
  • Pitch-size snapshots block 213) are taken on the residual, transformed by a DFT and normalized (block 215).
  • the resulting sequence of spectra is first aligned (block 217) and then filtered along the temporal axis to form the SEW (block 218) and the REW (block 219) signals. These are quantized and transmitted along with the pitch LP coefficients (generated by block 212) and the spectral gains (generated by block 216).
  • the coded REW and SEW signals are decoded and combined (block 223) to form the quantized excitation spectrum R and(t n , K).
  • the spectrum is then reshaped by the LPC spectral envelope and re-scaled by the gain to the proper RMS level (block 222), thereby producing the quantized speech spectra S and(t n , K).
  • These spectra are now interpolated (block 224) as described above to form the final reconstructed speech signal.
  • the WI coder of Figure 2 is capable of delivering high quality speech as long as ample bit resources are made available for coding all the data, especially the REW and the SEW signals.
  • the REW/SEW representation is, in principle, an over-sampled one, since two full-size spectra are represented. This puts an extra burden on the quantizers.
  • bits are scarce and the REW/SEW representation is typically severely compromised to allow for a meaningful quantization, as further described below.
  • a typical conventional WI coder operating at a rate of 2.4 kbps uses a frame size of 25 msec and is therefore limited to employing a bit allocation typically consisting of 30 bits for the LPC data, 7 bits for the pitch information.
  • a typical conventional WI coder operating at a rate of 1.2 kbps uses a frame size of 37.5 msec and is therefore limited to employing a bit allocation typically consisting of 25 bits for the LPC data, 7 bits for the pitch information, no bits for the SEW data, 5 bits for the REW data, and 8 bits for the gain information.
  • Interpolative coding as described above is computationally complex. Some early WI coders actually ran much slower then real time. An improved lower-complexity WI coder was proposed by W.B. Kleijn et al. in "A low-complexity waveform interpolation coder," cited above, but much lower complexity coders are needed to provide for commercially viable alternatives in a broad range of applications. Specifically, it is desirable that only a small fraction of a processor's computational power is used by the coder, so that other tasks, such as, for example, networking, can be performed uninterruptedly.
  • Typical prior art WI coders require a large quantity of RAM to hold the REW and the SEW sequences for the temporal filtering and other operations -- overall, about 6K words of RAM is needed by a typical conventional WI coder. Moreover, a large quantity of ROM -- typically about 11K words -- is needed for the LPC quantization.
  • the waveform interpolation process as performed in conventional WI coders and as described above is quite complex, partly because for every time instance, the full spectral vector needs to be interpolated and a DFT-type operation -- e.g., the computation of equation (3) above -- needs to be carried out.
  • the non-regular sampling of the trigonometric functions, implied by equation (3) makes it even more complex since no simple recursive methods are useful for implementing these functions.
  • the waveform interpolation process may be advantageously approximated by a much simpler method as follows.
  • the spectra S and(t n ,K) are first augmented to a fixed radix-2 size by zero-padding.
  • IFFT inverse Fast Fourier Transform
  • the k'th order spline representation of a signal s(t) is defined as where q n are the spline coefficients and B k (t) is the spline continuous-time basis function, built of piecewise k'th order polynomials.
  • q n are the spline coefficients
  • B k (t) is the spline continuous-time basis function, built of piecewise k'th order polynomials.
  • B k (t) is fully defined by assigning (k-1)'st order polynomials to the positive k-1 sections.
  • the (k-1)(k+1) polynomial parameters may be resolved by imposing continuity conditions at the nodes. Specifically, the 0'th to (k-1)'st order derivatives of B k (t) are advantageously continuous at the nodes.
  • Equation (6) can be put into a matrix form as follows: where n ⁇ t ⁇ n + 1. Let s(n) be a discrete-time sampled sequence of size N whose underlying continuous signal s(t) it is desired to estimate.
  • the initial values f -1 and q n should be known.
  • the complexity of the transform is merely 3 operations per input sample, and that it is actually less then that of the time-domain counterpart as in equation (9), which requires 4 operations per input sample.
  • an IDFT should be applied to Q(K).
  • the data processed by the WI decoder is already given in the DFT domain -- this is the signal S and(t 0 ,K). Therefore, using W(K) for the spline transform is convenient.
  • the time-scale normalization required for the WI process may be conveniently performed by simply appending zeros to S and(t 0 ,K) along the K'th axis.
  • the DFT may be advantageously augmented to a fixed radix-2 size N so that a fixed-size IFFT can be advantageously employed.
  • the result of this IDFT is the spline coefficient sequence q n of size N.
  • the final synthesis of the reconstructed speech signal may now be performed as follows.
  • the four relevant spline coefficients implied by equation (7) are identified. These coefficients are interpolated with the corresponding coefficients from the spline vector of the previous update -- i.e., the one obtained from S and(t -1 ,K).
  • the value s(t) is obtained. This process is advantageously repeated for enough values of so as to fill the output signal update buffer.
  • c(t) preserves continuity across updates -- namely, it increments from its last value from the previous update. However, this is performed modulo T, which is in line with the basic periodicity assumption.
  • FIG. 3 A block diagram of a first illustrative waveform interpolation process for use in a low-complexity WI coder is shown in Figure 3.
  • the illustrative WI process shown in Figure 3 carries out waveform interpolation with use of cubic splines in accordance with the above description thereof.
  • block 31 pads the input spectrum with zeros to ensure a fixed radix-2 size.
  • block 32 takes the spline transform as described above, and block 33 performs the IFFT on the resultant data.
  • Block 34 is used to store each resultant set of data so that the interpolation of the spline coefficients may be performed (by block 38) based upon the current and previous waveforms.
  • Block 36 operates on the current input pitch value and the previous input pitch value (as stored by block 35) to perform the dynamic time scaling, and based thereupon, block 37 determines the spline coefficients to be interpolated by block 38. Finally, block 39 performs the cubic spline interpolation to produce the resultant output speech waveform (in the time domain).
  • a variant of the above-described method further reduces the required computations by eliminating the use of the spline transform (i.e., the spline window).
  • the spline transform i.e., the spline window.
  • the complexity of the interpolator is as in the above-described embodiment, except that filtering and windowing are advantageously avoided. This saves three operations per sample, thereby reducing the decoder complexity even further. Also, note that no additional RAM is needed to store the current and previous spline coefficients and no additional ROM is needed to hold the spline window.
  • FIG. 4 A block diagram of a second illustrative waveform interpolation process for use in a low-complexity WI coder is shown in Figure 4.
  • the WI process shown in Figure 4 carries out waveform interpolation with use of pseudo cardinal splines in accordance with the above description thereof.
  • the operation of the illustrative waveform interpolation process shown in Figure 4 is similar to that of the illustrative waveform interpolation process shown in Figure 3, except that the spline transformation (block 32) has become unnecessary and has therefore been removed, and the cubic spline interpolation (block 39) has been replaced by a pseudo cardinal spline interpolation (block 49).
  • the SEW/REW analysis requires parallel filtering of the spectra R(t n , K) for all the harmonic indices K. In conventional WI coders, this is typically performed with use of 20-tap filters. This is a major contributor to the overall complexity of prior art WI coders. Specifically, this process generates two sequences of spectra that need to be coded and transmitted -- the SEW sequence and the REW sequence. While the SEW sequence can be down sampled prior to quantization, the REW needs to be quantized at full time and frequency resolution. However, at 2.4 kbps and lower coding rates, the typical bit budget (see above) is too small to produce a useful representation of the data.
  • SEW ( t , K ) + REW ( t , K ) 1
  • SEW ( t , K ) + REW ( t , K ) 1
  • one illustrative embodiment of the present invention provides a much simpler analysis than that performed by prior art WI coders.
  • a new approach is taken to the task of signal decomposition and coding, changing the way the SEW and the REW are defined and processed.
  • the unstructured component of the residual signal is exposed by merely taking the difference between the properly aligned normalized current and previous spectra.
  • This is essentially equivalent to simplifying the REW signal generation by replacing the 20th-order filter typically found in a conventional WI encoder with a first-order filter.
  • this difference reflects an unstructured random component. It will be referred to herein as simply the random spectrum (RS).
  • the RS's may be advantageously smoothed by a low-order (e.g., two or three) orthogonal polynomial expansion (using, e.g., three or four parameters per spectrum).
  • a set of 8 codebook spectra can be generated.
  • One such illustrative set of codebook spectra is shown in Figure 5.
  • smoothing and quantization can be combined during the coding process (as described, for example, in W.B. Kleijn et al., "A low-complexity waveform interpolation coder, " cited above), by doing three full-size inner-products per vector.
  • the constellation of the illustrative set of codebook spectra provides for an additional level of simplification.
  • the corresponding energy is where the last term can be identified as the square of the cross correlation between the corresponding time-domain signals.
  • the parameter u as defined above reflects the level of "unvoicing" in the signal. Its temporal dynamics is predictable to a certain degree since it is consistently high in unvoiced regions and low in voiced ones. This can be efficiently utilized by applying VQ to consecutive values of this parameter.
  • a 6-bit VQ may be advantageously used to quantize and transmit a u-vector within a frame.
  • the decoded u-values may be mapped into a set of orthogonal polynomial parameters and a smoothed RS spectrum may be generated therefrom.
  • the decoded RS represents a magnitude spectrum.
  • the complete complex RS may, in accordance with an illustrative embodiment of the present invention, be obtained by adding a random phase spectrum, which is consistent with the presumption of an unstructured signal.
  • the random phase may be obtained inexpensively by, for example, a random sampling of a phase table.
  • Such an illustrative table holds 128 two-dimensional vectors of radius 1.
  • the SEW signal is obtained by filtering each harmonic component of a sequence of properly aligned pitch-size spectra along the temporal axis using a 20-tap FIR (finite-impulse-response) lowpass filter.
  • the filtered sequence is then decimated to one spectrum per frame. This is equivalent to taking a weighted average of these spectra once per frame.
  • both filtering and alignment may be advantageously avoided in accordance with certain illustrative embodiments of the present invention.
  • the structured signal may be advantageously processed as follows. Given the pitch period P for the current frame, a new frame containing an integral number M of pitch periods is determined. Typically, the new frame overlaps the nominal frame.
  • the pitch-size average spectrum referred to herein as AS, may then be obtained by applying a DFT to this frame, decimating the MP-size spectrum by the factor M and normalizing the result.
  • AS The pitch-size average spectrum
  • This approach advantageously eliminates the need for spectral alignment.
  • the SEW-frame may be first upsampled to a radix-2 size N > MP, and then a Fast Fourier Transform (FFT) may be used. Note that this time scaling does not affect the size of the spectrum which is still equal to MP.
  • the upsampling may, for example, be performed using cubic spline interpolation as described above.
  • the average spectrum, AS may be viewed as a simplified version of the SEW using a simple filter.
  • AS(K) and (the unsmoothed) RS(K) are not complementary, since they are not generated by two complementary filters.
  • the bit budget of the WI coder as described above provides for only 7 bits for the coding of the AS. Since the lower frequencies of the LP residual are perceptually more important, only the baseband containing the lower 20% of the SEW spectrum is advantageously coded in accordance with an illustrative embodiment of the present invention.
  • the illustrative low-complexity coder codes the AS baseband and then transmits the coded result once per frame.
  • the coding may be illustratively performed using a ten-dimensional 7-bit VQ of a variable dimension, D, where D is the lower of 0.2*P/2 or 10. If D ⁇ 10, only the first D terms of the codevectors may be used.
  • the AS baseband may be interpolated at the synthesis update rate and the SS(K) spectrum may be computed therefrom.
  • the magnitude spectrum SS(K) represents a periodic signal. Therefore, a fixed phase spectrum may be advantageously attached thereto so as to provide for some level of phase dispersion as observed in natural speech. This maintains periodicity while avoiding buzziness.
  • the phase spectrum which may be derived from a real speaker, illustratively has 64 complex values of radius 1. It may be held in the same phase table used by the RS (the first 64 entries), thereby incurring no extra ROM.
  • the resulting complex SS is illustratively combined with the complex RS to form the final quantized LP spectrum for the current update.
  • the SEW and the REW can be generated and processed at any desired update rate independently of the current pitch. Moreover, the rates may be different in the encoder and decoder. If a fixed rate is used (e.g., a 2.5 msec. update interval), the data flow control is straightforward. However, since the spectrum size is, in fact, pitch dependent, so is the resulting computational load. Thus, at a fixed update rate, the complexity increases with the value of the pitch period. Since the maximum computational load is often of concern, it is advantageous to "equalize" the complexity. Therefore, in accordance with an illustrative embodiment of the present invention, in order to reduce the peak load, the update rate advantageously varies proportionally to the pitch frequency.
  • the short-term spectral snapshots are processed at pitch cycle intervals. This is based on the assumption that for near-periodic speech it is sufficient to monitor the signal dynamics at a pitch rate. Such a variable sampling rate poses some difficulty at the SEW/REW signal filtering stage, which therefore calls for some special filtering procedure.
  • the RS is represented by the u-parameter which measures the changes at pitch intervals (i.e., the pitch-lag correlation) while being updated at a fixed rate.
  • the update rate is pitch dependent to equalize the load and to make sure the outcome is not overly periodic (i.e., the rate is too low).
  • the spline transform and the IFFT of the illustrative LCWI coder are made to be pitch dependent by rounding up the pitch value to the nearest radix-2 number. This advantageously reduces the variations in computational load across the pitch range.
  • an update rate control (URC) procedure may be advantageously employed to determine the synthesis sub-frame size over which the spectrum is reconstructed and the output signal is interpolated. Since the u-parameter is illustratively transmitted at a fixed rate (e.g., twice per frame), it may be interpolated at the decoder if a higher update rate is called for.
  • a low complexity vector quantizer may be used in coding the LP parameters to further reduce the computational load.
  • the illustrative LCVQ is based on that described in detail in J. Zhou et al., "Simple fast vector quantization of the line spectral frequencies," Proc. ICSLP'96, Vol. 2, pp. 945-948, Oct. 1996, which is hereby incorporated by reference as if fully set forth herein. (Note that the illustrative LCVQ described herein is not necessarily specific to WI coders -- it can also be advantageously used in other LP-based speech coders.)
  • the LP parameters are given in the form of 10 line spectral frequencies (LSF).
  • LSF line spectral frequencies
  • the ten-dimensional LSF vectors are coded using 30 bits and 25 bits in the 1.2 kbps and 2.4 kbps coders, respectively.
  • the LSF vector are commonly split into 3 sub-vectors since a full-size 25 or 30 bit VQ is not practically implementable.
  • the sizes of the three LSF sub-vectors are (3, 3, 4) and (3, 4, 3) for the 1.2 kbps and 2.4 kbps coders, respectively.
  • the number of bits assigned to the three sub-VQ's are (10, 10, 10) and (10, 10, 5), respectively.
  • Each sub-VQ may comprise a full-search VQ, meaning that a global search is performed over 1024 (or 32) codevector candidates.
  • the full-search VQ's are replaced by faster VQ's as described below.
  • the illustrative fast VQ used herein is approximately 4 times faster than a full-search VQ. It uses the same optimally-trained codebook and achieves the same level of performance. In particular, it is based on the concept of classified VQ, familiar to those skilled in the art.
  • the main codebook is partitioned into several sub-codebooks (classes). An incoming vector is first classified as belonging to a certain class. Then only that class and a few of its neighbors are searched. The classification stage is carried out by yet another small-size VQ whose entries point to their own classes.
  • This codebook may be advantageously embedded in the main codebook so no additional memory locations are needed for the codevectors. However, some small increase (approximately 2%) in total memory may be required for holding the pointers to the classes.
  • Figure 6 shows a block diagram of an LCWI coder in accordance with one illustrative embodiment of the present invention.
  • Figure 6 shows encoder 61 with an illustrative block diagram thereof, decoder 62 with an illustrative block diagram thereof, and the illustrative data flow between the encoder and the decoder.
  • the transmitted bit stream illustratively includes the indices of the quantized gain, LSF's, RS, AS and pitch, identified as G, L, R, A, and P, respectively.
  • an LP analysis is applied to the input speech (block 6104) and the LCVQ described above is used to code the LSF's (block 6109).
  • the input speech gain is computed by block 6103 at a fixed rate of 4 times per frame.
  • the gain is defined as the RMS of overlapping pitch-size subframes spaced uniformly within the main frame. This makes the gain contour very smooth in stationary voiced speech. If the pitch cycle is too short, two or more cycles may be used. This prevents skipping segments of possibly important gain cues.
  • Four gains are coded as one gain vector per frame. For the illustrative 2.4 kbps version of the encoder, 10 bits are assigned to the gain.
  • the gain vector is normalized by its RMS value called the "super gain”.
  • a two-stage LCVQ is used (block 6109). First the normalized vector is coded using a 6-bit VQ. Then, the logarithm (log) of the super-gain is coded differentially using a 4-bit quantizer. This coding technique increases the dynamic range of the quantizer and, at the same time, allows it to represent short-term (i.e., within a vector) changes in the gain, representing, for example, onsets. In the illustrative 1.2 kbps version of the encoder, no super-gain is used and a single 8-bit four-dimensional VQ is applied to the log-gains.
  • the input is inverse-filtered using the LP coefficients to get the LP residual (block 6101). Pitch detection is done on the residual to get the current pitch period (block 6102).
  • the RS and the AS signals are processed as described above.
  • u-coefficients are generated and in block 6110, the u-coefficients are coded by a two-dimensional VQ using 5 and 6 bits for the illustrative 1.2 and 2.4 kbps coders, respectively.
  • the AS baseband is coded by ten-dimensional VQ using 7 bits (blocks 6106, 6107, 6111, and 6112).
  • the received pitch value is used by the update rate control (URC) in block 6209 to set the current update rate that is, the number of sub-frames over which the entire interpolation and synthesis process is to be performed.
  • the pitch is interpolated in block 6205 using the previous value and a value is assigned to each subframe.
  • the super gain is differentially decoded and exponentiated; the normalized gain vector is decoded and combined with the super gain; and the 4 gain values are interpolated into a longer vector, if requested by the URC.
  • the LP coefficients are decoded once per frame and interpolated with the previous ones to obtain as many LP vectors as requested by the URC (block 6202).
  • An LP spectrum is obtained by applying DFT 6206 to the LP vector. Note that this is advantageously a low-complexity DFT, since the input is only 10 samples.
  • the DFT may be performed recursively to avoid expensive trigonometric functions.
  • an FFT could be used in combination with a cubic-spline-based re-sampling.
  • the RS vector is decoded and interpolated if needed by the URC.
  • Each u-value is mapped into an expansion parameter set and a smoothed magnitude RS is generated (block 6207).
  • a random phase is attached in block 6210 to generate the complex RS.
  • the AS is decoded and interpolated with the previous vector (block 6204).
  • the SS magnitude spectrum is obtained in block 6208 by subtracting the RS, and then the SS phase is added in block 6211.
  • the complex RS and SS data are combined (block 6213), and the result is shaped by the LP spectrum and scaled by the gain (block 6212).
  • the result is applied to the waveform interpolation module (block 6214) which outputs the coded speech.
  • the waveform interpolation module may comprise the illustrative waveform interpolation process of Figure 3, the illustrative waveform interpolation process of Figure 4, or any other waveform interpolation process.
  • a (preferably mild) post-filtering is applied in block 6215 to reshape the output coding noise.
  • an LP-based post-filter similar to the one described in J.H. Chen et al ., "Adaptive postfiltering for quality enhancement of coded speech, " IEEE Trans. Speech and Audio Processing, Vol. 3, 1995, pp. 59-71 may be used.
  • Such a post-filter enhances the LP formant pattern, thereby reducing the noise in between the formants.
  • a post-filtering operation could be included in the LP shaping stage ( i.e., in block 6212) as is done in the WI coder described in W.B.
  • the post-filter is preferably placed at the end of synthesis process as shown in the illustrative embodiment of Figure 6.
  • processors For clarity of explanation, the illustrative embodiment of the present invention has been presented as comprising individual functional blocks (including functional blocks labeled as "processors"). The functions these blocks represent may be provided through the use of either shared or dedicated hardware, including, but not limited to, hardware capable of executing software. For example, the functions of processors presented herein may be provided by a single shared processor or by a plurality of individual processors. Moreover, use of the term "processor” herein should not be construed to refer exclusively to hardware capable of executing software.
  • Illustrative embodiments may comprise digital signal processor (DSP) hardware, such as Lucent Technologies' DSP16 or DSP32C, read-only memory (ROM) for storing software performing the operations discussed below, and random access memory (RAM) for storing DSP results.
  • DSP digital signal processor
  • ROM read-only memory
  • RAM random access memory
  • VLSI Very large scale integration

Claims (22)

  1. Procédé de codage d'un signal de parole, le signal de parole ayant une séquence de spectres à court terme ordonnés dans le temps correspondant à celui-ci, le procédé comprenant les étapes consistant à :
    identifier une séquence ordonnée dans le temps de segments de signal de parole ;
    réaliser une intercorrélation entre deux ou plusieurs des segments de signal de parole pour générer un ou plusieurs paramètres représentant des vitesses d'évolution relativement élevées des spectres à court terme ; et
    coder le signal de parole sur la base du ou des paramètres générés.
  2. Procédé suivant la revendication 1, dans lequel l'étape de codage du signal de parole comprend la sélection d'une entrée d'un livre de code dans un livre de code fixe contenant une pluralité d'entrées de livre de code représentant une pluralité correspondante de spectres de niveau.
  3. Procédé suivant la revendication 2, dans lequel chacun des spectres de niveau contenus dans le livre de code représente une différence de niveau d'un premier spectre sur la base d'un premier ensemble de paramètres du domaine temporel et d'un second spectre sur la base d'un second ensemble de paramètres du domaine temporel.
  4. Procédé suivant la revendication 2, dans lequel chacune des entrées du livre de code comporte un index de livre de code associé, et dans lequel la pluralité de spectres de niveau croissent de façon monotone par rapport aux index du livre de code qui leur sont associés.
  5. Procédé suivant la revendication 4, dans lequel l'étape d'exécution de l'intercorrélation consiste à générer l'un des index de livre de code associés, et dans lequel l'étape consistant à coder le signal de parole consiste à sélectionner l'entrée de livre de code correspondant à l'index de livre de code généré.
  6. Procédé suivant la revendication 4, dans lequel l'étape consistant à exécuter l'intercorrélation consiste à générer un vecteur de valeurs d'index programmables, chaque valeur d'index programmable correspondant à un spectre de niveau, et dans lequel l'étape de codage du signal de parole consiste à effectuer une quantification vectorielle sur le vecteur de valeurs d'index programmables.
  7. Procédé suivant la revendication 1, dans lequel chacun des segments de signal de parole a une longueur sensiblement égale à une période de hauteur de son.
  8. Procédé suivant la revendication 1, dans lequel le signal de parole comprend un signal résiduel de prédiction linéaire (LP).
  9. Procédé suivant la revendication 1, comprenant en outre les étapes consistant à :
    générer une séquence ordonnée dans le temps d'ensembles de paramètres dans le domaine fréquentiel sur la base des échantillons du signal de parole ; et
    générer un ou plusieurs ensembles de coefficients représentant des vitesses d'évolution relativement faibles des spectres à court terme sur la base de deux ou plusieurs des ensembles de paramètres du domaine fréquentiel,
    et dans lequel l'étape de codage du signal de parole se fonde en outre sur les un ou plusieurs ensembles de coefficients représentant des vitesses d'évolution relativement lentes des spectres à court terme.
  10. Procédé suivant la revendication 9, dans lequel l'étape consistant à générer les ensembles de paramètres du domaine fréquentiel consiste à effectuer une transformée de Fourier.
  11. Procédé suivant la revendication 9, dans lequel l'étape de codage du signal de parole consiste à effectuer une quantification vectorielle sur les un ou plusieurs ensembles de coefficients représentant des vitesses d'évolution relativement lentes des spectres à court terme.
  12. Codeur destiné à coder un signal de parole, le signal de parole ayant une séquence de spectres à court terme ordonnée dans le temps correspondant à ceux-ci, le codeur comprenant :
    des moyens destinés à identifier une séquence ordonnée dans le temps de segments de signal de parole ;
    des moyens destinés à effectuer une intercorrélation entre deux ou plusieurs des segments de signal de parole afin de générer un ou plusieurs paramètres représentant des vitesses d'évolution relativement élevées des spectres à court terme ; et
    des moyens destinés à coder le signal de parole sur la base des un ou plusieurs paramètres générés.
  13. Codeur suivant la revendication 12, dans lequel les moyens destinés à coder le signal de parole comprennent des moyens destinés à sélectionner une entrée de livre de code dans un livre de code fixe contenant une pluralité d'entrées de livre de code représentant une pluralité correspondante de spectres de niveau.
  14. Codeur suivant la revendication 13, dans lequel chacun des spectres de niveau du livre de code représente une différence de niveau entre un premier spectre dépendant d'un premier ensemble de paramètres du domaine temporel et un second spectre dépendant d'un second ensemble de paramètres du domaine temporel.
  15. Codeur suivant la revendication 13, dans lequel chacune des entrées du livre de code a un index de livre de code associé, et dans lequel la pluralité de spectres de niveau croissent de façon monotone avec les index de livre de code qui leur sont associés.
  16. Codeur suivant la revendication 15, dans lequel les moyens destinés à effectuer l'intercorrélation comprennent des moyens destinés à générer l'un desdits index de livre de code associés, et dans lequel les moyens destinés à coder le signal de parole comprennent des moyens destinés à sélectionner l'entrée de livre de code correspondant à l'index de livre de code généré.
  17. Codeur suivant la revendication 15, dans lequel les moyens destinés à effectuer l'intercorrélation comprennent des moyens destinés à générer un vecteur de valeurs d'index programmables, chaque valeur d'index programmable correspondant à un spectre de niveau, et dans lequel les moyens destinés à coder le signal de parole comprennent des moyens destinés à effectuer une quantification vectorielle sur le vecteur de valeurs d'index programmables.
  18. Codeur suivant la revendication 12, dans lequel chacun des segments de signal de parole a une longueur sensiblement égale à une période de hauteur de son.
  19. Codeur suivant la revendication 12, dans lequel le signal de parole comprend un signal résiduel de prédiction linéaire (LP).
  20. Codeur suivant la revendication 12, comprenant en outre :
    des moyens destinés à générer une séquence ordonnée dans le temps d'ensemble de paramètres du domaine fréquentiel dépendant des échantillons du signal de parole ; et
    des moyens destinés à générer un ou plusieurs ensembles de coefficients représentant des vitesses d'évolution relativement lentes des spectres à court terme dépendant de deux ou plusieurs des ensembles de paramètres du domaine fréquentiel,
    et dans lequel les moyens destinés à coder le signal de parole dépendent en outre des un ou plusieurs ensembles de coefficients représentant des vitesses d'évolution relativement lentes des spectres à court terme,
  21. Codeur suivant la revendication 20, dans lequel les moyens destinés à générer les ensembles de paramètres du domaine fréquentiel comprennent des moyens destinés à effectuer une transformée de Fourier.
  22. Codeur suivant la revendication 20, dans lequel les moyens destinés à coder le signal de parole comprennent des moyens destinés à effectuer une quantification vectorielle sur les un ou plusieurs ensembles de coefficients représentant des vitesses d'évolution relativement lentes des spectres à court terme.
EP98301546A 1997-03-10 1998-03-03 Interpolation de formes d'onde par décomposition en bruit et en signaux périodiques Expired - Lifetime EP0865029B1 (fr)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US813183 1997-03-10
US08/813,183 US5924061A (en) 1997-03-10 1997-03-10 Efficient decomposition in noise and periodic signal waveforms in waveform interpolation

Publications (2)

Publication Number Publication Date
EP0865029A1 EP0865029A1 (fr) 1998-09-16
EP0865029B1 true EP0865029B1 (fr) 1999-07-28

Family

ID=25211691

Family Applications (1)

Application Number Title Priority Date Filing Date
EP98301546A Expired - Lifetime EP0865029B1 (fr) 1997-03-10 1998-03-03 Interpolation de formes d'onde par décomposition en bruit et en signaux périodiques

Country Status (4)

Country Link
US (1) US5924061A (fr)
EP (1) EP0865029B1 (fr)
JP (1) JPH10319996A (fr)
DE (1) DE69800011D1 (fr)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US11287310B2 (en) 2019-04-23 2022-03-29 Computational Systems, Inc. Waveform gap filling

Families Citing this family (18)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6470309B1 (en) * 1998-05-08 2002-10-22 Texas Instruments Incorporated Subframe-based correlation
US7072832B1 (en) * 1998-08-24 2006-07-04 Mindspeed Technologies, Inc. System for speech encoding having an adaptive encoding arrangement
EP0987680B1 (fr) * 1998-09-17 2008-07-16 BRITISH TELECOMMUNICATIONS public limited company Traitement de signal audio
DE69939086D1 (de) 1998-09-17 2008-08-28 British Telecomm Audiosignalverarbeitung
US7272556B1 (en) * 1998-09-23 2007-09-18 Lucent Technologies Inc. Scalable and embedded codec for speech and audio signals
WO2000060579A1 (fr) * 1999-04-05 2000-10-12 Hughes Electronics Corporation Systeme codec vocal interpolatif de domaine frequentiel
US6691092B1 (en) * 1999-04-05 2004-02-10 Hughes Electronics Corporation Voicing measure as an estimate of signal periodicity for a frequency domain interpolative speech codec system
US6959274B1 (en) * 1999-09-22 2005-10-25 Mindspeed Technologies, Inc. Fixed rate speech compression system and method
JP4505899B2 (ja) * 1999-10-26 2010-07-21 ソニー株式会社 再生速度変換装置及び方法
US7010482B2 (en) * 2000-03-17 2006-03-07 The Regents Of The University Of California REW parametric vector quantization and dual-predictive SEW vector quantization for waveform interpolative coding
US7133823B2 (en) * 2000-09-15 2006-11-07 Mindspeed Technologies, Inc. System for an adaptive excitation pattern for speech coding
US6993478B2 (en) * 2001-12-28 2006-01-31 Motorola, Inc. Vector estimation system, method and associated encoder
US20040002856A1 (en) * 2002-03-08 2004-01-01 Udaya Bhaskar Multi-rate frequency domain interpolative speech CODEC system
KR100639968B1 (ko) * 2004-11-04 2006-11-01 한국전자통신연구원 음성 인식 장치 및 그 방법
FR2898209B1 (fr) * 2006-03-01 2008-12-12 Parrot Sa Procede de debruitage d'un signal audio
US7899667B2 (en) * 2006-06-19 2011-03-01 Electronics And Telecommunications Research Institute Waveform interpolation speech coding apparatus and method for reducing complexity thereof
EP1970900A1 (fr) * 2007-03-14 2008-09-17 Harman Becker Automotive Systems GmbH Procédé et appareil pour la fourniture d'un guide de codification pour l'extension de la bande passante d'un signal acoustique
US8219394B2 (en) * 2010-01-20 2012-07-10 Microsoft Corporation Adaptive ambient sound suppression and speech tracking

Family Cites Families (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5517595A (en) * 1994-02-08 1996-05-14 At&T Corp. Decomposition in noise and periodic signal waveforms in waveform interpolation

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US11287310B2 (en) 2019-04-23 2022-03-29 Computational Systems, Inc. Waveform gap filling

Also Published As

Publication number Publication date
EP0865029A1 (fr) 1998-09-16
DE69800011D1 (de) 1999-09-02
JPH10319996A (ja) 1998-12-04
US5924061A (en) 1999-07-13

Similar Documents

Publication Publication Date Title
US5903866A (en) Waveform interpolation speech coding using splines
EP0865029B1 (fr) Interpolation de formes d'onde par décomposition en bruit et en signaux périodiques
EP0673013B1 (fr) Système pour coder et décoder un signal
CA2140329C (fr) Decomposition en bruit et en signaux periodiques dans l'interpolation des formes d'onde
Spanias Speech coding: A tutorial review
EP0673014B1 (fr) Procédé de codage et décodage par transformation de signaux acoustiques
US5371853A (en) Method and system for CELP speech coding and codebook for use therewith
US20210375296A1 (en) Methods, Encoder And Decoder For Linear Predictive Encoding And Decoding Of Sound Signals Upon Transition Between Frames Having Different Sampling Rates
US6081776A (en) Speech coding system and method including adaptive finite impulse response filter
US5479559A (en) Excitation synchronous time encoding vocoder and method
US6119082A (en) Speech coding system and method including harmonic generator having an adaptive phase off-setter
US5359696A (en) Digital speech coder having improved sub-sample resolution long-term predictor
US6138092A (en) CELP speech synthesizer with epoch-adaptive harmonic generator for pitch harmonics below voicing cutoff frequency
US6094629A (en) Speech coding system and method including spectral quantizer
US5504834A (en) Pitch epoch synchronous linear predictive coding vocoder and method
EP0450064B1 (fr) Codeur de parole numerique a predicteur a long terme ameliore a resolution au niveau sous-echantillon
Kroon et al. Predictive coding of speech using analysis-by-synthesis techniques
US7603271B2 (en) Speech coding apparatus with perceptual weighting and method therefor
US6098037A (en) Formant weighted vector quantization of LPC excitation harmonic spectral amplitudes
JP3916934B2 (ja) 音響パラメータ符号化、復号化方法、装置及びプログラム、音響信号符号化、復号化方法、装置及びプログラム、音響信号送信装置、音響信号受信装置
KR0155798B1 (ko) 음성신호 부호화 및 복호화 방법
Shoham Low complexity speech coding at 1.2 to 2.4 kbps based on waveform interpolation
JP3163206B2 (ja) 音響信号符号化装置
Akamine et al. ARMA model based speech coding at 8 kb/s
Kwong et al. Design and implementation of a parametric speech coder

Legal Events

Date Code Title Description
PUAI Public reference made under article 153(3) epc to a published international application that has entered the european phase

Free format text: ORIGINAL CODE: 0009012

17P Request for examination filed

Effective date: 19980312

AK Designated contracting states

Kind code of ref document: A1

Designated state(s): DE FR GB

AX Request for extension of the european patent

Free format text: AL;LT;LV;MK;RO;SI

GRAG Despatch of communication of intention to grant

Free format text: ORIGINAL CODE: EPIDOS AGRA

GRAG Despatch of communication of intention to grant

Free format text: ORIGINAL CODE: EPIDOS AGRA

GRAH Despatch of communication of intention to grant a patent

Free format text: ORIGINAL CODE: EPIDOS IGRA

17Q First examination report despatched

Effective date: 19981223

GRAH Despatch of communication of intention to grant a patent

Free format text: ORIGINAL CODE: EPIDOS IGRA

GRAH Despatch of communication of intention to grant a patent

Free format text: ORIGINAL CODE: EPIDOS IGRA

AKX Designation fees paid

Free format text: DE FR GB

RBV Designated contracting states (corrected)

Designated state(s): DE FR GB

GRAA (expected) grant

Free format text: ORIGINAL CODE: 0009210

AK Designated contracting states

Kind code of ref document: B1

Designated state(s): DE FR GB

PG25 Lapsed in a contracting state [announced via postgrant information from national office to epo]

Ref country code: FR

Free format text: LAPSE BECAUSE OF FAILURE TO SUBMIT A TRANSLATION OF THE DESCRIPTION OR TO PAY THE FEE WITHIN THE PRESCRIBED TIME-LIMIT

Effective date: 19990728

REF Corresponds to:

Ref document number: 69800011

Country of ref document: DE

Date of ref document: 19990902

PG25 Lapsed in a contracting state [announced via postgrant information from national office to epo]

Ref country code: DE

Free format text: LAPSE BECAUSE OF FAILURE TO SUBMIT A TRANSLATION OF THE DESCRIPTION OR TO PAY THE FEE WITHIN THE PRESCRIBED TIME-LIMIT

Effective date: 19991029

EN Fr: translation not filed
PLBE No opposition filed within time limit

Free format text: ORIGINAL CODE: 0009261

STAA Information on the status of an ep patent application or granted ep patent

Free format text: STATUS: NO OPPOSITION FILED WITHIN TIME LIMIT

26N No opposition filed
REG Reference to a national code

Ref country code: GB

Ref legal event code: IF02

PG25 Lapsed in a contracting state [announced via postgrant information from national office to epo]

Ref country code: GB

Free format text: LAPSE BECAUSE OF NON-PAYMENT OF DUE FEES

Effective date: 20020303

GBPC Gb: european patent ceased through non-payment of renewal fee

Effective date: 20020303

P01 Opt-out of the competence of the unified patent court (upc) registered

Effective date: 20230520