EP2080195B1 - Synthesis of lost blocks of a digital audio signal - Google Patents

Synthesis of lost blocks of a digital audio signal Download PDF

Info

Publication number
EP2080195B1
EP2080195B1 EP07871872A EP07871872A EP2080195B1 EP 2080195 B1 EP2080195 B1 EP 2080195B1 EP 07871872 A EP07871872 A EP 07871872A EP 07871872 A EP07871872 A EP 07871872A EP 2080195 B1 EP2080195 B1 EP 2080195B1
Authority
EP
European Patent Office
Prior art keywords
signal
repetition period
samples
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.)
Active
Application number
EP07871872A
Other languages
German (de)
French (fr)
Other versions
EP2080195A1 (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

Images

Classifications

    • GPHYSICS
    • G10MUSICAL INSTRUMENTS; ACOUSTICS
    • G10LSPEECH ANALYSIS TECHNIQUES OR SPEECH SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING TECHNIQUES; 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 TECHNIQUES OR SPEECH SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING TECHNIQUES; 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 TECHNIQUES OR SPEECH SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING TECHNIQUES; 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 TECHNIQUES OR SPEECH SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING TECHNIQUES; 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 TECHNIQUES OR SPEECH SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING TECHNIQUES; 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.
  • 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.
  • 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 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”
  • the 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 high 102 and low 100 frequencies and sub-sampling 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, indicating a rate of 6, 5, or 4 bits per sample, respectively, while the high-band ADPCM encoder rate is fixed (two bits per second). sample).
  • the ADPCM decoding equivalent blocks (blocks 106 and 107), the outputs of which are combined in the receiving QMF filterbank (oversampling 108 and 110, inverse filters 109, 111 and joining the low frequency bands and high 112) to generate the synthesis signal Ss.
  • 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 encompasses state restoration, re-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).
  • the Figures 2a and 2b illustrate this acoustic effect in the case of an expanded band signal encoded by an encoder according to Recommendation G.722.
  • the 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.
  • the figure 2b shows the decoded signal according to a technique similar to the Serizawa et al reference above when a frame loss immediately follows the phoneme / t /. This figure 2b shows the problem of the repetition of the past signal.
  • 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).
  • 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.
  • 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 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).
  • the decoder in the sense of the invention again presents an architecture in two subbands with the reception QMF filter banks (blocks 310 to 314).
  • the decoder of the 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).
  • this bias can result, among other artifacts, 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.
  • the transformation of the DC component (or “DC component”) into a sinusoid at 8 kHz is explained below.
  • the figure 8a represents 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).
  • 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) can be, for example, the QMF filters of 24 coefficients specified in ITU-T Recommendation G.722.
  • the figure 8b shows the spectrum of the signals x (n), xl (n) and xh (n) in the case where the filters L (z) and H (z) are ideal mid-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 f ⁇ 1 if f ⁇ f vs ' / 4 0 other
  • the L (z) and H (z) filters are not ideal. Their non-ideal character 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. 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.
  • 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).
  • 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.
  • the past excitation signal is calculated by block 401.
  • Block 402 makes an estimate of the fundamental frequency or its inverse: the pitch period T 0 . 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 pitch T 0 thus estimated is used by the block 403 to extrapolate the excitation of the current frame.
  • the passed signal x1 is classified in the 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.
  • SYNTH synthesis follows the model well known in the state of the art and called "source-filter”. It consists in filtering the excitation extrapolated by an LPC filter.
  • the excitation can be extrapolated by simply repeating the last pitch period T 0 , 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.
  • 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), it copies the last pitch period of the valid blocks, as such, in the block 403 of the figure 4 and processing continues directly thereafter by the application of the inverse filter 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.
  • 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.
  • ak 1. Indeed, with reference to the figure 6 , it is found that the third sample of the last pitch period noted e (3) is selected (step 74) and NEIGH neighborhood samples associated with it in the penultimate pitch period (step 75) are represented in FIG. and are e (2- T 0 ), e (3- T 0 ) and e (4- T 0 ). They are therefore distributed around e (3- T 0 ).
  • step 76 the maximum, in absolute value, is determined among the NEIGH neighborhood samples (ie the sample e (2- T 0 ) in the example of the figure 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- T 0 ) is indeed the sample of the penultimate pitch period e (2- T 0 ).
  • 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- T 0 ).
  • the same method is applied to all the samples of the last period, from e (1) to e (12).
  • the corrected samples are represented by dashed lines. Samples of pitch periods extrapolated T j + 1 , T j + 2 , corrected according to the invention, are represented by closed arrows.
  • this step 77 if a plosive is indeed present on the last pitch period T j (high intensity of the signal, in absolute value, as represented on FIG. figure 6 ), we will determine the minimum between this intensity of the plosive 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 realization of step 75), and replace, if necessary, the intensity of the plosive by a lower intensity belonging to the penultimate pitch period T j-1 .
  • 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 the amplitude of the pitch pitch periods T j + 1 , T j + 2 ( figure 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 + T 0 ) 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- T 0 ), if this sample e (n- T 0 ) must be associated with a sample e (n) positioned at a pitch period next.
  • 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 ( n 1 )).
  • the modified signal e mod (n) is thus delivered to the inverse filter 1 / A (z) (reference 405 of FIG. figure 4 ) for further decoding.
  • 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
  • the Figure 2c then illustrates the decoded signal when the invention is implemented, for comparison with the Figures 2a and 2b for which a frame with the plosive / t / was lost. Repetition of the phoneme / t / is avoided here, thanks to the implementation of the invention.
  • the differences following the frame loss are not related to the actual plosive detection.
  • attenuation of the signal after the frame loss at the Figure 2c can be explained by the fact that in this case, the G.722 decoder is reset (complete update of the states in the block 302 of the figure 3 ), 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.
  • 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 within the meaning of the invention, when it is executed by a processor of such a synthesis device.
  • the figure 7 described above can illustrate a flowchart of such a computer program.
  • 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 in the sense of the invention for synthesizing invalid blocks.
  • 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.
  • 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.

