EP2080195A1 - Synthesis of lost blocks of a digital audio signal, with pitch period correction - Google Patents

Synthesis of lost blocks of a digital audio signal, with pitch period correction

Info

Publication number
EP2080195A1
EP2080195A1 EP07871872A EP07871872A EP2080195A1 EP 2080195 A1 EP2080195 A1 EP 2080195A1 EP 07871872 A EP07871872 A EP 07871872A EP 07871872 A EP07871872 A EP 07871872A EP 2080195 A1 EP2080195 A1 EP 2080195A1
Authority
EP
European Patent Office
Prior art keywords
signal
samples
repetition period
amplitude
block
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.)
Granted
Application number
EP07871872A
Other languages
German (de)
French (fr)
Other versions
EP2080195B1 (en
Inventor
Balazs Kovesi
Stéphane RAGOT
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.)
Orange SA
Original Assignee
France Telecom SA
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 France Telecom SA filed Critical France Telecom SA
Priority to PL07871872T priority Critical patent/PL2080195T3/en
Publication of EP2080195A1 publication Critical patent/EP2080195A1/en
Application granted granted Critical
Publication of EP2080195B1 publication Critical patent/EP2080195B1/en
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

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/005Correction of errors induced by the transmission channel, if related to the coding algorithm
    • 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
    • GPHYSICS
    • G10MUSICAL INSTRUMENTS; ACOUSTICS
    • G10LSPEECH ANALYSIS OR SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING; SPEECH OR AUDIO CODING OR DECODING
    • G10L25/00Speech or voice analysis techniques not restricted to a single one of groups G10L15/00 - G10L21/00
    • G10L25/90Pitch determination of speech signals
    • 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/02Speech 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 spectral analysis, e.g. transform vocoders or subband vocoders
    • G10L19/0204Speech 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 spectral analysis, e.g. transform vocoders or subband vocoders using subband decomposition
    • 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/02Speech 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 spectral analysis, e.g. transform vocoders or subband vocoders
    • G10L19/022Blocking, i.e. grouping of samples in time; Choice of analysis windows; Overlap factoring
    • G10L19/025Detection of transients or attacks for time/frequency resolution switching

Definitions

  • the present invention relates to the processing of digital audio signals (especially speech signals).
  • the present invention relates to a reception processing for improving the quality of the decoded signals in the presence of data block losses.
  • waveform coding methods such as MIC (for "Coded Pulse Modulation") and ADPCM (for "Pulse Modulation and Adaptive Differential Coding"), also known as “PCM” and "ADPCM” in English
  • PCM Coded Pulse Modulation
  • ADPCM Physical Downlink Control Coding
  • a speech signal can be predicted from its recent past (for example from 8 to 12 samples at 8 kHz) using parameters evaluated on short windows (10 to 20 ms in this example).
  • These short-term prediction parameters representative of the vocal tract transfer function (for example to pronounce consonants), are obtained by LPC analysis methods (for
  • Linear Prediction Coding There is also a longer-term correlation associated with quasi-periodicities of speech (for example voiced sounds such as vowels) which are due to the vibration of the vocal cords. It is therefore a question of determining at least the fundamental frequency of the voiced signal which varies typically from 60 Hz (deep voice) to 600 Hz (high voice) according to the speakers.
  • a LTP (Long Term Prediction) analysis determines the LTP parameters of a long-term predictor, and in particular the inverse of the fundamental frequency, often called the pitch period.
  • LTP long-term prediction parameters including the pitch period
  • LPC short-term prediction parameters represent the spectral envelope. of this signal.
  • all of these LPC and LTP parameters thus resulting from a speech coding, can be transmitted in blocks to a peer decoder, via one or more telecommunication networks, to then restore the initial speech signal.
  • the ITJIT-T standardized G.722 48-, 56- and 64-kbit / s coding system for the transmission of broadband speech signals (which are sampled at 16 kHz).
  • the G.722 coder has an ADPCM coding scheme in two sub-bands obtained by a QMF (for "Quadrature Mirror Filter”) filter bank.
  • QMF for "Quadrature Mirror Filter”
  • Figure 1 of the state of the art shows the coding and decoding structure according to Recommendation G.722.
  • Blocks 101 to 103 represent the transmission filter bank QMF (spectral separation in high 102 and low 100 frequencies and subsampling 101 and 103) applied to the input signal Se.
  • the following blocks 104 and 105 respectively correspond to low and high band ADPCM coders.
  • the low-band ADPCM encoder rate is specified by a mode of 0, 1, or 2, respectively indicating a rate of 6.5 or 4 bits per sample, while the high-band ADPCM encoder rate is fixed (two bits per second). sample).
  • At the decoder there are the equivalent ADPCM decoding blocks (blocks 106 and 107) whose outputs are combined in the receiving QMF filter bank (oversampling 108 and
  • bit stream resulting from the coding is generally formatted in binary blocks for transmission on many types of networks. For example, there is talk of "IP packets" (for "Internet Protocol”) for blocks transmitted via the Internet, "frames” for blocks transmitted over ATM networks (for "Asynchronous Transfer Mode”), or others.
  • IP packets for "Internet Protocol”
  • frames for blocks transmitted over ATM networks (for "Asynchronous Transfer Mode"), or others.
  • the blocks transmitted after coding can be lost for various reasons: - if a router of the network is saturated and empties its queue,
  • the decoder When a loss of one or more consecutive blocks, the decoder must reconstruct the signal without information on lost or errored blocks. It relies on the previously decoded information from the valid blocks received. This problem, called “lost block correction” (or, hereafter, “erasure correction”) is actually more general than simply extrapolating missing information because the loss of frames often causes a loss of synchronization between encoder and decoder, especially when these are predictive, as well as continuity problems between the extrapolated information and the decoded information after a loss.
  • the correction of erased frames thus also includes state restoration, convergence, and other techniques. Annex I of ITU-T Recommendation G.711 describes erasure correction for PCM encoding.
  • the frame loss correction is therefore simply to extrapolate the missing information and ensure the continuity between a reconstructed frame and correctly received frames, following a loss.
  • the extrapolation is implemented by repetition of the signal passed synchronously with the fundamental frequency (or conversely, "pitch period"), that is to say by simply repeating pitch periods.
  • the continuity is ensured by a smoothing (or "cross-fading") between samples received and extrapolated samples.
  • a speech signal includes so-called “transient” sounds (non-stationary sounds including typically vowel attacks (beginnings) and sounds called “plosives” which correspond to short consonants such as “p", "b”, “d”, "t", “k”).
  • transient sounds non-stationary sounds including typically vowel attacks (beginnings)
  • plosives sounds which correspond to short consonants such as "p", "b”, “d”, "t", “k”
  • a correction of frame loss by simple repetition will generate a very unpleasant sequence listening to "t” (which will be understood in French as “teu- teu-teu-teu-teu ) in burst for a loss of several successive frames (for example five consecutive losses).
  • FIGS. 2a and 2b illustrate this acoustic effect in the case of an expanded band signal encoded by an encoder according to Recommendation G.722. More particularly, Figure 2a shows a decoded speech signal on an ideal channel (without loss of frame). This signal corresponds, in the example represented, to the French word "temps", divided into two phonemes: / t / then / an /. Vertical dashed lines indicate the boundaries between frames. We consider here the case of frames of length of the order of 10 ms.
  • Figure 2b shows the signal decoded according to a technique similar to Serizawa et al reference above when a frame loss immediately follows the ItI phoneme. This figure
  • the present invention improves the situation.
  • the method proposes a method for synthesizing a digital audio signal represented by successive blocks of samples, in which, on receiving such a signal, to replace at least one invalid block, a replacement block is generated at from samples of at least one valid block.
  • the method comprises the following steps: a) defining a repetition period of the signal in at least one valid block, and b) copying the samples of the repetition period into at least one replacement block.
  • step a) a last repetition period is determined in at least one valid block immediately preceding an invalid block, and in step b), samples of the last repetition period based on samples of a previous repetition period, and this to limit the amplitude of a possible transient signal that would be present in the last repetition period. The samples thus corrected are then copied back into the replacement block.
  • the method according to the invention is advantageously applied to the processing of a speech signal, both in the case of a voiced signal and in the case of an unvoiced signal.
  • the repetition period simply consists of the pitch period and step a) of the method aims in particular to determine a pitch period (typically given by the inverse of a fundamental frequency) a tone of the signal (for example the tone of a voice in a speech signal) in at least one valid block preceding the loss.
  • the valid signal received is not voiced, there is not really a detectable pitch period.
  • it can be expected to set a given arbitrary number of samples which will be considered as the length of the pitch period (which can then be called generically "repetition period") and carry out the process. sense of the invention on the basis of this repetition period.
  • the longest possible pitch period typically 20 ms (corresponding to 50 Hz of a very deep voice), or 160 samples at 8 kHz sampling frequency.
  • the sample correction step b) is applied to all samples of the last period of repetition, taken one by one as a current sample.
  • step b) is repeatedly copied to form the replacement blocks.
  • the amplitude of this current sample is compared with the amplitude, in absolute value, of at least one sample temporally positioned substantially at a repetition period before the current sample, and we assign to the current sample the minimum amplitude, in absolute value, among these two amplitudes, while also affecting, of course, the sign of its initial amplitude.
  • positioned substantially is understood here to mean the fact that a neighborhood to be associated with the current sample is sought in the preceding repetition period.
  • a set of samples is formed in a neighborhood centered around a sample temporally positioned at a repetition period before the current sample, an amplitude chosen from the amplitudes of the samples of said neighborhood, taken into absolute value, and comparing this selected amplitude with the amplitude of the current sample, in absolute value, to assign to the current sample the minimum amplitude, in absolute value, among the selected amplitude and the amplitude of the current sample .
  • This amplitude chosen from the amplitudes of the samples of said neighborhood is preferably the maximum amplitude in absolute value.
  • a damping (gradual attenuation) of the amplitude of the samples in the replacement blocks is usually applied.
  • a transient character of the signal is detected before the loss of blocks and, where appropriate, a faster damping is applied than for a stationary (non-transitory) signal.
  • the detection of a transient signal preceding the block loss is as follows: for a plurality of current samples of the last repetition period, to measure a ratio, in absolute value, of the amplitude of a sample running on the aforementioned chosen amplitude (determined in the vicinity as indicated above), and - then counting the number of occurrences, for the current samples, for which the above-mentioned ratio is greater than a first predetermined threshold (a value close to 4 for example, as will be seen later), and detect the presence of a transient signal if the number of occurrences is greater than a second predetermined threshold (for example if there is more than one occurrence, as will be seen later).
  • a first predetermined threshold a value close to 4 for example, as will be seen later
  • a second predetermined threshold for example if there is more than one occurrence, as will be seen later.
  • the digital audio signal is a speech signal
  • a degree of voicing is advantageously detected in the speech signal and the correction of step b) is not implemented if the speech signal is strongly voiced (which manifests itself by a correlation coefficient close to "1" in the search for a pitch period).
  • this correction is implemented only if the signal is not voiced or if it is weakly voiced.
  • step b) avoids applying the correction of step b) and unnecessarily attenuating the signal in the replacement blocks, if the valid signal received is strongly voiced (thus stationary), which actually corresponds to the pronunciation of the signal. a stable vowel (eg "aaaa”).
  • the present invention is directed to the signal modification before repetition period repetition (or "pitch" for a voiced speech signal), for the synthesis of lost blocks at the decoding of digital audio signals.
  • Transient repeat effects are avoided by comparing samples of a pitch period with those of the previous pitch period.
  • the signal is modified preferentially by taking the minimum between the current sample and at least one sample substantially of the same position of the previous pitch period.
  • the invention offers several advantages, particularly in the context of decoding in the presence of block losses.
  • it makes it possible to avoid artifacts coming from the erroneous repetition of transients (when a simple repetition of pitch period is used).
  • it performs a transient detection which can be used to adapt the energy control of the extrapolated signal (via a variable attenuation).
  • FIG. 2c illustrates, by way of comparison, the effect of the treatment in the sense of the invention on the same signal as that of FIGS. 2a and 2b, for which a TP frame has been lost, FIG.
  • FIG. 3 represents the decoder according to recommendation G .722, but modified by integrating a device for correcting erased frames in the sense of the invention
  • FIG. 4 illustrates the principle of extrapolation of the low band
  • FIG. 5 illustrates the principle of pitch repetition (in the field of excitation)
  • Figure 6 illustrates the modification of the excitation signal in the sense of the invention, followed by pitch repetition
  • Figure 7 illustrates the steps of the method of the invention, according to a particular embodiment
  • Figure 8 ill schematically a synthesis device for the implementation of the method in the sense of the invention
  • Figure 8a illustrates the general structure of a quadrature filter bank (QMF) with two channels
  • QMF quadrature filter bank
  • the decoder within the meaning of the invention again presents an architecture in two subbands with the reception QMF filter banks (blocks 310 to 314).
  • the decoder of Figure 3 further integrates a device 320 for clearing erased frames.
  • the G.722 decoder generates an output signal Ss sampled at 16 kHz and cut into time frames (or sample blocks) of 10, 20 or 40 ms. Its operation differs according to the presence or not of loss of frames.
  • the erased frame is extrapolated in the block 301 from the signal x1 passed (pitch copy in particular) and the states of the ADPCM decoder are updated. in block 302.
  • the erased frame is extrapolated in block 305 from the passed signal xh and the states of the ADPCM decoder are updated in block 306.
  • the extrapolation yh is a simple repetition of the last period of the past xh signal.
  • This signal uh is advantageously filtered to give the signal vh.
  • the G.722 coding is a recursive predictive coding scheme (of the "backward" type). It uses in each subband an ARMA prediction operation (for "Auto-Regressive Moving Average") and a procedure for adapting the ARMA filter quantization and adaptation pitch, identical to the encoder and to the decoder. The prediction and the pitch adaptation are based on the decoded information (prediction error, reconstructed signal).
  • the transmission errors lead to a desynchronization between the decoder and the encoder variables.
  • the pitch adaptation and prediction procedures are then erroneous and skewed over a long period of time (up to 300-500 ms). In the high band, this bias can result, among other artefacts, in the appearance of a continuous component of very low amplitude (of the order of +/- 10 for a maximum dynamic signal +/- 32767 ).
  • this DC component is found in the form of a sinusoid at 8kHz audible and very troublesome to the hearing.
  • Figure 8a shows a two-channel quadrature filter bank (QMF).
  • QMF quadrature filter bank
  • the signal x (n) is decomposed into two subbands by the analysis bank. We thus obtain a low band xl (n) and a high band xh (n). These signals are defined by their transform in z:
  • H (z) L (-z). If L (z) satisfies the constraints of perfect reconstruction, the signal obtained after the synthesis filter bank is identical to the signal x (n) with a shift.
  • the filters L (z) and H (z) may be, for example, the QMF filters of 24 coefficients specified in the ITU-T Recommendation.
  • Figure 8b shows the spectrum of the signals x (n), x1 (n) and xh (n) in the case where the filters L (z) and H (z) are ideal half-band filters.
  • the frequency response of L (z) over the interval [-f e / 2, + fe '/ 2] is then given, in the ideal case, by:
  • the L (z) and H (z) filters are not ideal. Their non-ideal nature results in the appearance of a spectral folding component which is canceled by the synthesis bench. The high band remains inverted, however.
  • Block 308 then performs a high pass filtering (HPF for "high pass filter”) which removes the DC component (for "DC remove” in English).
  • HPF high pass filter
  • the use of such a filter is particularly advantageous, including outside the scope of the correction of pitch period in the low band within the meaning of the invention.
  • a high-pass filter 308 is provided on the high frequency channel.
  • This high-pass filter 308 is advantageously provided upstream, for example, of the QMF filter bank of this high-frequency channel of the G.722 decoder.
  • This arrangement makes it possible to avoid the folding of the DC component at 8 kHz (value taken from the sampling rate f e ) when it is applied to the QMF filter bank.
  • the high-pass filter (308) is preferably provided upstream of this filter bank.
  • this high-pass filter 308 is temporarily applied (for a few seconds for example) during and after a loss of blocks, even if valid blocks are received again. Filter 308 could be used permanently.
  • the modified G.722 decoder (because integrating the mechanism of loss correction) is identical to that of the ITU-T G.722 decoder in the absence of frame loss.
  • This filter 308 is applied only during the frame loss correction and for a few seconds following a loss. Indeed, in case of loss, the G.722 decoder is desynchronized from the encoder for a period of 100 to 500 ms following a loss and the continuous component in the high band is typically only present for a duration of 1 to 2 seconds. The filter 308 is maintained a little longer to have a safety margin (for example four seconds).
  • the decoder object of FIG. 3 is not described in greater detail, it being understood that the invention is in particular implemented in the block 301 for extrapolation of the low band.
  • This block 301 is detailed in FIG.
  • Block 400 performs a linear prediction analysis (LPC) on the passed signal xl.
  • LPC linear prediction analysis
  • This analysis is similar to that carried out in particular in the G.729 standardized coder. It can consist of windowing the signal, calculating the autocorrelation and finding the linear prediction coefficients by the Levinson-Durbin algorithm. Preferably, only the last 10 seconds of the signal are used and the LPC order is set to 8.
  • LPC coefficients (noted hereinafter at 0 , a1s ..., a p ) are obtained in the form:
  • the past excitation signal is calculated by block 401.
  • Block 402 makes an estimate of the fundamental frequency or its inverse: the pitch period TQ. This estimation is carried out for example in a manner similar to the pitch analysis (called “open loop” especially as in the standardized encoder G.729).
  • the estimated pitch TQ is used by block 403 to extrapolate the excitation of the current frame.
  • the passed signal x1 is classified in block 404.
  • the aim is rather to detect whether the signal Se is strongly voiced (for example when the correlation with respect to the pitch period is very close to 1). If the signal is strongly voiced (which corresponds to the pronunciation of a stable vowel, for example "aaaa ##), then the signal Se is free of transients and the pitch period correction in the sense of the invention may not be implemented. Otherwise, preferentially, the correction of the pitch period in the sense of the invention will be applied in all other cases.
  • the SYNTH synthesis follows the well-known model in the state of the art and called "source-filter". It consists in filtering the excitation extrapolated by an LPC filter.
  • the signal obtained is attenuated by the block 407 as a function of an attenuation calculated in the block 406, to be finally delivered in yl.
  • the invention as such, is carried out by block 403 of FIG. 4, whose functions are described in detail below.
  • FIG. 5 shows, as an illustration, the principle of simple excitation repetition as performed in the state of the art.
  • the excitation can be extrapolated by simply repeating the last pitch period TQ, that is to say by copying the succession of the last samples of the past excitation, the number of samples in this succession corresponding to the number of samples that includes the pitch period T 0 .
  • this signal modification is not applied if the signal x 1 (and therefore the input signal Se) is strongly voiced. Indeed, in the case of a strongly voiced signal, the simple repetition of the last pitch period, without modification, can give a better result, whereas a modification of the last pitch period and its repetition could result in a slight quality degradation.
  • FIG. 7 shows the processing corresponding to the application of this formula, in flowchart form, to illustrate the steps of the method according to one embodiment of the invention.
  • the processing corresponding to the application of this formula, in flowchart form, to illustrate the steps of the method according to one embodiment of the invention.
  • the past signal e (n) that delivers the block 401.
  • step 70 we obtain the information according to which the signal x1 is strongly voiced or not, from the module 404 determining the degree of voicing. If the signal is strongly voiced (arrow O at the output of the test 71), the last pitch period of the valid blocks, as is, is copied into the block 403 of FIG. 4 and the processing continues directly thereafter by the application of the inverse filtering 1 / A (z) by the module 405.
  • each sample e (n) of the last pitch period is made to correspond to a NEIGH neighborhood in the preceding pitch period, ie in the penultimate pitch period.
  • step 74 the third sample of the last pitch period noted e (3) is selected (step 74) and the NEIGH neighborhood samples associated with it in the penultimate pitch period (step 75) are shown in bold and are e (2-7O), e (3-7O) and e (4-7O). They are therefore distributed around e (3-7O).
  • step 76 the maximum, in absolute value, is determined among the NEIGH neighborhood samples (ie the sample e (2-7O) in the example of FIG. 6). This feature is advantageous but not necessary. The advantage it provides will be described later. Typically, alternatively, one could choose to determine the average on NEIGH neighborhood, for example.
  • step 77 the minimum, in absolute value, is determined between the value of the current sample e (n) and the value of the maximum M found on NEIGH neighborhood in step 76.
  • this minimum between e (3) and e (2-7O) is indeed the sample of the penultimate pitch period e (2-7O).
  • the amplitude of the current sample e (n) is then replaced by this minimum.
  • the amplitude of the sample e (3) becomes equal to that of the sample e (2-7O).
  • the same method is applied to all the samples of the last period, from e (l) to e (12).
  • the corrected samples are represented by dashed lines.
  • the samples of pitch periods extrapolated T ) + ⁇ , T ) + 2, corrected according to the invention, are represented by closed arrows.
  • step 76 the maximum value M in absolute value of the samples of the neighborhood (and not another parameter such as the average on this neighborhood, for example) is determined so as to compensate for the effect of choosing the minimum to step 77 for replace the value e (n).
  • This measurement therefore makes it possible not to limit too much the amplitude of the replacement pitch periods r j + 1 , T 3 + 2 (FIG. 6).
  • the neighborhood determination step 75 is advantageously implemented because a pitch period is not always regular and, if a sample e (n) has a maximum intensity in a period of pitch T 0 , it is not always the same for a sample e (n + 7O) in a next pitch period.
  • a pitch period may extend to a time position falling between two samples (at a given sampling frequency). We speak of "fractional pitch". It is therefore always preferable to take a neighborhood centered around a sample e (n-70), if this sample e (n-70) is to be associated with a sample e (n) positioned at a following pitch period.
  • step 78 consists simply in reassigning the sign of the initial sample e (n) to the modified sample e mod (n).
  • Steps 75 to 78 are repeated for a sample e (n) following (n before n + 1 in step 79), until the pitch period T 0 is exhausted (ie until reaching the last valid sample e ( ⁇ )).
  • the modified signal e mo d (n) is thus delivered to the inverse filter 1 / A (z) (reference 405 of FIG. 4) for the following decoding.
  • An exemplary embodiment of a transient detection in general, can consist in counting the number of occurrences of the following condition (1):
  • the signal passed x1 has a transient (for example a plosive), which makes it possible to force a fast attenuation by the block 406 on the synthesis signal yl (eg attenuation over 10 ms).
  • a transient for example a plosive
  • FIG. 2c then illustrates the decoded signal when the invention is implemented, for comparison with FIGS. 2a and 2b for which a frame containing the ItI plosive was lost.
  • the repetition of the phoneme ItI is here avoided, thanks to the implementation of the invention.
  • the differences following the frame loss are not related to the actual plosive detection.
  • the attenuation of the signal after the frame loss in FIG. 2c is explained by the fact that in this case, the G.722 decoder is reset (complete update of the states in the block 302 of FIG. ), whereas in the case of Figure 2b, the G.722 decoder is not reset.
  • the present invention also relates to a computer program intended to be stored in memory of a device for synthesizing a digital audio signal.
  • This program then comprises instructions for implementing the method in the sense of the invention, when it is executed by a processor of such a synthesis device.
  • Figure 7 described above can illustrate a flowchart of such a computer program.
  • the present invention also provides a device for synthesizing a digital audio signal consisting of a succession of blocks.
  • This device could also include a memory storing the aforementioned computer program and could consist of the block 403 of Figure 4 with the features described above.
  • this device SYN comprises: an input E for receiving blocks of the signal e (n), preceding at least one current block to be synthesized, and an output S for delivering the synthesized signal e mod (n) and having at least this synthesized current block.
  • the synthesis device SYN within the meaning of the invention comprises means such as a working memory MEM (or storage of the aforementioned computer program) and a PROC processor cooperating with this memory MEM, for the implementation of the method within the meaning of the invention, and thus to synthesize the current block from at least one of the preceding blocks of the signal e (n).
  • a working memory MEM or storage of the aforementioned computer program
  • PROC processor cooperating with this memory MEM, for the implementation of the method within the meaning of the invention, and thus to synthesize the current block from at least one of the preceding blocks of the signal e (n).
  • the present invention also relates to a decoder of a digital audio signal consisting of a succession of blocks, this decoder comprising the device 403 within the meaning of the invention for synthesizing invalid blocks. More generally, the present invention is not limited to the embodiments described above by way of example; it extends to other variants.
  • signal detection and modification can be performed in the signal domain (rather than the field of excitation).
  • the excitation is extrapolated by repetition of pitch and possibly addition of a random contribution and this excitation is filtered by a filter of type 1 / A (z), where A (z) is derived from the last correctly received predictor filter.
  • step b a sample correction, in step b), followed by copying of the corrected samples into the replacement block (s).
  • step b a sample correction, in step b), followed by copying of the corrected samples into the replacement block (s).
  • sample correction and copying can be steps that can occur in any order and, in particular, be reversed.

