EP3175444B1 - Frame loss management in an fd/lpd transition context - Google Patents

Frame loss management in an fd/lpd transition context Download PDF

Info

Publication number
EP3175444B1
EP3175444B1 EP15757533.3A EP15757533A EP3175444B1 EP 3175444 B1 EP3175444 B1 EP 3175444B1 EP 15757533 A EP15757533 A EP 15757533A EP 3175444 B1 EP3175444 B1 EP 3175444B1
Authority
EP
European Patent Office
Prior art keywords
frame
predictive
digital signal
coded
segment
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Active
Application number
EP15757533.3A
Other languages
German (de)
French (fr)
Other versions
EP3175444A1 (en
Inventor
Julien Faure
Stéphane RAGOT
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Orange SA
Original Assignee
Orange SA
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Orange SA filed Critical Orange SA
Publication of EP3175444A1 publication Critical patent/EP3175444A1/en
Application granted granted Critical
Publication of EP3175444B1 publication Critical patent/EP3175444B1/en
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G10MUSICAL INSTRUMENTS; ACOUSTICS
    • G10LSPEECH ANALYSIS TECHNIQUES OR SPEECH SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING TECHNIQUES; SPEECH OR AUDIO CODING OR DECODING
    • G10L19/00Speech or audio signals analysis-synthesis techniques for redundancy reduction, e.g. in vocoders; Coding or decoding of speech or audio signals, using source filter models or psychoacoustic analysis
    • G10L19/005Correction of errors induced by the transmission channel, if related to the coding algorithm
    • GPHYSICS
    • G10MUSICAL INSTRUMENTS; ACOUSTICS
    • G10LSPEECH ANALYSIS TECHNIQUES OR SPEECH SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING TECHNIQUES; SPEECH OR AUDIO CODING OR DECODING
    • G10L19/00Speech or audio signals analysis-synthesis techniques for redundancy reduction, e.g. in vocoders; Coding or decoding of speech or audio signals, using source filter models or psychoacoustic analysis
    • G10L19/02Speech or audio signals analysis-synthesis techniques for redundancy reduction, e.g. in vocoders; Coding or decoding of speech or audio signals, using source filter models or psychoacoustic analysis using spectral analysis, e.g. transform vocoders or subband vocoders
    • G10L19/022Blocking, i.e. grouping of samples in time; Choice of analysis windows; Overlap factoring
    • GPHYSICS
    • G10MUSICAL INSTRUMENTS; ACOUSTICS
    • G10LSPEECH ANALYSIS TECHNIQUES OR SPEECH SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING TECHNIQUES; SPEECH OR AUDIO CODING OR DECODING
    • G10L19/00Speech or audio signals analysis-synthesis techniques for redundancy reduction, e.g. in vocoders; Coding or decoding of speech or audio signals, using source filter models or psychoacoustic analysis
    • G10L19/04Speech or audio signals analysis-synthesis techniques for redundancy reduction, e.g. in vocoders; Coding or decoding of speech or audio signals, using source filter models or psychoacoustic analysis using predictive techniques
    • G10L19/16Vocoder architecture
    • G10L19/18Vocoders using multiple modes
    • G10L19/20Vocoders using multiple modes using sound class specific coding, hybrid encoders or object based coding

Definitions

  • the present invention relates to the field of coding / decoding of digital signals in particular for the loss of frame correction.
  • the invention is advantageously applied to the coding / decoding of sounds that can contain speech and music mixed or alternately.
  • CELP Code Excited Linear Prediction
  • transform coding techniques are preferred.
  • CELP coders are predictive coders. They aim to model the production of speech from various elements: a short-term linear prediction to model the vocal tract, a long-term prediction to model the vibration of vocal cords in voiced period, and an excitation derived from a fixed dictionary (white noise, algebraic excitation) to represent the "innovation" which could not be modeled.
  • Transform coders such as MPEG AAC, AAC-LD, AAC-ELD or ITU-T G.722.1 Annex C use critical-sampling transforms to compact the signal in the transformed domain.
  • a "critical-sampling transform” is a transform for which the number of coefficients in the transformed domain is equal to the number of time samples in each frame analyzed.
  • One solution for efficiently coding a mixed speech / music content signal consists in selecting, over time, the best technique between at least two coding modes, one of the CELP type, the other of the transformed type.
  • the MDCT window is divided into 4 adjacent portions of equal lengths M / 2, here called "quarters".
  • the signal is multiplied by the analysis window and folds are made: the first quarter (windowed) is folded (ie inverted in time and overlapped) on the second quarter and the fourth quarter is folded on the third.
  • the temporal folding from one quarter to another is done in the following way: the first sample of the first quarter is added (or subtracted) to the last sample of the second quarter, the second sample of the first quarter is added (or subtracted ) to the second-last sample in the second quarter, and so on until the last sample in the first quarter that is added (or subtracted) to the first sample in the second quarter.
  • the folded two quarters are then coded together after DCT (Type IV) transformation.
  • DCT Type IV transformation
  • the third and fourth quarters of the previous frame then become the first and second quarters of the current frame.
  • the decoded version of these folded signals is thus obtained.
  • Two consecutive frames contain the result of 2 different folds of the same quarters, that is to say for each pair of samples one has the result of 2 linear combinations with different but known weights: an equation system is thus solved to obtain the decoded version of the input signal, the time folding can be thus removed using 2 consecutive decoded frames.
  • implementation variants of the MDCT transformation exist, in particular on the definition of the DCT transform, on how to fold the block to be transformed temporarily (for example, the signs applied to the folded quarters can be reversed). left and right, or fold the second and third quarter over the first and fourth quarters respectively), etc. These variants do not change the principle of the MDCT analysis-synthesis with the reduction of the sample block by windowing, temporal folding then transformation and finally windowing, folding and addition-recovery.
  • the international patent application WO2012 / 085451 proposes a method for encoding a transition frame.
  • the transition frame is defined as the transform-encoded current frame that succeeds a previous frame encoded by predictive coding.
  • a part of the transition frame for example a subframe of 5 ms, in the case of a CELP core coding at 12.8 kHz, and two additional CELP frames of 4 ms each, in the case of a CELP core coding at 16 kHz, are coded by a predictive coding restricted with respect to the predictive coding of the previous frame.
  • Restricted predictive coding consists in using the stable parameters of the preceding frame coded by a predictive coding, such as the coefficients of the linear prediction filter and coding only a few minimum parameters for the additional subframe in the transition frame.
  • the bold lines separate the frames of new samples at the input of the encoder.
  • the coding of a new MDCT frame can be started when a so-defined frame of new input samples is fully available. It is important to note that these lines in bold at the coder do not correspond to the current frame but to the block of new samples arriving for each frame: the current frame is in fact delayed by 5 ms which correspond to an anticipation, called " lookahead " in English.
  • the bold lines separate the decoded frames at the output of the decoder.
  • the transition window is zero to the point of folding.
  • the portion between the folding point and the end of the CELP transition subframe (TR) corresponds to a (half) sinusoidal window.
  • the same window is applied to the signal.
  • the coefficients of the window correspond to a window of form sin 2 .
  • coded audio signal frames may be lost on the channel between the encoder and the decoder.
  • the techniques of correction of loss of existing frames are most often very dependent on the type of coding used.
  • An example is proposed in US2014 / 0019142 A1 .
  • the frame loss correction is often related to the speech model.
  • the ITU-T Standard G.722.2 proposes to replace a lost packet by extending the long-term prediction gain by attenuating it, and by extending the spectral line frequencies (ISF in English).
  • ISF spectral line frequencies
  • Immitance Spectral Frequencies representing the coefficients A (z) of the LPC filter, making them tend towards their respective averages.
  • the fundamental period (or "pitch") is also repeated.
  • the contribution of the fixed dictionary is filled with random values.
  • a common technique for correcting a frame loss is to repeat the last frame received.
  • Such a technique is implemented in several standardized coders / decoders (G.719, G.722.1 and G.722.1C in particular).
  • G.719, G.722.1 and G.722.1C standardized coders / decoders
  • an MLT transform for " Modulated Lapped Transform "), equivalent to an MDCT transform, with a 50% overlap and a sinusoidal window, makes it possible to ensure slow enough transition between the last lost frame and the repeated frame to erase the artifacts related to the simple repetition of the frame.
  • Such a technique is inexpensive but its main defect is the inconsistency between the signal just before the loss of frame and the repeated signal. This results in a phase discontinuity that can introduce important audio artifacts if the overlap time between the two frames is low, as is the case when the windows used for the MLT are so-called low delay windows.
  • a replacement frame is generated by using a suitable packet loss masking algorithm (for " Packet Loss Concealment ").
  • Packet Loss Concealment for " Packet Loss Concealment ".
  • PLC Packet Loss Concealment
  • a PLC-based replacement frame adapted to CELP encoding is used, exploiting the CELP encoder memories.
  • a replacement frame based on a PLC adapted to the MDCT encoding is generated.
  • the transition frame is composed of a CELP subframe (which is at the same sampling rate as the previous CELP frame) and a MDCT frame with a modified MDCT window canceling the folding "left", there are situations for which existing techniques provide no solution.
  • a previous CELP frame has been correctly received and decoded, a current transition frame is lost, and the next frame is an MDCT frame.
  • the PLC algorithm after receiving the CELP frame, does not know that the lost frame is a transition frame and therefore generates a replacement CELP frame.
  • the first folded portion of the next MDCT frame can not be compensated and the delay between the two types of encoder can not be bridged with the CELP subframe contained in the transition frame (which is lost with the transition frame). There is no known solution to deal with this situation.
  • a previous CELP frame at 12.8 kHz is correctly received and decoded, a current CELP frame at 16 kHz is lost, and the next frame is a transition frame.
  • the PLC algorithm then generates a CELP frame at the frequency of the last correctly received frame, ie 12.8 kHz, and the CELP transition subframe (partially coded from CELP parameters of the 16 kHz CELP frame lost ) can not be decoded.
  • the present invention improves this situation.
  • the predictive decoding of the previous frame includes the predictive decoding of a correctly received CELP frame or the generation of a replacement CELP frame by a CELP-adapted PLC algorithm.
  • this additional segment makes possible a transition between a CELP coding and a transform coding, even in the case of a frame loss.
  • the transition with the next MDCT frame can be provided by the additional segment.
  • the additional segment may be added to the next MDCT frame to compensate for the first folded portion of this MDCT frame by cross-fading the area containing the non-canceled time folding.
  • the decoding of the transition frame is made possible by the use of the additional segment. Indeed, if it is not possible to decode the transition CELP subframe (unavailability of CELP parameters of the previous frame coded at 16 kHz), it is possible to replace it with the additional segment as described above. after.
  • the calculations relating to the management of the frame loss and the transition are distributed over time. Indeed, the additional segment is generated and stored for each generated replacement CELP frame. The transition segment is therefore generated as soon as a frame loss is detected, without waiting for a transition to be subsequently detected. The transition is therefore anticipated at each frame loss, which avoids having to manage a "complexity peak" at the moment when a new correct frame is received and decoded.
  • next frame is fully coded according to transform coding and the lost current frame is a transition frame between the predecessor coded predictive coding frame and the transform coded next frame.
  • the preceding frame is coded according to a predictive coding by a predictive coder core operating at a first frequency.
  • the following frame is a transition frame comprising at least one sub-frame coded according to a predictive coding by a predictive coding core operating at a second frequency distinct from the first frequency.
  • the following transition frame may comprise a bit indicating the frequency of the predictive coding core used.
  • the CELP encoding type (12.8 or 16 kHz) used in the transition CELP subframe can be indicated in the bitstream of the transition frame.
  • the invention thus provides to add a systematic indication (one bit) in a transition frame, in order to allow the detection of a CELP coding / decoding frequency difference between the transition CELP subframe and the previous CELP frame.
  • the internal memories of the decoder are not updated for the generation of the additional segment. Therefore, the generation of the additional signal segment does not impact the decoding of the next frame, in the event that the next frame is a CELP frame.
  • the internal memories of the decoder must correspond to the states of the decoder at the end of the replacement frame.
  • the additional digital signal segment corresponds to the first half of the additional frame.
  • the efficiency of the method is further improved because the temporary calculation data used for the generation of the replacement CELP frame is directly available for the generation of the additional CELP frame.
  • the registers and caches, on which the temporary calculation data are stored may not be updated in order to reuse these data directly for the generation of the additional CELP frame.
  • a second aspect of the invention is directed to a computer program comprising instructions for implementing the method according to the first aspect of the invention, when these instructions are executed by a processor.
  • the invention may include inserting in the transition frame an information bit on the CELP core used for encoding the transition subframe.
  • the figure 1 illustrates an audio decoder 100 according to one embodiment of the invention.
  • the coded digital audio signal received by the decoder according to the invention may be derived from an encoder able to encode an audio signal in the form of CELP frames, MDCT frames and CELP / MDCT transition frames, such as the encoder described in the application WO2012 / 085451 .
  • a transition-coded transition frame may furthermore comprise a segment (a sub-frame for example) coded by a predictive coding.
  • the encoder may further add a bit in the transition frame to identify the frequency of the CELP core used.
  • the CELP coding example is given for illustrative purposes to describe any type of predictive coding.
  • the MDCT coding example is given for illustrative purposes to describe any type of transform coding.
  • the decoder 100 comprises a reception unit 101 of a coded digital audio signal.
  • the digital signal is encoded as CELP frames, MDCT frames and CELP / MDCT transition frames.
  • CELP coding may be replaced by another type of predictive coding
  • MDCT coding may be replaced by another type of transform coding.
  • the decoder 100 further comprises a classification unit 102 capable of determining - generally by simple reading of the bitstream and interpretation of the indications received from the coder - whether a current frame is a CELP frame, an MDCT frame, or a transition frame. Depending on the classification of the current frame, the latter may be transmitted to a CELP decoder 103 or to an MDCT decoder 104 (or both, in the case of a transition frame, the transition CELP subframe being transmitted to a decoding unit 105 described below).
  • the classification unit 102 may determine the CELP encoding type used in the additional CELP subframe - this type of encoding is indicated as an output bit rate of the encoder.
  • FIG. figure 2 An example of a decoder structure CELP 103 is shown with reference to FIG. figure 2 .
  • a reception unit 201 which may include a demultiplexing function, is able to receive CELP coding parameters of the current frame. These parameters can include excitation parameters (gain vectors, fixed dictionary vector, adaptive dictionary vector for example) transmitted to a decoding unit 202 capable of generating an excitation.
  • the CELP coding parameters may comprise LPC coefficients represented in the form of LSF or ISF, for example. The LPC coefficients are decoded by a decoding unit 203 capable of supplying the LPC coefficients to a synthetic LPC filter 205.
  • the CELP decoder 103 may comprise a low-frequency post-processing 207 (or " bass-post filter " in English) similar to that described in the ITU-T G.718 standard.
  • the CELP decoder 103 further comprises a resampling 208 of the signal synthesized at the output frequency (the output frequency of the MDCT decoder 104), and an output interface 209.
  • post-processing CELP synthesis can be implemented before or after resampling.
  • the decoder further comprises a loss of frame management unit 108 and a temporary memory 107.
  • the decoder 100 further comprises a decoding unit 105 able to receive the transition CELP subframe and the decoded transition frame by transforming the output of the MDCT decoder 104 in order to decode the frame of the decoder. addition-based transition with recovery of the received signals.
  • the decoder 100 may further comprise an output interface 106.
  • FIG. 3 is a diagram showing the steps of a method according to an embodiment of the invention.
  • a coded digital audio signal current frame may or may not be received by the reception unit 101 from an encoder. It is considered that the previous audio signal frame is a correctly received and decoded frame or a frame of replacement.
  • the classification unit 102 determines whether the coded current frame is a CELP frame.
  • the method comprises a step 304 of decoding and resampling the coded CELP frame, by the decoder CELP 103.
  • the aforementioned internal memories of the decoder CELP 103 can then be set in step 305.
  • the decoded and resampled signal is outputted from the decoder 100.
  • the excitation parameters of the current frame, as well as the LPC coefficients, can be stored in the memory 107. .
  • the current frame comprises at least one segment coded according to a transform coding (MDCT frame or transition frame). It is then checked at a step 307 if the coded current frame is an MDCT frame. If this is the case, the current frame is decoded at a step 308 by the MDCT decoder 104 and the decoded signal is transmitted at the output of the decoder 100 in step 306.
  • MDCT frame or transition frame transform coding
  • the current frame is not an MDCT frame
  • it is a transition frame which is decoded at a step 309 by decoding both the CELP transition subframe and the MDCT transformed current frame and by performing the overlap addition of the signals from the CELP decoder and the MDCT decoder to obtain a digital signal transmitted at the output of the decoder 100 in step 306.
  • a PLC algorithm adapted to the MDCT implemented in the lossy frame management unit 108, generates a replacement frame MDCT decoded by the decoder MDCT 104 in order to obtain a signal digital output, at a step 311.
  • a PLC algorithm adapted to the CELP is implemented by the frame loss management unit 108 and the CELP decoder 103 to generate a replacement CELP frame at a step 312.
  • the memories thus updated can be copied into the temporary memory 107.
  • the decoded replacement CELP frame is transmitted at the output of the decoder at a step 315.
  • the invention provides for storing in temporary variables the states of the CELP decoding that are modified at each step, before performing these steps, so that the predetermined states can be restored. their stored values after generating the temporary segment.
  • the additional signal segment generated is stored in the memory 107 at a step 317.
  • a next digital signal frame is received by the reception unit 101. It is verified in a step 319 that the next frame is an MDCT frame or a transition frame.
  • next frame is a CELP frame and is decoded by the CELP decoder 103 at a step 320.
  • the additional segment synthesized in step 316 is not used and can be deleted. the memory 107.
  • next frame is an MDCT frame or a transition frame
  • it is decoded by the MDCT decoder 104 in a step 322.
  • the additional digital signal segment stored in the memory 107 is retrieved at a step 323 by the management unit 108 and transmitted to the decoding unit 105.
  • the additional signal segment obtained makes it possible to carry out an overlay by the unit 103 in order to correctly decode the first part of the next MDCT frame at a step 324.
  • the additional segment is a sub-frame half
  • a linear gain between 0 and 1 may be applied during the overlap over the first half of the MDCT frame and a gain linear between 1 and 0 is applied to the additional signal segment.
  • MDCT decoding can give rise to discontinuities due to quantization errors.
  • the digital signal obtained after overlap is transmitted at the output of the decoder at a step 325.
  • the invention provides, on loss of a current frame following a previous CELP frame, the generation of an additional segment in addition to a replacement frame.
  • an additional segment is not used.
  • its calculation does not induce any additional complexity insofar as the coding parameters of the previous frame are reused.
  • the next frame is an MDCT frame or a transition frame with a CELP subframe at a core frequency different from the core frequency used for encoding the previous CELP frame
  • the additional signal segment generated and stored allows the decoding of the next frame, which was not allowed by the solutions of the prior art.
  • the figure 4 represents an example of a computing device 400 that can be integrated in the CELP encoder 103 and in the MDCT encoder 104.
  • the device 400 comprises a random access memory 404 and a processor 403 for storing instructions allowing the implementation of steps of the method described above (implemented by the CELP encoder 103 or by the MDCT encoder 104).
  • the device also comprises a mass memory 405 for storing data intended to be stored after the application of the method.
  • the device 400 further comprises an input interface 401 and an output interface 406 respectively for receiving the frames of the digital signal and transmitting the decoded signal frames.
  • the device 400 may further comprise a digital signal processor (DSP) 402.
  • DSP digital signal processor
  • This DSP 402 receives the digital signal frames for shaping, demodulating and amplifying, in a manner known per se, these frames.
  • a set-top box can be embedded in any type of larger device such as a mobile phone, a computer, etc.