Landscapes

  • Engineering & Computer Science (AREA)
  • Computational Linguistics (AREA)
  • Signal Processing (AREA)
  • Health & Medical Sciences (AREA)
  • Audiology, Speech & Language Pathology (AREA)
  • Human Computer Interaction (AREA)
  • Physics & Mathematics (AREA)
  • Acoustics & Sound (AREA)
  • Multimedia (AREA)
  • Compression, Expansion, Code Conversion, And Decoders (AREA)
  • Transmission Systems Not Characterized By The Medium Used For Transmission (AREA)
  • Analysing Materials By The Use Of Radiation (AREA)
  • Stereophonic System (AREA)

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

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 Prediction"), 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") coding, also known as "PCM" and "ADPCM" in English ,
  • parametric coding methods using synthetic analysis such as Code Excited Linear Prediction (CELP), 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 (pour "Linear Prediction 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 Prediction"), 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ù :

  • Fe est la cadence d'échantillonnage, et
  • F0 est la fréquence fondamentale.
It 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 transfer function of the vocal tract (for example to pronounce consonants), are obtained by LPC (for Linear Prediction Coding) analysis methods. 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:
  • F e is the sampling rate, and
  • F 0 is the fundamental frequency.

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.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 l'UIT-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, the (ITU-T) ITU-T G.722 48-, 56- and 64-kbit / s coding system for the transmission of broadband speech signals (which is 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 et 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.The 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 high 102 and low 100 frequencies and sub-sampling 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, indicating a rate of 6, 5, or 4 bits per sample, respectively, while the high-band ADPCM encoder rate is fixed (two bits per second). sample). At the decoder are found the ADPCM decoding equivalent blocks (blocks 106 and 107), the outputs of which are combined in the receiving QMF filterbank (oversampling 108 and 110, inverse filters 109, 111 and joining the low frequency bands and high 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,
  • 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,
  • si un bloc reçu est corrompu (par exemple si son code de parité CRC n'est pas vérifié).
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 network router is full and empty its queue,
  • if the block is received late (therefore not taken into account) during a continuous-flow decoding and in real-time,
  • 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.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 encompasses state restoration, re-convergence, and other techniques.

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 oeuvre 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.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:

  • " A Packet Loss Concealment Method using Pitch Waveform Repetition and Internal State Update on the Decoded Speech for the Sub-band ADPCM Wideband Speech Codec", 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.
In the document:
  • " A Packet Loss Concealment Method using the Pitch Waveform Repetition and Internal State Update on the Decoded Speech for the ADPCM Wideband Speech Codec 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 stationnarité 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 hypothesis of stationarity 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 /t/. Cette 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).The Figures 2a and 2b illustrate this acoustic effect in the case of an expanded band signal encoded by an encoder according to Recommendation G.722. In particular, the 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. The figure 2b shows the decoded signal according to a technique similar to the Serizawa et al reference above when a frame loss immediately follows the phoneme / t /. This figure 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, telle que définie par les revendications ci-jointes, vient améliorer la situation.The present invention, as defined by the appended claims, 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.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.

D'une façon générale, le procédé comporte les étapes suivantes:

  1. a) définir une période de répétition du signal dans au moins un bloc valide, et
  2. b) recopier les échantillons de la période de répétition dans au moins un bloc de remplacement.