Abstract

The method involves determining a repetition period e.g. pitch period, in a valid block immediately preceding an invalid block, where the pitch period corresponds to inverse of fundamental frequency of an audio signal. Samples of the repetition period are corrected based on samples of another repetition period preceding the former repetition period for limiting amplitude of a transitory signal in the former repetition period. The corrected samples are copied in a replacing block. Independent claims are also included for the following: (1) a computer program comprising instructions for implementing a digital audio signal synthesizing method (2) a device for synthesizing a digital audio signal.

Description

Synthèse de blocs perdus d'un signal audionumérique, avec correction de période de pitch Synthesis of lost blocks of a digital audio signal, with correction of pitch period
La présente invention concerne le traitement de signaux audionumériques (signaux de parole, notamment).The present invention relates to the processing of digital audio signals (especially speech signals).
Elle intervient dans un système de codage/décodage adapté pour la transmission/réception de tels signaux. Plus particulièrement, la présente invention porte sur un traitement à la réception permettant d'améliorer la qualité des signaux décodés en présence de pertes de blocs de données.It intervenes in a coding / decoding system adapted for the transmission / reception of such signals. More particularly, the present invention relates to a reception processing for improving the quality of the decoded signals in the presence of data block losses.
Différentes techniques existent pour convertir sous forme numérique et compresser un signal audionumérique. Les techniques les plus courantes sont : les méthodes de codage de forme d'onde, telles que le codage MIC (pour "Modulation par Impulsions Codées") et MICDA (pour "Modulation par Impulsion et Codage Différentiel Adaptatif), dits aussi "PCM" et "ADPCM" en anglais, les méthodes de codage paramétrique par analyse par synthèse comme le codage CELP (pour "Code Excited Linear Prédiction"), et - les méthodes de codage perceptuel en sous-bandes ou par transformée.Different techniques exist for converting into digital form and compressing a digital audio signal. The most common techniques are: waveform coding methods, such as MIC (for "Coded Pulse Modulation") and ADPCM (for "Pulse Modulation and Adaptive Differential Coding"), also known as "PCM" and "ADPCM" in English, methods of parametric coding by synthesis analysis such as CELP coding (for "Code Excited Linear Prediction"), and - perceptual encoding methods in subbands or by transform.
Ces techniques traitent le signal d'entrée de façon séquentielle échantillon par échantillon (MIC ou MICDA) ou par blocs d'échantillons dits "trames" (CELP et codage par transformée).These techniques treat the input signal sequentially sample by sample (MIC or ADPCM) or sample blocks called "frames" (CELP and transform coding).
On rappelle rapidement qu'un signal de parole peut être prédit à partir de son passé récent (par exemple de 8 à 12 échantillons à 8 kHz) au moyen de paramètres évalués sur des fenêtres courtes (10 à 20 ms dans cet exemple). Ces paramètres de prédiction à court terme, représentatifs de la fonction de transfert du conduit vocal (par exemple pour prononcer des consonnes), sont obtenus par des méthodes d'analyse LPC (pourIt is quickly recalled that a speech signal can be predicted from its recent past (for example from 8 to 12 samples at 8 kHz) using parameters evaluated on short windows (10 to 20 ms in this example). These short-term prediction parameters, representative of the vocal tract transfer function (for example to pronounce consonants), are obtained by LPC analysis methods (for
"Linear Prédiction Coding"). Il existe aussi une corrélation à plus long terme associée aux quasi-périodicités de la parole (par exemple de sons voisés tels que les voyelles) qui sont dues à la vibration des cordes vocales. Il s'agit donc de déterminer au moins la fréquence fondamentale du signal voisé qui varie typiquement de 60 Hz (voix grave) à 600 Hz (voix aiguë) selon les locuteurs. On détermine alors, par une analyse LTP (pour "Long Term Prédiction"), les paramètres LTP d'un prédicteur à long terme, et en particulier l'inverse de la fréquence fondamentale, appelée souvent "période de pitch". On définit alors le nombre d'échantillons dans une période de pitch par le rapport Fe/F0 (ou sa partie entière), où :"Linear Prediction Coding"). There is also a longer-term correlation associated with quasi-periodicities of speech (for example voiced sounds such as vowels) which are due to the vibration of the vocal cords. It is therefore a question of determining at least the fundamental frequency of the voiced signal which varies typically from 60 Hz (deep voice) to 600 Hz (high voice) according to the speakers. A LTP (Long Term Prediction) analysis then determines the LTP parameters of a long-term predictor, and in particular the inverse of the fundamental frequency, often called the pitch period. We then define the number of samples in a pitch period by the ratio F e / F 0 (or its integer part), where:
- Fe est la cadence d'échantillonnage, et- F e is the sampling rate, and
- Fo est la fréquence fondamentale. On retiendra donc que les paramètres de prédiction à long terme LTP, dont la période de pitch, représentent la vibration fondamentale du signal de parole (lorsqu'il est voisé), tandis que les paramètres de prédiction à court terme LPC représentent l'enveloppe spectrale de ce signal.- Fo is the fundamental frequency. We therefore note that the LTP long-term prediction parameters, including the pitch period, represent the fundamental vibration of the speech signal (when it is voiced), while the LPC short-term prediction parameters represent the spectral envelope. of this signal.
Dans certains codeurs, l'ensemble de ces paramètres LPC et LTP, résultant donc d'un codage de parole, peuvent être transmis par blocs vers un décodeur homologue, via un ou plusieurs réseaux de télécommunication, pour restituer ensuite le signal de parole initial.In some coders, all of these LPC and LTP parameters, thus resulting from a speech coding, can be transmitted in blocks to a peer decoder, via one or more telecommunication networks, to then restore the initial speech signal.
On s'intéresse toutefois par la suite (à titre d'exemple) au système de codage G.722 à 48, 56 et 64 kbit/s normalisé par ITJIT-T pour la transmission de signaux de parole en bande élargie (qui sont échantillonnés à 16 kHz). Le codeur G.722 présente un schéma de codage MICDA en deux sous-bandes obtenues par un banc de filtres QMF (pour "Quadrature Mirror Filter"). Pour plus de détails, on peut se référer utilement au texte de la recommandation G.722.However, it is of interest (for example) that the ITJIT-T standardized G.722 48-, 56- and 64-kbit / s coding system for the transmission of broadband speech signals (which are sampled at 16 kHz). The G.722 coder has an ADPCM coding scheme in two sub-bands obtained by a QMF (for "Quadrature Mirror Filter") filter bank. For further details, reference may be made to the text of Recommendation G.722.
La figure 1 de l'état de l'art montre la structure de codage et de décodage selon la recommandation G.722. Les blocs 101 à 103 représentent le banc de filtres QMF de transmission (séparation spectrale en hautes 102 et basses 100 fréquences et sous- échantillonnage 101 et 103), appliqué au signal d'entrée Se. Les blocs suivants 104 et 105 correspondent respectivement aux codeurs MICDA en bande basse et haute. Le débit du codeur MICDA en bande basse est spécifié par un mode valant 0, 1, ou 2, indiquant respectivement un débit de 6,5 ou 4 bits par échantillon, alors que le débit du codeur MICDA en bande haute est fixe (deux bits par échantillon). On retrouve au décodeur les blocs équivalents de décodage MICDA (blocs 106 et 107) dont les sorties sont combinées dans le banc de filtres QMF de réception (sur-échantillonnage 108 etFigure 1 of the state of the art shows the coding and decoding structure according to Recommendation G.722. Blocks 101 to 103 represent the transmission filter bank QMF (spectral separation in high 102 and low 100 frequencies and subsampling 101 and 103) applied to the input signal Se. The following blocks 104 and 105 respectively correspond to low and high band ADPCM coders. The The low-band ADPCM encoder rate is specified by a mode of 0, 1, or 2, respectively indicating a rate of 6.5 or 4 bits per sample, while the high-band ADPCM encoder rate is fixed (two bits per second). sample). At the decoder, there are the equivalent ADPCM decoding blocks (blocks 106 and 107) whose outputs are combined in the receiving QMF filter bank (oversampling 108 and
110, filtres inverses 109, 111 et réunion des bandes de fréquences basses et hautes 112) pour générer le signal de synthèse Ss.110, inverse filters 109, 111 and joining the low and high frequency bands 112) to generate the synthesis signal Ss.
Un problème général étudié ici concerne la correction de pertes de blocs au décodage. En effet, le train binaire issu du codage est en général formaté en blocs binaires pour la transmission sur beaucoup de types de réseaux. On parle par exemple de "paquets IP" (pour "Internet Protocol") pour des blocs transmis via le réseau Internet, de "trames" pour des blocs transmis sur des réseaux ATM (pour "Asynchronous Transfer Mode"), ou autres. Les blocs transmis après codage peuvent être perdus pour diverses raisons : - si un routeur du réseau est saturé et vide sa file d'attente,A general problem studied here concerns the correction of block losses at decoding. Indeed, the bit stream resulting from the coding is generally formatted in binary blocks for transmission on many types of networks. For example, there is talk of "IP packets" (for "Internet Protocol") for blocks transmitted via the Internet, "frames" for blocks transmitted over ATM networks (for "Asynchronous Transfer Mode"), or others. The blocks transmitted after coding can be lost for various reasons: - if a router of the network is saturated and empties its queue,
- si le bloc est reçu en retard (donc non pris en compte) lors d'un décodage à flux continu et en temps-réel,- if the block is received late (therefore not taken into account) during a continuous flow decoding and in real time,
- si un bloc reçu est corrompu (par exemple si son code de parité CRC n'est pas vérifié).- if a received block is corrupted (for example if its CRC parity code is not checked).
Lors d'une perte d'un ou plusieurs blocs consécutifs, le décodeur doit reconstruire le signal sans information sur les blocs perdus ou erronés. Il s'appuie sur l'information décodée précédemment à partir des blocs valides reçus. Ce problème, appelé "correction de blocs perdus" (ou encore, ci-après, "correction de trames effacées") est en fait plus général que la simple extrapolation d'information manquante car la perte de trames occasionne souvent une perte de synchronisation entre codeur et décodeur, en particulier lorsque ceux-ci sont prédictifs, ainsi que des problèmes de continuité entre l'information extrapolée et l'information décodée après une perte. La correction de trames effacées englobe donc aussi des techniques de restauration d'états, de re- convergence, et autres. L'annexe I de la recommandation UIT-T G.711 décrit une correction de trames effacées adaptée au codage MIC. Le codage MIC n'étant pas prédictif, la correction de pertes de trames se résume donc simplement à extrapoler l'information manquante et assurer la continuité entre une trame reconstruite et des trames correctement reçues, suite à une perte. L'extrapolation est mise en œuvre par répétition du signal passé de façon synchrone avec la fréquence fondamentale (ou inversement, "période de pitch"), c'est-à-dire en répétant simplement des périodes de pitch. La continuité est assurée par un lissage (ou "fondu enchaîné" pour le terme anglais "cross-fading") entre échantillons reçus et échantillons extrapolés.When a loss of one or more consecutive blocks, the decoder must reconstruct the signal without information on lost or errored blocks. It relies on the previously decoded information from the valid blocks received. This problem, called "lost block correction" (or, hereafter, "erasure correction") is actually more general than simply extrapolating missing information because the loss of frames often causes a loss of synchronization between encoder and decoder, especially when these are predictive, as well as continuity problems between the extrapolated information and the decoded information after a loss. The correction of erased frames thus also includes state restoration, convergence, and other techniques. Annex I of ITU-T Recommendation G.711 describes erasure correction for PCM encoding. As the PCM coding is not predictive, the frame loss correction is therefore simply to extrapolate the missing information and ensure the continuity between a reconstructed frame and correctly received frames, following a loss. The extrapolation is implemented by repetition of the signal passed synchronously with the fundamental frequency (or conversely, "pitch period"), that is to say by simply repeating pitch periods. The continuity is ensured by a smoothing (or "cross-fading") between samples received and extrapolated samples.
Dans le document :In the document :
"A Packet Loss Concealment Method using Pitch Waveform Répétition and Internai State Update on the Decoded Speech for the Sub-band ADPCM Wideband Speech Codée", M. Serizawa et Y. Nozawa, IEEE Speech Coding Workshop, pages 68-70 (2002), il a été proposé une correction de trames effacées pour le codeur/décodeur normalisé G.722 en extrapolant une trame perdue à l'aide d'un algorithme de répétition des périodes de pitch (répétition qui peut être similaire à celle décrite dans l'annexe I de la recommandation G.711). Pour mettre à jour les états du codeur G.722 (mémoire des filtres et mémoire d'adaptation de pas), la trame ainsi extrapolée est divisée en deux sous-bandes qui sont encodées à nouveau par codage MICDA."A Packet Loss Concealment Method using Pitch Waveform Repetition and Internai State Update on the Decoded Speech for the ADPCM Wideband Speech Coded Subband", M. Serizawa and Y. Nozawa, IEEE Speech Coding Workshop, pp. 68-70 (2002), it has been proposed a correction of erased frames for the G.722 standard encoder / decoder by extrapolating a lost frame using a repetition algorithm of the pitch periods (repetition which may be similar to that described in the appendix I of Recommendation G.711). To update the states of the G.722 encoder (filter memory and pitch matching memory), the thus extrapolated frame is divided into two subbands which are encoded again by ADPCM encoding.
Toutefois, de telles techniques de correction de pertes de trame par répétition de périodes de pitch ne peuvent fonctionner correctement que si le signal passé est stationnaire ou au moins cyclo-stationnaire. Elles reposent donc sur l'hypothèse implicite que le signal associé à la trame perdue (qu'il faut extrapoler) est "similaire" au signal décodé jusqu'à la perte de trame. Dans le cas du signal de parole, cette hypothèse de stationnante n'est rigoureusement valable que pour des sons tels qu'une portion de voyelles à répéter. Par exemple, une voyelle "a" peut être répétée plusieurs fois (ce qui donne "aaaa..." sans occasionner de gêne à l'écoute). Or, un signal de parole comporte des sons dits "transitoires" (sons non stationnaires incluant typiquement les attaques (débuts) de voyelles et les sons appelés "plosives" qui correspondent aux consonnes brèves telles que "p", "b", "d", "t", "k"). Ainsi, si par exemple une trame est perdue juste après le son "t", une correction de perte de trame par simple répétition générera une séquence très désagréable à l'écoute de "t" (qui s'entendra en français comme "teu-teu-teu-teu-teu") en rafale pour une perte de plusieurs trames successives (par exemple cinq pertes consécutives).However, such techniques of correction of frame loss by repetition of pitch periods can only function properly if the passed signal is stationary or at least cyclically stationary. They are therefore based on the implicit assumption that the signal associated with the lost frame (which must be extrapolated) is "similar" to the decoded signal until the loss of frame. In the case of the speech signal, this stationary hypothesis is strictly valid only for sounds such as a portion of vowels to be repeated. For example, a vowel "a" can be repeated several times (which gives "yyyy ..." without causing discomfort). However, a speech signal includes so-called "transient" sounds (non-stationary sounds including typically vowel attacks (beginnings) and sounds called "plosives" which correspond to short consonants such as "p", "b", "d", "t", "k"). Thus, if, for example, a frame is lost just after the sound "t", a correction of frame loss by simple repetition will generate a very unpleasant sequence listening to "t" (which will be understood in French as "teu- teu-teu-teu-teu ") in burst for a loss of several successive frames (for example five consecutive losses).
Les figures 2a et 2b illustrent cet effet acoustique dans le cas d'un signal en bande élargie codé par un codeur selon la recommandation G.722. Plus particulièrement, la figure 2a montre un signal de parole décodé sur un canal idéal (sans perte de trame). Ce signal correspond, dans l'exemple représenté, au mot français "temps", divisé en deux phonèmes: /t/ puis /an/. Les lignes verticales en pointillés indiquent les frontières entre trames. On considère ici le cas de trames de longueur de l'ordre de 10 ms. La figure 2b montre le signal décodé selon une technique similaire à la référence Serizawa et al ci-avant lorsqu'une perte de trame suit immédiatement le phonème ItI. Cette figureFIGS. 2a and 2b illustrate this acoustic effect in the case of an expanded band signal encoded by an encoder according to Recommendation G.722. More particularly, Figure 2a shows a decoded speech signal on an ideal channel (without loss of frame). This signal corresponds, in the example represented, to the French word "temps", divided into two phonemes: / t / then / an /. Vertical dashed lines indicate the boundaries between frames. We consider here the case of frames of length of the order of 10 ms. Figure 2b shows the signal decoded according to a technique similar to Serizawa et al reference above when a frame loss immediately follows the ItI phoneme. This figure
2b montre bien le problème de la répétition du signal passé. On constate que le phonème /t/ est répété dans la trame extrapolée. Il est aussi présent dans la ou les trames suivantes car l'extrapolation est légèrement prolongée après une perte, dans l'exemple représenté, afin de réaliser un fondu enchaîné avec le décodage en conditions normales (c'est-à-dire en présence d'informations utiles dans le signal reçu).2b shows the problem of the repetition of the past signal. We note that the phoneme / t / is repeated in the extrapolated frame. It is also present in the following frame or frames because the extrapolation is slightly prolonged after a loss, in the example shown, in order to effect a cross-fade with the decoding under normal conditions (ie in the presence of useful information in the received signal).
Le problème de répétition des plosives n'a apparemment jamais été évoqué dans l'art antérieur connu.The problem of repetition of plosives has apparently never been mentioned in the known prior art.
La présente invention vient améliorer la situation.The present invention improves the situation.
Elle propose à cet effet un procédé de synthèse d'un signal audionumérique représenté par des blocs successifs d'échantillons, dans lequel, à la réception d'un tel signal, pour remplacer au moins un bloc invalide, on génère un bloc de remplacement à partir d'échantillons d'au moins un bloc valide. D'une façon générale, le procédé comporte les étapes suivantes : a) définir une période de répétition du signal dans au moins un bloc valide, et b) recopier les échantillons de la période de répétition dans au moins un bloc de remplacement.To this end, it proposes a method for synthesizing a digital audio signal represented by successive blocks of samples, in which, on receiving such a signal, to replace at least one invalid block, a replacement block is generated at from samples of at least one valid block. In general, the method comprises the following steps: a) defining a repetition period of the signal in at least one valid block, and b) copying the samples of the repetition period into at least one replacement block.
Dans le procédé au sens de l'invention : à l'étape a), on détermine une dernière période de répétition dans au moins un bloc valide précédant immédiatement un bloc invalide, et à l'étape b), on corrige des échantillons de la dernière période de répétition en fonction d'échantillons d'une période de répétition précédente, et ce, pour limiter l'amplitude d'un éventuel signal transitoire qui serait présent dans la dernière période de répétition. On recopie ensuite les échantillons ainsi corrigés dans le bloc de remplacement.In the process according to the invention: in step a), a last repetition period is determined in at least one valid block immediately preceding an invalid block, and in step b), samples of the last repetition period based on samples of a previous repetition period, and this to limit the amplitude of a possible transient signal that would be present in the last repetition period. The samples thus corrected are then copied back into the replacement block.
Le procédé au sens de l'invention s'applique avantageusement au traitement d'un signal de parole, aussi bien dans le cas d'un signal voisé que dans le cas d'un signal non voisé. Ainsi, si le signal est voisé, la période de répétition consiste simplement en la période de pitch et l'étape a) du procédé vise notamment la détermination d'une période de pitch (donnée typiquement par l'inverse d'une fréquence fondamentale) d'un ton du signal (par exemple le ton d'une voix dans un signal de parole) dans au moins un bloc valide précédant la perte.The method according to the invention is advantageously applied to the processing of a speech signal, both in the case of a voiced signal and in the case of an unvoiced signal. Thus, if the signal is voiced, the repetition period simply consists of the pitch period and step a) of the method aims in particular to determine a pitch period (typically given by the inverse of a fundamental frequency) a tone of the signal (for example the tone of a voice in a speech signal) in at least one valid block preceding the loss.
Si le signal valide reçu n'est pas voisé, il n'existe pas réellement de période de pitch détectable. Dans ce cas, il peut être prévu de fixer un nombre donné d'échantillons arbitraire qui sera considéré comme la longueur de la période de pitch (que l'on peut alors appeler de façon générique "période de répétition") et réaliser le procédé au sens de l'invention sur la base de cette période de répétition. Par exemple, on peut choisir une période de pitch la plus longue possible, typiquement 20 ms (correspondant à 50 Hz d'une voix très grave), soit 160 échantillons à 8 kHz de fréquence d'échantillonnage. Il est possible aussi de prendre la valeur correspondant au maximum d'une fonction de corrélation en limitant la recherche dans un intervalle de valeur (par exemple entre MAX PITCH/2 et MAX PITCH, où MAX PITCH est la valeur maximale dans la recherche de période de pitch).If the valid signal received is not voiced, there is not really a detectable pitch period. In this case, it can be expected to set a given arbitrary number of samples which will be considered as the length of the pitch period (which can then be called generically "repetition period") and carry out the process. sense of the invention on the basis of this repetition period. For example, we can choose the longest possible pitch period, typically 20 ms (corresponding to 50 Hz of a very deep voice), or 160 samples at 8 kHz sampling frequency. It is also possible to take the value corresponding to the maximum of a correlation function by limiting the search in a value interval (by example between MAX PITCH / 2 and MAX PITCH, where MAX PITCH is the maximum value in the search for pitch period).
Préférentiellement, si une pluralité de blocs invalides consécutifs doivent être remplacés à la réception et que ces blocs s'étendent sur au moins une période de répétition, l'étape de correction d'échantillons b) est appliquée à tous les échantillons de la dernière période de répétition, pris un à un en tant qu'échantillon courant.Preferably, if a plurality of consecutive invalid blocks are to be replaced upon receipt and these blocks extend over at least one repetition period, the sample correction step b) is applied to all samples of the last period of repetition, taken one by one as a current sample.
En outre, si ces blocs invalides vont jusqu'à s'étendre sur plusieurs périodes de répétition, on recopie plusieurs fois la période de répétition ainsi corrigée à l'étape b) pour former les blocs de remplacement.In addition, if these invalid blocks go to extend over several repetition periods, the repetition period thus corrected in step b) is repeatedly copied to form the replacement blocks.
Dans une réalisation particulière, pour la correction d'échantillon précitée qui est effectuée à l'étape b), on peut procéder comme suit. Pour un échantillon courant de la dernière période de répétition, on compare : l'amplitude de cet échantillon courant, en valeur absolue, à l'amplitude, en valeur absolue, d'au moins un échantillon temporellement positionné sensiblement à une période de répétition avant l'échantillon courant, et on affecte à l'échantillon courant l'amplitude minimale, en valeur absolue, parmi ces deux amplitudes, en lui affectant aussi, bien entendu, le signe de son amplitude initiale.In a particular embodiment, for the aforementioned sample correction that is performed in step b), one can proceed as follows. For a current sample of the last repetition period, the amplitude of this current sample, in absolute value, is compared with the amplitude, in absolute value, of at least one sample temporally positioned substantially at a repetition period before the current sample, and we assign to the current sample the minimum amplitude, in absolute value, among these two amplitudes, while also affecting, of course, the sign of its initial amplitude.
On entend ici par les termes "positionné sensiblement" le fait que l'on recherche dans la période de répétition précédente un voisinage à associer à l'échantillon courant. Ainsi, préférentiellement, pour un échantillon courant de la dernière période de répétition : on constitue un ensemble d'échantillons dans un voisinage centré autour d'un échantillon temporellement positionné à une période de répétition avant l'échantillon courant, on détermine une amplitude choisie parmi les amplitudes des échantillons dudit voisinage, prises en valeur absolue, et on compare cette amplitude choisie à l'amplitude de l'échantillon courant, en valeur absolue, pour affecter à l'échantillon courant l'amplitude minimum, en valeur absolue, parmi l'amplitude choisie et l'amplitude de l'échantillon courant.The term "positioned substantially" is understood here to mean the fact that a neighborhood to be associated with the current sample is sought in the preceding repetition period. Thus, preferentially, for a current sample of the last repetition period: a set of samples is formed in a neighborhood centered around a sample temporally positioned at a repetition period before the current sample, an amplitude chosen from the amplitudes of the samples of said neighborhood, taken into absolute value, and comparing this selected amplitude with the amplitude of the current sample, in absolute value, to assign to the current sample the minimum amplitude, in absolute value, among the selected amplitude and the amplitude of the current sample .
Cette amplitude choisie parmi les amplitudes des échantillons dudit voisinage est préférentiellement l'amplitude maximum en valeur absolue.This amplitude chosen from the amplitudes of the samples of said neighborhood is preferably the maximum amplitude in absolute value.
Par ailleurs, on applique habituellement un amortissement (atténuation progressive) de l'amplitude des échantillons dans les blocs de remplacement. Ici, de façon avantageuse, on détecte un caractère transitoire du signal avant la perte de blocs et, le cas échéant, on applique un amortissement plus rapide que pour un signal stationnaire (non transitoire).In addition, a damping (gradual attenuation) of the amplitude of the samples in the replacement blocks is usually applied. Here, advantageously, a transient character of the signal is detected before the loss of blocks and, where appropriate, a faster damping is applied than for a stationary (non-transitory) signal.
On peut, en complément ou en variante, effectuer aussi une remise à jour (RAZ) des mémoires des filtres suivants dans le traitement de synthèse, spécifiquement adaptée aux sons transitoires, pour éviter de retrouver l'influence de tels sons transitoires dans le traitement des blocs valides suivants.It is possible, in addition or alternatively, to also update (RAZ) the memories of the following filters in the synthesis processing, specifically adapted to transient sounds, to avoid finding the influence of such transient sounds in the processing of following valid blocks.
Préférentiellement, la détection d'un signal transitoire précédant la perte de bloc s'effectue comme suit : pour une pluralité d'échantillons courants de la dernière période de répétition, de mesurer un rapport, en valeur absolue, de l'amplitude d'un échantillon courant sur l'amplitude choisie précitée (déterminée dans le voisinage comme indiqué ci- avant), et - compter ensuite le nombre d'occurrences, pour les échantillons courants, pour lesquelles le rapport précité est supérieur à un premier seuil prédéterminé (une valeur voisine de 4 par exemple, comme on le verra plus loin), et détecter la présence d'un signal transitoire si le nombre d'occurrences est supérieur à un second seuil prédéterminé (par exemple s'il y a plus d'une occurrence, comme on le verra plus loin). Ces étapes ci-avant peuvent être mises à profit pour déclencher aussi l'étape de correction b) au sens de l'invention, en cas de détection d'un son transitoire dans la période de répétition précédant immédiatement la perte d'un bloc.Preferably, the detection of a transient signal preceding the block loss is as follows: for a plurality of current samples of the last repetition period, to measure a ratio, in absolute value, of the amplitude of a sample running on the aforementioned chosen amplitude (determined in the vicinity as indicated above), and - then counting the number of occurrences, for the current samples, for which the above-mentioned ratio is greater than a first predetermined threshold (a value close to 4 for example, as will be seen later), and detect the presence of a transient signal if the number of occurrences is greater than a second predetermined threshold (for example if there is more than one occurrence, as will be seen later). These steps above can be used to trigger also the correction step b) within the meaning of the invention, in case of detection of a transient sound in the repetition period immediately preceding the loss of a block.
Toutefois, pour décider d'appliquer ou non l'étape de correction b) du procédé au sens de l'invention, on procède préférentiellement comme suit. Si le signal audionumérique est un signal de parole, on détecte avantageusement un degré de voisement dans le signal de parole et on ne met pas en œuvre la correction de l'étape b) si le signal de parole est fortement voisé (ce qui se manifeste par un coefficient de corrélation proche de "1" dans la recherche d'une période de pitch). En d'autres termes, on ne met en œuvre cette correction que si le signal n'est pas voisé ou s'il est faiblement voisé.However, to decide whether or not to apply the correction step b) of the process within the meaning of the invention, the following procedure is preferentially carried out. If the digital audio signal is a speech signal, a degree of voicing is advantageously detected in the speech signal and the correction of step b) is not implemented if the speech signal is strongly voiced (which manifests itself by a correlation coefficient close to "1" in the search for a pitch period). In other words, this correction is implemented only if the signal is not voiced or if it is weakly voiced.
On évite ainsi d'appliquer la correction de l'étape b) et d'atténuer inutilement le signal dans les blocs de remplacement, si le signal valide reçu est fortement voisé (donc stationnaire), ce qui correspond en réalité à la prononciation d'une voyelle stable (par exemple "aaaa").This avoids applying the correction of step b) and unnecessarily attenuating the signal in the replacement blocks, if the valid signal received is strongly voiced (thus stationary), which actually corresponds to the pronunciation of the signal. a stable vowel (eg "aaaa").
Ainsi, en bref, la présente invention vise la modification de signal avant répétition de période de répétition (ou "pitch" pour un signal de parole voisé), pour la synthèse de blocs perdus au décodage de signaux audionumériques. Les effets de répétition de transitoires sont évités en comparant les échantillons d'une période de pitch avec ceux de la période de pitch précédente. Le signal est modifié préférentiellement en prenant le minimum entre l'échantillon courant et au moins un échantillon sensiblement de même position de la période de pitch précédente.Thus, in short, the present invention is directed to the signal modification before repetition period repetition (or "pitch" for a voiced speech signal), for the synthesis of lost blocks at the decoding of digital audio signals. Transient repeat effects are avoided by comparing samples of a pitch period with those of the previous pitch period. The signal is modified preferentially by taking the minimum between the current sample and at least one sample substantially of the same position of the previous pitch period.
L'invention offre plusieurs avantages notamment dans le contexte de décodage en présence de pertes de blocs. Elle permet notamment d'éviter les artefacts venant de la répétition erronée de transitoires (lorsqu'une simple répétition de période de pitch est utilisée). De plus, elle réalise une détection de transitoires qui peut servir à adapter le contrôle d'énergie du signal extrapolé (via une atténuation variable). D'autres avantages et caractéristiques de l'invention apparaîtront à l'examen de la description détaillée, donnée à titre d'exemple ci-après, et des dessins annexés sur lesquels, outre les figures 1, 2a et 2b présentées précédemment : la figure 2c illustre, à titre de comparaison, l'effet du traitement au sens de l'invention sur le même signal que celui des figures 2a et 2b, pour lequel on a perdu une trame TP, la figure 3 représente le décodeur selon la recommandation G.722, mais modifié en intégrant un dispositif de correction de trames effacées au sens de l'invention, la figure 4 illustre le principe d'extrapolation de la bande basse, - la figure 5 illustre le principe de la répétition de pitch (dans le domaine de l'excitation), la figure 6 illustre la modification du signal d'excitation au sens de l'invention, suivie par la répétition de pitch, la figure 7 illustre les étapes du procédé de l'invention, selon une réalisation particulière, la figure 8 illustre schématiquement un dispositif de synthèse pour la mise en œuvre du procédé au sens de l'invention, la figure 8a illustre la structure générale d'un banc de filtres en quadrature (QMF) à deux canaux, - la figure 8b représente les spectres des signaux x(n), xl(n), xh(n) de la figure 8a quand les filtres L(z) et H(z) sont idéaux (soit/e=2/e).The invention offers several advantages, particularly in the context of decoding in the presence of block losses. In particular, it makes it possible to avoid artifacts coming from the erroneous repetition of transients (when a simple repetition of pitch period is used). In addition, it performs a transient detection which can be used to adapt the energy control of the extrapolated signal (via a variable attenuation). Other advantages and characteristics of the invention will appear on examining the detailed description, given by way of example below, and the appended drawings in which, in addition to FIGS. 1, 2a and 2b presented above: FIG. 2c illustrates, by way of comparison, the effect of the treatment in the sense of the invention on the same signal as that of FIGS. 2a and 2b, for which a TP frame has been lost, FIG. 3 represents the decoder according to recommendation G .722, but modified by integrating a device for correcting erased frames in the sense of the invention, FIG. 4 illustrates the principle of extrapolation of the low band, FIG. 5 illustrates the principle of pitch repetition (in the field of excitation), Figure 6 illustrates the modification of the excitation signal in the sense of the invention, followed by pitch repetition, Figure 7 illustrates the steps of the method of the invention, according to a particular embodiment, Figure 8 ill schematically a synthesis device for the implementation of the method in the sense of the invention, Figure 8a illustrates the general structure of a quadrature filter bank (QMF) with two channels, - Figure 8b shows the spectra of the signals x (n), xl (n), xh (n) of Figure 8a when the filters L (z) and H (z) are ideal (ie / e = 2 / e ).
Une réalisation de l'invention reposant à titre d'exemple sur le système de codage selon la recommandation G.722 est décrite ci-après. On ne reprend pas ici la description du codeur G.722 (décrite ci-avant en référence à la figure 1). On se restreint ici à la description d'un décodeur G.722 modifié, qui intègre un correcteur de périodes de pitch à reproduire en cas de perte de trames.An exemplary embodiment of the invention on the coding system according to Recommendation G.722 is described below. The description of the G.722 encoder (described above with reference to FIG. 1) is not repeated here. We restrict ourselves here to the description of a modified G.722 decoder, which incorporates a corrector of pitch periods to reproduce in case of loss of frames.
En référence à la figure 3, le décodeur au sens de l'invention (ici selon la recommandation G.722) présente à nouveau une architecture en deux sous-bandes avec les bancs de filtres QMF de réception (blocs 310 à 314). Par rapport au décodeur de la figure 1, le décodeur de la figure 3 intègre en plus un dispositif 320 de correction de trames effacées.With reference to FIG. 3, the decoder within the meaning of the invention (here according to the G.722 recommendation) again presents an architecture in two subbands with the reception QMF filter banks (blocks 310 to 314). Compared to the decoder of the Figure 1, the decoder of Figure 3 further integrates a device 320 for clearing erased frames.
Le décodeur G.722 génère un signal de sortie Ss échantillonné à 16 kHz et découpé en trames temporelles (ou blocs d'échantillons) de 10, 20 ou 40 ms. Son fonctionnement diffère suivant la présence ou non de perte de trames.The G.722 decoder generates an output signal Ss sampled at 16 kHz and cut into time frames (or sample blocks) of 10, 20 or 40 ms. Its operation differs according to the presence or not of loss of frames.
En l'absence totale de perte de trames (donc si toutes les trames sont reçues et valides, le train binaire de la bande de basses fréquences BF est décodé par le bloc 300 du dispositif 320 au sens de l'invention, aucun fondu enchaîné (bloc 303) n'est réalisé et le signal reconstruit est donné simplement par zl = xl. De même, le train binaire de la bande de fréquences hautes HF est décodé par le bloc 304. Le commutateur 307 sélectionne la voie uh = xh et le commutateur 309 sélectionne la voie zh = uh = xh.In the complete absence of frame loss (and therefore if all the frames are received and valid, the bit stream of the low frequency band BF is decoded by the block 300 of the device 320 within the meaning of the invention, no cross-fading ( block 303) is realized and the reconstructed signal is simply given by z1 = x1 Similarly, the bitstream of the high frequency band HF is decoded by block 304. Switch 307 selects the channel uh = xh and the switch 309 selects the channel zh = uh = xh.
Néanmoins, en cas de perte d'une ou plusieurs trames, dans la bande basse BF, la trame effacée est extrapolée dans le bloc 301 à partir du signal xl passé (recopie de pitch notamment) et les états du décodeur MICDA sont mis à jour dans le bloc 302. La trame effacée est reconstruite comme zl = yl. Ce processus est répété tant qu'une perte de trames est détectée. Il est important de noter que le bloc d'extrapolation 301 ne se borne pas seulement à générer un signal extrapolé sur la trame courante (perdue) : il génère également 10 ms de signal pour la trame suivante afin de réaliser un fondu enchaîné dans le bloc 303.Nevertheless, in case of loss of one or more frames, in the low band BF, the erased frame is extrapolated in the block 301 from the signal x1 passed (pitch copy in particular) and the states of the ADPCM decoder are updated. in block 302. The erased frame is reconstructed as z1 = y1. This process is repeated as long as frame loss is detected. It is important to note that the extrapolation block 301 does not only generate an extrapolated signal on the current frame (lost): it also generates 10 ms of signal for the next frame in order to fade in the block 303.
Ensuite, lorsqu'une trame valide est reçue, celle-ci est décodée par le bloc 300 et un fondu enchaîné 303 est réalisé pendant les 10 premières millisecondes entre la trame valide xl et la trame précédemment extrapolée yl.Then, when a valid frame is received, it is decoded by the block 300 and a crossfade 303 is performed for the first 10 milliseconds between the valid frame x1 and the previously extrapolated frame y1.
Dans la bande haute HF, la trame effacée est extrapolée dans le bloc 305 à partir du signal xh passé et les états du décodeur MICDA sont mis à jour dans le bloc 306. Dans le mode de réalisation privilégié, l'extrapolation yh est une simple répétition de la dernière période du signal xh passé. Le commutateur 307 sélectionne la voie uh = yh. Ce signal uh est avantageusement filtré pour donner le signal vh. En effet, le codage G.722 est un schéma de codage prédictif récursif (de type "backward"). Il utilise dans chaque sous-bande une opération de prédiction de type ARMA (pour "Auto- Régressive Moving Average" - filtre autorégressif à moyenne mobile) et une procédure d'adaptation de pas de quantification et d'adaptation du filtre ARMA, identiques au codeur et au décodeur. La prédiction et l'adaptation du pas s'appuient sur les informations décodées (erreur de prédiction, signal reconstruit).In the high band HF, the erased frame is extrapolated in block 305 from the passed signal xh and the states of the ADPCM decoder are updated in block 306. In the preferred embodiment, the extrapolation yh is a simple repetition of the last period of the past xh signal. The switch 307 selects the channel uh = yh. This signal uh is advantageously filtered to give the signal vh. Indeed, the G.722 coding is a recursive predictive coding scheme (of the "backward" type). It uses in each subband an ARMA prediction operation (for "Auto-Regressive Moving Average") and a procedure for adapting the ARMA filter quantization and adaptation pitch, identical to the encoder and to the decoder. The prediction and the pitch adaptation are based on the decoded information (prediction error, reconstructed signal).
Les erreurs de transmission, plus particulièrement les pertes de trames, conduisent à une désynchronisation entre les variables du décodeur et du codeur. Les procédures d'adaptation de pas et de prédiction sont alors erronées et biaisées sur une grande période de temps (jusqu'à 300-500 ms). Dans la bande haute, ce biais peut résulter, parmi d'autres artefacts, en l'apparition d'une composante continue d'amplitude très faible (de l'ordre de +/-10 pour un signal de dynamique maximale +/-32767).The transmission errors, more particularly the frame losses, lead to a desynchronization between the decoder and the encoder variables. The pitch adaptation and prediction procedures are then erroneous and skewed over a long period of time (up to 300-500 ms). In the high band, this bias can result, among other artefacts, in the appearance of a continuous component of very low amplitude (of the order of +/- 10 for a maximum dynamic signal +/- 32767 ).
Toutefois, après passage par le banc de filtres QMF de synthèse, cette composante continue se retrouve sous la forme d'une sinusoïde à 8kHz audible et très gênante à l'audition.However, after passing through the synthesis filter bank QMF, this DC component is found in the form of a sinusoid at 8kHz audible and very troublesome to the hearing.
La transformation de la composante continue (ou "composante DC") en une sinusoïde à 8 kHz est expliquée ci-après. La figure 8a représente un banc de filtres en quadrature (QMF) à deux canaux. Le signal x(n) est décomposé en deux sous-bandes par le banc d'analyse. On obtient ainsi une bande basse xl(n) et une bande haute xh(n). Ces signaux sont définis par leur transformée en z :The transformation of the DC component (or "DC component") into a sinusoid at 8 kHz is explained below. Figure 8a shows a two-channel quadrature filter bank (QMF). The signal x (n) is decomposed into two subbands by the analysis bank. We thus obtain a low band xl (n) and a high band xh (n). These signals are defined by their transform in z:
XL(z) = ^(x(zιl2)L(zιl2) + X(-zιl2)L(-z112))XL (z) = ((x (z ι1 2 ) L (z ι1 2 ) + X (-z ι1 2 ) L (-z 112 ))
XH(z) = ^(x(zιl2)H(zιl2) + X(-zυ2)H(-zυ2))XH (z) = ((x (z ι1 2 ) H (z ι1 2 ) + X (-z υ2 ) H (-z υ2 ))
Les filtres passe-bas L(z) et passe-haut H(z) étant en quadrature, on a : H(z)=L(-z). Si L(z) vérifie les contraintes de reconstruction parfaite, le signal obtenu après le banc de filtre de synthèse est identique au signal x(n) à un décalage près.The low-pass filters L (z) and high-pass filters H (z) being in quadrature, we have: H (z) = L (-z). If L (z) satisfies the constraints of perfect reconstruction, the signal obtained after the synthesis filter bank is identical to the signal x (n) with a shift.
Ainsi, si la fréquence d'échantillonnage du signal x(n) est/e', les signaux xl(n) et xh(n) sont échantillonnés à la fréquence /e = /e'/2. Typiquement, on a souvent /e' = 16 kHz, soit /e = 8 kHz. On indique en outre que les filtres L(z) et H(z) peuvent être par exemple les filtres QMF de 24 coefficients spécifiés dans la recommandation UIT-TThus, if the sampling frequency of the signal x (n) is / e ', the signals xl (n) and xh (n) are sampled at the frequency / e = / e ' / 2. Typically, one often has / e '= 16 kHz, ie / e = 8 kHz. It is further indicated that the filters L (z) and H (z) may be, for example, the QMF filters of 24 coefficients specified in the ITU-T Recommendation.
G.722.G.722.
La figure 8b montre le spectre des signaux x(n), xl(n) et xh(n) dans le cas où les filtres L(z) et H(z) sont des filtres mi-bande idéaux. La réponse en fréquence de L(z) sur l'intervalle [-f e/2, +fe'/2] est alors donnée, dans le cas idéal, par:Figure 8b shows the spectrum of the signals x (n), x1 (n) and xh (n) in the case where the filters L (z) and H (z) are ideal half-band filters. The frequency response of L (z) over the interval [-f e / 2, + fe '/ 2] is then given, in the ideal case, by:
WiA [1 0* au |/tr|emΛenVt4 WiA [ 1 0 * at | / tr | e m Λ in V t 4
On remarque que le spectre de xh(n) correspond à la bande haute repliée. Cette propriété de repliement (ou "folding" en anglais), bien connue dans l'état de l'art, s'explique visuellement, ainsi qu'au moyen de l'équation ci-dessus définissant XH (z). Le repliement de la bande haute est "inversé" par le banc de filtres de synthèse qui rétablit le spectre de la bande haute dans l'ordre naturel des fréquences.Note that the spectrum of xh (n) corresponds to the high folded band. This folding property (or "folding" in English), well known in the state of the art, is explained visually, as well as by means of the equation above defining XH (z). The folding of the high band is "inverted" by the synthesis filter bank which restores the spectrum of the high band in the natural order of the frequencies.
Toutefois, en pratique, les filtres L(z) et H(z) ne sont pas idéaux. Leur caractère non- idéal a pour conséquence l'apparition d'une composante de repliement spectral qui est annulée par le banc de synthèse. La bande haute reste néanmoins inversée.However, in practice, the L (z) and H (z) filters are not ideal. Their non-ideal nature results in the appearance of a spectral folding component which is canceled by the synthesis bench. The high band remains inverted, however.
Le bloc 308 réalise alors un filtrage passe-haut (HPF pour "high pass filter") qui supprime la composante continue (pour "DC remove" en anglais). L'utilisation d'un tel filtre est particulièrement avantageuse, y compris en dehors du cadre de la correction de période de pitch dans la bande basse au sens de l'invention.Block 308 then performs a high pass filtering (HPF for "high pass filter") which removes the DC component (for "DC remove" in English). The use of such a filter is particularly advantageous, including outside the scope of the correction of pitch period in the low band within the meaning of the invention.
D'ailleurs, l'utilisation d'un tel filtre HPF (bloc 308) éliminant la composante continue dans la bande haute pourrait faire l'objet d'une protection séparée, dans un contexte général de perte de trames au décodage. En termes génériques, on comprendra donc qu'en contexte de décodage d'un signal reçu avec séparation de ce signal en bande de fréquences hautes et en bande de fréquences basses, donc en au moins deux canaux comme en décodage selon la norme G.722, lorsqu'il advient une perte de signal suivie d'une synthèse d'un signal de remplacement, de façon générale, sur la voie de hautes fréquences du décodeur, cela peut entraîner la présence d'une composante continue dans le signal de remplacement. L'effet de cette composante continue peut se prolonger aussi dans le signal décodé, pendant un certain temps, lorsque le signal codé reçu est à nouveau valide pourtant, à cause de la désynchronisation entre le codeur et le décodeur et de la taille mémoire des filtres.Moreover, the use of such an HPF filter (block 308) eliminating the DC component in the high band could be subject to separate protection, in a context general loss of frames at decoding. In generic terms, it will therefore be understood that in decoding context of a received signal with separation of this signal in high frequency band and in low frequency band, so in at least two channels as in decoding according to the G.722 standard when there is a loss of signal followed by a synthesis of a replacement signal, generally, on the high frequency path of the decoder, this may cause the presence of a DC component in the replacement signal. The effect of this continuous component can also extend in the decoded signal, for a certain time, when the received coded signal is again valid, however, because of the desynchronization between the encoder and the decoder and the memory size of the filters. .
On prévoit avantageusement un filtre passe-haut 308 sur la voie des hautes fréquences. Ce filtre passe-haut 308 est avantageusement prévu en amont par exemple du banc de filtres QMF de cette voie des hautes fréquences du décodeur G.722. Cette disposition permet d'éviter le repliement de la composante continue à 8 kHz (valeur tirée du taux d'échantillonnage fe) lorsqu'elle est appliquée au banc de filtres QMF. Plus généralement, lorsque le décodeur fait intervenir un banc de filtres en fin de traitement sur la voie des hautes fréquences, on prévoit préférentiellement le filtre passe-haut (308) en amont de ce banc de filtres.Advantageously, a high-pass filter 308 is provided on the high frequency channel. This high-pass filter 308 is advantageously provided upstream, for example, of the QMF filter bank of this high-frequency channel of the G.722 decoder. This arrangement makes it possible to avoid the folding of the DC component at 8 kHz (value taken from the sampling rate f e ) when it is applied to the QMF filter bank. More generally, when the decoder makes use of a bank of filters at the end of processing on the high frequency channel, the high-pass filter (308) is preferably provided upstream of this filter bank.
Ainsi, en référence à nouveau à la figure 3, le commutateur 309 sélectionne la voie zh = vh, tant qu'il y a perte de trames.Thus, with reference again to FIG. 3, the switch 309 selects the channel zh = vh as long as there is a loss of frames.
Ensuite, dès qu'une trame valide est reçue, celle-ci est décodée par le bloc 304 et le commutateur 307 sélectionne la voie uh = xh. Pendant quelques instants suivants (par exemple après quatre secondes), le commutateur 309 sélectionne encore la voie zh = vh, mais passé ces quelques secondes, on revient au fonctionnement "normal" où le commutateur 309 sélectionne à nouveau la voie zh = uh en contournant le bloc 308 et donc sans application du filtre passe-haut 308. En termes génériques, on comprendra donc que, préférentiellement, on applique temporairement (quelques secondes par exemple) ce filtre passe-haut 308 pendant et après une perte de blocs, même si des blocs valides sont à nouveau reçus. Le filtre 308 pourrait être utilisé en permanence. Néanmoins, il n'est activé qu'en cas de pertes de trames, car la perturbation due à la composante continue n'est générée que dans ce cas, de sorte que la sortie du décodeur G.722 modifié (car intégrant le mécanisme de correction de pertes) est identique à celle du décodeur UIT-T G.722 en l'absence de perte de trames. Ce filtre 308 est appliqué uniquement pendant la correction de perte de trames et pendant quelques secondes consécutives à une perte. En effet, en cas de perte, le décodeur G.722 est désynchronisé du codeur pendant une période de 100 à 500 ms suite à une perte et la composante continue dans la bande haute n'est typiquement présente que pour une durée de 1 à 2 secondes. Le filtre 308 est maintenu un peu plus longtemps pour avoir une marge de sécurité (par exemple quatre secondes).Then, as soon as a valid frame is received, it is decoded by the block 304 and the switch 307 selects the channel uh = xh. For a few moments thereafter (for example after four seconds), the switch 309 still selects the channel zh = vh, but after a few seconds, it returns to the "normal" operation where the switch 309 again selects the channel zh = uh bypassing block 308 and therefore without applying the high-pass filter 308. In generic terms, it will therefore be understood that, preferentially, this high-pass filter 308 is temporarily applied (for a few seconds for example) during and after a loss of blocks, even if valid blocks are received again. Filter 308 could be used permanently. Nevertheless, it is activated only in case of frame losses, because the disturbance due to the DC component is generated only in this case, so that the output of the modified G.722 decoder (because integrating the mechanism of loss correction) is identical to that of the ITU-T G.722 decoder in the absence of frame loss. This filter 308 is applied only during the frame loss correction and for a few seconds following a loss. Indeed, in case of loss, the G.722 decoder is desynchronized from the encoder for a period of 100 to 500 ms following a loss and the continuous component in the high band is typically only present for a duration of 1 to 2 seconds. The filter 308 is maintained a little longer to have a safety margin (for example four seconds).
On ne décrit pas plus en détail le décodeur objet de la figure 3, étant entendu que l'invention est en particulier mise en œuvre dans le bloc 301 d'extrapolation de la bande basse. Ce bloc 301 est détaillé sur la figure 4.The decoder object of FIG. 3 is not described in greater detail, it being understood that the invention is in particular implemented in the block 301 for extrapolation of the low band. This block 301 is detailed in FIG.
En référence à la figure 4, l'extrapolation de la bande basse repose sur une analyse du signal passé xl (partie de la figure 4 référencée ANALYS) suivie d'une synthèse du signal yl à délivrer (partie de la figure 4 référencée SYNTH). Le bloc 400 réalise une analyse par prédiction linéaire (LPC) sur le signal passé xl. Cette analyse est similaire à celle réalisée notamment dans le codeur normalisé G.729. Elle peut consister à fenêtrer le signal, calculer l'autocorrélation et trouver les coefficients de prédiction linéaire par l'algorithme de Levinson-Durbin. Préférentiellement, seules les 10 dernières secondes du signal sont utilisées et l'ordre LPC est fixé à 8. On obtient donc neuf coefficients LPC (notés ci-après a0, als ..., ap) sous la forme :With reference to FIG. 4, the extrapolation of the low band is based on an analysis of the past signal x1 (part of FIG. 4 referenced as ANALYS) followed by a synthesis of the signal y1 to be delivered (part of FIG. 4 referenced SYNTH) . Block 400 performs a linear prediction analysis (LPC) on the passed signal xl. This analysis is similar to that carried out in particular in the G.729 standardized coder. It can consist of windowing the signal, calculating the autocorrelation and finding the linear prediction coefficients by the Levinson-Durbin algorithm. Preferably, only the last 10 seconds of the signal are used and the LPC order is set to 8. Thus, nine LPC coefficients (noted hereinafter at 0 , a1s ..., a p ) are obtained in the form:
A(z) = ao + ai z"1 + ... + ap z"p avec p = 8 et ao = 1. Après analyse LPC, le signal d'excitation passé est calculé par le bloc 401. Le signal d'excitation passé est noté e(n) avec n = -M, ...,-1, où M correspond au nombre d'échantillons passés et stockés.A (z) = ao + ai z "1 + ... + a p z " p with p = 8 and ao = 1. After LPC analysis, the past excitation signal is calculated by block 401. The past excitation signal is noted e (n) with n = -M, ..., - 1, where M corresponds to the number of samples past and stored.
Le bloc 402 réalise une estimation de la fréquence fondamentale ou de son inverse : la période de pitch TQ. Cette estimation est réalisée par exemple d'une façon similaire à l'analyse de pitch (dite "en boucle ouverte" notamment comme dans le codeur normalisé G.729).Block 402 makes an estimate of the fundamental frequency or its inverse: the pitch period TQ. This estimation is carried out for example in a manner similar to the pitch analysis (called "open loop" especially as in the standardized encoder G.729).
Le pitch TQ ainsi estimé est utilisé par le bloc 403 pour extrapoler l'excitation de la trame courante.The estimated pitch TQ is used by block 403 to extrapolate the excitation of the current frame.
Par ailleurs, le signal passé xl est classifïé dans le bloc 404. On peut chercher ici à détecter la présence de transitoires, par exemple la présence d'une plosive pour appliquer la correction de période de pitch au sens de l'invention, mais, dans une variante préférentielle, on cherche plutôt à détecter si le signal Se est fortement voisé (par exemple lorsque la corrélation par rapport à la période de pitch est très proche de 1). Si le signal est fortement voisé (ce qui correspond à la prononciation d'une voyelle stable, par exemple "aaaa..."), alors le signal Se est exempt de transitoires et la correction de période de pitch au sens de l'invention peut ne pas être mise en œuvre. Sinon, préférentiellement, on appliquera la correction de la période de pitch au sens de l'invention dans tous les autres cas.Furthermore, the passed signal x1 is classified in block 404. Here it is possible to seek to detect the presence of transients, for example the presence of a plosive to apply the pitch period correction in the sense of the invention, but, in a preferred embodiment, the aim is rather to detect whether the signal Se is strongly voiced (for example when the correlation with respect to the pitch period is very close to 1). If the signal is strongly voiced (which corresponds to the pronunciation of a stable vowel, for example "aaaa ..."), then the signal Se is free of transients and the pitch period correction in the sense of the invention may not be implemented. Otherwise, preferentially, the correction of the pitch period in the sense of the invention will be applied in all other cases.
Les détails de la détection d'un degré de voisement ne sont pas présentés ici car ils sont connus en soi et dépassent le cadre de l'invention.The details of the detection of a degree of voicing are not presented here because they are known per se and are beyond the scope of the invention.
En référence à nouveau à la figure 4, la synthèse SYNTH suit le modèle bien connu dans l'état de l'art et dit "source-filtre". Elle consiste à filtrer l'excitation extrapolée par un filtre LPC. Ici, l'excitation extrapolée e(n) (ou maintenant n=0,..., L-I, L étant la longueur de la trame à extrapoler) est filtrée par le filtre inverse 1/A(z) (bloc 405). Ensuite, le signal obtenu est atténué par le bloc 407 en fonction d'une atténuation calculée dans le bloc 406, pour être finalement délivré en yl. L'invention, en tant que telle, est réalisée par le bloc 403 de la figure 4, dont les fonctions sont décrites en détail ci-après.Referring again to FIG. 4, the SYNTH synthesis follows the well-known model in the state of the art and called "source-filter". It consists in filtering the excitation extrapolated by an LPC filter. Here, the extrapolated excitation e (n) (or now n = 0, ..., LI, L being the length of the frame to be extrapolated) is filtered by the inverse filter 1 / A (z) (block 405). Then, the signal obtained is attenuated by the block 407 as a function of an attenuation calculated in the block 406, to be finally delivered in yl. The invention, as such, is carried out by block 403 of FIG. 4, whose functions are described in detail below.
On a représenté sur la figure 5, à titre illustratif, le principe de la simple répétition d'excitation telle que réalisée dans l'état de l'art. L'excitation peut être extrapolée en répétant simplement la dernière période de pitch TQ, c'est-à-dire en copiant la succession des deniers échantillons de l'excitation passée, le nombre d'échantillons dans cette succession correspondant au nombre d'échantillons que comporte la période de pitch T0.FIG. 5 shows, as an illustration, the principle of simple excitation repetition as performed in the state of the art. The excitation can be extrapolated by simply repeating the last pitch period TQ, that is to say by copying the succession of the last samples of the past excitation, the number of samples in this succession corresponding to the number of samples that includes the pitch period T 0 .
En se référant maintenant à la figure 6, avant de répéter la dernière période de pitch TQ, on modifie cette dernière, au sens de l'invention, comme suit.Referring now to FIG. 6, before repeating the last pitch period TQ, the latter is modified in the sense of the invention as follows.
Pour chaque échantillon n= -TQ, ...,-1, l'échantillon e(n) est modifié en emod(n) suivant une formule du type :For each sample n = -TQ, ..., - 1, the sample e (n) is modified in e mo d (n) according to a formula of the type:
"mod (n) = +j)|), e(n)|) x sign(e(w)) "mod (n) = + j) |), e (n) |) x sign (e (w))
Comme indiqué ci-avant, préférentiellement, cette modification de signal n'est pas appliquée si le signal xl (et donc le signal d'entrée Se) est fortement voisé. En effet, dans le cas d'un signal fortement voisé, la répétition simple de la dernière période de pitch, sans modification, peut donner un meilleur résultat, alors qu'une modification de la dernière période de pitch et sa répétition pourrait entraîner une légère dégradation de qualité.As indicated above, preferentially, this signal modification is not applied if the signal x 1 (and therefore the input signal Se) is strongly voiced. Indeed, in the case of a strongly voiced signal, the simple repetition of the last pitch period, without modification, can give a better result, whereas a modification of the last pitch period and its repetition could result in a slight quality degradation.
On a représenté sur la figure 7 le traitement correspondant à l'application de cette formule, sous forme d'organigramme, pour illustrer les étapes du procédé selon un mode de réalisation de l'invention. On part ici du signal passé e(n) que délivre le bloc 401. A l'étape 70, on obtient l'information selon laquelle le signal xl est fortement voisé ou non, à partir du module 404 déterminant le degré de voisement. Si le signal est fortement voisé (flèche O en sortie du test 71), on recopie la dernière période de pitch des blocs valides, telle quelle, dans le bloc 403 de la figure 4 et le traitement se poursuit directement ensuite par l'application du filtrage inverse 1/A(z) par le module 405.FIG. 7 shows the processing corresponding to the application of this formula, in flowchart form, to illustrate the steps of the method according to one embodiment of the invention. Here we start from the past signal e (n) that delivers the block 401. In step 70, we obtain the information according to which the signal x1 is strongly voiced or not, from the module 404 determining the degree of voicing. If the signal is strongly voiced (arrow O at the output of the test 71), the last pitch period of the valid blocks, as is, is copied into the block 403 of FIG. 4 and the processing continues directly thereafter by the application of the inverse filtering 1 / A (z) by the module 405.
En revanche, si le signal xl n'est pas fortement voisé (flèche N en sortie du test 71), on va chercher à modifier les derniers échantillons du signal d'excitation e(n) correspondant aux derniers blocs valides reçus, ces échantillons s'étendant sur toute une période de pitch T0 (étape 73), donnée par le module 402 de la figure 4 (à l'étape 72). Dans la réalisation illustrée sur la figure 7, on cherche à modifier tous les échantillons e(n) sur toute une période de pitch T0, avec n compris entre H1 -T0 + ! etOn the other hand, if the signal x1 is not strongly voiced (arrow N at the output of the test 71), we will seek to modify the last samples of the excitation signal e (n) corresponding to the last valid blocks received, these samples extending over a pitch period T 0 (step 73), given by the module 402 of FIG. 4 (at step 72). In the embodiment illustrated in FIG. 7, it is sought to modify all the samples e (n) over an entire pitch period T 0 , with n lying between H 1 -T 0 +! and
H1 , e{n^ correspondant donc au dernier échantillon valide reçu (étape 74). On comprendra ainsi, avec ces notations, qu'un échantillon e(n) avec n compris entre H1 -T0+! et H1 appartient simplement à la dernière période de pitch validement reçue.H 1 , e {n ^ corresponding to the last valid sample received (step 74). It will thus be understood, with these notations, that a sample e (n) with n between H 1 -T 0 +! and H 1 belongs simply to the last pitch period validly received.
A l'étape 75, on fait correspondre à chaque échantillon e(n) de la dernière période de pitch un voisinage NEIGH dans la période de pitch précédente, donc dans l'avant- dernière période de pitch. Cette mesure est avantageuse mais aucunement nécessaire. L'avantage qu'elle procure sera décrit plus loin. On indique simplement ici que ce voisinage comprend un nombre d'échantillons impair 2k+l, dans l'exemple décrit. Bien entendu, en variante, ce nombre peut être pair. Par ailleurs, dans l'exemple de la figure 6, on a k=l. En effet, en référence encore à la figure 6, on constate que le troisième échantillon de la dernière période de pitch noté e(3) est sélectionné (étape 74) et les échantillons du voisinage NEIGH qui lui sont associés dans l'avant-dernière période de pitch (étape 75) sont représentés en gras et sont e(2-7O), e(3-7O) et e(4-7O). Ils sont donc répartis autour de e(3-7O).At step 75, each sample e (n) of the last pitch period is made to correspond to a NEIGH neighborhood in the preceding pitch period, ie in the penultimate pitch period. This measure is advantageous but not necessary. The advantage it provides will be described later. It is simply indicated here that this neighborhood comprises an odd number of samples 2k + 1, in the example described. Of course, alternatively, this number may be even. Moreover, in the example of Figure 6, we have k = 1. Indeed, with reference again to FIG. 6, it can be seen that the third sample of the last pitch period noted e (3) is selected (step 74) and the NEIGH neighborhood samples associated with it in the penultimate pitch period (step 75) are shown in bold and are e (2-7O), e (3-7O) and e (4-7O). They are therefore distributed around e (3-7O).
A l'étape 76, on détermine le maximum, en valeur absolue, parmi les échantillons du voisinage NEIGH (soit l'échantillon e(2-7O) dans l'exemple de la figure 6). Cette caractéristique est avantageuse mais aucunement nécessaire. L'avantage qu'elle procure sera décrit plus loin. Typiquement, en variante, on pourrait choisir de déterminer la moyenne sur le voisinage NEIGH, par exemple.In step 76, the maximum, in absolute value, is determined among the NEIGH neighborhood samples (ie the sample e (2-7O) in the example of FIG. 6). This feature is advantageous but not necessary. The advantage it provides will be described later. Typically, alternatively, one could choose to determine the average on NEIGH neighborhood, for example.
A l'étape 77, on détermine le minimum, en valeur absolue, entre la valeur de l'échantillon courant e(n) et la valeur du maximum M trouvé sur le voisinage NEIGH à l'étape 76. Dans l'exemple illustré sur la figure 6, ce minimum entre e(3) et e(2-7O) est bien l'échantillon de l'avant-dernière période de pitch e(2-7O). Toujours à cette étape 77, on remplace alors l'amplitude de l'échantillon courant e(n) par ce minimum. Sur la figure 6, l'amplitude de l'échantillon e(3) devient égale à celle de l'échantillon e(2-7O). Le même procédé est appliqué à tous les échantillons de la dernière période, de e(l) à e(12). Sur la figure 6, on a représenté les échantillons corrigés par des traits pointillés. Les échantillons des périodes de pitch extrapolées T)+ι, T)+2, corrigés selon l'invention, sont représentés par des flèches fermées.In step 77, the minimum, in absolute value, is determined between the value of the current sample e (n) and the value of the maximum M found on NEIGH neighborhood in step 76. In the example illustrated in FIG. Figure 6, this minimum between e (3) and e (2-7O) is indeed the sample of the penultimate pitch period e (2-7O). Still at this step 77, the amplitude of the current sample e (n) is then replaced by this minimum. In FIG. 6, the amplitude of the sample e (3) becomes equal to that of the sample e (2-7O). The same method is applied to all the samples of the last period, from e (l) to e (12). In FIG. 6, the corrected samples are represented by dashed lines. The samples of pitch periods extrapolated T ) + ι, T ) + 2, corrected according to the invention, are represented by closed arrows.
On comprendra donc que, par la mise en œuvre avantageuse de cette étape 77, si une plosive est bien présente sur la dernière période de pitch T] (forte intensité du signal, en valeur absolue, comme représenté sur la figure 6), on va déterminer le minimum entre cette intensité de la plosive et celle des échantillons sensiblement à la même position temporelle dans la période de pitch précédente (le terme "sensiblement" signifiant ici "à un voisinage ± k près", d'où l'avantage de la réalisation de l'étape 75), et remplacer, le cas échéant, l'intensité de la plosive par une intensité plus faible appartenant à l'avant-dernière période de pitch En revanche, si l'intensité des échantillons de la dernière période de pitch T} est inférieure à celle de l'avant-dernière période 7J-1, en sélectionnant le minimum entre l'échantillon courant e(3) et la valeur d'intensité e(2-r0) dans l'avant-dernière période de pitch T)-1, on ne modifie pas la dernière période et on évite ainsi le risque qu'une plosive (de forte intensité) puisse être recopiée de l'avant-dernière période de pitch T.It will thus be understood that, by the advantageous implementation of this step 77, if a plosive is indeed present on the last pitch period T ] (high intensity of the signal, in absolute value, as represented in FIG. determine the minimum between this plosive intensity and that of the samples substantially at the same time position in the preceding pitch period (the term "substantially" meaning here "to a neighborhood ± k near", hence the advantage of the performing step 75), and replace, if necessary, the intensity of the plosive by a lower intensity belonging to the penultimate pitch period On the other hand, if the intensity of the samples of the last pitch period T } is lower than that of the penultimate period 7J -1 , by selecting the minimum between the current sample e (3) and the value of intensity e (2-r 0 ) in the penultimate pitch period T) -1 , the last period is not modified and thus avoids the risk that a plosive (of high intensity) can be copied from the penultimate pitch period T ] Λ .
Ainsi, à l'étape 76, on détermine le maximum M en valeur absolue des échantillons du voisinage (et non pas un autre paramètre tel que la moyenne sur ce voisinage, par exemple) de manière à compenser l'effet de choisir le minimum à l'étape 77 pour effectuer le remplacement de la valeur e(n). Cette mesure permet donc de ne pas trop limiter l'amplitude des périodes de pitch de remplacement rj+1, T3+2 (figure 6).Thus, in step 76, the maximum value M in absolute value of the samples of the neighborhood (and not another parameter such as the average on this neighborhood, for example) is determined so as to compensate for the effect of choosing the minimum to step 77 for replace the value e (n). This measurement therefore makes it possible not to limit too much the amplitude of the replacement pitch periods r j + 1 , T 3 + 2 (FIG. 6).
Par ailleurs, l'étape 75, de détermination de voisinage, est mise en œuvre, de façon avantageuse, car une période de pitch n'est pas toujours régulière et, si un échantillon e(n) a une intensité maximum dans une période de pitch T0, il n'en est pas toujours de même pour un échantillon e(n+7O) dans une période de pitch suivante. Par ailleurs, une période de pitch peut s'étendre jusqu'à une position temporelle tombant entre deux échantillons (à une fréquence d'échantillonnage donnée). On parle de "pitch fractionnaire". Il est donc toujours préférable de prendre un voisinage centré autour d'un échantillon e(n-7O), s'il faut associer cet échantillon e(n-7O) à un échantillon e(n) positionné à une période de pitch suivante.Moreover, the neighborhood determination step 75 is advantageously implemented because a pitch period is not always regular and, if a sample e (n) has a maximum intensity in a period of pitch T 0 , it is not always the same for a sample e (n + 7O) in a next pitch period. In addition, a pitch period may extend to a time position falling between two samples (at a given sampling frequency). We speak of "fractional pitch". It is therefore always preferable to take a neighborhood centered around a sample e (n-70), if this sample e (n-70) is to be associated with a sample e (n) positioned at a following pitch period.
Enfin, puisque les traitements des étapes 75 à 77 portent essentiellement sur les valeurs absolues des échantillons, l'étape 78 consiste simplement à réaffecter le signe de l'échantillon initial e(n) à l'échantillon modifié emod(n).Finally, since the treatments of steps 75 to 77 relate essentially to the absolute values of the samples, step 78 consists simply in reassigning the sign of the initial sample e (n) to the modified sample e mod (n).
On réitère les étapes 75 à 78 pour un échantillon e(n) suivant (n devant n+1 à l'étape 79), jusqu'à épuisement de la période de pitch T0 (soit donc jusqu'à arriver au dernier échantillon valide e(^ ) ).Steps 75 to 78 are repeated for a sample e (n) following (n before n + 1 in step 79), until the pitch period T 0 is exhausted (ie until reaching the last valid sample e (^)).
On délivre ainsi le signal modifié emod(n) au filtre inverse 1/A(z) (référence 405 de la figure 4) pour la suite du décodage.The modified signal e mo d (n) is thus delivered to the inverse filter 1 / A (z) (reference 405 of FIG. 4) for the following decoding.
II convient néanmoins de noter encore deux variantes possibles de réalisation. Il est possible de corriger ainsi la dernière période de pitch T3 , d'appliquer cette correction T3 à cette dernière période de pitch T3 et de recopier la correction pour les périodes de pitch suivantes, soit : T3=T3+I=T3+2=Ty Dans une variante, on laisse intacte la dernière période de pitch T3 et on recopie en revanche sa correction T3 dans les périodes de pitch suivantes rj+iet T3+2. La comparaison des figures 5 et 6 montre en quoi la modification de l'excitation ainsi faite est avantageuse. Ainsi, en bref, dans le cas où une plosive est présente dans la dernière période de pitch, celle-ci sera automatiquement éliminée avant répétition de pitch car elle n'aura pas d'équivalent dans l'avant-dernière période de pitch. Cette réalisation permet ainsi d'éliminer l'un des artefacts les plus gênants de la répétition de pitch et consistant en la répétition de plosives.It should be noted, however, two possible alternative embodiments. It is thus possible to correct the last pitch period T 3 , to apply this correction T 3 to this last pitch period T 3 and to copy the correction for the following pitch periods, ie: T 3 = T 3 + I = T 3 + 2 = T y In a variant, the last pitch period T 3 is left intact and its correction T 3 is copied in the following pitch periods r j + i and T 3 + 2 . The comparison of FIGS. 5 and 6 shows how the modification of the excitation thus made is advantageous. Thus, in short, in the case where a plosive is present in the last pitch period, it will be automatically eliminated before repeating pitch because it will have no equivalent in the penultimate pitch period. This embodiment thus makes it possible to eliminate one of the most troublesome artifacts of the repetition of pitch and consisting of the repetition of plosives.
Par ailleurs, on prévoit avantageusement une atténuation plus rapide du signal synthétisé et répété, si une plosive est détectée dans la dernière période de pitch. Un exemple de réalisation d'une détection de transitoire, de manière générale, peut consister à compter le nombre d'occurrences de la condition (1) suivante : Furthermore, a faster attenuation of the synthesized and repeated signal is advantageously provided if a plosive is detected in the last pitch period. An exemplary embodiment of a transient detection, in general, can consist in counting the number of occurrences of the following condition (1):
Si cette condition est vérifiée par exemple plus d'une fois sur la trame courante, alors le signal passé xl comporte une transitoire (par exemple une plosive), ce qui permet de forcer une atténuation rapide par le bloc 406 sur le signal de synthèse yl (par exemple une atténuation sur 10 ms).If this condition is verified for example more than once on the current frame, then the signal passed x1 has a transient (for example a plosive), which makes it possible to force a fast attenuation by the block 406 on the synthesis signal yl (eg attenuation over 10 ms).
La figure 2c illustre alors le signal décodé lorsque l'invention est mise en œuvre, à titre de comparaison avec les figures 2a et 2b pour lesquelles une trame comportant la plosive ItI était perdue. La répétition du phonème ItI est ici évitée, grâce à la mise en œuvre de l'invention. Les différences qui suivent la perte de trame ne sont pas liées à la détection de plosives proprement dite. En fait, l'atténuation du signal après la perte de trame à la figure 2c s'explique par le fait que dans ce cas, le décodeur G.722 est réinitialisé (mise à jour complète des états dans le bloc 302 de la figure 3), alors que dans le cas de la figure 2b, le décodeur G.722 n'est pas réinitialisé. On comprendra néanmoins que l'invention porte sur la détection de plosives pour l'extrapolation d'une trame effacée et non sur le problème du redémarrage après une perte de trame. Néanmoins, à l'écoute, le signal illustré à la figure 2c est de meilleure qualité que celui de la figure 2b.FIG. 2c then illustrates the decoded signal when the invention is implemented, for comparison with FIGS. 2a and 2b for which a frame containing the ItI plosive was lost. The repetition of the phoneme ItI is here avoided, thanks to the implementation of the invention. The differences following the frame loss are not related to the actual plosive detection. In fact, the attenuation of the signal after the frame loss in FIG. 2c is explained by the fact that in this case, the G.722 decoder is reset (complete update of the states in the block 302 of FIG. ), whereas in the case of Figure 2b, the G.722 decoder is not reset. It will be understood, however, that the invention relates to the detection of plosives for the extrapolation of an erased frame and not to the problem of restarting after a loss of frame. Nevertheless, listening, the signal shown in Figure 2c is of better quality than that of Figure 2b.
La présente invention vise aussi un programme d'ordinateur destiné à être stocké en mémoire d'un dispositif de synthèse d'un signal audionumérique. Ce programme comporte alors des instructions pour la mise en œuvre du procédé au sens de l'invention, lorsqu'il est exécuté par un processeur d'un tel dispositif de synthèse. D'ailleurs, la figure 7 décrite ci-avant peut illustrer un organigramme d'un tel programme d'ordinateur.The present invention also relates to a computer program intended to be stored in memory of a device for synthesizing a digital audio signal. This program then comprises instructions for implementing the method in the sense of the invention, when it is executed by a processor of such a synthesis device. Moreover, Figure 7 described above can illustrate a flowchart of such a computer program.
Par ailleurs, la présente invention vise aussi un dispositif de synthèse d'un signal audionumérique constitué d'une succession de blocs. Ce dispositif pourrait comporter d'ailleurs une mémoire stockant le programme d'ordinateur précité et pourrait consister en le bloc 403 de la figure 4 avec les fonctionnalités décrites ci-avant. En référence à la figure 8, ce dispositif SYN, comporte : une entrée E pour recevoir des blocs du signal e(n), précédant au moins un bloc courant à synthétiser, et une sortie S pour délivrer le signal synthétisé emod(n) et comportant au moins ce bloc courant synthétisé. Le dispositif de synthèse SYN au sens de l'invention comporte des moyens tels qu'une mémoire de travail MEM (ou de stockage du programme d'ordinateur précité) et un processeur PROC coopérant avec cette mémoire MEM, pour la mise en œuvre du procédé au sens de l'invention, et pour synthétiser ainsi le bloc courant à partir d'au moins un des blocs précédents du signal e(n).Furthermore, the present invention also provides a device for synthesizing a digital audio signal consisting of a succession of blocks. This device could also include a memory storing the aforementioned computer program and could consist of the block 403 of Figure 4 with the features described above. With reference to FIG. 8, this device SYN comprises: an input E for receiving blocks of the signal e (n), preceding at least one current block to be synthesized, and an output S for delivering the synthesized signal e mod (n) and having at least this synthesized current block. The synthesis device SYN within the meaning of the invention comprises means such as a working memory MEM (or storage of the aforementioned computer program) and a PROC processor cooperating with this memory MEM, for the implementation of the method within the meaning of the invention, and thus to synthesize the current block from at least one of the preceding blocks of the signal e (n).
La présente invention vise aussi un décodeur d'un signal audionumérique constitué d'une succession de blocs, ce décodeur comportant le dispositif 403 au sens de l'invention pour synthétiser des blocs invalides. De manière plus générale, la présente invention ne se limite pas aux formes de réalisation décrites ci-avant à titre d'exemple ; elle d'étend à d'autres variantes.The present invention also relates to a decoder of a digital audio signal consisting of a succession of blocks, this decoder comprising the device 403 within the meaning of the invention for synthesizing invalid blocks. More generally, the present invention is not limited to the embodiments described above by way of example; it extends to other variants.
Dans des réalisations variantes, les paramètres de correction de période de pitch et/ou de détection de transitoires peuvent être les suivants. On peut considérer un intervalle comportant un nombre différent de trois échantillons dans l'avant-dernière période de pitch. On peut prendre par exemple k=2 pour avoir cinq échantillons considérés en tout. De même, la valeur du seuil pour la détection de transitoire (de 1A dans l'exemple de la condition (1) ci-avant) peut être adaptée. De plus, on peut déclarer le signal comme transitoire si la condition de détection n'est vérifiée au moins m fois, avec m ≥ 1.In variant embodiments, the pitch period correction and / or transient detection parameters may be as follows. An interval with a different number of three samples can be considered in the penultimate pitch period. We can take for example k = 2 to have five samples considered in all. Similarly, the threshold value for the transient detection (of 1 A in the example of condition (1) above) can be adapted. In addition, the signal can be declared as transient if the detection condition is not satisfied at least m times, with m ≥ 1.
Par ailleurs, l'invention peut être également appliquée à d'autres contextes que celui décrit ci-avant.Moreover, the invention can also be applied to other contexts than that described above.
Par exemple, la détection et la modification de signal peuvent être réalisées dans le domaine du signal (plutôt que le domaine de l'excitation). Typiquement, pour la correction de pertes de trame dans un décodeur CELP (qui fonctionne aussi suivant le modèle source-filtre), l'excitation est extrapolée par répétition de pitch et éventuellement ajout d'une contribution aléatoire et cette excitation est filtrée par un filtre de type 1/A(z), où A(z) est dérivé du dernier filtre prédicteur correctement reçu.For example, signal detection and modification can be performed in the signal domain (rather than the field of excitation). Typically, for the correction of frame losses in a CELP decoder (which also functions according to the source-filter model), the excitation is extrapolated by repetition of pitch and possibly addition of a random contribution and this excitation is filtered by a filter of type 1 / A (z), where A (z) is derived from the last correctly received predictor filter.
Elle peut être appliquée aussi à un décodeur selon la norme G.711, tout aussi naturellement.It can also be applied to a G.711 decoder, just as naturally.
Bien entendu, recopier tout simplement l'avant-dernière période de pitch T pour constituer les nouvelles périodes synthétisées 7J+1, 7J+2 permettrait déjà de surmonter le problème de répétition de plosives, si, de plus, on prend le soin de détecter des plosives dans l'avant-dernière période de pitch (par exemple en utilisant une condition du type de la condition (1) ci-avant). Cette réalisation est dans la portée de l'invention.Of course, simply copying the penultimate pitch period T ] Λ to constitute the new synthesized periods 7J +1 , 7J + 2 would already overcome the problem of repetition of plosives, if, moreover, we take care to detect plosives in the penultimate pitch period (for example using a condition of the type of condition (1) above). This embodiment is within the scope of the invention.
Par ailleurs, pour la clarté de l'exposé ci-avant, on a décrit une correction d'échantillons, à l'étape b), suivi du recopiage des échantillons corrigés dans le(s) bloc(s) de remplacement. Bien entendu et de façon strictement équivalente techniquement, il est possible aussi de recopier d'abord les échantillons de la dernière période de répétition et de les corriger tous ensuite dans le(s) bloc(s) de remplacement.In addition, for clarity of the above discussion, there is described a sample correction, in step b), followed by copying of the corrected samples into the replacement block (s). Of course and in a strictly equivalent way technically, it is also possible to first copy the samples from the last repetition period and then correct them all in the replacement block (s).
Ainsi, la correction d'échantillons et le recopiage peuvent être des étapes qui peuvent intervenir dans un ordre quelconque et, en particulier, être inversées. Thus, sample correction and copying can be steps that can occur in any order and, in particular, be reversed.

Claims

REVENDICATIONS
1. Procédé de synthèse d'un signal audionumérique représenté par des blocs successifs d'échantillons, dans lequel, à la réception d'un tel signal, pour remplacer au moins un bloc invalide, on génère un bloc de remplacement à partir d'échantillons d'au moins un bloc valide, le procédé comportant les étapes suivantes : a) déterminer (402) une période de répétition dans au moins un bloc valide, et b) recopier (403) les échantillons de la période de répétition dans au moins un bloc de remplacement, caractérisé en ce que : à l'étape a), on détermine une dernière période de répétition (T)) dans au moins un bloc valide précédant immédiatement un bloc invalide, à l'étape b), on corrige des échantillons (e(3)) de ladite dernière période de répétition (T)) en fonction d'échantillons (e(2-T0), e(3-T0), e(4-T0)) d'une période de répétition (T)-1) précédant ladite dernière période de répétition, pour limiter l'amplitude d'un éventuel signal transitoire dans ladite dernière période de répétition, et on recopie les échantillons ainsi corrigés dans ledit bloc de remplacement (T)+1, T)+2).A method of synthesizing a digital audio signal represented by successive blocks of samples, wherein, upon receiving such a signal, to replace at least one invalid block, generating a replacement block from samples at least one valid block, the method comprising the steps of: a) determining (402) a repetition period in at least one valid block, and b) copying (403) the samples of the repetition period into at least one replacement block, characterized in that: in step a), determining a last repetition period (T) in at least one valid block immediately preceding an invalid block, in step b), correcting samples (e (3)) of said last repetition period (T)) as a function of samples (e (2-T 0 ), e (3-T 0 ), e (4-T 0 )) of a period of repetition (T) -1 ) preceding said last repetition period, to limit the amplitude of a possible sig nal transient in said last repetition period, and the samples thus corrected are copied into said replacement block (T) +1 , T) +2 ).
2. Procédé selon la revendication 1, dans lequel le signal est un signal de parole voisé, caractérisé en ce que la période de répétition est une période de pitch correspondant à l'inverse d'une fréquence fondamentale du signal.2. The method of claim 1, wherein the signal is a voiced speech signal, characterized in that the repetition period is a pitch period corresponding to the inverse of a fundamental frequency of the signal.
3. Procédé selon l'une des revendications 1 et 2, caractérisé en ce que, à l'étape b), on corrige un échantillon courant (e(3)) de la dernière période de répétition, en comparant : l'amplitude de cet échantillon courant, en valeur absolue, à l'amplitude, en valeur absolue, d'au moins un échantillon (e(2-T0)) temporellement positionné sensiblement à une période de répétition avant l'échantillon courant, et en affectant à l'échantillon courant l'amplitude minimale, en valeur absolue, parmi ces deux amplitudes.3. Method according to one of claims 1 and 2, characterized in that, in step b), a current sample (e (3)) of the last repetition period is corrected, by comparing: the amplitude of this current sample, in absolute value, with the amplitude, in absolute value, of at least one sample (e (2-T 0 )) temporally positioned substantially at a repetition period before the current sample, and assigning to the current sample the minimum amplitude, in absolute value, of these two amplitudes.
4. Procédé selon la revendication 3, caractérisé en ce que, pour un échantillon courant (e(3)) de la dernière période de répétition : on constitue un ensemble d'échantillons (75) dans un voisinage centré autour d'un échantillon (e(3-7O)) temporellement positionné à une période de répétition avant l'échantillon courant, on détermine une amplitude choisie (76) parmi les amplitudes des échantillons dudit voisinage, prises en valeur absolue, et on compare cette amplitude choisie à l'amplitude de l'échantillon courant, en valeur absolue, pour affecter (77) à l'échantillon courant (e(3)) l'amplitude minimum, en valeur absolue, parmi l'amplitude choisie et l'amplitude de l'échantillon courant.4. Method according to claim 3, characterized in that, for a current sample (e (3)) of the last repetition period: a set of samples (75) is formed in a neighborhood centered around a sample ( e (3-7O)) temporally positioned at a repetition period before the current sample, a selected amplitude (76) is determined among the amplitudes of the samples of said neighborhood, taken in absolute value, and this selected amplitude is compared with the amplitude of the current sample, in absolute value, for assigning (77) to the current sample (e (3)) the minimum amplitude, in absolute value, among the selected amplitude and the amplitude of the current sample .
5. Procédé selon la revendication 4, caractérisé en ce que l'amplitude choisie parmi les amplitudes des échantillons dudit voisinage est l'amplitude maximum en valeur absolue (M).5. Method according to claim 4, characterized in that the amplitude chosen from the amplitudes of the samples of said neighborhood is the maximum amplitude in absolute value (M).
6. Procédé selon l'une des revendications précédentes, dans lequel le signal audionumérique est un signal de parole, caractérisé en ce que l'on détecte un degré de voisement dans le signal de parole (71), et en ce que les étapes a) et b) sont mises en œuvre si le signal de parole n'est pas voisé ou est faiblement voisé.6. Method according to one of the preceding claims, wherein the digital audio signal is a speech signal, characterized in that it detects a degree of voicing in the speech signal (71), and in that the steps a ) and b) are implemented if the speech signal is not voiced or is weakly voiced.
7. Procédé selon l'une des revendications précédentes, dans lequel on applique un amortissement de l'amplitude des échantillons dans ledit bloc de remplacement, caractérisé en ce qu'on détecte un éventuel caractère transitoire du signal dans la dernière période de répétition et, le cas échéant, on applique un amortissement plus rapide que pour un signal stationnaire. 7. Method according to one of the preceding claims, wherein a damping of the amplitude of the samples is applied in said replacement block, characterized in that a possible transient character of the signal is detected in the last repetition period and, if necessary, a faster damping is applied than for a stationary signal.
8. Procédé selon la revendication 7, prise en combinaison avec l'une des revendications 3 et 4, caractérisé en ce que : pour une pluralité d'échantillons courants de la dernière période de répétition, on mesure un rapport, en valeur absolue, de l'amplitude d'un échantillon courant sur ladite amplitude choisie, et8. The method according to claim 7, taken in combination with one of claims 3 and 4, characterized in that for a plurality of current samples of the last repetition period, a ratio, in absolute value, of the amplitude of a current sample on said selected amplitude, and
- on compte le nombre d'occurrences, pour lesdits échantillons courants, pour lesquelles ledit rapport est supérieur à un premier seuil prédéterminé, et on détecte la présence d'un caractère transitoire si le nombre d'occurrences est supérieur à un second seuil prédéterminé.the number of occurrences for said current samples for which said ratio is greater than a first predetermined threshold is counted, and the presence of a transient character is detected if the number of occurrences is greater than a second predetermined threshold.
9. Procédé selon l'une des revendications précédentes, caractérisé en ce que, dans le cas d'une réception d'une pluralité de blocs invalides consécutifs s'étendant sur au moins une période de répétition, l'étape de correction d'échantillons b) est appliquée à tous les échantillons de la dernière période de répétition, pris un à un en tant qu'échantillon courant.9. Method according to one of the preceding claims, characterized in that, in the case of a reception of a plurality of consecutive invalid blocks extending over at least one repetition period, the step of correcting samples and (b) is applied to all samples in the last repetition period, taken one by one as the current sample.
10. Procédé selon la revendication 9, caractérisé en ce que, dans le cas d'une réception d'une pluralité de blocs invalides consécutifs s'étendant sur plusieurs périodes de répétition, pour remplacer ladite pluralité de blocs invalides, on recopie plusieurs fois la période de répétition corrigée à l'étape b) pour former les blocs de remplacement.10. Method according to claim 9, characterized in that, in the case of a reception of a plurality of consecutive invalid blocks extending over several repetition periods, to replace said plurality of invalid blocks, one copies several times the repetition period corrected in step b) to form the replacement blocks.
11. Programme d'ordinateur destiné à être stocké en mémoire d'un dispositif de synthèse d'un signal audionumérique, caractérisé en ce qu'il comporte des instructions pour la mise en œuvre du procédé selon l'une des revendications 1 à 10 lorsqu'il est exécuté par un processeur d'un tel dispositif de synthèse.Computer program intended to be stored in memory of a device for synthesizing a digital audio signal, characterized in that it comprises instructions for implementing the method according to one of claims 1 to 10 when it is executed by a processor of such a synthesis device.
12. Dispositif de synthèse d'un signal audionumérique constitué d'une succession de blocs, comportant : - une entrée (E) pour recevoir des blocs du signal (e(n)), précédant au moins un bloc courant à synthétiser, et12. Device for synthesizing a digital audio signal consisting of a succession of blocks, comprising: an input (E) for receiving blocks of the signal (e (n)), preceding at least one current block to be synthesized, and
- une sortie (S) pour délivrer le signal synthétisé (emod(n)) et comportant au moins ledit bloc courant, caractérisé en ce qu'il comporte des moyens (MEM, PROC) pour la mise en œuvre du procédé selon l'une des revendications 1 à 10, pour synthétiser le bloc courant à partir d'au moins un desdits blocs précédents.an output (S) for delivering the synthesized signal (e mod (n)) and comprising at least said current block, characterized in that it comprises means (MEM, PROC) for implementing the method according to the one of claims 1 to 10 for synthesizing the current block from at least one of said previous blocks.
13. Décodeur d'un signal audionumérique constitué d'une succession de blocs, caractérisé en ce qu'il comporte en outre un dispositif (403) selon la revendication 12, pour synthétiser des blocs invalides. 13. Decoder of a digital audio signal consisting of a succession of blocks, characterized in that it further comprises a device (403) according to claim 12, for synthesizing invalid blocks.
EP07871872A 2006-10-20 2007-10-17 Synthesis of lost blocks of a digital audio signal Active EP2080195B1 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
PL07871872T PL2080195T3 (en) 2006-10-20 2007-10-17 Synthesis of lost blocks of a digital audio signal

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
FR0609227A FR2907586A1 (en) 2006-10-20 2006-10-20 Digital audio signal e.g. speech signal, synthesizing method for adaptive differential pulse code modulation type decoder, involves correcting samples of repetition period to limit amplitude of signal, and copying samples in replacing block
PCT/FR2007/052189 WO2008096084A1 (en) 2006-10-20 2007-10-17 Synthesis of lost blocks of a digital audio signal, with pitch period correction

