EP2080195B1 - Synthesis of lost blocks of a digital audio signal - Google Patents
Synthesis of lost blocks of a digital audio signal Download PDFInfo
- 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
Links
- 230000005236 sound signal Effects 0.000 title claims abstract description 16
- 230000015572 biosynthetic process Effects 0.000 title claims description 18
- 238000003786 synthesis reaction Methods 0.000 title claims description 18
- 238000000034 method Methods 0.000 claims abstract description 42
- 230000002194 synthesizing effect Effects 0.000 claims abstract description 8
- 238000004590 computer program Methods 0.000 claims abstract description 6
- 238000012937 correction Methods 0.000 claims description 34
- 230000001052 transient effect Effects 0.000 claims description 18
- 230000015654 memory Effects 0.000 claims description 8
- 238000013016 damping Methods 0.000 claims description 4
- 238000005314 correlation function Methods 0.000 claims description 2
- 230000005284 excitation Effects 0.000 description 17
- 238000004458 analytical method Methods 0.000 description 11
- 238000001514 detection method Methods 0.000 description 11
- 238000013213 extrapolation Methods 0.000 description 9
- 230000004048 modification Effects 0.000 description 8
- 238000012986 modification Methods 0.000 description 8
- 238000012545 processing Methods 0.000 description 7
- 230000000694 effects Effects 0.000 description 6
- 238000005070 sampling Methods 0.000 description 6
- 230000008901 benefit Effects 0.000 description 5
- 230000005540 biological transmission Effects 0.000 description 5
- 230000006870 function Effects 0.000 description 5
- 230000008569 process Effects 0.000 description 5
- 230000006978 adaptation Effects 0.000 description 4
- 238000001228 spectrum Methods 0.000 description 4
- 230000007774 longterm Effects 0.000 description 3
- 230000003595 spectral effect Effects 0.000 description 3
- 238000011282 treatment Methods 0.000 description 3
- 241001123248 Arma Species 0.000 description 2
- 238000005562 fading Methods 0.000 description 2
- 238000001914 filtration Methods 0.000 description 2
- 238000000926 separation method Methods 0.000 description 2
- 238000012360 testing method Methods 0.000 description 2
- 238000012546 transfer Methods 0.000 description 2
- 238000011144 upstream manufacturing Methods 0.000 description 2
- 241001080024 Telles Species 0.000 description 1
- 240000008042 Zea mays Species 0.000 description 1
- 230000003044 adaptive effect Effects 0.000 description 1
- 230000002238 attenuated effect Effects 0.000 description 1
- 230000015556 catabolic process Effects 0.000 description 1
- 238000006731 degradation reaction Methods 0.000 description 1
- 235000021183 entrée Nutrition 0.000 description 1
- 230000004907 flux Effects 0.000 description 1
- 238000009499 grossing Methods 0.000 description 1
- 238000005259 measurement Methods 0.000 description 1
- 230000007246 mechanism Effects 0.000 description 1
- 230000002035 prolonged effect Effects 0.000 description 1
- 238000013139 quantization Methods 0.000 description 1
- 230000004044 response Effects 0.000 description 1
- 230000009466 transformation Effects 0.000 description 1
- 210000001260 vocal cord Anatomy 0.000 description 1
- 230000001755 vocal effect Effects 0.000 description 1
- 230000003936 working memory Effects 0.000 description 1
Images
Classifications
-
- G—PHYSICS
- G10—MUSICAL INSTRUMENTS; ACOUSTICS
- G10L—SPEECH ANALYSIS TECHNIQUES OR SPEECH SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING TECHNIQUES; SPEECH OR AUDIO CODING OR DECODING
- G10L19/00—Speech 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/005—Correction of errors induced by the transmission channel, if related to the coding algorithm
-
- G—PHYSICS
- G10—MUSICAL INSTRUMENTS; ACOUSTICS
- G10L—SPEECH ANALYSIS TECHNIQUES OR SPEECH SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING TECHNIQUES; SPEECH OR AUDIO CODING OR DECODING
- G10L19/00—Speech 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
-
- G—PHYSICS
- G10—MUSICAL INSTRUMENTS; ACOUSTICS
- G10L—SPEECH ANALYSIS TECHNIQUES OR SPEECH SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING TECHNIQUES; SPEECH OR AUDIO CODING OR DECODING
- G10L25/00—Speech or voice analysis techniques not restricted to a single one of groups G10L15/00 - G10L21/00
- G10L25/90—Pitch determination of speech signals
-
- G—PHYSICS
- G10—MUSICAL INSTRUMENTS; ACOUSTICS
- G10L—SPEECH ANALYSIS TECHNIQUES OR SPEECH SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING TECHNIQUES; SPEECH OR AUDIO CODING OR DECODING
- G10L19/00—Speech 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/02—Speech 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/0204—Speech 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
-
- G—PHYSICS
- G10—MUSICAL INSTRUMENTS; ACOUSTICS
- G10L—SPEECH ANALYSIS TECHNIQUES OR SPEECH SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING TECHNIQUES; SPEECH OR AUDIO CODING OR DECODING
- G10L19/00—Speech 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/02—Speech 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/022—Blocking, i.e. grouping of samples in time; Choice of analysis windows; Overlap factoring
- G10L19/025—Detection 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
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.
- 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.
- 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
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é).
- 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.
- "
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
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:
- a) définir une période de répétition du signal dans au moins un bloc valide, et
- b) recopier les échantillons de la période de répétition dans au moins un bloc de remplacement.
- a) defining a repetition period of the signal in at least one valid block, and
- 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 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.
- 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.
- 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).
- 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
- la
figure 2c illustre, à titre de comparaison, l'effet du traitement au sens de l'invention sur le même signal que celui desfigures 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 lafigure 8a quand les filtres L(z) et H(z) sont idéaux (soit fe =2fe ).
- the
Figure 2c illustrates, for comparison, the effect of the treatment within the meaning of the invention on the same signal as that of theFigures 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 thefigure 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
En référence à la
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
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
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
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
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
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
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.
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-
Ainsi, en référence à nouveau à la
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
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-
On ne décrit pas plus en détail le décodeur objet de la
En référence à la
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
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
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
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
L'invention, en tant que telle, est réalisée par le bloc 403 de la
On a représenté sur la
En se référant maintenant à la
Pour chaque échantillon n= -T 0, ...,-1, l'échantillon e(n) est modifié en emod(n) suivant une formule du type:
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
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
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
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
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
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
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 (
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
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
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 )).
On délivre ainsi le signal modifié emod(n) au filtre inverse 1/A(z) (référence 405 de la
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
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 :
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
La
Néanmoins, à l'écoute, le signal illustré à la
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
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
- 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é.
- 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
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
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)
- 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, andb) 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. - 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.
- 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.
- 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.
- 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).
- 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.
- 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.
- 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.
- 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.
- 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.
- 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.
- 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.
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)
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)
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 |
-
2006
- 2006-10-20 FR FR0609227A patent/FR2907586A1/en not_active Withdrawn
-
2007
- 2007-10-17 MX MX2009004211A patent/MX2009004211A/en active IP Right Grant
- 2007-10-17 US US12/446,264 patent/US8417519B2/en active Active
- 2007-10-17 JP JP2009532871A patent/JP5289320B2/en active Active
- 2007-10-17 EP EP07871872A patent/EP2080195B1/en active Active
- 2007-10-17 KR KR1020097010326A patent/KR101406742B1/en active IP Right Grant
- 2007-10-17 RU RU2009118929/08A patent/RU2432625C2/en active
- 2007-10-17 CN CN200780046752XA patent/CN101627423B/en active Active
- 2007-10-17 PL PL07871872T patent/PL2080195T3/en unknown
- 2007-10-17 BR BRPI0718422-0A patent/BRPI0718422B1/en active IP Right Grant
- 2007-10-17 DE DE602007013265T patent/DE602007013265D1/en active Active
- 2007-10-17 AT AT07871872T patent/ATE502376T1/en not_active IP Right Cessation
- 2007-10-17 WO PCT/FR2007/052189 patent/WO2008096084A1/en active Application Filing
- 2007-10-17 ES ES07871872T patent/ES2363181T3/en active Active
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 |