Landscapes

  • Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • Computational Linguistics (AREA)
  • Signal Processing (AREA)
  • Health & Medical Sciences (AREA)
  • Audiology, Speech & Language Pathology (AREA)
  • Human Computer Interaction (AREA)
  • Acoustics & Sound (AREA)
  • Multimedia (AREA)
  • Spectroscopy & Molecular Physics (AREA)
  • Compression, Expansion, Code Conversion, And Decoders (AREA)

Description

La présente invention concerne le domaine du codage/décodage des signaux numériques en particulier pour la correction de perte de trame.The present invention relates to the field of coding / decoding of digital signals in particular for the loss of frame correction.

L'invention s'applique avantageusement au codage/décodage de sons pouvant contenir de la parole et de la musique mélangés ou en alternance.The invention is advantageously applied to the coding / decoding of sounds that can contain speech and music mixed or alternately.

Pour coder efficacement les sons de parole à bas débit, les techniques de type CELP (« Code Excited Linear Prediction ») sont préconisées. Pour coder efficacement les sons musicaux, on préconise plutôt les techniques de codage par transformée.To effectively code low-speed speech sounds, CELP ( Code Excited Linear Prediction ) techniques are recommended. To effectively encode musical sounds, transform coding techniques are preferred.

Les codeurs de type CELP sont des codeurs prédictifs. Ils ont pour but de modéliser la production de la parole à partir de divers éléments : une prédiction linéaire à court-terme pour modéliser le conduit vocal, une prédiction à long-terme pour modéliser la vibration des cordes vocales en période voisée, et une excitation dérivée d'un dictionnaire fixe (bruit blanc, excitation algébrique) pour représenter l' "innovation" qui n'a pas pu être modélisée.CELP coders are predictive coders. They aim to model the production of speech from various elements: a short-term linear prediction to model the vocal tract, a long-term prediction to model the vibration of vocal cords in voiced period, and an excitation derived from a fixed dictionary (white noise, algebraic excitation) to represent the "innovation" which could not be modeled.

Les codeurs par transformée tels que MPEG AAC, AAC-LD, AAC-ELD ou ITU-T G.722.1 Annexe C utilisent des transformées à échantillonnage critique afin de compacter le signal dans le domaine transformé. On appelle « transformée à échantillonnage critique », une transformée pour laquelle le nombre de coefficients dans le domaine transformé est égal au nombre d'échantillons temporels dans chaque trame analysée.Transform coders such as MPEG AAC, AAC-LD, AAC-ELD or ITU-T G.722.1 Annex C use critical-sampling transforms to compact the signal in the transformed domain. A "critical-sampling transform" is a transform for which the number of coefficients in the transformed domain is equal to the number of time samples in each frame analyzed.

Une solution pour coder efficacement un signal de contenu mixte parole/musique consiste à sélectionner au cours du temps la meilleure technique entre au moins deux modes de codage, l'un de type CELP, l'autre de type transformée.One solution for efficiently coding a mixed speech / music content signal consists in selecting, over time, the best technique between at least two coding modes, one of the CELP type, the other of the transformed type.

C'est le cas par exemple des codecs 3GPP AMR-WB + et MPEG USAC (pour "Unified Speech Audio Coding" en anglais). Les applications visées par AMR-WB+ et USAC ne sont pas conversationnelles, mais correspondent à des services de diffusion et stockage, sans contraintes fortes sur le retard algorithmique.This is the case, for example, of the 3GPP AMR-WB + and MPEG USAC codecs (for "Unified Speech Audio Coding" ). The applications targeted by AMR-WB + and USAC are not conversational, but correspond to broadcasting and storage services, without strong constraints on the algorithmic delay.

La version initiale du codec USAC, appelée RMO (Reference Model 0), est décrite dans l'article de M. Neuendorf et al., A Novel Scheme for Low Bitrate Unified Speech and Audio Coding - MPEG RM0, 7-10 May 2009, 126th AES Conventi on. Ce codec RMO alterne entre plusieurs modes de codage:

  • Pour les signaux de type parole: modes LPD (pour "Linear Prédictive Domain" en anglais) comprenant deux modes différents dérivés du codage AMR-WB+:
    • Un mode ACELP
    • Un mode TCX (pour « Transform Coded eXcitation » en anglais) appelé wLPT (pour "weighted Linear Prédictive Transform" en anglais) utilisant une transformée de type MDCT (contrairement au codec AMR-WB+) qui utilise une transformée FFT.
  • Pour les signaux de type musique: mode FD (pour "Frequency Domain" en anglais) utilisant un codage par transformée MDCT (pour "Modified Discrete Cosine Transform" en anglais) de type MPEG AAC (pour "Advanced Audio Coding" en anglais) sur 1024 échantillons.
The initial version of the USAC codec, called Reference Model 0 (RMO), is described in the M. Neuendorf et al., A Novel Scheme for Low Bitrate Unified Speech and Audio Coding - MPEG RM0, 7-10 May 2009, 126th AES Conventi we. This RMO codec alternates between several encoding modes:
  • For speech type signals: LPD (for Linear Predictive Domain ) modes comprising two different modes derived from the AMR-WB + coding:
    • ACELP mode
    • A mode TCX (for " Transform Coded eXcitation " in English) called wLPT (for "weighted Linear Predictive Transform" in English) using an MDCT type transform (unlike the AMR-WB + codec) that uses an FFT transform.
  • For music type signals: FD mode (for "Frequency Domain" in English) using a transform coding MDCT (for "Modified Discrete Cosine Transform" in English) MPEG AAC type (for "Advanced Audio Coding" in English) on 1024 samples.

Dans le codec USAC, les transitions entre modes LPD et FD sont cruciales pour assurer une qualité suffisante sans défaut de commutation, sachant que chaque mode (ACELP, TCX, FD) a une "signature" spécifique (en termes d'artefacts) et que les modes FD et LPD sont de nature différentes - le mode FD repose sur un codage par transformée dans le domaine du signal, tandis que les modes LPD utilisent un codage linéaire prédictif dans le domaine perceptuellement pondéré avec des mémoires de filtre à gérer correctement. La gestion des commutations intermodes dans le codec USAC RMO est détaillée dans l'article de J. Lecomte et al., "Efficient cross-fade windows for transitions between LPC-based and non-LPC based audio coding", 7-10 May 2009, 126th AES Conventi on. Comme expliqué dans cet article, la difficulté principale réside dans les transitions entre modes LPD vers FD et vice versa. On ne retient ici que le cas des transitions d'ACELP vers FD.In the USAC codec, the transitions between LPD and FD modes are crucial to ensure sufficient quality without switching faults, knowing that each mode (ACELP, TCX, FD) has a specific "signature" (in terms of artifacts) and that the FD and LPD modes are different in nature - the FD mode is based on transform coding in the signal domain, while the LPD modes use predictive linear coding in the perceptually weighted domain with filter memories to be handled correctly. The management of intermode switches in the USAC RMO codec is detailed in the article of J. Lecomte et al., "Efficient cross-fade windows for transitions between LPC-based and non-LPC based audio coding", 7-10 May 2009, 126th AES Conventi we. As explained in this article, the main difficulty lies in the transitions between LPD to FD modes and vice versa. We retain here only the case of transitions from ACELP to FD.

Pour bien en comprendre le fonctionnement, on rappelle ici le principe du codage par transformée MDCT au travers d'un exemple typique de réalisation.In order to understand how it works, the principle of transform coding MDCT is described here through a typical embodiment.

Au codeur la transformation MDCT se divise typiquement entre trois étapes, le signal étant découpé en trames de M échantillons avant codage MDCT:

  • Pondération du signal par une fenêtre appelé ici "fenêtre MDCT" de longueur 2M ;
  • Repliement temporel (ou "time-domain aliasing" en anglais) pour former un bloc de longueur M ;
  • Transformation DCT (pour "Discrete Cosine Transform" en anglais) de longueur M.
At the coder, the MDCT transformation is typically divided into three steps, the signal being cut into frames of M samples before MDCT coding:
  • Weighting of the signal by a window called here "MDCT window" of length 2M;
  • Time folding (or "time-domain aliasing" in English) to form a block of length M;
  • Transformation DCT (for "Discrete Cosine Transform" in English) of length M.

La fenêtre MDCT est divisée en 4 portions adjacentes de longueurs égales M/2, appelées ici "quarts".The MDCT window is divided into 4 adjacent portions of equal lengths M / 2, here called "quarters".

Le signal est multiplié par la fenêtre d'analyse puis les repliements sont effectués : le premier quart (fenêtré) est replié (c'est-à-dire inversé dans le temps et mis en recouvrement) sur le deuxième quart et le quatrième quart est replié sur le troisième.The signal is multiplied by the analysis window and folds are made: the first quarter (windowed) is folded (ie inverted in time and overlapped) on the second quarter and the fourth quarter is folded on the third.

Plus précisément, le repliement temporel d'un quart sur un autre est effectué de la façon suivante : le premier échantillon du premier quart est additionné (ou soustrait) au dernier échantillon du deuxième quart, le deuxième échantillon du premier quart est additionné (ou soustrait) à l'avant-dernier échantillon du deuxième quart, et ainsi de suite jusqu'au dernier échantillon du premier quart qui est additionné (ou soustrait) au premier échantillon du deuxième quart.More precisely, the temporal folding from one quarter to another is done in the following way: the first sample of the first quarter is added (or subtracted) to the last sample of the second quarter, the second sample of the first quarter is added (or subtracted ) to the second-last sample in the second quarter, and so on until the last sample in the first quarter that is added (or subtracted) to the first sample in the second quarter.

On obtient donc, à partir de 4 quarts, 2 quarts repliés où chaque échantillon est le résultat d'une combinaison linéaire de 2 échantillons du signal à coder. Cette combinaison linéaire induit un repliement temporel.We thus obtain, from 4 quarters, 2 folded quarters where each sample is the result of a linear combination of 2 samples of the signal to be coded. This linear combination induces a temporal folding.