Publications (2)

Publication Number Publication Date
EP2080195A1 true EP2080195A1 (en) 2009-07-22
EP2080195B1 EP2080195B1 (en) 2011-03-16

Family

ID=37735201

Family Applications (1)

Application Number Title Priority Date Filing Date
EP07871872A Active EP2080195B1 (en) 2006-10-20 2007-10-17 Synthesis of lost blocks of a digital audio signal

Country Status (14)

Country Link
US (1) US8417519B2 (en)
EP (1) EP2080195B1 (en)
JP (1) JP5289320B2 (en)
KR (1) KR101406742B1 (en)
CN (1) CN101627423B (en)
AT (1) ATE502376T1 (en)
BR (1) BRPI0718422B1 (en)
DE (1) DE602007013265D1 (en)
ES (1) ES2363181T3 (en)
FR (1) FR2907586A1 (en)
MX (1) MX2009004211A (en)
PL (1) PL2080195T3 (en)
RU (1) RU2432625C2 (en)
WO (1) WO2008096084A1 (en)

Families Citing this family (21)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8706479B2 (en) * 2008-11-14 2014-04-22 Broadcom Corporation Packet loss concealment for sub-band codecs
KR101622950B1 (en) * 2009-01-28 2016-05-23 삼성전자주식회사 Method of coding/decoding audio signal and apparatus for enabling the method
JP5456370B2 (en) * 2009-05-25 2014-03-26 任天堂株式会社 Pronunciation evaluation program, pronunciation evaluation apparatus, pronunciation evaluation system, and pronunciation evaluation method
US8976675B2 (en) * 2011-02-28 2015-03-10 Avaya Inc. Automatic modification of VOIP packet retransmission level based on the psycho-acoustic value of the packet
JP5932399B2 (en) * 2012-03-02 2016-06-08 キヤノン株式会社 Imaging apparatus and sound processing apparatus
CN105976830B (en) 2013-01-11 2019-09-20 华为技术有限公司 Audio-frequency signal coding and coding/decoding method, audio-frequency signal coding and decoding apparatus
FR3001593A1 (en) * 2013-01-31 2014-08-01 France Telecom IMPROVED FRAME LOSS CORRECTION AT SIGNAL DECODING.
KR102349025B1 (en) * 2013-02-05 2022-01-07 텔레폰악티에볼라겟엘엠에릭슨(펍) Method and apparatus for controlling audio frame loss concealment
EP2954516A1 (en) 2013-02-05 2015-12-16 Telefonaktiebolaget LM Ericsson (PUBL) Enhanced audio frame loss concealment
NZ709639A (en) 2013-02-05 2016-06-24 Ericsson Telefon Ab L M Audio frame loss concealment
MY177559A (en) 2013-06-21 2020-09-18 Fraunhofer Ges Forschung Apparatus and method for improved concealment of the adaptive codebook in acelp-like concealment employing improved pitch lag estimation
JP6153661B2 (en) 2013-06-21 2017-06-28 フラウンホーファーゲゼルシャフト ツール フォルデルング デル アンゲヴァンテン フォルシユング エー.フアー. Apparatus and method for improved containment of an adaptive codebook in ACELP-type containment employing improved pulse resynchronization
US9418671B2 (en) * 2013-08-15 2016-08-16 Huawei Technologies Co., Ltd. Adaptive high-pass post-filter
WO2015063044A1 (en) 2013-10-31 2015-05-07 Fraunhofer-Gesellschaft zur Förderung der angewandten Forschung e.V. Audio decoder and method for providing a decoded audio information using an error concealment based on a time domain excitation signal
PT3336839T (en) 2013-10-31 2019-11-04 Fraunhofer Ges Forschung Audio decoder and method for providing a decoded audio information using an error concealment modifying a time domain excitation signal
NO2780522T3 (en) 2014-05-15 2018-06-09
US9706317B2 (en) * 2014-10-24 2017-07-11 Starkey Laboratories, Inc. Packet loss concealment techniques for phone-to-hearing-aid streaming
JP6611042B2 (en) * 2015-12-02 2019-11-27 パナソニックIpマネジメント株式会社 Audio signal decoding apparatus and audio signal decoding method
GB2547877B (en) * 2015-12-21 2019-08-14 Graham Craven Peter Lossless bandsplitting and bandjoining using allpass filters
CN106970950B (en) * 2017-03-07 2021-08-24 腾讯音乐娱乐(深圳)有限公司 Similar audio data searching method and device
WO2022045395A1 (en) * 2020-08-27 2022-03-03 임재윤 Audio data correction method and device for removing plosives