In general, the method comprises the following steps:
  1. a) defining a repetition period of the signal in at least one valid block, and
  2. b) copy 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.
In the process within the meaning of the invention:
  • in step a), determining a last repetition period in at least one valid block immediately preceding an invalid block, and
  • in step b), samples of the last repetition period are corrected according to samples of a preceding repetition period, in order to limit the amplitude of a possible transient signal that would be present in the last repetition period.

On recopie ensuite les échantillons ainsi corrigés dans le bloc de remplacement.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, compare:
  • the amplitude of this current sample, in absolute value,
  • the amplitude, in absolute value, of at least one sample temporally positioned substantially at a repetition period before the current sample, and the current sample is assigned the minimum amplitude, in absolute value, of 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:
  • forming a set of samples in a neighborhood centered around a sample temporally positioned at a repetition period before the current sample,
  • an amplitude chosen from among the amplitudes of the samples of said neighborhood, taken in absolute value, is determined
  • 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'ùn 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).
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 above-mentioned selected amplitude (determined in the vicinity as indicated above), and
  • then count the number of occurrences, for the current samples, for which the aforementioned ratio is greater than a first predetermined threshold (a value close to 4 for example, as will be seen below), and
  • detecting 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).

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.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 oeuvre 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 oeuvre 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).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).

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 oeuvre 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 fe =2fe ).
Other advantages and features 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 the figures 1 , 2a and 2b previously presented:
  • the Figure 2c illustrates, for comparison, the effect of the treatment within the meaning of the invention on the same signal as that of the Figures 2a and 2b , for which we lost a TP frame,
  • the figure 3 represents the decoder according to the recommendation G.722, but modified by integrating a device for correcting frames erased within the meaning of the invention,
  • the figure 4 illustrates the principle of extrapolation of the low band,
  • the figure 5 illustrates the principle of pitch repetition (in the field of excitation),
  • the figure 6 illustrates the modification of the excitation signal in the sense of the invention, followed by pitch repetition,
  • the figure 7 illustrates the steps of the process of the invention, according to a particular embodiment,
  • the figure 8 schematically illustrates a synthesis device for implementing the method within the meaning of the invention,
  • the figure 8a illustrates the general structure of a two-channel quadrature filter bank (QMF),
  • the figure 8b represents the spectra of the signals x (n), xl (n), xh (n) of the figure 8a when the filters L (z) and H (z) are ideal (ie f e = 2 f 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. figure 1 ). 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 the figure 3 , the decoder in the sense 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 the 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-Regressive 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 artéfacts, en l'apparition d'une composante continue d'amplitude très faible (de l'ordre de +/-10 pour un signal de dynamique maximale +/-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.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 artifacts, in the appearance of a continuous component of very low amplitude (of the order of +/- 10 for a maximum dynamic signal +/- 32767 ). 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: XL z = 1 2 X z 1 / 2 L z 1 / 2 + X - z 1 / 2 L - z 1 / 2