Les 2 quarts repliés sont ensuite codés conjointement après transformation DCT (de type IV). Pour la trame suivante on se décale d'une moitié de fenêtre (soit 50% de recouvrement), les troisième et quatrième quarts de la trame précédente deviennent alors les premier et deuxième quarts de la trame courante. Après repliement, on envoie une deuxième combinaison linéaire des mêmes paires d'échantillons comme dans la trame précédente, mais avec des poids différents.The folded two quarters are then coded together after DCT (Type IV) transformation. For the next frame we shift one half of window (or 50% overlap), the third and fourth quarters of the previous frame then become the first and second quarters of the current frame. After folding, we send a second linear combination of the same pairs of samples as in the previous frame, but with different weights.

Au décodeur, après transformation DCT inverse on obtient donc la version décodée de ces signaux repliés. Deux trames consécutives contiennent le résultat de 2 repliements différents des mêmes quarts, c'est à dire pour chaque paire d'échantillons on a le résultat de 2 combinaisons linéaires avec des poids différents mais connus : un système d'équation est donc résolu pour obtenir la version décodée du signal d'entrée, le repliement temporel peut être ainsi supprimé en utilisant 2 trames décodées consécutives.At the decoder, after inverse DCT transformation, the decoded version of these folded signals is thus obtained. Two consecutive frames contain the result of 2 different folds of the same quarters, that is to say for each pair of samples one has the result of 2 linear combinations with different but known weights: an equation system is thus solved to obtain the decoded version of the input signal, the time folding can be thus removed using 2 consecutive decoded frames.

La résolution des systèmes d'équations mentionnées peut en général être faite implicitement par dépliement, multiplication par une fenêtre de synthèse judicieusement choisie puis addition-recouvrement des parties communes. Cette addition-recouvrement assure en même temps la transition douce (sans discontinuité due aux erreurs de quantification) entre 2 trames décodées consécutives, en effet cette opération se comporte comme un fondu enchaîné. Quand la fenêtre pour le premier quart ou le quatrième quart est à zéro pour chaque échantillon, on parle d'une transformation MDCT sans repliement temporel dans cette partie de la fenêtre. Dans ce cas la transition douce n'est pas assurée par la transformation MDCT, elle doit être faite par d'autres moyens comme par exemple un fondu enchaîné extérieur.The resolution of the systems of equations mentioned can in general be made implicitly by unfolding, multiplication by a wisely chosen synthesis window then addition-recovery of the common parts. This overlap addition ensures at the same time the smooth transition (without discontinuity due to quantization errors) between two consecutive decoded frames, in fact this operation behaves like a crossfade. When the window for the first quarter or fourth quarter is zero for each sample, we are talking about an MDCT transformation without time folding in this part of the window. In this case the smooth transition is not ensured by the MDCT transformation, it must be done by other means such as for example an external crossfade.

Il est à noter que des variantes de mise en oeuvre de la transformation MDCT existent, en particulier sur la définition de la transformée DCT, sur la façon de replier temporellement le bloc à transformer (par exemple, on peut inverser les signes appliqués aux quarts repliés à gauche et droite, ou replier les deuxième et troisième quart sur respectivement les premiers et quatrième quarts), etc. Ces variantes ne changent pas le principe de l'analyse-synthèse MDCT avec la réduction du bloc d'échantillons par fenêtrage, repliement temporel puis transformation et enfin fenêtrage, repliement et addition-recouvrement.It should be noted that implementation variants of the MDCT transformation exist, in particular on the definition of the DCT transform, on how to fold the block to be transformed temporarily (for example, the signs applied to the folded quarters can be reversed). left and right, or fold the second and third quarter over the first and fourth quarters respectively), etc. These variants do not change the principle of the MDCT analysis-synthesis with the reduction of the sample block by windowing, temporal folding then transformation and finally windowing, folding and addition-recovery.

Afin d'éviter les artefacts au moment des transitions entre le codage de type CELP et le codage de type MDCT, la demande de brevet internationale WO2012/085451 , dont le contenu est incorporé par référence à la présente demande, propose une méthode pour coder une trame de transition. La trame de transition est définie comme la trame courante codée par transformée qui succède à une trame précédente codée par un codage prédictif. Selon la nouvelle méthode précitée, une partie de la trame de transition, par exemple une sous trame de 5 ms, dans le cas d'un codage coeur CELP à 12.8 kHz, et deux trames CELP supplémentaires de 4ms chacune, dans le cas d'un codage coeur CELP à 16 kHz, sont codées par un codage prédictif restreint par rapport au codage prédictif de la trame précédente.In order to avoid artifacts at the time of transitions between CELP type coding and MDCT coding, the international patent application WO2012 / 085451 , the contents of which are incorporated by reference in the present application, proposes a method for encoding a transition frame. The transition frame is defined as the transform-encoded current frame that succeeds a previous frame encoded by predictive coding. According to the new method mentioned above, a part of the transition frame, for example a subframe of 5 ms, in the case of a CELP core coding at 12.8 kHz, and two additional CELP frames of 4 ms each, in the case of a CELP core coding at 16 kHz, are coded by a predictive coding restricted with respect to the predictive coding of the previous frame.

Le codage prédictif restreint consiste à utiliser les paramètres stables de la trame précédente codée par un codage prédictif, comme par exemple les coefficients du filtre de prédiction linéaire et de ne coder que quelques paramètres minimaux pour la sous-trame supplémentaire dans la trame de transition.Restricted predictive coding consists in using the stable parameters of the preceding frame coded by a predictive coding, such as the coefficients of the linear prediction filter and coding only a few minimum parameters for the additional subframe in the transition frame.

Comme la trame précédente n'a pas été codée avec un codage par transformée, l'annulation du repliement temporel dans la première partie de la trame est impossible. La demande de brevet WO2012/085451 précitée propose en outre de modifier la première moitié de la fenêtre MDCT de manière à ne pas avoir de repliement temporel dans le premier quart normalement replié. Il est aussi proposé d'intégrer une partie de l'addition-recouvrement (aussi appelé « fondu enchaîné » ou encore « overlap-add » en anglais) entre la trame CELP décodée et la trame MDCT décodée en modifiant les coefficients de la fenêtre d'analyse/synthèse. En référence à la figure 4e de la demande précitée, les traits mixtes (lignes alternant des points et traits) correspondent aux lignes de repliement de codage MDCT (figure du haut) et aux lignes de dépliement de décodage MDCT (figure du bas). Sur la figure du haut, les lignes en gras séparent les trames de nouveaux échantillons à l'entrée du codeur. Le codage d'une nouvelle trame MDCT peut être commencé quand une trame ainsi définie de nouveaux échantillons d'entrée est entièrement disponible. Il est important de remarquer que ces lignes en gras au codeur ne correspondent pas à la trame courante mais au bloc de nouveaux échantillons arrivant pour chaque trame : la trame courante est en fait retardée de 5 ms qui correspondent à une anticipation, dénommée « lookahead » en anglais. Sur la figure du bas, les lignes en gras séparent les trames décodées à la sortie du décodeur.Since the previous frame has not been coded with transform coding, the cancellation of the temporal folding in the first part of the frame is impossible. The patent application WO2012 / 085451 Moreover, it is proposed to modify the first half of the MDCT window so as not to have time folding in the first quarter normally folded. It is also proposed to integrate a part of the addition-overlap (also called "fade-in" or " overlap-add " in English) between the decoded CELP frame and the decoded MDCT frame by modifying the coefficients of the window. analysis / synthesis. With reference to the figure 4e of the aforementioned application, the mixed lines (lines alternating points and lines) correspond to the MDCT coding folding lines (top figure) and the MDCT decoding unfolding lines (bottom figure). In the figure above, the bold lines separate the frames of new samples at the input of the encoder. The coding of a new MDCT frame can be started when a so-defined frame of new input samples is fully available. It is important to note that these lines in bold at the coder do not correspond to the current frame but to the block of new samples arriving for each frame: the current frame is in fact delayed by 5 ms which correspond to an anticipation, called " lookahead " in English. In the bottom figure, the bold lines separate the decoded frames at the output of the decoder.

Au codeur, la fenêtre de transition est nulle jusqu'au point de repliement. Ainsi les coefficients de la partie gauche de la fenêtre repliée seront identiques à ceux de la fenêtre non repliée. La partie entre le point de repliement et la fin de la sous-trame CELP de transition (TR) correspond à une (demi-) fenêtre sinusoïdale. Au décodeur, après dépliement, la même fenêtre est appliquée au signal. Sur le segment entre le point de repliement et le début de la trame MDCT, les coefficients de la fenêtre correspondent à une fenêtre de forme sin2. Pour assurer l' addition-recouvrement entre la sous trame CELP décodée et le signal issu de la MDCT, il suffit d'appliquer une fenêtre de type cos2 à la partie de la sous-trame CELP en recouvrement et de sommer cette dernière avec la trame MDCT. La méthode est à reconstruction parfaite.At the encoder, the transition window is zero to the point of folding. Thus the coefficients of the left part of the folded window will be identical to those of the unfolded window. The portion between the folding point and the end of the CELP transition subframe (TR) corresponds to a (half) sinusoidal window. At the decoder, after unfolding, the same window is applied to the signal. On the segment between the folding point and the beginning of the MDCT frame, the coefficients of the window correspond to a window of form sin 2 . To ensure the overlap-addition between the decoded subframe CELP and the signal from the MDCT, it suffices to apply a window of cos 2 type to the part of the subframe CELP in overlap and to summon the latter with the MDCT frame. The method is perfect reconstruction.

Toutefois, des trames de signal audio codé peuvent être perdues sur le canal entre le codeur et le décodeur.However, coded audio signal frames may be lost on the channel between the encoder and the decoder.

Les techniques de correction de perte de trames existantes sont les plus souvent très dépendantes du type de codage utilisé. Un exemple est proposé dans US2014/0019142 A1 . Dans le cas du codage de la parole basé sur des technologies prédictives, de type CELP par exemple, la correction de perte de trame est souvent liée au modèle de parole. Par exemple, la norme G.722.2 de l'ITU-T, dans sa version de juillet 2003, propose de remplacer un paquet perdu en prolongeant le gain de prédiction à long terme en l'atténuant, et en prolongeant les fréquences de lignes spectrales (ISF en anglais pour « Immitance Spectral Frequencies »), représentant les coefficients A(z) du filtre LPC, en les faisant tendre vers leurs moyennes respectives. La période fondamentale (ou « pitch ») est aussi répétée. La contribution du dictionnaire fixe est quant à elle remplie avec des valeurs aléatoires. L'application de telles méthodes pour des décodeurs par transformée ou PCM nécessiterait une analyse de type CELP au niveau du décodeur, ce qui introduirait une complexité supplémentaire significative. On notera également que des méthodes plus avancées de correction de perte de trame lors d'un décodage CELP sont décrites dans la norme UIT-T G.718 pour les débits de 8 et 12 kbit/s ainsi qu'aux débits de décodage interopérable avec AMR-WB.The techniques of correction of loss of existing frames are most often very dependent on the type of coding used. An example is proposed in US2014 / 0019142 A1 . In the case of speech coding based on predictive technologies, such as CELP, the frame loss correction is often related to the speech model. For example, the ITU-T Standard G.722.2, as of July 2003, proposes to replace a lost packet by extending the long-term prediction gain by attenuating it, and by extending the spectral line frequencies (ISF in English). for " Immitance Spectral Frequencies "), representing the coefficients A (z) of the LPC filter, making them tend towards their respective averages. The fundamental period (or "pitch") is also repeated. The contribution of the fixed dictionary is filled with random values. Applying such methods for transform or PCM decoders would require CELP analysis at the decoder, which would introduce significant additional complexity. It should also be noted that more advanced methods of frame loss correction during CELP decoding are described in ITU-T G.718 for both 8 and 12 kbit / s rates as well as interoperable decoding rates with AMR-WB.

Une autre solution est présentée dans la norme G.711 de l'ITU-T, qui décrit un codeur par transformée pour lequel l'algorithme de correction de perte de trame, traité dans la partie « Appendix I » consiste à trouver un délai tonal (une période fondamentale) dans le signal déjà décodé et à le répéter en appliquant une addition-recouvrement entre le signal déjà décodé et le signal répété. Cette addition avec recouvrement permet de gommer les artefacts audio mais nécessite un délai supplémentaire au décodeur (correspondant à la durée de l'addition-recouvrement) pour être mise en oeuvre.Another solution is presented in the ITU-T G.711 standard, which describes a transform coder for which the frame loss correction algorithm, treated in the "Appendix I" part, consists in finding a tonal delay. (a fundamental period) in the already decoded signal and to repeat it by applying an overlap between the already decoded signal and the repeated signal. This overlapping addition erases the audio artifacts but requires additional delay to the decoder (corresponding to the duration of the overlap-addition) to be implemented.

Dans le cas d'un codage par transformée, une technique répandue pour corriger une perte de trame consiste à répéter la dernière trame reçue. Une telle technique est mise en oeuvre dans plusieurs codeurs/décodeurs normalisés (G.719, G.722.1 et G.722.1C notamment). Par exemple, dans le cas du décodeur G.722.1, une transformée MLT (pour « Modulated Lapped Transform » en anglais), équivalente à une transformée MDCT, avec un recouvrement de 50% et une fenêtre de forme sinusoïdale, permet d'assurer une transition suffisamment lente entre la dernière trame perdue et la trame répétée pour gommer les artefacts liés à la simple répétition de la trame.In the case of transform coding, a common technique for correcting a frame loss is to repeat the last frame received. Such a technique is implemented in several standardized coders / decoders (G.719, G.722.1 and G.722.1C in particular). For example, in the case of the G.722.1 decoder, an MLT transform (for " Modulated Lapped Transform "), equivalent to an MDCT transform, with a 50% overlap and a sinusoidal window, makes it possible to ensure slow enough transition between the last lost frame and the repeated frame to erase the artifacts related to the simple repetition of the frame.

Une telle technique est peu coûteuse mais a comme principal défaut l'incohérence entre le signal juste avant la perte de trame et le signal répété. Il en résulte une discontinuité de phase qui peut introduire des artefacts audio importants si la durée de recouvrement entre les deux trames est faible, comme tel est le cas lorsque les fenêtres utilisées pour la transformée MLT sont des fenêtres dites à faible retard.Such a technique is inexpensive but its main defect is the inconsistency between the signal just before the loss of frame and the repeated signal. This results in a phase discontinuity that can introduce important audio artifacts if the overlap time between the two frames is low, as is the case when the windows used for the MLT are so-called low delay windows.

Au niveau du décodeur, selon les techniques existantes, lorsqu'une trame est manquante, une trame de remplacement est générée en utilisant un algorithme de masquage de paquet perdu PLC adapté (pour « Packet Loss Concealment » en anglais). On notera qu'en général un paquet peut contenir plusieurs trames, ainsi le terme PLC peut être ambigu, et il est ici repris pour indiquer la correction de la trame courante perdue. Par exemple, à la suite d'une trame CELP correctement reçue et décodée, si la trame suivante est perdue, une trame de remplacement basée sur un PLC adapté au codage CELP est utilisée, en exploitant les mémoires du codeur CELP. A la suite d'une trame MDCT correctement reçue et décodée, si la trame suivante est perdue, une trame de remplacement basée sur un PLC adapté au codage MDCT est générée.At the decoder level, according to the existing techniques, when a frame is missing, a replacement frame is generated by using a suitable packet loss masking algorithm (for " Packet Loss Concealment "). Note that in general a packet may contain several frames, so the term PLC may be ambiguous, and it is here taken to indicate the correction of the current frame lost. For example, following a correctly received and decoded CELP frame, if the next frame is lost, a PLC-based replacement frame adapted to CELP encoding is used, exploiting the CELP encoder memories. Following a MDCT frame correctly received and decoded, if the next frame is lost, a replacement frame based on a PLC adapted to the MDCT encoding is generated.

Dans le contexte de la transition entre trames CELP et MDCT, et en considérant que la trame de transition est composée d'une sous-trame CELP (qui est à la même fréquence d'échantillonnage que la trame CELP directement précédente) et d'une trame MDCT comportant une fenêtre MDCT modifiée annulant le repliement « à gauche », il existe des situations pour lesquelles les techniques existantes n'apportent aucune solution.In the context of the transition between CELP and MDCT frames, and considering that the transition frame is composed of a CELP subframe (which is at the same sampling rate as the previous CELP frame) and a MDCT frame with a modified MDCT window canceling the folding "left", there are situations for which existing techniques provide no solution.