Family Cites Families (12)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US3369077A (en) * 1964-06-09 1968-02-13 Ibm Pitch modification of audio waveforms
WO1994026036A1 (en) * 1993-05-04 1994-11-10 Motorola Inc. Apparatus and method for substantially eliminating noise in an audible output signal
US6597961B1 (en) * 1999-04-27 2003-07-22 Realnetworks, Inc. System and method for concealing errors in an audio transmission
JP2001228896A (en) * 2000-02-14 2001-08-24 Iwatsu Electric Co Ltd Substitution exchange method of lacking speech packet
US6584438B1 (en) * 2000-04-24 2003-06-24 Qualcomm Incorporated Frame erasure compensation method in a variable rate speech coder
US20030163304A1 (en) * 2002-02-28 2003-08-28 Fisseha Mekuria Error concealment for voice transmission system
US20030220787A1 (en) * 2002-04-19 2003-11-27 Henrik Svensson Method of and apparatus for pitch period estimation
US7411985B2 (en) * 2003-03-21 2008-08-12 Lucent Technologies Inc. Low-complexity packet loss concealment method for voice-over-IP speech transmission
KR20060011854A (en) * 2003-05-14 2006-02-03 오끼 덴끼 고오교 가부시끼가이샤 Apparatus and method for concealing erased periodic signal data
JP4135621B2 (en) * 2003-11-05 2008-08-20 沖電気工業株式会社 Receiving apparatus and method
WO2006009074A1 (en) * 2004-07-20 2006-01-26 Matsushita Electric Industrial Co., Ltd. Audio decoding device and compensation frame generation method
US8005678B2 (en) * 2006-08-15 2011-08-23 Broadcom Corporation Re-phasing of decoder states after packet loss

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
See references of WO2008096084A1 *