Figure imgb0001
XH z = 1 2 X z 1 / 2 H z 1 / 2 + X - z 1 / 2 H - z 1 / 2
Figure imgb0002
The transformation of the DC component (or "DC component") into a sinusoid at 8 kHz is explained below. The figure 8a represents 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 = 1 2 X z 1 / 2 The z 1 / 2 + X - z 1 / 2 The - z 1 / 2
Figure imgb0001
XH z = 1 2 X z 1 / 2 H z 1 / 2 + X - z 1 / 2 H - z 1 / 2
Figure imgb0002

Les filtres passe-bas L(z) et passe-haut H(z) étant en quadrature, on a : H(z)=L(-z).The low-pass filters L (z) and high-pass filters H (z) being in quadrature, we have: 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.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-T G.722.Thus, 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) can be, for example, the QMF filters of 24 coefficients specified in ITU-T Recommendation 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: L f = { 1 si f f c ʹ / 4 0 autrement

Figure imgb0003
The figure 8b shows the spectrum of the signals x (n), xl (n) and xh (n) in the case where the filters L (z) and H (z) are ideal mid-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 f = { 1 if f f vs ' / 4 0 other
Figure imgb0003

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 character 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 f'e ) 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.So, with reference again to the figure 3 , the switch 309 selects the channel zh = vh, as long as there is 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.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.

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).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 oeuvre dans le bloc 301 d'extrapolation de la bande basse. Ce bloc 301 est détaillé sur la figure 4.We do not describe in more detail the decoder object of the figure 3 , 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 on the figure 4 .

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, al, ... , ap) sous la forme : A z = a 0 + a 1 z - 1 + + a p z - p avec p = 8 et a 0 = 1.

Figure imgb0004
With reference to the figure 4 , the extrapolation of the low band is based on an analysis of the past signal xl (part of the figure 4 referenced ANALYS) followed by a synthesis of the signal yl to be delivered (part of the figure 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 (hereinafter referred to as 0 , a 1 , ..., a p ) are obtained in the form: AT z = at 0 + at 1 z - 1 + ... + at p z - p with P = 8 and has 0 = 1.
Figure imgb0004

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.
Le bloc 402 réalise une estimation de la fréquence fondamentale ou de son inverse: la période de pitch T 0. 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).
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.
Block 402 makes an estimate of the fundamental frequency or its inverse: the pitch period T 0 . 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 T 0 ainsi estimé est utilisé par le bloc 403 pour extrapoler l'excitation de la trame courante.The pitch T 0 thus estimated is used by the block 403 to extrapolate the excitation of the current frame.

Par ailleurs, le signal passé xl est classifié 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 oeuvre. 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 the 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 within the meaning 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) (où maintenant n=0,..., L-1, 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. With reference again to the figure 4 SYNTH synthesis follows the model well known 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) (where now n = 0, ..., L-1, 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.

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.The invention, as such, is carried out by block 403 of the figure 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 T 0, 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 T 0.We have shown on the figure 5 for illustrative purposes, the principle of the simple repetition of excitation as performed in the state of the art. The excitation can be extrapolated by simply repeating the last pitch period T 0 , 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 T 0, on modifie cette dernière, au sens de l'invention, comme suit.Referring now to the figure 6 before repeating the last pitch period T 0 , the latter is modified in the sense of the invention as follows.

Pour chaque échantillon n= -T 0, ...,-1, l'échantillon e(n) est modifié en emod(n) suivant une formule du type: e mod n = min max i = - k , ... , 0 , ... , + k e n - T 0 + i , e n × sign e n

Figure imgb0005
For each sample n = - T 0 , ..., - 1, the sample e (n) is modified in e mod (n) according to a formula of the type: e mod not = min max i = - k , ... , 0 , ... , + k e not - T 0 + i , e not × sign e not
Figure imgb0005

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.We have shown on the figure 7 the treatment 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), it copies the last pitch period of the valid blocks, as such, in the block 403 of the figure 4 and processing continues directly thereafter by the application of the inverse filter 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 T 0 (é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 T 0, avec n compris entre nl -T 0+1 et nl , e(nl ) 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 nl -T 0+1 et nl appartient simplement à la dernière période de pitch validement reçue.On 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 the figure 4 (at step 72). In the illustrated embodiment on the figure 7 we try to modify all the samples e (n) over a pitch period T 0 , with n lying between n l - T 0 +1 and n l , e ( n l ) corresponding to the last valid sample received (step 74). It will thus be understood, with these notations, that a sample e (n) with n lying between n l - T 0 +1 and n l simply belongs 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+1, 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=1. 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-T 0), e(3-T 0) et e(4-T 0). Ils sont donc répartis autour de e(3-T 0).In 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 ak = 1. Indeed, with reference to the figure 6 , it is found that the third sample of the last pitch period noted e (3) is selected (step 74) and NEIGH neighborhood samples associated with it in the penultimate pitch period (step 75) are represented in FIG. and are e (2- T 0 ), e (3- T 0 ) and e (4- T 0 ). They are therefore distributed around e (3- T 0 ).