Dans une première situation, une trame CELP précédente a été correctement reçue et décodée, une trame courante de transition est perdue et la trame suivante est une trame MDCT. Dans ce cas, l'algorithme de PLC, après la réception de la trame CELP, ne sait pas que la trame perdue est une trame de transition et génère par conséquent une trame CELP de remplacement. Ainsi, tel que précédemment expliqué, la première partie repliée de la trame suivante MDCT ne peut pas être compensée et le délai entre les deux types de codeur ne peut pas être comblé avec la sous-trame CELP contenue dans la trame de transition (qui est perdue avec la trame de transition). Aucune solution connue ne propose de traiter cette situation.In a first situation, a previous CELP frame has been correctly received and decoded, a current transition frame is lost, and the next frame is an MDCT frame. In this case, the PLC algorithm, after receiving the CELP frame, does not know that the lost frame is a transition frame and therefore generates a replacement CELP frame. Thus, as previously explained, the first folded portion of the next MDCT frame can not be compensated and the delay between the two types of encoder can not be bridged with the CELP subframe contained in the transition frame (which is lost with the transition frame). There is no known solution to deal with this situation.

Dans une deuxième situation, une trame précédente CELP à 12,8 kHz est correctement reçue et décodée, une trame CELP courante à 16 kHz est perdue, et la trame suivante est une trame de transition. L'algorithme de PLC génère alors une trame CELP à la fréquence de la dernière trame correctement reçue, soit 12,8 kHz, et la sous-trame CELP de transition (codée partiellement à partir de paramètres CELP de la trame CELP à 16 kHz perdue) ne peut pas être décodée.In a second situation, a previous CELP frame at 12.8 kHz is correctly received and decoded, a current CELP frame at 16 kHz is lost, and the next frame is a transition frame. The PLC algorithm then generates a CELP frame at the frequency of the last correctly received frame, ie 12.8 kHz, and the CELP transition subframe (partially coded from CELP parameters of the 16 kHz CELP frame lost ) can not be decoded.

La présente invention vient améliorer cette situation.The present invention improves this situation.

A cet effet, un premier aspect de l'invention concerne un procédé de décodage d'un signal numérique codé selon un codage prédictif et selon un codage par transformée, comprenant les étapes suivantes :

  • décodage prédictif d'une trame précédente du signal numérique, codée par un ensemble de paramètres de codage prédictif ;
  • détection de la perte d'une trame courante du signal numérique codé;
  • génération par prédiction, à partir d'au moins un paramètre de codage prédictif codant la trame précédente, d'une trame de remplacement de la trame courante ;
  • génération par prédiction, à partir d'au moins un paramètre de codage prédictif codant la trame précédente, d'un segment supplémentaire de signal numérique ;
  • stockage temporaire de ce segment supplémentaire de signal numérique.
For this purpose, a first aspect of the invention relates to a method for decoding a coded digital signal according to a predictive coding and according to a transform coding, comprising the following steps:
  • predictive decoding of a previous frame of the digital signal, encoded by a set of predictive coding parameters;
  • detecting the loss of a current frame of the encoded digital signal;
  • generating by prediction, from at least one predictive coding parameter encoding the previous frame, a replacement frame of the current frame;
  • generating by prediction, from at least one predictive coding parameter coding the preceding frame, an additional segment of digital signal;
  • temporary storage of this additional segment of digital signal.

Ainsi, un segment supplémentaire de signal numérique est disponible à chaque fois qu'une trame CELP de remplacement est générée. Le décodage prédictif de la trame précédente englobe le décodage prédictif d'une trame CELP correctement reçue ou la génération d'une trame CELP de remplacement par un algorithme de PLC adapté au CELP.Thus, an additional segment of digital signal is available each time a replacement CELP frame is generated. The predictive decoding of the previous frame includes the predictive decoding of a correctly received CELP frame or the generation of a replacement CELP frame by a CELP-adapted PLC algorithm.

D'une part, ce segment supplémentaire rend possible une transition entre un codage CELP et un codage par transformée, même dans le cas d'une perte de trame.On the one hand, this additional segment makes possible a transition between a CELP coding and a transform coding, even in the case of a frame loss.

En effet, dans la première situation décrite ci-dessus, la transition avec la trame MDCT suivante peut être assurée par le segment supplémentaire. Comme cela est décrit ci-après, le segment supplémentaire peut être ajouté à la trame MDCT suivante pour compenser la première partie repliée de cette trame MDCT grâce à un fondu enchaîné sur la zone contenant le repliement temporel non annulé.Indeed, in the first situation described above, the transition with the next MDCT frame can be provided by the additional segment. As described below, the additional segment may be added to the next MDCT frame to compensate for the first folded portion of this MDCT frame by cross-fading the area containing the non-canceled time folding.

Dans la deuxième situation décrite ci-dessus, le décodage de la trame de transition est rendu possible par l'utilisation du segment supplémentaire. En effet, s'il n'est pas possible décoder la sous-trame CELP de transition (indisponibilité des paramètres CELP de la trame précédente codée à 16 kHz), il est possible de la remplacer par le segment supplémentaire comme cela est décrit ci-après.In the second situation described above, the decoding of the transition frame is made possible by the use of the additional segment. Indeed, if it is not possible to decode the transition CELP subframe (unavailability of CELP parameters of the previous frame coded at 16 kHz), it is possible to replace it with the additional segment as described above. after.

D'autre part, les calculs relatifs à la gestion de la perte de trame et à la transition sont répartis dans le temps. En effet, le segment supplémentaire est généré puis stocké pour chaque trame CELP de remplacement générée. Le segment de transition est donc généré dès qu'une perte de trame est détectée, sans attendre qu'une transition soit ultérieurement détectée. La transition est donc anticipée à chaque perte de trame, ce qui évite d'avoir à gérer un « pic de complexité » au moment où une nouvelle trame correcte est reçue et décodée.On the other hand, the calculations relating to the management of the frame loss and the transition are distributed over time. Indeed, the additional segment is generated and stored for each generated replacement CELP frame. The transition segment is therefore generated as soon as a frame loss is detected, without waiting for a transition to be subsequently detected. The transition is therefore anticipated at each frame loss, which avoids having to manage a "complexity peak" at the moment when a new correct frame is received and decoded.

Dans un mode de réalisation, le procédé comporte en outre les étapes suivantes :

  • réception d'une trame suivante de signal numérique codé comprenant au moins un segment codé par transformée ; et
  • décodage de la trame suivante comprenant une sous-étape d'addition avec recouvrement entre le segment supplémentaire de signal numérique et le segment codé par transformée. La sous-étape d'addition avec recouvrement rend possible un fondu-enchaîné du signal de sortie. Un tel fondu-enchaîné limite l'apparition d'artefacts sonores (par exemple de type « bruit métallique ») et assure une cohérence énergétique du signal.
In one embodiment, the method further comprises the following steps:
  • receiving a next coded digital signal frame comprising at least one transform coded segment; and
  • decoding the next frame comprising an overlap adding sub-step between the additional digital signal segment and the transform coded segment. The overlapping addition sub-step makes it possible to cross-fade the output signal. Such a fade-out limits the appearance of sound artifacts (for example of the "metallic noise" type) and ensures an energy coherence of the signal.

Dans un autre mode de réalisation, la trame suivante est entièrement codée selon un codage par transformée et la trame courante perdue est une trame de transition entre la trame précédente codée selon un codage prédictif et la trame suivante codée selon un codage par transformée.In another embodiment, the next frame is fully coded according to transform coding and the lost current frame is a transition frame between the predecessor coded predictive coding frame and the transform coded next frame.

Dans une variante, la trame précédente est codée selon un codage prédictif par un coeur de codeur prédictif fonctionnant à une première fréquence. Dans cette variante, la trame suivante est une trame de transition comprenant au moins une sous-trame codée selon un codage prédictif par un coeur de codeur prédictif fonctionnant à une deuxième fréquence distincte de la première fréquence. A cet effet, la trame de transition suivante peut comprendre un bit indiquant la fréquence du coeur de codage prédictif utilisé.In a variant, the preceding frame is coded according to a predictive coding by a predictive coder core operating at a first frequency. In this variant, the following frame is a transition frame comprising at least one sub-frame coded according to a predictive coding by a predictive coding core operating at a second frequency distinct from the first frequency. For this purpose, the following transition frame may comprise a bit indicating the frequency of the predictive coding core used.

Ainsi, le type de codage CELP (12,8 ou 16 kHz) utilisé dans la sous-trame CELP de transition peut être indiqué dans le train binaire de la trame de transition. L'invention ainsi prévoit de rajouter une indication systématique (un bit) dans une trame de transition, afin de permettre la détection d'une différence de fréquence de codage/décodage CELP entre la sous-trame CELP de transition et la trame CELP précédente.Thus, the CELP encoding type (12.8 or 16 kHz) used in the transition CELP subframe can be indicated in the bitstream of the transition frame. The invention thus provides to add a systematic indication (one bit) in a transition frame, in order to allow the detection of a CELP coding / decoding frequency difference between the transition CELP subframe and the previous CELP frame.

Dans un autre mode de réalisation, l'addition avec recouvrement est donnée par application de la formule suivante mettant en oeuvre une pondération linéaire : S i = B i . i L / r + 1 i L / r . T i

Figure imgb0001
avec :

  • r est un coefficient représentatif de la longueur du segment supplémentaire généré ;
  • i un instant d'un échantillon de la trame suivante, compris entre 0 et L/r ;
  • L la longueur de la trame suivante ;
  • S(i) l'amplitude de la trame suivante après addition, pour l'échantillon i ;
  • B(i) l'amplitude du segment décodé par transformée, pour l'échantillon i ;
  • T(i) l'amplitude du segment supplémentaire de signal numérique, pour l'échantillon i. L'addition avec recouvrement peut donc être effectuée à partir de combinaisons linéaires et d'opérations simples à mettre en oeuvre. Le temps requis pour le décodage est ainsi réduit tout en sollicitant moins le ou les processeurs utilisés pour ces calculs. Dans des variantes, d'autres formes de fondu enchaîné pourront être mises en oeuvre sans changer le principe de l'invention.
In another embodiment, the overlap addition is given by applying the following formula implementing a linear weighting: S i = B i . i The / r + 1 - i The / r . T i
Figure imgb0001
with:
  • r is a coefficient representative of the length of the additional segment generated;
  • i a moment of a sample of the next frame, between 0 and L / r;
  • L the length of the next frame;
  • S (i) the amplitude of the next frame after addition, for sample i;
  • B (i) the amplitude of the transform decoded segment, for sample i;
  • T (i) the amplitude of the additional digital signal segment, for sample i. The overlap addition can therefore be performed from linear combinations and simple operations to implement. The time required for the decoding is thus reduced while requiring less the processor (s) used for these calculations. In variants, other forms of cross-fade can be implemented without changing the principle of the invention.

Dans un mode de réalisation, l'étape de génération par prédiction de la trame de remplacement comportant en outre une mise à jour de mémoires internes du décodeur, l'étape de génération par prédiction d'un segment supplémentaire de signal numérique peut comporter les sous-étapes suivantes :

  • copie dans une mémoire temporaire, des mémoires du décodeur mises à jour lors de l'étape de génération par prédiction de la trame de remplacement ;
  • génération du segment supplémentaire de signal numérique au moyen de la mémoire temporaire.
In one embodiment, the step of generating by prediction of the replacement frame further comprising an update of internal memories of the decoder, the step of generating by prediction of an additional segment of digital signal may comprise the sub-frames. -following steps :
  • copying into a temporary memory, decoder memories updated during the step of generating by prediction of the replacement frame;
  • generating the additional digital signal segment using the temporary memory.

Ainsi, les mémoires internes du décodeur ne sont pas mises à jour pour la génération du segment supplémentaire. Par conséquent, la génération du segment de signal supplémentaire n'impacte pas le décodage de la trame suivante, dans le cas éventuel où la trame suivante est une trame CELP.Thus, the internal memories of the decoder are not updated for the generation of the additional segment. Therefore, the generation of the additional signal segment does not impact the decoding of the next frame, in the event that the next frame is a CELP frame.

En effet, si la trame suivante est une trame CELP, les mémoires internes du décodeur doivent correspondre aux états du décodeur à l'issue de la trame de remplacement.Indeed, if the next frame is a CELP frame, the internal memories of the decoder must correspond to the states of the decoder at the end of the replacement frame.

Dans un mode de réalisation, l'étape de génération par prédiction d'un segment supplémentaire de signal numérique comporte les sous-étapes suivantes :

  • génération par prédiction d'une trame supplémentaire, à partir d'au moins un paramètre de codage prédictif codant la trame précédente ;
  • extraction d'un segment de la trame supplémentaire.
In one embodiment, the step of generating by prediction of an additional segment of digital signal comprises the following substeps:
  • generation by prediction of an additional frame, from at least one predictive coding parameter encoding the previous frame;
  • extraction of a segment of the additional frame.

Dans ce mode de réalisation, le segment supplémentaire de signal numérique correspond à la première moitié de la trame supplémentaire. Ainsi, l'efficacité du procédé est encore améliorée car les données temporaires de calcul utilisées pour la génération de la trame CELP de remplacement sont directement disponibles pour la génération de la trame CELP supplémentaire. Typiquement, les registres et mémoires caches, sur lesquels sont stockés les données temporaires de calcul, peuvent ne pas être mis à jour afin de réutiliser directement ces données pour la génération de la trame CELP supplémentaire.In this embodiment, the additional digital signal segment corresponds to the first half of the additional frame. Thus, the efficiency of the method is further improved because the temporary calculation data used for the generation of the replacement CELP frame is directly available for the generation of the additional CELP frame. Typically, the registers and caches, on which the temporary calculation data are stored, may not be updated in order to reuse these data directly for the generation of the additional CELP frame.