Also Published As

Publication number Publication date
EP2080195B1 (en) 2011-03-16
DE602007013265D1 (en) 2011-04-28
US20100318349A1 (en) 2010-12-16
JP5289320B2 (en) 2013-09-11
US8417519B2 (en) 2013-04-09
RU2432625C2 (en) 2011-10-27
CN101627423B (en) 2012-05-02
KR20090082415A (en) 2009-07-30
KR101406742B1 (en) 2014-06-12
ES2363181T3 (en) 2011-07-26
BRPI0718422A2 (en) 2013-11-12
BRPI0718422B1 (en) 2020-02-11
CN101627423A (en) 2010-01-13
ATE502376T1 (en) 2011-04-15
RU2009118929A (en) 2010-11-27
MX2009004211A (en) 2009-07-02
WO2008096084A1 (en) 2008-08-14
FR2907586A1 (en) 2008-04-25
JP2010507121A (en) 2010-03-04
PL2080195T3 (en) 2011-09-30

Similar Documents

Publication Publication Date Title
EP2080195B1 (en) Synthesis of lost blocks of a digital audio signal
EP2277172B1 (en) Concealment of transmission error in a digital signal in a hierarchical decoding structure
EP1316087B1 (en) Transmission error concealment in an audio signal
EP2002428B1 (en) Method for trained discrimination and attenuation of echoes of a digital signal in a decoder and corresponding device
EP1051703B1 (en) Method for decoding an audio signal with transmission error correction
EP2080194B1 (en) Attenuation of overvoicing, in particular for generating an excitation at a decoder, in the absence of information
EP3175444B1 (en) Frame loss management in an fd/lpd transition context
EP2347411B1 (en) Pre-echo attenuation in a digital audio signal
WO2016016566A1 (en) Determining a budget for lpd/fd transition frame encoding
EP3138095B1 (en) Improved frame loss correction with voice information
EP2005424A2 (en) Method for post-processing a signal in an audio decoder
EP2203915B1 (en) Transmission error dissimulation in a digital signal with complexity distribution
WO2007006958A2 (en) Method and device for attenuating echoes of a digital audio signal derived from a multilayer encoder
EP2232833A2 (en) Processing of binary errors in a digital audio binary frame

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: 20090416