A l'étape 76, on détermine le maximum, en valeur absolue, parmi les échantillons du voisinage NEIGH (soit l'échantillon e(2-T 0) 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- T 0 ) in the example of the figure 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-T 0) est bien l'échantillon de l'avant-dernière période de pitch e(2-T 0). 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-T 0). Le même procédé est appliqué à tous les échantillons de la dernière période, de e(1) à 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 j+1, T j+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. the figure 6 this minimum between e (3) and e (2- T 0 ) is indeed the sample of the penultimate pitch period e (2- T 0 ). Still at this step 77, the amplitude of the current sample e (n) is then replaced by this minimum. On the figure 6 the amplitude of the sample e (3) becomes equal to that of the sample e (2- T 0 ). The same method is applied to all the samples of the last period, from e (1) to e (12). On the figure 6 the corrected samples are represented by dashed lines. Samples of pitch periods extrapolated T j + 1 , T j + 2 , corrected according to the invention, are represented by closed arrows.

On comprendra donc que, par la mise en oeuvre avantageuse de cette étape 77, si une plosive est bien présente sur la dernière période de pitch T j (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 T j-1. En revanche, si l'intensité des échantillons de la dernière période de pitch T j est inférieure à celle de l'avant-dernière période T j-1, en sélectionnant le minimum entre l'échantillon courant e(3) et la valeur d'intensité e(2-T 0) dans l'avant-dernière période de pitch T j-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 j-1.It will therefore be understood that, by the advantageous implementation of this step 77, if a plosive is indeed present on the last pitch period T j (high intensity of the signal, in absolute value, as represented on FIG. figure 6 ), we will determine the minimum between this intensity of the plosive 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 realization of step 75), and replace, if necessary, the intensity of the plosive by a lower intensity belonging to the penultimate pitch period T j-1 . On the other hand, if the intensity of the samples of the last pitch period T j is smaller than that of the penultimate period T j-1 , by selecting the minimum between the current sample e (3) and the value d intensity e (2- T 0 ) in the penultimate pitch period T j-1 , we do not modify the last period and thus avoids the risk that a plosive (of high intensity) can be copied from the penultimate pitch period T j-1 .

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 T j+1 , Tj+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 the amplitude of the pitch pitch periods T j + 1 , T j + 2 ( figure 6 ).

Par ailleurs, l'étape 75, de détermination de voisinage, est mise en oeuvre, 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 T 0, il n'en est pas toujours de même pour un échantillon e(n+T 0) 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-T 0), s'il faut associer cet échantillon e(n-T 0) à 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 + T 0 ) 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- T 0 ), if this sample e (n- T 0 ) must be associated with a sample e (n) positioned at a pitch period next.

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 T 0 (soit donc jusqu'à arriver au dernier échantillon valide e(nl )).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 ( n 1 )).

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 mod (n) is thus delivered to the inverse filter 1 / A (z) (reference 405 of FIG. figure 4 ) for further decoding.

Il 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 T j, d'appliquer cette correction T'j à cette dernière période de pitch T j et de recopier la correction pour les périodes de pitch suivantes, soit : T j=T j+1=T j+2=T'j.
Dans une variante, on laisse intacte la dernière période de pitch T j et on recopie en revanche sa correction T'j dans les périodes de pitch suivantes T j+1 et T j+2.
It should be noted, however, two possible alternative embodiments. It is thus possible to correct the last pitch period T j , to apply this correction T ' j to this last pitch period T j and to copy the correction for the following pitch periods, ie: T j = T j + 1 = T j + 2 = T ' j .
In one variant, the last pitch period T j is left intact and its correction T ' j is copied on the other hand in the following pitch periods T j + 1 and T j + 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.The comparison of figures 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 : e n 4 > max i = - k , ... , 0 , ... , + k e n - T 0 + i

Figure imgb0006
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): e not 4 > max i = - k , ... , 0 , ... , + k e not - T 0 + i
Figure imgb0006

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 oeuvre, à titre de comparaison avec les figures 2a et 2b pour lesquelles une trame comportant la plosive /t/ était perdue. La répétition du phonème /t/ est ici évitée, grâce à la mise en oeuvre 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.The Figure 2c then illustrates the decoded signal when the invention is implemented, for comparison with the Figures 2a and 2b for which a frame with the plosive / t / was lost. Repetition of the phoneme / t / is avoided here, thanks to the implementation of the invention. The differences following the frame loss are not related to the actual plosive detection. In fact, attenuation of the signal after the frame loss at the Figure 2c can be explained by the fact that in this case, the G.722 decoder is reset (complete update of the states in the block 302 of the figure 3 ), 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.