Un deuxième aspect de l'invention vise un programme informatique comportant des instructions pour la mise en oeuvre du procédé selon le premier aspect de l'invention, lorsque ces instructions sont exécutées par un processeur.A second aspect of the invention is directed to a computer program comprising instructions for implementing the method according to the first aspect of the invention, when these instructions are executed by a processor.

Un troisième aspect de l'invention vise un décodeur d'un signal numérique codé selon un codage prédictif et selon un codage par transformée, comprenant :

  • une unité de détection de la perte d'une trame courante du signal numérique ;
  • un décodeur prédictif comportant un processeur agencé pour effectuer les opérations suivantes :
    • * décodage prédictif d'une trame précédente du signal numérique, codée par un ensemble de paramètres de codage prédictif ;
    • * génération par prédiction, à partir d'au moins un paramètre de codage prédictif codant la trame précédente, d'une trame de remplacement de la trame courante ;
    • * génération par prédiction, à partir d'au moins un paramètre de codage prédictif codant la trame précédente, d'un segment supplémentaire de signal numérique ;
    • * stockage temporaire de ce segment supplémentaire de signal numérique dans une mémoire temporaire.
A third aspect of the invention provides a decoder of a coded digital signal according to a predictive coding and a transform coding, comprising:
  • a unit for detecting the loss of a current frame of the digital signal;
  • a predictive decoder comprising a processor arranged to perform the following operations:
    • predictive decoding of a previous frame of the digital signal coded by a set of predictive coding parameters;
    • generation by prediction, from at least one predictive coding parameter coding the preceding frame, of a replacement frame of the current frame;
    • generation by prediction, from at least one predictive coding parameter encoding the previous frame, of an additional segment of digital signal;
    • * Temporary storage of this additional segment of digital signal in a temporary memory.

Dans un mode de réalisation, le décodeur selon le troisième aspect de l'invention comprend en outre un décodeur par transformée comportant un processeur agencé pour effectuer les opérations suivantes :

  • * réception d'une trame suivante de signal numérique codé comprenant au moins un segment codé par transformée ; et
  • * décodage de la trame suivante comprenant une sous-étape d'addition avec recouvrement entre le segment supplémentaire de signal numérique et le segment codé par transformée.
In one embodiment, the decoder according to the third aspect of the invention further comprises a transform decoder comprising a processor arranged to perform the following operations:
  • receiving a next coded digital signal frame comprising at least one transform coded segment; and
  • decoding the next frame comprising an overlap adding sub-step between the additional digital signal segment and the transform coded segment.

Au niveau du codeur, l'invention peut comprendre l'insertion dans la trame de transition d'un bit d'information sur le coeur CELP employé pour le codage de la sous-trame de transition.At the encoder level, the invention may include inserting in the transition frame an information bit on the CELP core used for encoding the transition subframe.

D'autres caractéristiques et avantages de l'invention apparaîtront à l'examen de la description détaillée ci-après, et des dessins annexés sur lesquels:

  • la figure 1 illustre un décodeur audio selon un mode de réalisation de l'invention ;
  • la figure 2 illustre un décodeur CELP d'un décodeur audio, tel que le décodeur audio de la figure 1, selon un mode de réalisation de l'invention.
  • la figure 3 est un diagramme illustrant les étapes d'un procédé de décodage, mis en oeuvre par le décodeur audio de la figure 1, selon un mode de réalisation de l'invention ;
  • la figure 4 illustre un dispositif de calcul selon un mode de réalisation de l'invention.
Other features and advantages of the invention will appear on examining the detailed description below, and the attached drawings in which:
  • the figure 1 illustrates an audio decoder according to an embodiment of the invention;
  • the figure 2 illustrates a CELP decoder of an audio decoder, such as the decoder audio of the figure 1 according to one embodiment of the invention.
  • the figure 3 is a diagram illustrating the steps of a decoding method, implemented by the audio decoder of the figure 1 according to one embodiment of the invention;
  • the figure 4 illustrates a computing device according to one embodiment of the invention.

La figure 1 illustre un décodeur audio 100 selon un mode de réalisation de l'invention.The figure 1 illustrates an audio decoder 100 according to one embodiment of the invention.

Aucune structure de codeur audio n'est présentée. Toutefois, le signal audio numérique codé reçu par le décodeur selon l'invention peut être issu d'un codeur apte à coder un signal audio sous-forme de trames CELP, de trames MDCT et de trames de transition CELP/MDCT, tel que le codeur décrit dans la demande WO2012/085451 . A cet effet, une trame de transition, codée par transformée, peut comprendre en outre un segment (une sous-trame par exemple) codé par un codage prédictif. Le codeur peut en outre ajouter un bit dans la trame de transition pour identifier la fréquence du coeur CELP utilisé. L'exemple de codage CELP est donné à titre illustratif pour décrire tout type de codage prédictif. De même, l'exemple de codage MDCT est donné à titre illustratif pour décrire tout type de codage par transformée.No audio coder structure is presented. However, the coded digital audio signal received by the decoder according to the invention may be derived from an encoder able to encode an audio signal in the form of CELP frames, MDCT frames and CELP / MDCT transition frames, such as the encoder described in the application WO2012 / 085451 . For this purpose, a transition-coded transition frame may furthermore comprise a segment (a sub-frame for example) coded by a predictive coding. The encoder may further add a bit in the transition frame to identify the frequency of the CELP core used. The CELP coding example is given for illustrative purposes to describe any type of predictive coding. Similarly, the MDCT coding example is given for illustrative purposes to describe any type of transform coding.

Le décodeur 100 comprend une unité de réception 101 d'un signal audio numérique codé. Le signal numérique est codé sous forme de trames CELP, de trames MDCT et de trames de transition CELP/MDCT. Dans des variantes de l'invention, d'autres modes que les modes CELP et MDCT sont possibles, et d'autres combinaisons de modes sont donc envisageables, sans changer le principe de l'invention. Par ailleurs, le codage CELP pourra être remplacé par un autre type de codage prédictif, et le codage MDCT pourra être remplacé par un autre type de codage par transformée.The decoder 100 comprises a reception unit 101 of a coded digital audio signal. The digital signal is encoded as CELP frames, MDCT frames and CELP / MDCT transition frames. In variants of the invention, other modes than CELP and MDCT modes are possible, and other combinations of modes are possible, without changing the principle of the invention. In addition, the CELP coding may be replaced by another type of predictive coding, and the MDCT coding may be replaced by another type of transform coding.