AK Designated contracting states

Kind code of ref document: A1

Designated state(s): AT BE BG CH CY CZ DE DK EE ES FI FR GB GR HU IE IS IT LI LT LU LV MC MT NL PL PT RO SE SI SK TR

17Q First examination report despatched

Effective date: 20091209

RTI1 Title (correction)

Free format text: SYNTHESIS OF LOST BLOCKS OF A DIGITAL AUDIO SIGNAL

GRAP Despatch of communication of intention to grant a patent

Free format text: ORIGINAL CODE: EPIDOSNIGR1

GRAS Grant fee paid

Free format text: ORIGINAL CODE: EPIDOSNIGR3

GRAA (expected) grant

Free format text: ORIGINAL CODE: 0009210

AK Designated contracting states

Kind code of ref document: B1

Designated state(s): AT BE BG CH CY CZ DE DK EE ES FI FR GB GR HU IE IS IT LI LT LU LV MC MT NL PL PT RO SE SI SK TR

REG Reference to a national code

Ref country code: GB

Ref legal event code: FG4D

Free format text: NOT ENGLISH

REG Reference to a national code

Ref country code: CH

Ref legal event code: EP

REG Reference to a national code

Ref country code: IE

Ref legal event code: FG4D

REF Corresponds to:

Ref document number: 602007013265