Néanmoins, à l'écoute, le signal illustré à la figure 2c est de meilleure qualité que celui de la figure 2b.Nevertheless, listening, the signal shown in the Figure 2c is of better quality than that of the 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 oeuvre 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 within the meaning of the invention, when it is executed by a processor of such a synthesis device. Moreover, the 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é.
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 the figure 4 with the features described above. With reference to the figure 8 this SYN device 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 comprising at least this synthesized current block.

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 oeuvre 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).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.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 in the sense of the invention for synthesizing invalid blocks.

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.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 ¼ 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 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 transient detection (of ¼ in the example of condition (1) above) can be adapted. In addition, the signal can be declared as transient if the detection condition is verified 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 j-1 pour constituer les nouvelles périodes synthétisées T j+1, T j+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).Of course, simply copy the penultimate pitch period T j-1 to constitute the new synthesized periods T j + 1 , T j + 2 would already overcome the problem of repetition of plosives, if, moreover, take care to detect plosives in the penultimate pitch period (for example by using a condition of the type of condition (1) above).

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. 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.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). Thus, sample correction and copying can be steps that can occur in any order and, in particular, be reversed.

Claims (12)

  1. Method of synthesis of a digital audio signal represented by successive blocks of samples, in which, on receipt of such a signal, to replace at least one invalid block, a replacement block is generated from samples of at least one valid block,
    the method comprising the following steps:
    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,
    said repetition period corresponding to a pitch period if the signal is voiced or to a value determined arbitrarily or from a correlation function if the signal is not voiced,
    characterized in that:
    - in the step a), a last repetition period (T j) is determined in at least one valid block immediately preceding an invalid block,
    - in the step b), the samples (e(3)) of said last repetition period (Tj) are corrected according to samples (e(2-T 0), e(3-T 0), e(4-T 0)) of a repetition period (T j-1) preceding said last repetition period, to limit the amplitude of a possible transient signal in said last repetition period, and the duly corrected samples are copied into said replacement block (T j+1, T j+2), said correction being made in relation to a neighbourhood centred around a sample temporally positioned at a repetition period before the current sample.
  2. Method according to Claim 1, in which 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. Method according to one of Claims 1 and 2, characterized in that, in the step b), a current sample (e(3)) of the last repetition period is corrected, by comparing:
    - the amplitude of this current sample, as an absolute value,
    - to the amplitude, as an absolute value, of at least one sample (e(2-T 0)) temporally positioned approximately at a repetition period before the current sample,
    and by assigning the current sample the minimum amplitude, as an absolute value, of these two amplitudes.
  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 constituted in a neighbourhood centred around a sample (e(3-T 0)) temporally positioned at a repetition period before the current sample,
    - a chosen amplitude is determined (76), from the amplitudes of the samples of said neighbourhood, taken as an absolute value,
    - and this chosen amplitude is compared to the amplitude of the current sample, as an absolute value, to assign (77) to the current sample (e(3)) the minimum amplitude, as an absolute value, out of the chosen amplitude and the amplitude of the current sample.
  5. Method according to Claim 4, characterized in that the amplitude chosen from the amplitudes of the samples of said neighbourhood is the maximum amplitude as an absolute value (M).
  6. Method according to one of the preceding claims, in which a damping of the amplitude of the samples in said replacement block is applied, characterized in that a possible transient nature of the signal is detected in the last repetition period and, if appropriate, the correction of the step b) is performed by applying a faster damping than for a stationary signal.
  7. Method according to Claim 6, 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, as an absolute value, of the amplitude of a current sample to said chosen amplitude is measured, and
    - the number of occurrences is counted, for said current samples, for which said ratio is above a predetermined first threshold, and
    - the presence of a transient nature is detected if the number of occurrences is above a predetermined second threshold.
  8. Method according to one of the preceding claims, characterized in that, in the case of reception of a plurality of consecutive invalid blocks extending over at least one repetition period, the sample correction step b) is applied to all the samples of the last repetition period, taken one by one as the current sample.
  9. Method according to Claim 8, characterized in that, in the case of reception of a plurality of consecutive invalid blocks extending over several repetition periods, to replace said plurality of invalid blocks, the repetition period corrected in the step b) is copied several times to form the replacement blocks.
  10. Computer program intended to be stored in memory of a digital audio signal synthesis device, characterized in that it comprises suitable instructions for implementing the method according to one of Claims 1 to 9 when it is run by a processor of such a synthesis device.
  11. Device for synthesizing a digital audio signal constituted 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
    - an output (S) for delivering the synthesized signal (emod(n)) and comprising at least said current block,
    characterized in that it comprises suitable means (MEM, PROC) for implementing the method according to one of Claims 1 to 9, to synthesize the current block from at least one of said preceding blocks.
  12. Decoder of a digital audio signal constituted of a succession of blocks, characterized in that it also comprises a device (403) according to Claim 11, 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 EP2080195A1 (en) 2009-07-22