Le décodeur 100 comprend en outre une unité de classification 102 apte à déterminer - en général par simple lecture du train binaire et interprétation des indications reçues du codeur - si une trame courante est une trame CELP, une trame MDCT, ou une trame de transition. En fonction de la classification de la trame courante, cette dernière peut être transmise à un décodeur CELP 103 ou à un décodeur MDCT 104 (ou au deux, dans le cas d'une trame de transition, la sous-trame CELP de transition étant transmise à une unité de décodage 105 décrite ci-après). De plus, dans le cas où la trame courante est une trame correcte (ou reçue) de transition et où le codage CELP peut fonctionner à au moins deux fréquences (12,8 et 16 kHz), l'unité de classification 102 pourra déterminer le type de codage CELP utilisé dans la sous-trame CELP supplémentaire - ce type de codage étant indiqué débit binaire en sortie du codeur.The decoder 100 further comprises a classification unit 102 capable of determining - generally by simple reading of the bitstream and interpretation of the indications received from the coder - whether a current frame is a CELP frame, an MDCT frame, or a transition frame. Depending on the classification of the current frame, the latter may be transmitted to a CELP decoder 103 or to an MDCT decoder 104 (or both, in the case of a transition frame, the transition CELP subframe being transmitted to a decoding unit 105 described below). Moreover, in the case where the current frame is a correct (or received) transition frame and where the CELP coding can operate at at least two frequencies (12.8 and 16 kHz), the classification unit 102 may determine the CELP encoding type used in the additional CELP subframe - this type of encoding is indicated as an output bit rate of the encoder.

Un exemple de structure de décodeur CELP 103 est représenté en référence à la figure 2 . An example of a decoder structure CELP 103 is shown with reference to FIG. figure 2 .

Une unité de réception 201, pouvant comprendre une fonction de démultiplexage, est apte à recevoir des paramètres de codage CELP de la trame courante. Ces paramètres peuvent comprendre des paramètres d'excitation (vecteurs de gain, vecteur de dictionnaire fixe, vecteur de dictionnaire adaptatif par exemple) transmis à une unité de décodage 202 apte à générer une excitation. En outre, les paramètres de codage CELP peuvent comprendre des coefficients LPC représentés sous forme de LSF ou d'ISF par exemple. Les coefficients LPC sont décodés par une unité de décodage 203 apte à fournir les coefficients LPC à un filtre LPC de synthèse 205.A reception unit 201, which may include a demultiplexing function, is able to receive CELP coding parameters of the current frame. These parameters can include excitation parameters (gain vectors, fixed dictionary vector, adaptive dictionary vector for example) transmitted to a decoding unit 202 capable of generating an excitation. In addition, the CELP coding parameters may comprise LPC coefficients represented in the form of LSF or ISF, for example. The LPC coefficients are decoded by a decoding unit 203 capable of supplying the LPC coefficients to a synthetic LPC filter 205.

Le filtre de synthèse 205, excité par l'excitation générée par l'unité 202, synthétise une trame (ou généralement une sous-trame) de signal numérique transmis à un filtre de dé-emphase ou désaccentuation 206 (fonction de la forme 1/(1-αz-1) avec par exemple a=0.68). En sortie du filtre de dé-emphase, le décodeur CELP 103 peut comprendre un post-traitement des basses fréquences 207 (ou « bass-post filter » en anglais) similaire à celui décrit dans la norme UIT-T G.718. Le décodeur CELP 103 comprend en outre un ré-échantillonnage 208 du signal synthétisé à la fréquence de sortie (la fréquence de sortie du décodeur MDCT 104), et une interface de sortie 209. Dans des variantes de l'invention, des post-traitements supplémentaires de la synthèse CELP peuvent être mis en oeuvre avant ou après ré-échantillonnage.The synthesis filter 205, excited by the excitation generated by the unit 202, synthesizes a frame (or generally a subframe) of digital signal transmitted to a de-emphasis or deemphasis filter 206 (function of the form 1 / (1-αz -1 ) with for example a = 0.68). At the output of the de-emphasis filter, the CELP decoder 103 may comprise a low-frequency post-processing 207 (or " bass-post filter " in English) similar to that described in the ITU-T G.718 standard. The CELP decoder 103 further comprises a resampling 208 of the signal synthesized at the output frequency (the output frequency of the MDCT decoder 104), and an output interface 209. In variants of the invention, post-processing CELP synthesis can be implemented before or after resampling.

En outre, dans le cas où le signal numérique est décomposé en bandes de fréquences hautes et basses avant codage, le décodeur CELP 103 peut comprendre une unité de décodage des hautes fréquences 204, le signal basses fréquences étant décodé par les unités 202 à 208 décrites ci-avant. La synthèse CELP peut impliquer la mise à jour d'états internes de codeur CELP (ou la mise à jour de mémoires internes), tels que :

  • des états servant au décodage de l'excitation ;
  • la mémoire du filtre de synthèse 205 ;
  • la mémoire du filtre de dé-emphase 206 ;
  • des mémoires du post-traitement 207 ;
  • des mémoires de l'unité de ré-échantillonnage 208.
Furthermore, in the case where the digital signal is decomposed into high and low frequency bands before coding, the CELP decoder 103 may comprise a high frequency decoding unit 204, the low frequency signal being decoded by the units 202 to 208 described. above. CELP synthesis may involve updating internal CELP coder states (or updating internal memories), such as:
  • states for decoding the excitation;
  • the memory of the synthesis filter 205;
  • the memory of the de-emphasis filter 206;
  • post-processing memories 207;
  • memories of the resampling unit 208.

En référence à la figure 1, le décodeur comprend en outre une unité de gestion de perte de trame 108 et une mémoire temporaire 107.With reference to the figure 1 , the decoder further comprises a loss of frame management unit 108 and a temporary memory 107.

Afin de décoder une trame de transition, le décodeur 100 comprend en outre en unité de décodage 105 apte à recevoir la sous-trame CELP de transition et la trame de transition décodée par transformée en sortie du décodeur MDCT 104, afin de décoder la trame de transition par addition avec recouvrement des signaux reçus. Le décodeur 100 peut comprendre en outre une interface de sortie 106.In order to decode a transition frame, the decoder 100 further comprises a decoding unit 105 able to receive the transition CELP subframe and the decoded transition frame by transforming the output of the MDCT decoder 104 in order to decode the frame of the decoder. addition-based transition with recovery of the received signals. The decoder 100 may further comprise an output interface 106.

Le fonctionnement du décodeur 100 selon l'invention sera mieux compris en référence à la figure 3 qui est un diagramme présentant les étapes d'un procédé selon un mode de réalisation de l'invention.The operation of the decoder 100 according to the invention will be better understood with reference to the figure 3 which is a diagram showing the steps of a method according to an embodiment of the invention.

A une étape 301, une trame courante de signal audio numérique codée peut être reçue ou non par l'unité de réception 101, en provenance d'un codeur. Il est considéré que la trame précédente de signal audio est une trame correctement reçue et décodée ou une trame de remplacement.At a step 301, a coded digital audio signal current frame may or may not be received by the reception unit 101 from an encoder. It is considered that the previous audio signal frame is a correctly received and decoded frame or a frame of replacement.

Il est détecté à une étape 302 si la trame courante codée est manquante ou s'il elle a été reçue par l'unité de réception 101.It is detected at a step 302 if the coded current frame is missing or if it has been received by the reception unit 101.

Dans le cas où la trame courante codée a bien été reçue, il est déterminé à une étape 303, par l'unité de classification 102, si la trame courante codée est une trame CELP.In the case where the coded current frame has been received, it is determined in a step 303, by the classification unit 102, whether the coded current frame is a CELP frame.

Dans le cas où la trame courante codée est une trame CELP, le procédé comprend une étape 304 de décodage et de ré-échantillonnage de la trame CELP codée, par le décodeur CELP 103. Les mémoires internes précitées du décodeur CELP 103 peuvent ensuite être mises à jour à une étape 305. A une étape 306, le signal décodé et ré-échantillonné est transmis en sortie du décodeur 100. Les paramètres d'excitation de la trame courante, ainsi que les coefficients LPC, peuvent être stockés dans la mémoire 107.In the case where the coded current frame is a CELP frame, the method comprises a step 304 of decoding and resampling the coded CELP frame, by the decoder CELP 103. The aforementioned internal memories of the decoder CELP 103 can then be set in step 305. At a step 306, the decoded and resampled signal is outputted from the decoder 100. The excitation parameters of the current frame, as well as the LPC coefficients, can be stored in the memory 107. .

Dans le cas où la trame courante codée n'est pas une trame CELP, la trame courante comprend au moins un segment codé selon un codage par transformée (trame MDCT ou trame de transition). Il est alors vérifié à une étape 307 si la trame courante codée est une trame MDCT. Si tel est le cas, la trame courante est décodée à une étape 308 par le décodeur MDCT 104 et le signal décodé est transmis en sortie du décodeur 100 à l'étape 306.In the case where the coded current frame is not a CELP frame, the current frame comprises at least one segment coded according to a transform coding (MDCT frame or transition frame). It is then checked at a step 307 if the coded current frame is an MDCT frame. If this is the case, the current frame is decoded at a step 308 by the MDCT decoder 104 and the decoded signal is transmitted at the output of the decoder 100 in step 306.

Si en revanche la trame courante n'est pas une trame MDCT, alors c'est une trame de transition qui est décodée à une étape 309 en décodant à la fois la sous-trame de transition CELP et la trame courante codée par transformée MDCT et en effectuant l'addition avec recouvrement des signaux issus du décodeur CELP et du décodeur MDCT afin d'obtenir un signal numérique transmis en sortie du décodeur 100 à l'étape 306.If, on the other hand, the current frame is not an MDCT frame, then it is a transition frame which is decoded at a step 309 by decoding both the CELP transition subframe and the MDCT transformed current frame and by performing the overlap addition of the signals from the CELP decoder and the MDCT decoder to obtain a digital signal transmitted at the output of the decoder 100 in step 306.

Dans le cas où la sous-trame courante a été perdue, il est déterminé à une étape 310 si la trame précédente reçue et décodée était une trame CELP. Si tel n'est pas le cas, un algorithme de PLC adapté à la MDCT, mis en oeuvre dans l'unité de gestion de perte de trame 108 génère une trame de remplacement MDCT décodée par le décodeur MDCT 104 afin d'obtenir un signal numérique de sortie, à une étape 311.In the case where the current subframe has been lost, it is determined in a step 310 whether the previous received and decoded frame was a CELP frame. If this is not the case, a PLC algorithm adapted to the MDCT, implemented in the lossy frame management unit 108, generates a replacement frame MDCT decoded by the decoder MDCT 104 in order to obtain a signal digital output, at a step 311.

Si la dernière trame correctement reçue était une trame CELP, un algorithme de PLC adapté au CELP est mis en oeuvre par l'unité de gestion de perte de trame 108 et le décodeur CELP 103 afin de générer une trame CELP de remplacement, à une étape 312.If the last frame correctly received was a CELP frame, a PLC algorithm adapted to the CELP is implemented by the frame loss management unit 108 and the CELP decoder 103 to generate a replacement CELP frame at a step 312.

L'algorithme de PLC peut comprendre les étapes suivantes :

  • estimation par interpolation des paramètres LSF et du filtre LPC en fonction des paramètres LSF de la trame précédente, en mettant à jour, à une étape 313, les mémoires des quantificateurs prédictifs LSF (qui peuvent être par exemple de type AR or MA) - un exemple de mise en oeuvre de l'estimation des paramètres LPC en cas de perte de trame pour le cas des paramètres ISF est donné dans les clauses 7.11.1.2 « ISF estimation and interpolation » et 7.11.1.7 « Spectral envelope concealment, synthesis, and updates » de la norme UIT-T G.718. Alternativement l'estimation décrite dans la clause I.5.2.3.3 de la norme UIT-T G.722.2 Appendix I pourra également être utilisée dans le cas d'une quantification de type MA ;
  • estimation de l'excitation à partir du gain adaptatif et du gain fixe de la trame précédente, en mettant ces valeurs à jour, à l'étape 313, pour la trame suivant. Un exemple d'estimation de l'excitation est décrit dans les clauses 7.11.1.3 « Extrapodation of future pitch », 7.11.1.4 « Construction of the periodic part of the excitation », 7.11.1.15 « Glottal pulse resynchronization in low-delay », 7.11.1.6 «Construction of the random part of the excitation ». Le vecteur du dictionnaire fixe est typiquement remplacé dans chaque sous-trame par un signal aléatoire, le dictionnaire adaptatif utilise un pitch extrapolé et les gains de dictionnaires issus de la trame précédente ont typiquement été atténués selon la classe du signal dans la dernière trame reçue. Alternativement l'estimation de l'excitation décrite dans la norme UIT-T G.722.2 Appendix I pourra également être utilisée ;
  • synthétiser le signal à partir de l'excitation et du filtre de synthèse 205 mis à jour et en utilisant la mémoire de synthèse de la trame précédente, en mettant à jour la mémoire de synthèse de la trame précédente à l'étape 313 ;
  • dé-emphase du signal synthétisé en utilisant l'unité de dé-emphase 206, et en mettant à jour, à l'étape 313, la mémoire de l'unité de dé-emphase 206 ;
  • de façon optionnelle, post-traitement 207 du signal synthétisé en mettant à jour, à l'étape 313, la mémoire du post-traitement - on peut noter que le post-traitement peut être désactivé pendant la correction de perte de trame car les informations qu'ils utilisent ne sont pas fiables car simplement extrapolées, dans ce cas les mémoires du post-traitement doivent quand-même être mise à jour pour permettre un fonctionnement normal à la prochaine trame reçue ;
  • ré-échantillonnage du signal synthétisé à la fréquence de sortie par le ré-échantillonnage 208, en mettant à jour la mémoire du filtre 208 à l'étape 313.
The PLC algorithm can include the following steps:
  • estimation by interpolation of the LSF parameters and of the LPC filter according to the LSF parameters of the preceding frame, by updating, in a step 313, the memories of the predictive quantifiers LSF (which may be for example of the AR or MA type) - a example of implementation of the estimation of the LPC parameters in case of loss of frame for the case of the ISF parameters is given in clauses 7.11.1.2 " ISF estimation and interpolation " and 7.11.1.7 " Spectral envelope concealment, synthesis, and updates "of ITU-T G.718. Alternatively the estimation described in clause I.5.2.3.3 of the ITU-T G.722.2 Appendix I may also be used in the case of AM type quantization;
  • estimating the excitation from the adaptive gain and the fixed gain of the previous frame, updating these values, in step 313, for the next frame. An example of estimation of excitation is described in clauses 7.11.1.3 " Extrapodation of future pitch", 7.11.1.4 " Construction of the periodic part of the excitation ", 7.11.1.15 " Glottal pulse resynchronization in low-delay " , 7.11.1.6 "Construction of the random part of the excitation". The vector of the fixed dictionary is typically replaced in each subframe by a random signal, the adaptive dictionary uses an extrapolated pitch and the dictionary gains from the previous frame have typically been attenuated according to the class of the signal in the last received frame. Alternatively the excitation estimate described in ITU-T G.722.2 Appendix I may also be used;
  • synthesizing the signal from the exciter and the updated synthesis filter 205 and using the synthesis memory of the previous frame, updating the synthesis memory of the previous frame in step 313;
  • de-emphasis of the synthesized signal using the de-emphasis unit 206, and updating, in step 313, the memory of the de-emphasis unit 206;
  • optionally, post-processing 207 of the synthesized signal by updating, in step 313, the memory of the post-processing - it may be noted that the post-processing can be deactivated during the frame loss correction because the information they use are unreliable because simply extrapolated, in this case the memories of the post-processing must still be updated to allow normal operation to the next received frame;
  • resampling the synthesized signal at the output frequency by resampling 208, updating the memory of the filter 208 in step 313.

La mise à jour des mémoires internes permet le décodage d'une éventuelle trame suivante codée par prédiction CELP sans discontinuité. A noter que, dans la norme UIT-T G.718, des techniques de « recovery » et de contrôle de l'énergie de la synthèse sont également employées (par exemple dans les clauses 7.11.1.8 et 7.11.1.8.1) lors du décodage d'une trame reçue après une correction de perte de trame. Cet aspect n'est pas considéré ici car il sort du cadre de l'invention.The updating of the internal memories allows the decoding of a possible future frame coded by CELP prediction without discontinuity. Note that in ITU-T G.718, recovery and synthesis energy control techniques are also employed (for example in clauses 7.11.1.8 and 7.11.1.8.1) when decoding a received frame after a loss of frame correction. This aspect is not considered here because it is outside the scope of the invention.

A une étape 314, les mémoires ainsi mises à jour peuvent être copiées dans la mémoire temporaire 107. La trame CELP de remplacement décodée est transmise en sortie du décodeur à une étape 315.At a step 314, the memories thus updated can be copied into the temporary memory 107. The decoded replacement CELP frame is transmitted at the output of the decoder at a step 315.

A une étape 316, le procédé selon l'invention prévoit la génération par prédiction, d'un segment supplémentaire de signal numérique, en mettant en oeuvre un algorithme de PLC adapté au CELP. L'étape 316 peut comprendre les sous-étapes suivantes :

  • estimation par interpolation des paramètres LSF et du filtre LPC en fonction des paramètres LSF de la trame CELP précédente, sans mettre à jour les mémoires des quantificateurs LSF. L'estimation par interpolation peut être mise en oeuvre selon la même méthode que celle employée pour l'estimation par interpolation pour la trame de remplacement décrite ci-avant (sans mise à jour des mémoires des quantificateurs LSF) ;
  • estimation de l'excitation à l'aide du gain adaptatif et du gain fixe de la trame CELP précédente, sans mettre à jour ces valeurs pour la trame suivante. L'excitation peut être déterminée selon la même méthode que celle employée pour la détermination de l'excitation pour la trame de remplacement (sans la mise à jour des valeurs de gain adaptatif et de gain fixe) ;
  • synthétiser un segment de signal (une demi-trame ou une sous-trame par exemple) à partir de l'excitation et du filtre de synthèse 205 recalculé et en utilisant la mémoire de synthèse de la trame précédente ;
  • dé-emphase du signal synthétisé en utilisant l'unité de dé-emphase 206;
  • de façon optionnelle, post-traitement du signal synthétisé en utilisant la mémoire du post-traitement 207 ;
  • ré-échantillonnage du signal synthétisé à la fréquence de sortie par le ré-échantillonnage 208, en utilisant les mémoires de ré-échantillonnage 208.
In a step 316, the method according to the invention provides the prediction generation of an additional segment of digital signal, by implementing a PLC algorithm adapted to the CELP. Step 316 may include the following substeps:
  • Interpolation estimation of LSF parameters and LPC filter according to LSF parameters of the previous CELP frame without updating the LSF quantizer memories. The interpolation estimation can be implemented according to the same method as that used for the interpolation estimation for the replacement frame described above (without updating the memories of the LSF quantizers);
  • estimation of the excitation using the adaptive gain and the fixed gain of the previous CELP frame, without updating these values for the next frame. The excitation can be determined by the same method as that used to determine the excitation for the replacement frame (without the update of the adaptive gain and fixed gain values);
  • synthesizing a signal segment (for example a half-frame or a sub-frame) from the excitation and the recalculated synthesis filter 205 and using the synthesis memory of the previous frame;
  • de-emphasis of the synthesized signal using the de-emphasis unit 206;
  • optionally, post-processing the synthesized signal using the post-processing memory 207;
  • resampling of the synthesized signal at the output frequency by resampling 208, using the resampling memories 208.

Il est important de noter que pour chacune des étapes, l'invention prévoit de mémoriser dans des variables temporaires les états du décodage CELP qui sont modifiées à chacune des étapes, avant d'effectuer ces étapes, de sorte que les états prédéterminés puissent être rétablis à leurs valeurs mémorisées après génération du segment temporaire.It is important to note that for each of the steps, the invention provides for storing in temporary variables the states of the CELP decoding that are modified at each step, before performing these steps, so that the predetermined states can be restored. their stored values after generating the temporary segment.

Le segment de signal supplémentaire généré est stocké dans la mémoire 107 à une étape 317.The additional signal segment generated is stored in the memory 107 at a step 317.

A une étape 318, une trame suivante de signal numérique est reçue par l'unité de réception 101. Il est vérifié à une étape 319 que la trame suivante est une trame MDCT ou une trame de transition.At a step 318, a next digital signal frame is received by the reception unit 101. It is verified in a step 319 that the next frame is an MDCT frame or a transition frame.

Si tel n'est pas le cas, alors la trame suivante est une trame CELP et elle est décodée par le décodeur CELP 103 à une étape 320. Le segment supplémentaire synthétisé à l'étape 316 n'est pas utilisé et peut être supprimé de la mémoire 107.If this is not the case, then the next frame is a CELP frame and is decoded by the CELP decoder 103 at a step 320. The additional segment synthesized in step 316 is not used and can be deleted. the memory 107.

Dans le cas où la trame suivante est une trame MDCT ou une trame de transition, elle est décodée par le décodeur MDCT 104 à une étape 322. En parallèle, le segment de signal numérique supplémentaire stocké dans la mémoire 107 est récupéré à une étape 323 par l'unité de gestion 108 et transmise à l'unité de décodage 105.In the case where the next frame is an MDCT frame or a transition frame, it is decoded by the MDCT decoder 104 in a step 322. In parallel, the additional digital signal segment stored in the memory 107 is retrieved at a step 323 by the management unit 108 and transmitted to the decoding unit 105.

Dans le cas où la trame suivante est une trame MDCT, le segment de signal supplémentaire obtenu permet d'effectuer une addition-recouvrement par l'unité 103 afin de décoder correctement la première partie de la trame MDCT suivante, à une étape 324. Par exemple, lorsque le segment supplémentaire est une moitié de sous-trame, un gain linéaire entre 0 et 1 peut être appliqué lors de l'addition recouvrement sur la première moitié de la trame MDCT et un gain linéaire entre 1 et 0 est appliqué sur le segment de signal supplémentaire. Sans ce segment de signal supplémentaire, le décodage MDCT peut donner lieu à des discontinuités dues aux erreurs de quantification.In the case where the following frame is an MDCT frame, the additional signal segment obtained makes it possible to carry out an overlay by the unit 103 in order to correctly decode the first part of the next MDCT frame at a step 324. for example, when the additional segment is a sub-frame half, a linear gain between 0 and 1 may be applied during the overlap over the first half of the MDCT frame and a gain linear between 1 and 0 is applied to the additional signal segment. Without this additional signal segment, MDCT decoding can give rise to discontinuities due to quantization errors.

Dans le cas où la trame suivante est une trame de transition, deux cas sont à distinguer comme considérés ci-dessous. On rappelle que le décodage de la trame de transition s'appuie non seulement sur la classification de la trame courante comme «trame de transition » mais aussi une indication du type de codage CELP (12,8 ou 16 kHz) lorsque plusieurs fréquences de codage CELP sont possibles. Ainsi :

  • si la trame CELP précédente a été codée par un coeur à une première fréquence (par exemple 12,8 kHz) et que la sous-trame CELP de transition a été codée par un coeur à une deuxième fréquence (par exemple 16 kHz), alors la sous-trame de transition ne peut être décodée, et le segment de signal supplémentaire permet alors à l'unité de décodage 105 d'assurer l'addition recouvrement avec le signal issu du décodage MDCT de l'étape 322. Par exemple, lorsque le segment supplémentaire est une moitié de sous-trame, un gain linéaire entre 0 et 1 peut être appliqué lors de l'addition recouvrement sur la première moitié de la trame MDCT et un gain linéaire entre 1 et 0 est appliqué sur le segment de signal supplémentaire. ;
  • si la trame CELP précédente et la sous-trame CELP de transition ont été codées par un coeur à la même fréquence, alors la sous-trame CELP de transition peut être décodée et utilisée par l'unité de décodage 105 pour l'addition-recouvrement avec le signal numérique issu du décodeur MDCT 104 ayant décodé la trame de transition.
In the case where the following frame is a transition frame, two cases are to be distinguished as considered below. It is recalled that the decoding of the transition frame is based not only on the classification of the current frame as a "transition frame" but also an indication of the CELP coding type (12.8 or 16 kHz) when several coding frequencies CELP are possible. So :
  • if the preceding CELP frame has been coded by a core at a first frequency (for example 12.8 kHz) and the transition CELP subframe has been coded by a core at a second frequency (for example 16 kHz), then the transition subframe can not be decoded, and the additional signal segment then allows the decoding unit 105 to provide overlap with the signal from the MDCT decoding of step 322. For example, when the additional segment is a sub-frame half, a linear gain between 0 and 1 can be applied during overlap over the first half of the MDCT frame and a linear gain between 1 and 0 is applied on the signal segment additional. ;
  • if the previous CELP frame and the transition CELP subframe have been encoded by a core at the same frequency, then the transition CELP subframe can be decoded and used by the decoding unit 105 for overlay with the digital signal from the decoder MDCT 104 having decoded the transition frame.

L'addition avec recouvrement entre le segment de signal supplémentaire et la trame MDCT décodée peut être donnée par la formule suivante : S i = B i . i L / r + 1 i L / r . T i

Figure imgb0002
avec :

  • r un coefficient représentatif de la longueur du segment supplémentaire généré, la longueur étant égale à L/r. Aucune restriction n'est attachée à la valeur r, qui sera choisie de manière à permettre un recouvrement suffisant entre le segment de signal supplémentaire et la trame MDCT de transition décodée. Par exemple, r peut être égal à 2 ;
  • i un instant correspondant à un échantillon de la trame suivante, compris entre 0 et L/r;
  • L la longueur de la trame suivante (par exemple 20 ms) ;
  • S(i) l'amplitude de la trame suivante après addition, pour l'échantillon i ;
  • B(i) l'amplitude du segment décodé par transformée, pour l'échantillon i ;
  • T(i) l'amplitude du segment supplémentaire de signal numérique, pour l'échantillon i.
The overlap addition between the additional signal segment and the decoded MDCT frame can be given by the following formula: S i = B i . i The / r + 1 - i The / r . T i
Figure imgb0002
with:
  • r a coefficient representing the length of the additional segment generated, the length being equal to L / r. No restriction is attached to the value r, which will be chosen to allow sufficient overlap between the additional signal segment and the decoded transition MDCT frame. For example, r may be 2;
  • i an instant corresponding to a sample of the next frame, between 0 and L / r;
  • L the length of the next frame (for example 20 ms);
  • S (i) the amplitude of the next frame after addition, for sample i;
  • B (i) the amplitude of the transform decoded segment, for sample i;
  • T (i) the amplitude of the additional digital signal segment, for sample i.

Le signal numérique obtenu après addition recouvrement est transmis en sortie du décodeur à une étape 325.The digital signal obtained after overlap is transmitted at the output of the decoder at a step 325.

Ainsi, l'invention prévoit, sur perte d'une trame courante suivant une trame CELP précédente, la génération d'un segment supplémentaire en plus d'une trame de remplacement. Dans certains cas, et notamment si la trame suivante est une trame CELP, un tel segment supplémentaire n'est pas utilisé. Toutefois, son calcul n'induit aucune complexité supplémentaire dans la mesure où les paramètres de codage de la trame précédente sont réutilisés. En revanche, lorsque la trame suivante est une trame MDCT ou une trame de transition avec une sous trame CELP à une fréquence de coeur différente de la fréquence de coeur utilisée pour le codage de la trame CELP précédente, le segment de signal supplémentaire généré et stocké permet le décodage de la trame suivante, qui n'était pas permis par les solutions de l'art antérieur.Thus, the invention provides, on loss of a current frame following a previous CELP frame, the generation of an additional segment in addition to a replacement frame. In some cases, and especially if the next frame is a CELP frame, such an additional segment is not used. However, its calculation does not induce any additional complexity insofar as the coding parameters of the previous frame are reused. On the other hand, when the next frame is an MDCT frame or a transition frame with a CELP subframe at a core frequency different from the core frequency used for encoding the previous CELP frame, the additional signal segment generated and stored allows the decoding of the next frame, which was not allowed by the solutions of the prior art.

La figure 4 représente un exemple de dispositif de calcul 400 pouvant être intégré dans le codeur CELP 103 et dans le codeur MDCT 104.The figure 4 represents an example of a computing device 400 that can be integrated in the CELP encoder 103 and in the MDCT encoder 104.

Le dispositif 400 comprend une mémoire vive 404 et un processeur 403 pour stocker des instructions permettant la mise en oeuvre d'étapes du procédé décrit ci-avant (mises en oeuvre par le codeur CELP 103 ou par le codeur MDCT 104). Le dispositif comporte aussi une mémoire de masse 405 pour le stockage de données destinées à être conservées après l'application du procédé. Le dispositif 400 comporte en outre une interface d'entrée 401 et une interface de sortie 406 respectivement destinées à recevoir les trames du signal numérique et à transmettre les trames de signal décodées.The device 400 comprises a random access memory 404 and a processor 403 for storing instructions allowing the implementation of steps of the method described above (implemented by the CELP encoder 103 or by the MDCT encoder 104). The device also comprises a mass memory 405 for storing data intended to be stored after the application of the method. The device 400 further comprises an input interface 401 and an output interface 406 respectively for receiving the frames of the digital signal and transmitting the decoded signal frames.

Le dispositif 400 peut en outre comporter un processeur de signal numérique (DSP) 402. Ce DSP 402 reçoit les trames de signal numérique pour mettre en forme, démoduler et amplifier, de façon connue en soi ces trames.The device 400 may further comprise a digital signal processor (DSP) 402. This DSP 402 receives the digital signal frames for shaping, demodulating and amplifying, in a manner known per se, these frames.

La présente invention ne se limite pas aux formes de réalisation décrites ci-avant à titre d'exemples ; elle s'étend à d'autres variantes.The present invention is not limited to the embodiments described above as examples; it extends to other variants.

Ainsi, on a décrit ci-avant un mode de réalisation dans lequel le décodeur est une entité à part entière. Bien sûr, un tél décodeur peut être embarqué dans tout type de dispositif plus important comme par exemple un téléphone portable, un ordinateur, etc.Thus, an embodiment has been described above in which the decoder is a separate entity. Of course, a set-top box can be embedded in any type of larger device such as a mobile phone, a computer, etc.

De plus, on a décrit un mode de réalisation proposant une architecture particulière du décodeur. Ces architectures ne sont données qu'à titre illustratif. Ainsi, un agencement des composants et une répartition différente des taches affectées à chacune de ces composantes est également envisageable.In addition, an embodiment has been described proposing a particular architecture of the decoder. These architectures are given for illustrative purposes only. Thus, an arrangement of the components and a different distribution of the spots assigned to each of these components is also conceivable.

Claims (11)

  1. Method for decoding a digital signal coded using predictive coding and using transform coding, comprising the following steps:
    - predictive decoding (304) of a preceding frame of the digital signal, which preceding frame is coded by a set of predictive coding parameters;
    - detection (302) of the loss of a current frame of the coded digital signal;
    - predictive generation (312), on the basis of at least one predictive coding parameter coding the preceding frame, of a replacement frame for the current frame;
    - predictive generation (316), on the basis of at least one predictive coding parameter coding the preceding frame, of an additional digital signal segment;
    - temporary storage (317) of said additional digital signal segment.
  2. Method according to Claim 1, furthermore comprising the following steps:
    - reception (318) of a following coded digital signal frame comprising at least one transform-coded segment; and
    - decoding (322; 323; 324) of the following frame, comprising a sub-step of addition with overlap between the additional digital signal segment and said transform-coded segment.
  3. Method according to Claim 2, wherein the following frame is coded entirely using transform coding, and wherein the lost current frame is a transition frame between the preceding frame coded using predictive coding and the following frame coded using transform coding.
  4. Method according to Claim 2, wherein the preceding frame is coded using predictive coding by a predictive coder core operating at a first frequency, and
    wherein the following frame is a transition frame comprising at least one subframe coded using predictive coding by a predictive coder core operating at a second frequency different from the first frequency.
  5. Method according to Claim 4, wherein the following frame comprises a bit indicating the frequency of the predictive coder core that is used.
  6. Method according to one of Claims 2 to 5, wherein the addition with overlap is given by applying the following formula: S i = B i . i L / r + 1 i L / r . T i
    Figure imgb0005
    where:
    - r is a coefficient representative of the length of the generated additional segment;
    - i is an instant corresponding to a sample of the following frame, of between 0 and L/r;
    - L is the length of the following frame;
    - S(i) is the amplitude of the following frame after addition, for the sample i;
    - B(i) is the amplitude of the transform-decoded segment, for the sample i;
    - T(i) is the amplitude of the additional digital signal segment, for the sample i.
  7. Method according to one of the preceding claims, wherein the step of predictive generation of the replacement frame furthermore includes updating (313) of internal memories of the decoder, and
    wherein the step of predictive generation of an additional digital signal segment includes the following sub-steps:
    - copying (314), into a temporary memory (107), the memories of the decoder that are updated during the step of predictive generation of the replacement frame;
    - generation (316) of the additional digital signal segment by way of the temporary memory.
  8. Method according to one of the preceding claims, wherein the step of predictive generation of an additional digital signal segment includes the following sub-steps:
    - predictive generation of an additional frame, on the basis of at least one predictive coding parameter coding the preceding frame;
    - extraction of a segment of the additional frame; and
    wherein the additional digital signal segment corresponds to the first half of the additional frame.
  9. Computer program including instructions for implementing the method according to any one of the preceding claims when these instructions are executed by a processor.
  10. Decoder for decoding a digital signal coded using predictive coding and using transform coding, comprising:
    - a unit (108) for detecting the loss of a current frame of the digital signal;
    - a predictive decoder (103) including a processor designed to perform the following operations:
    * predictive decoding of a preceding frame of the digital signal, which preceding frame is coded by a set of predictive coding parameters;
    * predictive generation, on the basis of at least one predictive coding parameter coding the preceding frame, of a replacement frame for the current frame;
    * predictive generation, on the basis of at least one predictive coding parameter coding the preceding frame, of an additional digital signal segment;
    * temporary storage of said additional digital signal segment in a temporary memory (107).
  11. Decoder according to Claim 10, furthermore including a transform decoder (104) including a processor designed to perform the following operations:
    * reception of a following coded digital signal frame comprising at least one transform-coded segment; and
    * transform-decoding of the following frame;
    said decoder furthermore comprising a decoding unit (105) comprising a processor designed to perform an addition with overlap between the additional digital signal segment and said transform-coded segment.
EP15757533.3A 2014-07-29 2015-07-27 Frame loss management in an fd/lpd transition context Active EP3175444B1 (en)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
FR1457356A FR3024582A1 (en) 2014-07-29 2014-07-29 MANAGING FRAME LOSS IN A FD / LPD TRANSITION CONTEXT
PCT/FR2015/052075 WO2016016567A1 (en) 2014-07-29 2015-07-27 Frame loss management in an fd/lpd transition context

Publications (2)

Publication Number Publication Date
EP3175444A1 EP3175444A1 (en) 2017-06-07
EP3175444B1 true EP3175444B1 (en) 2018-04-11

Family

ID=51894139

Family Applications (1)

Application Number Title Priority Date Filing Date
EP15757533.3A Active EP3175444B1 (en) 2014-07-29 2015-07-27 Frame loss management in an fd/lpd transition context

Country Status (8)

Country Link
US (2) US10600424B2 (en)
EP (1) EP3175444B1 (en)
JP (2) JP6687599B2 (en)
KR (1) KR102386644B1 (en)
CN (2) CN113571070B (en)
ES (1) ES2676834T3 (en)
FR (1) FR3024582A1 (en)
WO (1) WO2016016567A1 (en)

Families Citing this family (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP2980795A1 (en) 2014-07-28 2016-02-03 Fraunhofer-Gesellschaft zur Förderung der angewandten Forschung e.V. Audio encoding and decoding using a frequency domain processor, a time domain processor and a cross processor for initialization of the time domain processor
EP2980794A1 (en) * 2014-07-28 2016-02-03 Fraunhofer-Gesellschaft zur Förderung der angewandten Forschung e.V. Audio encoder and decoder using a frequency domain processor and a time domain processor
TWI602172B (en) * 2014-08-27 2017-10-11 弗勞恩霍夫爾協會 Encoder, decoder and method for encoding and decoding audio content using parameters for enhancing a concealment
US10424305B2 (en) * 2014-12-09 2019-09-24 Dolby International Ab MDCT-domain error concealment
KR101754702B1 (en) * 2015-09-03 2017-07-07 유신정밀공업 주식회사 Hose clamp having band spring
US11647241B2 (en) * 2019-02-19 2023-05-09 Sony Interactive Entertainment LLC Error de-emphasis in live streaming
EP3928312A1 (en) * 2019-02-21 2021-12-29 Telefonaktiebolaget LM Ericsson (publ) Methods for phase ecu f0 interpolation split and related controller

Family Cites Families (69)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US4969193A (en) * 1985-08-29 1990-11-06 Scott Instruments Corporation Method and apparatus for generating a signal transformation and the use thereof in signal processing
US6006174A (en) * 1990-10-03 1999-12-21 Interdigital Technology Coporation Multiple impulse excitation speech encoder and decoder
US5907822A (en) * 1997-04-04 1999-05-25 Lincom Corporation Loss tolerant speech decoder for telecommunications
AU3372199A (en) * 1998-03-30 1999-10-18 Voxware, Inc. Low-complexity, low-delay, scalable and embedded speech and audio coding with adaptive frame loss concealment
WO2000054512A1 (en) * 1999-03-05 2000-09-14 Kabushiki Kaisha Toshiba Method and apparatus for coding moving picture image
US6952668B1 (en) * 1999-04-19 2005-10-04 At&T Corp. Method and apparatus for performing packet loss or frame erasure concealment
JP2001169281A (en) * 1999-12-13 2001-06-22 Matsushita Electric Ind Co Ltd Device and method for encoding moving image
JP2003209845A (en) * 2002-01-11 2003-07-25 Mitsubishi Electric Corp Image encoding integrated circuit
US7536305B2 (en) * 2002-09-04 2009-05-19 Microsoft Corporation Mixed lossless audio compression
JP4331928B2 (en) * 2002-09-11 2009-09-16 パナソニック株式会社 Speech coding apparatus, speech decoding apparatus, and methods thereof
EP1604352A4 (en) * 2003-03-15 2007-12-19 Mindspeed Tech Inc Simple noise suppression model
US20040199276A1 (en) * 2003-04-03 2004-10-07 Wai-Leong Poon Method and apparatus for audio synchronization
US7596488B2 (en) * 2003-09-15 2009-09-29 Microsoft Corporation System and method for real-time jitter control and packet-loss concealment in an audio signal
JP4445328B2 (en) * 2004-05-24 2010-04-07 パナソニック株式会社 Voice / musical sound decoding apparatus and voice / musical sound decoding method
US20060088093A1 (en) * 2004-10-26 2006-04-27 Nokia Corporation Packet loss compensation
US8634413B2 (en) * 2004-12-30 2014-01-21 Microsoft Corporation Use of frame caching to improve packet loss recovery
US8155965B2 (en) * 2005-03-11 2012-04-10 Qualcomm Incorporated Time warping frames inside the vocoder by modifying the residual
WO2006125342A1 (en) * 2005-05-25 2006-11-30 Lin, Hui An information compress method for digital audio file
FR2888699A1 (en) * 2005-07-13 2007-01-19 France Telecom HIERACHIC ENCODING / DECODING DEVICE
CN101310329A (en) * 2005-10-18 2008-11-19 诺基亚公司 Method and apparatus for resynchronizing packetized audio streams
US8620644B2 (en) * 2005-10-26 2013-12-31 Qualcomm Incorporated Encoder-assisted frame loss concealment techniques for audio coding
US7805297B2 (en) * 2005-11-23 2010-09-28 Broadcom Corporation Classification-based frame loss concealment for audio signals
US20120087231A1 (en) * 2005-12-15 2012-04-12 Huan Qiang Zhang Packet Loss Recovery Method and Device for Voice Over Internet Protocol
KR101041895B1 (en) * 2006-08-15 2011-06-16 브로드콤 코포레이션 Time-warping of decoded audio signal after packet loss
CN101366079B (en) * 2006-08-15 2012-02-15 美国博通公司 Packet loss concealment for sub-band predictive coding based on extrapolation of full-band audio waveform
ATE463028T1 (en) 2006-09-13 2010-04-15 Ericsson Telefon Ab L M METHOD AND ARRANGEMENTS FOR A VOICE/AUDIOS TRANSMITTER AND RECEIVER
RU2462769C2 (en) * 2006-10-24 2012-09-27 Войсэйдж Корпорейшн Method and device to code transition frames in voice signals
CN101833954B (en) * 2007-06-14 2012-07-11 华为终端有限公司 Method and device for realizing packet loss concealment
CN101325537B (en) * 2007-06-15 2012-04-04 华为技术有限公司 Method and apparatus for frame-losing hide
WO2009047461A1 (en) 2007-09-21 2009-04-16 France Telecom Transmission error dissimulation in a digital signal with complexity distribution
CN100524462C (en) * 2007-09-15 2009-08-05 华为技术有限公司 Method and apparatus for concealing frame error of high belt signal
US8527265B2 (en) * 2007-10-22 2013-09-03 Qualcomm Incorporated Low-complexity encoding/decoding of quantized MDCT spectrum in scalable speech and audio codecs
CN101471073B (en) * 2007-12-27 2011-09-14 华为技术有限公司 Package loss compensation method, apparatus and system based on frequency domain
CN101588341B (en) * 2008-05-22 2012-07-04 华为技术有限公司 Lost frame hiding method and device thereof
WO2010000303A1 (en) * 2008-06-30 2010-01-07 Nokia Corporation Speech decoder with error concealment
EP2311034B1 (en) * 2008-07-11 2015-11-04 Fraunhofer-Gesellschaft zur Förderung der angewandten Forschung e.V. Audio encoder and decoder for encoding frames of sampled audio signals
KR101261677B1 (en) * 2008-07-14 2013-05-06 광운대학교 산학협력단 Apparatus for encoding and decoding of integrated voice and music
US8463603B2 (en) * 2008-09-06 2013-06-11 Huawei Technologies Co., Ltd. Spectral envelope coding of energy attack signal
FR2936898A1 (en) * 2008-10-08 2010-04-09 France Telecom CRITICAL SAMPLING CODING WITH PREDICTIVE ENCODER
EP2382625B1 (en) * 2009-01-28 2016-01-06 Fraunhofer-Gesellschaft zur Förderung der angewandten Forschung e.V. Audio encoder, audio decoder, encoded audio information, methods for encoding and decoding an audio signal and computer program
US8457975B2 (en) * 2009-01-28 2013-06-04 Fraunhofer-Gesellschaft Zur Foerderung Der Angewandten Forschung E.V. Audio decoder, audio encoder, methods for decoding and encoding an audio signal and computer program
JP4977157B2 (en) * 2009-03-06 2012-07-18 株式会社エヌ・ティ・ティ・ドコモ Sound signal encoding method, sound signal decoding method, encoding device, decoding device, sound signal processing system, sound signal encoding program, and sound signal decoding program
US20110046761A1 (en) * 2009-08-19 2011-02-24 Paul Frederick Titchener Recorded Media Enhancement Method
EP4358082A1 (en) * 2009-10-20 2024-04-24 Fraunhofer-Gesellschaft zur Förderung der angewandten Forschung e.V. Audio signal encoder, audio signal decoder, method for encoding or decoding an audio signal using an aliasing-cancellation
US8442837B2 (en) * 2009-12-31 2013-05-14 Motorola Mobility Llc Embedded speech and audio coding using a switchable model core
US8321216B2 (en) * 2010-02-23 2012-11-27 Broadcom Corporation Time-warping of audio signals for packet loss concealment avoiding audible artifacts
US8428936B2 (en) * 2010-03-05 2013-04-23 Motorola Mobility Llc Decoder for audio signal including generic audio and speech frames
US8423355B2 (en) * 2010-03-05 2013-04-16 Motorola Mobility Llc Encoder for audio signal including generic audio and speech frames
PL4120248T3 (en) * 2010-07-08 2024-05-13 Fraunhofer-Gesellschaft zur Förderung der angewandten Forschung e.V. Decoder using forward aliasing cancellation
EP2619758B1 (en) * 2010-10-15 2015-08-19 Huawei Technologies Co., Ltd. Audio signal transformer and inverse transformer, methods for audio signal analysis and synthesis
FR2969805A1 (en) * 2010-12-23 2012-06-29 France Telecom LOW ALTERNATE CUSTOM CODING PREDICTIVE CODING AND TRANSFORMED CODING
EP2676265B1 (en) * 2011-02-14 2019-04-10 Fraunhofer-Gesellschaft zur Förderung der angewandten Forschung e.V. Apparatus and method for encoding an audio signal using an aligned look-ahead portion
US9037456B2 (en) * 2011-07-26 2015-05-19 Google Technology Holdings LLC Method and apparatus for audio coding and decoding
DE102011088519A1 (en) * 2011-12-14 2013-06-20 Metabowerke Gmbh Stator for an electric motor and method for producing a stator for an electric motor
US9043201B2 (en) * 2012-01-03 2015-05-26 Google Technology Holdings LLC Method and apparatus for processing audio frames to transition between different codecs
US9053699B2 (en) * 2012-07-10 2015-06-09 Google Technology Holdings LLC Apparatus and method for audio frame loss recovery
US9129600B2 (en) * 2012-09-26 2015-09-08 Google Technology Holdings LLC Method and apparatus for encoding an audio signal
US9123328B2 (en) * 2012-09-26 2015-09-01 Google Technology Holdings LLC Apparatus and method for audio frame loss recovery
CN103714821A (en) * 2012-09-28 2014-04-09 杜比实验室特许公司 Mixed domain data packet loss concealment based on position
US9661340B2 (en) * 2012-10-22 2017-05-23 Microsoft Technology Licensing, Llc Band separation filtering / inverse filtering for frame packing / unpacking higher resolution chroma sampling formats
CN103854649B (en) * 2012-11-29 2018-08-28 中兴通讯股份有限公司 A kind of frame losing compensation method of transform domain and device
AU2014211520B2 (en) * 2013-01-29 2017-04-06 Fraunhofer-Gesellschaft Zur Foerderung Der Angewandten Forschung E.V. Low-frequency emphasis for LPC-based coding in frequency domain
PT3011561T (en) * 2013-06-21 2017-07-25 Fraunhofer Ges Forschung Apparatus and method for improved signal fade out in different domains during error concealment
CN103456307B (en) * 2013-09-18 2015-10-21 武汉大学 In audio decoder, the spectrum of frame error concealment replaces method and system
US10390034B2 (en) * 2014-01-03 2019-08-20 Microsoft Technology Licensing, Llc Innovations in block vector prediction and estimation of reconstructed sample values within an overlap area
CN105264888B (en) * 2014-03-04 2018-09-14 微软技术许可有限责任公司 Coding strategy for adaptively switching to color space, color samples rate and/or bit-depth
US20150264357A1 (en) * 2014-03-11 2015-09-17 Stmicroelectronics S.R.L. Method and system for encoding digital images, corresponding apparatus and computer program product
CN105099949A (en) * 2014-04-16 2015-11-25 杜比实验室特许公司 Jitter buffer control based on monitoring for dynamic states of delay jitter and conversation
EP2980797A1 (en) * 2014-07-28 2016-02-03 Fraunhofer-Gesellschaft zur Förderung der angewandten Forschung e.V. Audio decoder, method and computer program using a zero-input-response to obtain a smooth transition

Also Published As

Publication number Publication date
US10600424B2 (en) 2020-03-24
US20170213561A1 (en) 2017-07-27
US20200175995A1 (en) 2020-06-04
JP7026711B2 (en) 2022-02-28
JP6687599B2 (en) 2020-04-22
JP2017523471A (en) 2017-08-17
EP3175444A1 (en) 2017-06-07
CN106575505B (en) 2021-06-01
KR20170037661A (en) 2017-04-04
CN106575505A (en) 2017-04-19
CN113571070B (en) 2023-09-29
US11475901B2 (en) 2022-10-18
CN113571070A (en) 2021-10-29
JP2020091496A (en) 2020-06-11
FR3024582A1 (en) 2016-02-05
ES2676834T3 (en) 2018-07-25
KR102386644B1 (en) 2022-04-14
WO2016016567A1 (en) 2016-02-04

Similar Documents

Publication Publication Date Title
EP3175444B1 (en) Frame loss management in an fd/lpd transition context
EP1316087B1 (en) Transmission error concealment in an audio signal
EP2277172B1 (en) Concealment of transmission error in a digital signal in a hierarchical decoding structure
EP2080195B1 (en) Synthesis of lost blocks of a digital audio signal
US9218817B2 (en) Low-delay sound-encoding alternating between predictive encoding and transform encoding
EP3069340B1 (en) Transition from a transform coding/decoding to a predictive coding/decoding
EP2080194B1 (en) Attenuation of overvoicing, in particular for generating an excitation at a decoder, in the absence of information
EP3175443B1 (en) Determining a budget for lpd/fd transition frame encoding
EP2345029B1 (en) Method, computer program and device for decoding a digital audio signal
FR3020732A1 (en) PERFECTED FRAME LOSS CORRECTION WITH VOICE INFORMATION
WO2009047461A1 (en) Transmission error dissimulation in a digital signal with complexity distribution
EP2589045B1 (en) Adaptive linear predictive coding/decoding

Legal Events

Date Code Title Description
17P Request for examination filed

Effective date: 20170112

AK Designated contracting states

Kind code of ref document: A1

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

AX Request for extension of the european patent

Extension state: BA ME

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

DAV Request for validation of the european patent (deleted)
DAX Request for extension of the european patent (deleted)
GRAP Despatch of communication of intention to grant a patent

Free format text: ORIGINAL CODE: EPIDOSNIGR1

INTG Intention to grant announced

Effective date: 20180104

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): AL AT BE BG CH CY CZ DE DK EE ES FI FR GB GR HR HU IE IS IT LI LT LU LV MC MK MT NL NO PL PT RO RS SE SI SK SM 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: AT

Ref legal event code: REF

Ref document number: 988827

Country of ref document: AT

Kind code of ref document: T

Effective date: 20180415

REG Reference to a national code

Ref country code: IE

Ref legal event code: FG4D

Free format text: LANGUAGE OF EP DOCUMENT: FRENCH

REG Reference to a national code

Ref country code: DE

Ref legal event code: R096

Ref document number: 602015009965

Country of ref document: DE

REG Reference to a national code

Ref country code: FR

Ref legal event code: PLFP

Year of fee payment: 4

REG Reference to a national code

Ref country code: ES

Ref legal event code: FG2A

Ref document number: 2676834

Country of ref document: ES

Kind code of ref document: T3

Effective date: 20180725

REG Reference to a national code

Ref country code: NL

Ref legal event code: MP

Effective date: 20180411

REG Reference to a national code

Ref country code: LT

Ref legal event code: MG4D

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

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

Ref country code: PL

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

Ref country code: NO

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

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

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

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

Ref country code: AL

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

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

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

Ref country code: HR

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

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

Ref country code: RS

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

REG Reference to a national code

Ref country code: AT

Ref legal event code: MK05

Ref document number: 988827

Country of ref document: AT

Kind code of ref document: T

Effective date: 20180411

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

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

REG Reference to a national code

Ref country code: DE

Ref legal event code: R097

Ref document number: 602015009965

Country of ref document: DE

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

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

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

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

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

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

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

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

Ref country code: SM

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

REG Reference to a national code

Ref country code: CH

Ref legal event code: PL

26N No opposition filed

Effective date: 20190114

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 FAILURE TO SUBMIT A TRANSLATION OF THE DESCRIPTION OR TO PAY THE FEE WITHIN THE PRESCRIBED TIME-LIMIT

Effective date: 20180411

Ref country code: LU

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

Effective date: 20180727

REG Reference to a national code

Ref country code: BE

Ref legal event code: MM

Effective date: 20180731

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

Ref country code: CH

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

Effective date: 20180731

REG Reference to a national code

Ref country code: IE

Ref legal event code: MM4A

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

Ref country code: BE

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

Effective date: 20180731

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

Ref country code: IE

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

Effective date: 20180727

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

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

Ref country code: TR

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

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

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

Ref country code: MK

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

Effective date: 20180411

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; INVALID AB INITIO

Effective date: 20150727

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

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

Ref country code: IT

Payment date: 20230620

Year of fee payment: 9

Ref country code: FR

Payment date: 20230621

Year of fee payment: 9

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

Ref country code: GB

Payment date: 20230620

Year of fee payment: 9

Ref country code: ES

Payment date: 20230801

Year of fee payment: 9

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

Ref country code: DE

Payment date: 20230620

Year of fee payment: 9