Country of ref document: DE

Date of ref document: 20110428

Kind code of ref document: P

REG Reference to a national code

Ref country code: DE

Ref legal event code: R096

Ref document number: 602007013265

Country of ref document: DE

Effective date: 20110428

REG Reference to a national code

Ref country code: NL

Ref legal event code: VDEP

Effective date: 20110316

REG Reference to a national code

Ref country code: ES

Ref legal event code: FG2A

Ref document number: 2363181

Country of ref document: ES

Kind code of ref document: T3

Effective date: 20110726

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

Ref country code: LT

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: 20110316

Ref country code: SE

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: 20110316

Ref country code: LV

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: 20110316

Ref country code: GR

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: 20110617

LTIE Lt: invalidation of european patent or patent extension

Effective date: 20110316

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

Ref country code: SI

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: 20110316

Ref country code: BG

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: 20110616

Ref country code: AT

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: 20110316

Ref country code: CY

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: 20110316

Ref country code: FI

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: 20110316

REG Reference to a national code

Ref country code: PL

Ref legal event code: T3

REG Reference to a national code

Ref country code: IE

Ref legal event code: FD4D

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

Ref country code: EE

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: 20110316

Ref country code: IE

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: 20110316

Ref country code: PT

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: 20110718

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

Ref country code: IS

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: 20110716