EP2080195B1 true 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.
SG10201700846UA (en) * 2013-02-05 2017-03-30 Ericsson Telefon Ab L M Method and apparatus for controlling audio frame loss concealment
US9478221B2 (en) 2013-02-05 2016-10-25 Telefonaktiebolaget Lm Ericsson (Publ) Enhanced audio frame loss concealment
EP3576087B1 (en) * 2013-02-05 2021-04-07 Telefonaktiebolaget LM Ericsson (publ) Audio frame loss concealment
SG11201510463WA (en) 2013-06-21 2016-01-28 Fraunhofer Ges Forschung Apparatus and method for improved concealment of the adaptive codebook in acelp-like concealment employing improved pitch lag estimation
MX352092B (en) 2013-06-21 2017-11-08 Fraunhofer Ges Forschung Apparatus and method for improved concealment of the adaptive codebook in acelp-like concealment employing improved pulse resynchronization.
US9418671B2 (en) * 2013-08-15 2016-08-16 Huawei Technologies Co., Ltd. Adaptive high-pass post-filter
PT3063760T (en) 2013-10-31 2018-03-22 Fraunhofer Ges Forschung Audio decoder and method for providing a decoded audio information using an error concealment based on a time domain excitation signal
SG10201609186UA (en) 2013-10-31 2016-12-29 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
CA2137459A1 (en) * 1993-05-04 1994-11-10 Stephen V. Cahill 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
GB2416467B (en) * 2003-05-14 2006-08-30 Oki Electric Ind Co Ltd Apparatus and method for concealing erased periodic signal data
JP4135621B2 (en) * 2003-11-05 2008-08-20 沖電気工業株式会社 Receiving apparatus and method
US8725501B2 (en) * 2004-07-20 2014-05-13 Panasonic Corporation Audio decoding device and compensation frame generation method
EP2054878B1 (en) * 2006-08-15 2012-03-28 Broadcom Corporation Constrained and controlled decoding after packet loss

Also Published As

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

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
EP3103116B1 (en) Improved frequency band extension in an audio signal decoder
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
WO2015004373A1 (en) Optimized scale factor for frequency band extension in an audiofrequency signal decoder
EP2347411B1 (en) Pre-echo attenuation in a digital audio signal
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

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