Ref country code: RO

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: 20110316

Ref country code: SK

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: 20110316

Ref country code: CZ

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: 20110316

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

Ref country code: NL

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: 20110316

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

Effective date: 20111219

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

Ref country code: DK

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: 20110316

REG Reference to a national code

Ref country code: DE

Ref legal event code: R097

Ref document number: 602007013265

Country of ref document: DE

Effective date: 20111219

BERE Be: lapsed

Owner name: FRANCE TELECOM

Effective date: 20111031

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

Ref country code: MC

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

Effective date: 20111031

REG Reference to a national code

Ref country code: CH

Ref legal event code: PL

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

Ref country code: LI

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

Effective date: 20111031

Ref country code: CH

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

Effective date: 20111031

Ref country code: BE

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

Effective date: 20111031

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

Ref country code: MT

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: 20110316

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

Ref country code: LU

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

Effective date: 20111017

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

Ref country code: HU

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: 20110316

REG Reference to a national code

Ref country code: FR

Ref legal event code: PLFP

Year of fee payment: 9

REG Reference to a national code

Ref country code: FR

Ref legal event code: PLFP

Year of fee payment: 10

REG Reference to a national code

Ref country code: FR

Ref legal event code: PLFP

Year of fee payment: 11

REG Reference to a national code

Ref country code: FR

Ref legal event code: PLFP

Year of fee payment: 12

PGFP Annual fee paid to national office [announced via postgrant information from national office to epo]

Ref country code: TR

Payment date: 20230927

Year of fee payment: 17

Ref country code: IT

Payment date: 20230920

Year of fee payment: 17

Ref country code: GB

Payment date: 20230920

Year of fee payment: 17

PGFP Annual fee paid to national office [announced via postgrant information from national office to epo]

Ref country code: PL

Payment date: 20230925

Year of fee payment: 17

Ref country code: FR

Payment date: 20230920

Year of fee payment: 17

PGFP Annual fee paid to national office [announced via postgrant information from national office to epo]

Ref country code: ES

Payment date: 20231102

Year of fee payment: 17

PGFP Annual fee paid to national office [announced via postgrant information from national office to epo]

Ref country code: DE

Payment date: 20230920

Year of fee payment: 17