EP2345029B1 - Procédé, programme informatique et entité de décodage d'un signal audio numérique - Google Patents

Procédé, programme informatique et entité de décodage d'un signal audio numérique Download PDF

Info

Publication number
EP2345029B1
EP2345029B1 EP09755960.3A EP09755960A EP2345029B1 EP 2345029 B1 EP2345029 B1 EP 2345029B1 EP 09755960 A EP09755960 A EP 09755960A EP 2345029 B1 EP2345029 B1 EP 2345029B1
Authority
EP
European Patent Office
Prior art keywords
transform
decoding
coding
sequence
sub
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
EP09755960.3A
Other languages
German (de)
English (en)
Other versions
EP2345029A1 (fr
Inventor
Pierrick Philippe
David Virette
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 EP2345029A1 publication Critical patent/EP2345029A1/fr
Application granted granted Critical
Publication of EP2345029B1 publication Critical patent/EP2345029B1/fr
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/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/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/0212Speech or audio signals analysis-synthesis techniques for redundancy reduction, e.g. in vocoders; Coding or decoding of speech or audio signals, using source filter models or psychoacoustic analysis using spectral analysis, e.g. transform vocoders or subband vocoders using orthogonal transformation
    • 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
    • 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/08Determination or coding of the excitation function; Determination or coding of the long-term prediction parameters
    • G10L19/10Determination or coding of the excitation function; Determination or coding of the long-term prediction parameters the excitation function being a multipulse excitation
    • G10L19/107Sparse pulse excitation, e.g. by using algebraic codebook
    • 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 digital signals.
  • the invention is advantageously applied to the coding of sounds with alternating speech and music.
  • 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 long-term prediction to model the vibration of vocal chords in voiced period, a stochastic excitation (white noise, algebraic excitation), and a short prediction -term to model vocal tract changes.
  • Transform coders 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 coefficients of the digitized sound.
  • AMR WB + has been proposed in the document 3rd Generation Partnership Project; Technical Specification Group Service and System Aspects; Audio Codec processing functions; Extended AMR Wideband codec; Transcoding functions (Release 6) ", 3GPP standard; 3GPP TS 26.290, 3RD Geeneration Partnership Project (3GPP), 1 May 2004, pages 1-71 , XP050370247.
  • This technique is based on CELP technology of the AMR WB type and transform coding based on a Fourier transform overlay.
  • the windows used in this encoder are not optimal vis-à-vis the concentration of energy: the frequency forms of these windows are relatively fixed.
  • TDAC Time Domain Aliasing Cancellation
  • TDAC makes it possible to obtain excellent quality on the music. Nevertheless, this has the disadvantage of introducing temporal folds that make it difficult to combine with CELP type technologies.
  • An object of the present invention is to propose a technique for reconstructing an audio signal, with good quality, by alternating transform coding techniques (for example with critical sampling) and predictive coding techniques (for example of the CELP type ).
  • the folding created by the coding in the subsequence of the first sequence can be eliminated by means of samples of this subsequence resulting from the decoding of the sub-sequence within the second sequence.
  • the second sequence can be decoded because the samples of the past, useful for predictive decoding, do not have this folding.
  • the transform coding is a critical sampling transform coding.
  • transform coding is a TDAC type transform coding.
  • predictive coding is a CELP encoding.
  • substantially continuous means that the third part makes it possible to have no discontinuity between the first and second parts. Indeed, this type of discontinuity reduces the quality of decoding by adding decoding noise.
  • the perfect reconstruction relation imposes a relation between the forms of the windows of analysis and synthesis.
  • the relation of reconstruction makes appear a direct relation between the two forms.
  • the additional number of samples is related to the size of the intermediate part.
  • the middle part is a sinus arch.
  • the intermediate part is a function derived from "Kaiser-Bessel”. In addition, it can come from a window optimization calculation and not have an explicit expression.
  • the summary window is an asymmetric window.
  • the synthesis window further comprises a fourth continuous initial portion between a substantially zero value and a non-zero value of the first part.
  • the fourth part of the synthesis window is a smooth transition between an initial value and a value of the nominal part
  • the third part is an abrupt transition between a value of the nominal part and a value of the substantially zero part.
  • first and second sequences belong to the same frame of the digital signal.
  • the encoding of the first sequence can be used as a transition encoding after the encoding of a frame by transform coding. This makes it possible to improve the coding efficiency by not disturbing this frame.
  • the folding present in the decoded subsequence can be eliminated by using decoded CELP-decoded samples using long-term prediction.
  • the combination is a linear combination.
  • step b5) corresponds exactly to the folding present in the decoded subsequence.
  • the creation of the folding can be done by applying a matrix representing direct and inverse transformation operations.
  • a matrix representing direct and inverse transformation operations.
  • Such a matrix may be equivalent to the application of transform coding immediately followed by transform decoding.
  • the same coding / decoding by transform can be used, with the same windows of analysis and synthesis, each time such coding / decoding is performed.
  • the present invention also provides a computer program comprising instructions for implementing the decoding method as described, when the program is executed by a processor.
  • the present invention provides a decoding entity adapted to implement the decoding method as described.
  • encoders / decoders described may comprise a signal processor, storage elements, as well as means of communication between these elements.
  • temporal relationships can be used between the two types of coding: the time position of the CELP and transformed frames being temporally offset.
  • duration of the frames, or sequences covered by the CELP coding by an overlap, during a transition from transform to CELP.
  • This duration can be variable in time if the transform requires a good frequency concentration.
  • the duration of use of the CELP coding can be variable from one frame to another, in order to quickly adapt the coding technique to changes in the nature of the sounds.
  • a frame of M samples can be subdivided into several subframes mixing portions encoded in CELP and others in the transformed domain.
  • the invention finds application in sound coding systems, in particular in standardized speech coders, in particular to the ITU ("International Telecommunication Union") or to the ISO ("International Standard Organization") for coding generic sounds, including speech signals.
  • ITU International Telecommunication Union
  • ISO International Standard Organization
  • a digitized sound signal is considered according to a sampling period 1 F e (Fe being the sampling frequency).
  • F e being the sampling frequency
  • the samples are denoted x n + tM for each moment n + tM .
  • the following inverse transform, at decoding, is applied in order to reconstruct the samples 0 ⁇ n ⁇ M which are then in an overlapping area of two consecutive transforms.
  • the synthesis is illustrated by an example on the figure 1 .
  • two inverse transforms of size M h s0 and h s1 are passed .
  • the samples covered by the common part are added between h s0 and h s1 .
  • the reconstruction will be perfect if the windows verify the perfect reconstruction conditions stated above.
  • h s0 (n) will be taken as symmetric in this area of h s1 to obtain the perfect reconstruction.
  • h s1 can also be defined by a derived "Kaiser Bessel" function used for example in AAC coders.
  • a first frame T30 (windowed by h s0 ) combined with the frame T31 (windowed by hs1) makes it possible to reconstruct the segment from M to 2M-1, the frames T31 and T33 making it possible to obtain the samples 2M to 3M-1 etc. .
  • the critical sampling is respected and the reconstruction is perfect insofar as the analysis and synthesis filters verify the necessary condition.
  • the sample x 3M / 2 + n (n ⁇ Mo / 2) is transmitted in the frame T31 then the sample x 3M / 2-1 -n can be generated based on the knowledge of x 0 , M + M / 2 + n from the frame T30.
  • h s0 contains zeros between M + (M + M o ) / 2 and 2M-1
  • h a1 contains zeros between 0 and (MM o ) / 2.
  • h s1 contains only zeros between 0 and (M-Mo) / 2
  • h a0 contains only zeros between M + (M + Mo) / 2 and 2M-1.
  • a converted type coding using TDAC is alternated with a time-type coding which consists of a CELP coder (for example according to AMR recommendation WB).
  • the signal r is constructed with respect to old samples taken upstream of T samples weighted by a gain, transmitted and updated periodically, and a so-called stochastic part w n assigned a gain b, transmitted and updated also over time.
  • T represents the pitch.
  • the AMR encoder WB estimates the components a, b and T and the part w n to be added according to the flow rate considered.
  • the CELP decoder uses past samples that should not have artifacts.
  • the frame T51 is coded in TDAC, there will be folding in the samples between M + (MM 0 ) / 2 and M + (M + M 0 ) / 2 as long as the frame T52 will not be restored. with the folding to delete that of the T51 frame.
  • the area of coverage of the samples transmitted by this coding is widened to cover the initial transition zone completely.
  • the duration of the CELP is extended to the content of index M + (M-Mo) / 2 ... 5M / 2.
  • the zone M o is limited in duration in order to avoid transmitting too much additional information.
  • M o is around 1 to 2 ms for a frame of duration M corresponding to 20 ms.
  • the number of samples is calculated based on the sampling frequency.
  • Mo / 2 as a duration proportional to a subframe of CELP, that is to say the usual duration of updating pitch / gain values and stochastic vector, where a size adapted to fast algorithms for the search of the stochastic vector and its transmission effectively. For example, we take a power of 2.
  • the period between M and M + (M-Mo) / 2 is first reconstructed using the inverse transform of a frame T50 (not shown) preceding the frame T51. Then the area between M + (M-Mo) / 2 and 2M-1 is reconstructed with the CELP alone which is based for the long term on the samples returned by the transformed part.
  • a variant for obtaining the samples between M + (M-Mo) / 2 and M + (M + Mo) / 2-1 consists in combining the CELP samples with the samples containing folding originating from the T51 frame.
  • we can achieve a linear combination of samples from the CELP and the previously determined equation x 3 ⁇ M / 2 - 1 - not 1 h at ⁇ 0 , 3 ⁇ M / 2 - 1 - not ⁇ x ⁇ 0 , 3 ⁇ M / 2 + not h s ⁇ 0 , 3 ⁇ M / 2 + not - h at ⁇ 0 , 3 ⁇ M / 2 + not ⁇ x 3 ⁇ M / 2 + not .
  • ⁇ n set of positive or zero coefficients less than or equal to one.
  • Portion 2M, ... 3M-1 is decoded using the end of the CELP samples transmitted between the indices 2M to 5M / 2. Then, based on this decoded result, the samples from the following transform are reconstructed in the overlap area, which contains folding in a similar manner to the overlap area between the frames T51 and T52.
  • the window h 51 may be asymmetrical.
  • the overlap area between the CELP part and TDAC, noted M o ', may be different from M o .
  • the CELP frame covers a duration equal to the size M + Mo / 2 as presented on the figure 4 .
  • this frame is divided into sub segments, of size noted Mc on the figure 5 , allowing a frequent update of the parameters making it possible to synthesize a signal CELP of quality.
  • the values of pitch, gain and the stochastic part are initially transmitted and updated optionally.
  • the length of the first sub-segment (Mc ') immediately following the transform may be different if it is desired to use an arbitrary length Mo' with a standard CELP encoder with Mc imposed by this standard.
  • the pitch can be estimated on the decoded part before the sample of index M + (M-Mo) / 2. Thus, it is possible to avoid transmitting the initial pitch, only the pitch gain that is estimated according to the common method presented in AMR recommendation WB is transmitted.
  • the pitch gain is not transmitted. It is estimated on the decoded signal in the transformed part.
  • the pitch estimate can be performed by including the period M + (M-Mo) / 2 to M + (M + Mo) / 2 which contains folded components.
  • the stochastic part is transmitted in preamble, or ignored. And this, especially if it is considered negligible because of its low power, or if during the reconstruction is based on the version using the weighting ⁇ n .
  • the portion of duration Mo / 2 covered by the CELP can therefore be a specialized part, in that it can benefit from the information resulting from the complete decoding of the part resulting from the previous transform.
  • the CELP encoding covers a shorter length than the base frame of length M.
  • the covered part by the samples M + (MM / 2) / 2 to 2M + M / 16 is encoded from a transform of a size shorter than the initial size (M / 2).
  • the frames T61, T62 and T64 are represented in the transformed domain of the TDAC.
  • the frames T61 and T64 are encoded with transformations of length M (windows h 61 and h 64 ), the frame T62 being coded with a transform of size M / 2 (window h 62 ).
  • This coding is effective because the window h 61 is relatively soft, which allows to obtain a better concentration of energy in the frequency domain.
  • the h 62 window has a steeper transition in the vicinity of the 2M sample, but this steep window does not penalize the quality of the coding too much because temporally the duration affected is short.
  • a frame of length M can be subdivided into subparts coded in CELP or TDAC of variable size.
  • LPC synthesis filters can optionally be applied to restore the sound signal if necessary.
  • the CELP coder operates it, that is to say that the excitation signal r n will be well calculated in the residual domain of a linear prediction filter A ( z ). Special attention will be paid for the signal synthesized by the first inverse transform, and which is therefore in a perceptually weighted domain, is returned to the field of CELP excitation, so that the long-term portion of the CELP excitation can be calculated.
  • the samples are coded from 0 to 2M-1 by transform coding according to a transform vector.
  • X 0 T the transform vector
  • This decoding gives the samples from 0 to 2M-1 of a decoded signal x .
  • This decoding reveals REP1 folding, especially in samples from M to 2M-1.
  • samples of M to 3M-1 are coded by transform coding according to a transform vector.
  • X 1 T is a transform vector.
  • Decoding of this transform vector gives the samples from M to 3M-1 of the decoded signal x .
  • This decoding shows the same folding with a sign opposite to REP1 in the samples from M to 2M-1 than during the decoding of X 0 T . It also shows REP2 folding in samples from 2M to 3M-1 in x .
  • this vector requires knowledge of previous samples. That is, samples from 2M to 3M-1. These samples are available for decoding X 1 T , nevertheless they are unusable because of the presence of REP2 folding.
  • REP2 folding requires knowledge of x samples from 2M to 3M-1 to recreate the folding and delete it by combination.
  • these samples are not available for decoding.
  • the present invention proposes the solution illustrated on the figure 8 .
  • the prediction vector X 2 p code a number M of samples comprising part of the samples coded by X 1 T .
  • This arrangement makes it possible to reconstruct the signal x at decoding.
  • the samples preceding the REP folding creates the decoding of X 1 T are used for the decoding of the first samples that the decoding of X 2 p will allow to get. That is to say, those he has in common with X 1 T .
  • samples of x are retrieved to recreate REP folding.
  • the samples of x corresponding to REP are subjected to coding followed by a decoding identical to those of the samples from M to 3M-1.
  • step S90 samples of a signal to be encoded are received. Then, in step S91, two sample sequences are delimited, so that the second sequence begins before the end of the first sequence. A first sequence SEQ1 and a second sequence SEQ2 are thus obtained.
  • Each of these sequences is then coded according to transform coding in step S93 for SEQ1, and according to a predictive coding in step S94 for SEQ2.
  • This window has four particular parts.
  • INIT corresponds to the initial part of the filter, one chooses this part according to the coding of the preceding samples. For example, here, H makes it possible to reconstitute a portion of SEQ1 (samples 0 to M-1). If the samples preceding SEQ1 are coded by transform, it is advantageous to choose INIT as a smooth transition. This makes it possible not to disturb these previous samples.
  • NOMI corresponds to a nominal part.
  • this portion takes a substantially constant value.
  • NL corresponds to a substantially zero portion of the window.
  • the duration of NL (or the number of coefficients of NL) can advantageously be chosen as a function of the duration (or number of coefficients) of NOMI.
  • the INTER part is a continuous part between NOMI and NL.
  • This part can have a shape adapted to the transition between the transform coding of SEQ1 and the predictive encoding of SEQ2. For example, it's a relatively abrupt transition.
  • INIT and NOMI are applied to the subsequence S-SEQ1 of SEQ1 which does not include a sample of S-SEQ, the subsequence common to SEQ1 and SEQ2.
  • INTER is applied to S-SEQ.
  • NL is applied to S-SEQ2, the subsequence of SEQ2 that does not have an S-SEQ sample.
  • steps S110 and S111 a transform vector comprising S-SEQ1 * samples encoding S-SEQ1, and a prediction vector comprising S-SEQ * samples encoding S-SEQ and S-SEQ2 * samples encoding S, are respectively received. -SEQ2.
  • step S112 an inverse transform is applied to the S-SEQ1 * samples.
  • it is a window of the H type.
  • step S113 comprising additional decoding operations to obtain S-SEQ1.
  • step S114 S-SEQ decoded by step S113, and S-SEQ * are received. At least S114 S-SEQ is decoded, at least by predictive decoding.
  • step S115 decoded S-SEQ is received in step S114 and S-SEQ2 * and then S-SEQ2 is decoded by predictive decoding. If necessary, it is also possible to use S-SEQ1 decoded in step S113.
  • step S114 is described with reference to the figure 12 .
  • step S120 S-SEQ1 (from S114) and S-SEQ * are received, then S-SEQ is decoded by predictive decoding. We obtain S-SEQ '.
  • step S121 an inverse transform (for example that already applied to S-SEQ1 * to obtain S-SEQ1) is applied to S-SEQ1 *.
  • S-SEQ 1 * We obtain S-SEQ ".
  • step S 122 a linear combination of the samples S-SEQ 'and S-SEQ "is performed to obtain S-SEQ.
  • step S114 is described.
  • step S130 S-SEQ1 and S-SEQ * are received and S-SEQ is decoded.
  • S-SEQ is decoded.
  • step S131 the same folding as S-SEQ "in S-SEQ 'is created, for which purpose the matrix S described above is applied to it.
  • S-SEQ "corresponds to the decoding of S-SEQ * by transform in step S132.
  • S-SEQ '' and S-SEQ '' are combined in step S133 to obtain S-SEQ.
  • This coding entity comprises a processing unit 140 adapted to receive a digital signal GIS and to determine two sequences of samples: a first sequence comprising an S-SEQ subsequence common to both sequences, and a subsequence S-SEQ1, and a second sequence which begins before the end of the first sequence and which contains S-SEQ and an S-SEQ2 subsequence.
  • the coding entity also comprises a transform coder 141, and a predictive coder 142. These coders are adapted to implement the steps of the coding method described above, and respectively deliver a transformed vector V_T encoding the first sequence and a prediction vector V_P encoding the second sequence.
  • Communication means may be provided for exchanging signals between the encoders.
  • This decoding entity DECOD comprises reception units 150 and 151 for respectively receiving a transform vector V_T comprising S-SEQ1 * samples encoding S-SEQ1, and a prediction vector V_P comprising S-SEQ * samples encoding S-SEQ. and S-SEQ2 * samples encoding S-SEQ2.
  • the unit 150 provides S-SEQ1 * to an inverse transform application unit 152.
  • the unit 152 may also provide a result for a transform decode unit 153 to perform additional decoding operations. and provide S-SEQ1.
  • the decoding unit 154 receives S-SEQ1 decoded by the unit 153, and S-SEQ * provided by the unit 151.
  • the unit 154 decodes, at least by predictive decoding S -SEQ, and provided S-SEQ.
  • DECOD includes a predictive decoding unit 155 for receiving S-SEQ provided by the unit 154, and S-SEQ2 * provided by the unit 151, then decoding S-SEQ2 by predictive decoding and providing S-SEQ2. If necessary, the unit 153 also provides S-SEQ1 previously decoded by the unit 153.
  • a computer program for comprising instructions for implementing the exemplary coding method described above could be established according to a general algorithm described by the figure 9 .
  • This computer program could be executed in a processor of a coding entity as described above, to encode a signal with at least the same advantages as those provided by the coding method.
  • This computer program could be executed in a processor of a decoding entity as described above, for decoding a signal with at least the same advantages as those provided by the decoding method.
  • This device DISP comprises an input E to receive a digital signal SIG.
  • the device also comprises a processor PROC of digital signals adapted to carry out coding / decoding operations in particular on a signal coming from the input E.
  • This processor is connected to one or more memory units MEM adapted to store information necessary for driving. of the device for coding / decoding. For example, these memory units include instructions for implementing the coding / decoding method described above. These memory units may also include calculation parameters or other information.
  • the processor is also adapted to store results in these memory units.
  • the device comprises an output S connected to the processor to provide an output signal SIG *.

Landscapes

  • Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • Spectroscopy & Molecular Physics (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)
  • Compression, Expansion, Code Conversion, And Decoders (AREA)

Description

  • La présente invention concerne le domaine du codage des signaux numériques.
  • L'invention s'applique avantageusement au codage de sons présentant des alternances de parole et de musique.
  • Pour coder efficacement les sons de parole, les techniques de type CELP (« Code Excited Linear Prédiction ») sont préconisées. Pour coder efficacement les sons musicaux, on préconise plutôt les techniques de codage par transformée.
  • 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 à long-terme pour modéliser la vibration des cordes vocales en période voisée, une excitation stochastique (bruit blanc, excitation algébrique), et une prédiction à court-terme pour modéliser les modifications du conduit vocal.
  • Les codeurs par transformée 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 de coefficients du son numérisé.
  • Une solution pour coder efficacement un signal contenant ces deux types de contenu, consiste à sélectionner au cours du temps la meilleure technique. Cette solution a notamment été préconisée par l'organisme de standardisation 3GPP (« 3rd Génération Partnership Project »), et une technique nommée AMR WB+ a été proposée dans le document « 3rd Génération Partnership Project; Technical Spécification Group Service and System Aspects ; Audio Codec processing functions ; Extended AMR Wideband codec ; Transcoding functions (Release 6) », 3GPP standard ; 3GPP TS 26.290, 3RD geeneration partnership project (3GPP), 1 mai 2004, pages 1-71, XP050370247.
  • Cette technique est basée sur une technologie CELP de type AMR WB et un codage par transformation basé sur une transformée de Fourier à recouvrement.
  • Cette solution souffre d'une qualité insuffisante sur la musique. Cette insuffisance vient particulièrement du codage par transformée. En effet, la transformée de Fourier à recouvrement n'est pas une transformation à échantillonnage critique, et de ce fait, elle est sous optimale.
  • De plus, les fenêtres utilisées dans ce codeur ne sont pas optimales vis-à-vis de la concentration d'énergie : les formes fréquentielles de ces fenêtres sont relativement figées.
  • On connait des transformations à échantillonnage critique. Par exemple, les transformées utilisées dans les codeurs de musique de type MP3 et AAC. Ces transformées reposent sur le formalisme appelé TDAC (« Time Domain Aliasing Cancellation »).
  • L'utilisation du TDAC permet d'obtenir une excellente qualité sur la musique. Néanmoins, cela a l'inconvénient d'introduire des repliements temporels qui rendent difficile la combinaison avec les technologies de type CELP.
  • En effet, lors d'une transition de type TDAC vers CELP le repliement temporel de la partie TDAC n'est pas annulé par le signal issu du CELP qui lui n'intègre aucun repliement.
  • Un objet de la présente invention est de proposer une technique permettant de reconstruire un signal audio, avec une bonne qualité, en alternant des techniques de codage par transformée (par exemple à échantillonnage critique) et des techniques de codage prédictif (par exemple de type CELP).
  • A cet effet, la présente invention concerne un procédé de décodage appliqué après un codage d'un signal numérique audio, ledit codage comportant les étapes :
    • coder une première séquence d'échantillons du signal numérique audio selon un codage par transformée ;
    • coder une deuxième séquence d'échantillons du signal numérique audio selon un codage prédictif ;
    et dans lequel la deuxième séquence commence avant la fin de la première séquence, une sous-séquence commune aux première et deuxième séquences étant ainsi codée à la fois par codage prédictif et par codage par transformée.
  • Ainsi, lors du décodage du signal numérique audio, le repliement créé par le codage dans la sous-séquence de la première séquence peut être supprimé au moyen d'échantillons de cette sous-séquence issus du décodage de la sous-séquence au sein de la deuxième séquence. De plus, la deuxième séquence peut être décodée car les échantillons du passé, utiles au décodage prédictif, ne comportent pas ce repliement.
  • Avantageusement le codage par transformée est un codage par transformée à échantillonnage critique.
  • Par exemple, le codage par transformée est un codage par transformée de type TDAC.
  • Par exemple, le codage prédictif est un codage de type CELP.
  • Dans une réalisation avantageuse, le codage par transformée de la première séquence comprend l'application d'une fenêtre d'analyse permettant de déduire d'une relation de reconstruction parfaite du signal numérique une fenêtre de synthèse comportant au moins trois parties :
    • une première partie nominale,
    • une deuxième partie terminale sensiblement nulle,
    • une troisième partie intermédiaire sensiblement continue entre les première et deuxième parties.
  • On prévoit alors qu'au moins les parties de la fenêtre d'analyse permettant de déduire respectivement les deuxième et troisième parties de la fenêtre de synthèse sont appliquées à la sous-séquence commune aux deux séquences.
  • On entend par « sensiblement continue » le fait que la troisième partie permet de ne pas avoir de discontinuité entre les première et deuxième parties. En effet, ce type de discontinuité réduit la qualité de décodage par adjonction de bruit de décodage.
  • La relation de reconstruction parfaite impose une relation entre les formes des fenêtres d'analyse et de synthèse. En outre, lors du passage entre un codage par transformée et un codage prédictif, il est possible de décrire la fenêtre d'analyse ou la fenêtre de synthèse de manière équivalente. En effet, dans ce cas, la relation de reconstruction fait apparaitre une relation directe entre les deux formes.
  • Avec une fenêtre d'analyse (et donc de synthèse) ainsi choisie, il est possible de réduire la zone dans laquelle le repliement apparait au décodage de la première séquence.
  • Avec la fenêtre ainsi définie, il est possible de réduire le nombre d'échantillons de la deuxième séquence (codage prédictif) à transmettre pour le décodage.
  • En outre, le nombre d'échantillons supplémentaire est lié à la taille de la partie intermédiaire.
  • Par exemple, la partie intermédiaire est une arche de sinus. Par exemple encore, la partie intermédiaire est une fonction dérivée de « Kaiser-Bessel ». En outre, elle peut être issue d'un calcul d'optimisation de fenêtre et ne pas avoir d'expression explicite.
  • Par exemple, la fenêtre de synthèse est une fenêtre asymétrique.
  • Ainsi, il est possible d'adapter le profil de la fenêtre de synthèse (donc la fenêtre d'analyse) au codage de la séquence suivant ou précédant la première séquence.
  • Dans une réalisation avantageuse, la fenêtre de synthèse comporte en outre une quatrième partie initiale continue entre une valeur sensiblement nulle et une valeur non nulle de la première partie.
  • Ainsi, il est possible de minimiser l'impact de la transition entre codage par transformée et codage prédictif sur le codage par transformée.
  • Par exemple, la quatrième partie de la fenêtre de synthèse est une transition douce entre une valeur initiale et une valeur de la partie nominale, et la troisième partie est une transition abrupte entre une valeur de la partie nominale et une valeur de la partie sensiblement nulle.
  • Ainsi, on obtient une meilleure concentration de l'énergie du signal dans le domaine fréquentiel pour une meilleure efficacité de codage de la partie transformée.
  • On peut prévoir que les première et deuxième séquences appartiennent à une même trame du signal numérique.
  • Ainsi, on peut utiliser le codage de la première séquence comme un codage de transition après le codage d'une trame par codage par transformée. Cela permet d'améliorer l'efficacité du codage en ne perturbant pas cette trame.
  • La présente invention prévoit un procédé de décodage d'un signal numérique audio, comportant les étapes :
    • recevoir un vecteur de transformée codant une première séquence d'échantillons du signal numérique audio selon un codage par transformée ;
    • recevoir un vecteur de prédiction codant une deuxième séquence d'échantillons du signal numérique audio selon un codage de type CELP utilisant une prédiction à long terme;
    dans lequel la deuxième séquence commence avant la fin de la première séquence, une sous-séquence commune aux première et deuxième séquences étant ainsi reçue codée à la fois par le codage de type CELP utilisant une prédiction à long terme et par le codage par transformée ; et qui comporte en outre les étapes :
    1. a) appliquer au vecteur de transformée une transformée inverse du codage par transformée pour décoder une sous-séquence de la première séquence non codée par codage de type CELP utilisant une prédiction à long terme;
    2. b) décoder au moins dans le vecteur de prédiction la sous-séquence commune aux première et deuxième séquences au moins par un décodage de type CELP utilisant une prédiction à long terme en se fondant sur au moins un échantillon issu de l'étape a);
    3. c) décoder dans le vecteur prédictif par un décodage de type CELP utilisant une prédiction à long terme une sous-séquence de la deuxième séquence non codée par codage par transformée, en se fondant sur au moins un échantillon issu de l'une des étapes a) et b).
  • Ainsi, on peut supprimer le repliement présent dans la sous-séquence décodée en utilisant des échantillons décodés par décodage de type CELP utilisant une prédiction à long terme.
  • Dans une réalisation avantageuse, l'étape b) comporte les sous-étapes :
    • b1) décoder dans le vecteur prédictif la sous-séquence commune aux première et deuxième séquences par un décodage de type CELP utilisant une prédiction à long terme en se fondant sur au moins un échantillon issu de l'étape a) ;
    • b2) appliquer au vecteur de transformée une transformée inverse du codage par transformée pour décoder la sous-séquence commune aux première et deuxième séquences ; et b3) décoder la sous-séquence commune aux première et deuxième séquences par combinaison d'au moins un échantillon issu de l'étape b1) avec un échantillon correspondant issu de l'étape b2).
  • Par exemple, la combinaison est une combinaison linéaire. En combinant ainsi les échantillons, on obtient un décodage plus robuste.
  • Dans une autre réalisation avantageuse, l'étape b) comporte les sous-étapes :
    • b4) décoder dans le vecteur prédictif la sous-séquence commune aux première et deuxième séquences par un décodage de type CELP utilisant une prédiction à long terme en se fondant sur au moins un échantillon issu de l'étape a);
    • b5) créer à partir d'au moins un échantillon issu de l'étape b4) un échantillon contenant un repliement équivalent à un codage par transformée suivi d'un décodage par transformée ;
    • b6) appliquer au vecteur de transformée une transformée inverse du codage par transformée pour décoder la sous-séquence commune aux première et deuxième séquences ; et
    • b7) décoder la sous-séquence commune aux première et deuxième séquences par combinaison d'au moins un échantillon issu de l'étape b5) avec un échantillon correspondant issu de l'étape b6).
  • Ainsi, le repliement créé par l'étape b5) correspond exactement au repliement présent dans la sous-séquence décodée.
  • La création du repliement peut se faire par application d'une matrice représentant des opérations de transformation directe et inverses. Une telle matrice peut être équivalente à l'application d'un codage par transformée immédiatement suivi d'un décodage par transformée.
  • Bien entendu, on peut utiliser un même codage prédictif pour tous les échantillons.
  • De même, on peut utiliser le même codage/décodage par transformée, avec les mêmes fenêtres d'analyse et de synthèse, chaque fois que l'on effectue un tel codage/décodage.
  • Dans un mode de réalisation, l'étape a) comporte l'application d'une fenêtre synthèse comportant au moins trois parties :
    • une première partie nominale,
    • une deuxième partie terminale sensiblement nulle,
    • une troisième partie intermédiaire continue entre les première et deuxième zones,
    et au moins les deuxième et troisième parties sont appliquées à des échantillons codant la sous-séquence commune aux deux séquences.
  • La présente invention prévoit également un programme informatique comportant des instructions pour la mise en oeuvre du procédé de décodage tel que décrit, lorsque le programme est exécuté par un processeur.
  • La présente invention prévoit une entité de décodage adaptée pour mettre en oeuvre le procédé de décodage tel que décrit.
  • On peut prévoir une entité de décodage de signal numérique audio, comportant des moyens de réception:
    • d'un vecteur de transformée codant une première séquence d'échantillons du signal numérique audio selon un codage par transformée ; et
    • d'un vecteur de prédiction codant une deuxième séquence d'échantillons du signal numérique audio selon un codage de type CELP utilisant une prédiction à long terme;
    dans lequel la deuxième séquence commence avant la fin de la première séquence, une sous-séquence commune aux première et deuxième séquences étant ainsi codée à la fois par le codage de type CELP utilisant une prédiction à long terme et par le codage par transformée ; et qui comporte en outre :
    • un premier décodeur pour appliquer au vecteur de transformée une transformée inverse du codage par transformée pour décoder une sous-séquence de la première séquence non codée par codage de type CELP utilisant une prédiction à long terme ;
    • un deuxième décodeur pour décoder au moins dans le vecteur prédictif la sous-séquence commune aux première et deuxième séquences au moins par un décodage de type CELP utilisant une prédiction à long terme en se fondant sur au moins un échantillon issu du premier décodeur par transformée ; et
    • un troisième décodeur prédictif pour décoder dans le vecteur prédictif par un décodage de type CELP utilisant une prédiction à long terme une sous-séquence de la deuxième séquence non codée par codage par transformée, en se fondant sur au moins un échantillon issu de l'un des premier et deuxième codeurs.
  • Dans une réalisation avantageuse, le deuxième décodeur comporte :
    • des premiers moyens pour décoder dans le vecteur prédictif la sous-séquence commune aux première et deuxième séquences par un décodage de type CELP utilisant une prédiction à long terme en se fondant sur au moins un échantillon issu du premier décodeur par transformée ;
    • des deuxièmes moyens pour appliquer au vecteur de transformée une transformée inverse du codage par transformée pour décoder la sous-séquence commune aux première et deuxième séquences; et
    • des troisièmes moyens pour décoder la sous-séquence commune aux première et deuxième séquences par combinaison d'au moins un échantillon issu des premiers moyens avec un échantillon correspondant issu des deuxièmes moyens.
  • Dans une autre réalisation avantageuse, le deuxième décodeur comporte :
    • des premiers moyens pour décoder dans le vecteur prédictif la sous-séquence commune aux première et deuxième séquences par un décodage de type CELP utilisant une prédiction à long terme en se fondant sur au moins un échantillon issu du premier décodeur par transformée ;
    • des quatrièmes moyens pour créer à partir d'au moins un échantillon restitué par les premiers moyens un échantillon contenant un repliement équivalent à un codage par transformée suivi d'un décodage par transformée ;
    • des cinquièmes moyens pour appliquer au vecteur de transformée une transformée inverse du codage par transformée pour décoder la sous-séquence commune aux première et deuxième séquences ; et
    • des sixièmes moyens pour décoder la sous-séquence commune aux première et deuxième séquences par combinaison d'au moins un échantillon issu des quatrièmes moyens avec un échantillon correspondant issu des cinquièmes moyens.
  • Bien entendu, tous les moyens réalisant un même type de codage ou décodage (prédictif de type CELP utilisant une prédiction à long terme ou par transformée) peuvent être réunis dans une même unité.
  • De même, on peut prévoir une seule unité (de codage ou de décodage) pour réaliser tantôt un codage, respectivement décodage, prédictif et par transformée.
  • Bien entendu, les codeurs/décodeurs décrits peuvent comporter un processeur de signal, des éléments de stockage, ainsi que des moyens de communication entre ces éléments.
  • Il est par exemple possible d'alterner des techniques de codage par transformation, par exemple à échantillonnage critique de type TDAC, et des techniques de codage prédictif, par exemple de type CELP au cours du temps afin d'obtenir une bonne qualité de reconstruction.
  • On peut utiliser à cet effet des relations temporelles particulières entre les deux types de codage : la position temporelle des trames CELP et transformée étant décalées temporellement.
  • Dans un exemple avantageux, on propose également d'allonger la durée des trames, ou des séquences couvertes par le codage CELP, par un recouvrement, lors d'une transition de transformée vers CELP. Cette durée peut être variable dans le temps si la transformée nécessite une bonne concentration fréquentielle.
  • La durée d'utilisation du codage CELP peut être variable d'une trame à une autre, cela afin d'adapter rapidement la technique de codage aux changements de nature des sons.
  • Selon un exemple avantageux, une trame de M échantillons pourra être subdivisée en plusieurs sous-trames mêlant des portions encodées en CELP et d'autres dans le domaine transformé.
  • L'invention trouve son application dans les systèmes de codage du son, en particulier dans les codeurs de parole normalisés, notamment à l'ITU (« International Télécommunication Union ») ou à l'ISO (« International Standard Organization ») pour le codage des sons génériques, incluant les signaux de parole.
  • D'autres caractéristiques et avantages de l'invention apparaîtront à l'examen de la description détaillée ci-après, et des figures annexées parmi lesquelles :
    • la figure 1 illustre deux fenêtres de synthèse d'un codage par transformée,
    • la figure 2 illustre des fenêtres de synthèse d'un mode de réalisation de l'invention,
    • la figure 3 illustre des trames de donnée traitées par des fenêtres de synthèse,
    • la figure 4 illustre des vecteurs d'échantillons obtenus par application des fenêtres de synthèse,
    • la figure 5 illustre le cas d'un codage TDAC suivi par un codage AMR WB, puis suivi d'un codage TDAC selon un mode de réalisation de l'invention,
    • la figure 6 illustre le même cas de codage avec une fenêtre asymétrique avantageuse,
    • la figure 7 illustre un contexte général d'un problème résolu par l'invention,
    • la figure 8 illustre un schéma général de résolution de ce problème par la présente invention,
    • la figure 9 illustre les étapes d'un mode de réalisation d'un procédé de codage,
    • la figure 10 illustre la composition d'une fenêtre de synthèse selon un mode de réalisation de l'invention,
    • la figure 1 1 illustre les étapes d'un mode de réalisation d'un procédé de décodage selon la présente invention,
    • la figure 12 illustre un décodage avantageux utilisé dans le procédé de décodage,
    • la figure 13 illustre une variante de ce décodage avantageux,
    • la figure 14 illustre un codeur,
    • la figure 15 illustre un décodeur selon un mode de réalisation de l'invention,
    • la figure 16 illustre un dispositif matériel adapté pour réaliser un exemple de codeur ou un décodeur selon un mode de réalisation de la présente invention.
  • Dans la suite, on commence par décrire une transformation TDAC à reconstruction parfaite, puis on présente une technique permettant de la rendre compatible avec un échantillonnage critique. Enfin, on décrit un codage CELP et une combinaison de ce codage avec le codage TDAC.
  • TDAC et reconstruction parfaite
  • On considère un signal sonore numérisé selon une période d'échantillonnage 1 F e
    Figure imgb0001
    (Fe étant la fréquence d'échantillonnage). Pour une trame donnée d'indice t, les échantillons sont notés x n+tM pour chaque instant n+tM.
  • L'expression de la transformée TDAC au codage de la trame est présentée ci-dessous : X t , k = 2 M - 1 x n + tM p k n 0 k < M ,
    Figure imgb0002
    • M représente la taille de la transformée,
    • Xl,k sont les échantillons dans le domaine transformé pour la trame t,
    • p k n = h a n C n , k = 2 M h a n cos π 4 M 2 n + 1 + M 2 k + 1
      Figure imgb0003
      est une fonction de base de la transformée dont :
      • le terme ha (n) est appelé filtre prototype ou "fenêtre de pondération d'analyse" et couvre 2M échantillons,
      • et dont le terme Cn,k définit la modulation.
  • Pour restituer les échantillons temporels initiaux, la transformation inverse suivante, au décodage, est appliquée afin de reconstituer les échantillons 0 ≤ n < M qui se situent alors dans une zone de recouvrement de deux transformées consécutives. Les échantillons décodés sont alors donnés par : x ^ n + tM + M = k = 0 M - 1 X t + 1 , k p k s n + X t , k p k s n + M ,
    Figure imgb0004

    p k s n = h s n C n , k
    Figure imgb0005
    définit la transformée de synthèse, la fenêtre de pondération de synthèse étant notée hs (n) et couvrant également 2M échantillons.
  • L'équation de reconstruction donnant les échantillons décodés peut s'écrire aussi sous la forme suivante : x ^ n + tM + M = k = 0 M - 1 X t + 1 , k h s n C k , n + X t , k h s n + M C k , n + M = h s n k = 0 M - 1 X t + 1 , k C k , n + h s n + M k = 0 M - 1 X t , k C k , n + M
    Figure imgb0006
  • Cette autre présentation de l'équation de reconstruction revient à considérer que deux transformées en cosinus inverse peuvent être effectuées successivement sur les échantillons dans le domaine transformé Xt,k et X t+l,k , leur résultat étant ensuite combiné par une opération de pondération et addition.
  • C'est l'addition de deux trames consécutives qui permet de supprimer les composantes dites repliées de la transformation. En effet si on écrit les opérations de transformation directes et inverses sous forme matricielle pour les trames t=0 et t=1 on a : X 0 , 0 X 0 , 1 X 0 , M - 1 = C 0 , 0 C 0 , 1 C 0 , 2 M - 1 C 1 , 0 C 1 , 1 C 1 , 2 M - 1 C M - 1 , 0 C M - 1 , 1 C M - 1 , 2 M - 1 h a 0 0 0 0 0 h a 0 1 0 0 0 h a 0 2 M - 1 x 0 x 1 x 2 M - 1
    Figure imgb0007
    X 1 , 0 X 1 , 1 X 1 , M - 1 = C 0 , 0 C 0 , 1 C 0 , 2 M - 1 C 1 , 0 C 1 , 1 C 1 , 2 M - 1 C M - 1 , 0 C M - 1 , 1 C M - 1 , 2 M - 1 h a 1 0 0 0 0 h a 1 1 0 0 0 h a 1 2 M - 1 x M x M + 1 x 3 M - 1
    Figure imgb0008
  • A la synthèse, on obtient : x ˜ 0 , 0 x ˜ 0 , 0 x ˜ 0 , 2 M - 1 = h s 0 0 0 0 0 h s 0 1 0 0 0 h s 0 2 M - 1 C 0 , 0 C 1 , 0 C M - 1 , 0 C 0 , 1 C 1 , 1 C M - 1 , 1 C 0 , 2 M - 1 C 1 , 2 M - 1 C 2 M - 1 , M - 1 X 0 , 0 X 0 , 1 x 0 , M - 1
    Figure imgb0009
    x ˜ 0 , 0 x ˜ 0 , 0 x ˜ 0 , 2 M - 1 = h s 0 0 0 0 0 h s 0 1 0 0 0 h s 0 2 M - 1 S h a 0 0 0 0 0 h a 0 1 0 0 0 h a 0 2 M - 1 x 0 x 1 x 2 M - 1
    Figure imgb0010
  • Avec S = C 0 , 0 C 1 , 0 C M - 1 , 0 C 0 , 1 C 1 , 1 C M - 1 , 1 C 0 , 2 M - 1 C 1 , 2 M - 1 C 2 M - 1 , M - 1 C 0 , 0 C 0 , 1 C 0 , 2 M - 1 C 1 , 0 C 1 , 1 C 1 , 2 M - 1 C M - 1 , 0 C M - 1 , 1 C M - 1 , 2 M - 1
    Figure imgb0011
    S = I M - J M 0 M 0 M I M + J M
    Figure imgb0012
    • IM étant la matrice carrée identité de taille M,
    • JM étant la matrice carrée anti-identité de taille M, qui à une série de valeurs d'indices croissants, renvoie la même série de valeur avec les indices décroissants,
    • 0 M est une matrice carrée de taille M ne contenant que des zéros.
  • Ainsi, il vient : { x ˜ 0 , n = h s 0 , n h a 0 , n x n - h a 0 , M - 1 - n x M - 1 - n x ˜ 0 , M + n = h s 0 , M + n h a 0 , M + n x M + n + h a 0 , 2 M - 1 - n x 2 M - 1 - n ,
    Figure imgb0013

    et par analogie en utilisant la trame t=1 : { x ˜ 1 , n = h s 1 , n h a 1 , n x M + n - h a 1 , M - 1 - n x 2 M - 1 - n x ˜ 1 , M + n = h s 1 , M + n h a 1 , M + n x 2 M + n + h a 1 , 2 M - 1 - n x 3 M - 1 - n .
    Figure imgb0014
  • Ainsi, si on additionne 0,M+n et x̃l,n terme à terme on obtient : x ^ M + n = x ˜ 0 , M + n + x ˜ 1 , n = h s 0 , M + n h a 0 , M + n x M + n + h a 0 , 2 M - 1 - n x 2 M - 1 - n + h s 1 , n h a 1 , n x M + n - h a 1 , M - 1 - n x 2 M - 1 - n
    Figure imgb0015
    x ^ M + n = x ˜ 0 , M + n + x ˜ 1 , n = x M + n h a 0 , M + n h s 0 , M + n + h a 1 , n h s 1 , n + x 2 M - 1 - n h a 0 , 2 M - 1 n h s 0 , M + n - h a 1 , M - 1 - n h s 1 , n
    Figure imgb0016
  • Si on veut assurer M+n = x M+n et obtenir ainsi la reconstruction parfaite, on obtient les conditions nécessaires suivantes sur les filtres d'analyse et de synthèse: { h a 0 , M + n h s 0 , M + n + h a 1 , n h s 1 , n = 1 h a 0 , 2 M - 1 - n h s 0 , M + n - h a 1 , M - 1 - n h s 1 , n = 0 ,
    Figure imgb0017

    c'est-à-dire { h a 1 M - 1 - n = D n h s 0 n + M h a 0 2 M - 1 - n = D n h s 1 n ,
    Figure imgb0018

    avec D n = h a 0 n + M h a 1 M - 1 - n + h a 1 n h a 0 2 M - 1 - n .
    Figure imgb0019
  • Il apparait que pour assurer la reconstruction parfaite, les formes d'analyse et de synthèse sont construites par retournement temporel et pondération. En conséquence, si hs contient des zéros en n, alors ha en contiendra dans la partie symétrique autour de M/2, c'est-à-dire à l'indice M-1-n.
  • On illustre la synthèse par un exemple sur la figure 1. Dans cet exemple, on fait succéder deux transformées inverses de taille M hs0 et hs1.
  • Pour reconstruire les échantillons entre M et 2M-1 on additionne les échantillons couverts par la partie commune entre hs0 et hs1. La reconstruction sera parfaite si les fenêtres vérifient les conditions de reconstruction parfaite énoncées ci-dessus.
  • Le cas usuel de reconstruction se situe donc lorsque dans un décodeur on reçoit deux spectres consécutifs, par exemple Xt et Xt+1, issus de transformations directes et qu'on leur applique les transformations inverses pour obtenir respectivement 0 et 1. Le signal d'origine sera parfaitement reconstruit par addition des M derniers échantillons du premier ensemble avec les M premiers du second.
  • On peut également considérer que Xt seul a été transmis. La reconstruction parfaite pourra être obtenue si on sait construire le signal l,n . Ceci sera possible si on connaît les échantillons x M à x 2M-1. De cette manière il sera possible, par pondération par les fenêtres hs1 et ha1, de construire le vecteur permettant de supprimer le repliement émanant du vecteur 0.
  • Dans ce qui précède, on a considéré que l'on avait à disposition les signaux Xt et x M à x 2M-1.
  • Si maintenant on considère que la trame suivante est transmise dans le domaine fréquentiel (Xt+2), on ne supprime pas le repliement situé entre x 2M à x 3M-1. Pour ce faire, il aurait fallu avoir reçu ces échantillons au préalable. Néanmoins, cette solution triviale est sous optimale du point de vue de l'échantillonnage critique.
  • Dans la suite, on présente un moyen de pallier cet inconvénient.
  • Codage temporel efficace
  • On propose de choisir des fenêtres particulières permettant de transmettre le signal codé en temporel quand souhaité sans toutefois perdre l'échantillonnage critique (c'est-à-dire le même nombre d'échantillons transmis et reconstruits). C'est ce qui est illustré sur la figure 2.
  • Par construction, comme illustré sur la figure 2, on choisit :
    • hs0 = 0 pour n compris entre M+ (M+Mo)/2 et 2M-1, et
    • hs1 = 0 pour n compris entre 0 et (M-Mo)/2,
    avec Mo une valeur entière donnée comprise entre 1 et M-1.
  • Par exemple, les portions descendantes et ascendantes de hs0 et hs1 autour de l'échantillon M+M/2 sont constituées d'arches de sinus données par l'équation :
    • hs1(n) =sin (pi * (0.5+n - ((M-Mo)/2))/2/Mo) pour n compris entre (M-Mo)/2 et (M+Mo)/2.
  • hs0(n) sera prise comme symétrique dans cette zone de hs1 pour obtenir la reconstruction parfaite.
  • hs1 pourra être défini également par une fonction de « Kaiser Bessel » dérivée utilisé par exemple dans les codeurs de type AAC.
  • Ainsi définies, les formes de hs0 et hs1 permettent d'assurer la reconstruction parfaite.
  • Comme illustré sur la figure 3, une première trame T30 (fenêtrée par hs0) combinée à la trame T31 (fenêtrée par hs1) permet de reconstruire le segment de M à 2M-1, les trames T31 et T33 permettant d'obtenir les échantillons 2M à 3M-1 etc.
  • Dans le cas où le signal de la trame T31 est transmis en fréquentiel, l'échantillonnage critique est respecté et la reconstruction est parfaite dans la mesure où les filtres d'analyse et de synthèse vérifient la condition nécessaire.
  • Dans la mesure où l'échantillon x3M/2+n (n<Mo/2) est transmis dans la trame T31 alors l'échantillon x3M/2-1-n pourra être généré en se basant sur la connaissance de 0,M+M/2+n issu de la trame T30. On se basera sur la relation : x ˜ 0 , M + n = h s 0 , M + n h a 0 , M + n x M + n + h a 0 , 2 M - 1 - n x 2 M - 1 - n pour n = M / 2.
    Figure imgb0020
  • On aura alors : x 3 M / 2 - 1 - n = 1 h a 0 , 3 M / 2 - 1 - n x ˜ 0 , 3 M / 2 + n h s 0 , 3 M / 2 + n - h a 0 , 3 M / 2 + n x 3 M / 2 + n .
    Figure imgb0021
  • Ceci pourra être réitéré pour retrouver les échantillons dans la zone de recouvrement, c'est-à-dire entre les échantillons (M-Mo)/2 et M/2.
  • En utilisant les relations déterminées au préalable: { h a 1 M - 1 - n = D n h s 0 n + M h a 0 2 M - 1 - n = D n h s 1 n .
    Figure imgb0022
  • Du fait que hs0 contient des zéros entre M+(M+Mo)/2 et 2M-1, ha1 contient des zéros entre 0 et (M-Mo)/2.
  • De même, du fait que hs1 ne contient que des zéros entre 0 et (M-Mo)/2, ha0 ne contient que des zéros entre M+(M+Mo)/2 et 2M-1.
  • hs0 = 0 pour n=M+(M+Mo)/2...2M-1,
  • hs1 = 0 pour n=0...(M-Mo)/2,
  • ha1 = 0 pour n=0...(M-Mo)/2,
  • ha0 = 0 pour n=M+(M+Mo)/2 et 2M-1.
  • Par conséquent, comme illustré sur la figure 4, le vecteur 0,M+n contient 3 zones :
    • 0,M+n =0 de n= (M+Mo)/2...M-1,
    • 0,M+n ne contient pas de composantes repliées entre n=0 et n=(M-Mo)/2, et
    • la zone centrale autour de M+M/2 pour laquelle il existe des composantes repliées.
  • De même :
    • l,n =0 entre n=0 et n=(M-Mo)/2,
    • l,n ne contient pas de composantes de repliement entre (M+Mo)/2 et M-1, et
    • la zone centrale autour de M/2 pour laquelle il existe des composantes repliées.
  • Grâce à ces propriétés, on peut donc recouvrer le segment xM...x2M-1 en assurant une reconstruction parfaite.
  • Cette reconstruction parfaite peut être obtenue :
    • par transmission dans le domaine transformé du vecteur X1,
    • par transmission dans le domaine temporel des échantillons x3M/2̇···x5M/2-1
  • D'après ce qui précède, on peut maintenant réaliser un codage TDAC à échantillonnage critique tout en évitant les problèmes liés au repliement. Dans la suite, on décrit un codage CELP, permettant une combinaison avantageuse avec le codage TDAC précédemment décrit.
  • TDAC+CELP
  • On rappelle que l'on se place dans le cadre d'un fonctionnement de type présenté dans la spécification AMR WB+. On alterne un codage de type transformé utilisant la TDAC avec un codage de type temporel qui est constitué par un codeur CELP (par exemple selon la recommandation AMR WB).
  • Sans perte de généralité, en référence à la figure 5, on prend le cas d'un codage d'une trame T51 par TDAC (fenêtrée par h51) suivi par une trame T52 en AMR WB puis d'une trame T53 à nouveau en TDAC (fenêtrée par h53).
  • Afin de reconstruire les échantillons, le codage AMR WB se base sur une prédiction de la périodicité du signal, dite prédiction long terme. A ce titre, il construit ses échantillons de la façon suivante : r n = a r n - T + b w n .
    Figure imgb0023
  • Le signal r est construit par rapport à des anciens échantillons pris en amont de T échantillons pondérés par un gain a, transmis et mis à jour périodiquement, et une partie dite stochastique wn affectée d'un gain b, transmise et remise à jour également au cours du temps. T représente le « pitch ». Le codeur AMR WB estime les composantes a, b et T et la partie wn à ajouter suivant le débit considéré.
  • Ainsi, afin de réaliser efficacement la prédiction long terme, le décodeur CELP fait appel à des échantillons passés ne devant pas présenter d'artefacts. Or, du fait que la trame T51 est codée en TDAC, il y aura du repliement dans les échantillons entre M + (M-M0)/2 et M + (M+M0)/2 tant que la trame T52 ne sera pas restituée avec le repliement permettant de supprimer celui de la trame T51.
  • Afin de permettre la restitution des échantillons de la trame T52 codée en CELP sans repliement, la zone de couverture des échantillons transmis par ce codage est élargie pour couvrir la zone de transition initiale complètement.
  • On étend la durée du CELP au contenu d'indice M+ (M-Mo)/2 ... 5M/2.
  • En ce sens, il n'y a pas d'échantillonnage critique pour la partie codée par le codage prédictif.
  • En revanche la zone Mo est limitée en durée afin d'éviter de transmettre trop d'information supplémentaire.
  • Par exemple, Mo se situe autour de 1 à 2 ms pour une trame de durée M correspondant à 20 ms. Le nombre d'échantillons est calculé en fonction de la fréquence d'échantillonnage. On peut également choisir Mo/2 comme étant une durée proportionnelle à une sous trame de CELP, c'est-à-dire la durée habituelle de remise à jour des valeurs de pitch / gain et vecteur stochastique, où une taille adapté aux algorithmes rapides pour la recherche du vecteur stochastique et sa transmission de manière efficace. Par exemple, on prend une puissance de 2.
  • Pour reconstruire les échantillons de la zone entre M et 2M-1, on reconstruit au préalable la période entre M et M+(M-Mo)/2 en utilisant la transformée inverse d'une trame T50 (non représentée) précédent la trame T51. Ensuite la zone entre M+(M-Mo)/2et 2M-1 est reconstruite avec le CELP seul qui se base pour la partie long terme sur les échantillons restitués par la partie transformée.
  • Une variante pour obtenir les échantillons compris entre M+ (M-Mo)/2 et M+ (M+Mo)/2-1 consiste à combiner les échantillons CELP avec les échantillons contenant du repliement issus de la trame T51. On peut dans ce cas réaliser une combinaison linéaire des échantillons issus du CELP et de l'équation déterminée préalablement x 3 M / 2 - 1 - n = 1 h a 0 , 3 M / 2 - 1 - n x ˜ 0 , 3 M / 2 + n h s 0 , 3 M / 2 + n - h a 0 , 3 M / 2 + n x 3 M / 2 + n .
    Figure imgb0024
  • La combinaison linéaire fonctionne suivant le modèle ci-dessous : x 3 M / 2 - 1 - n = α n x 3 M / 2 - 1 - n issu du celp + 1 - α n x 3 M / 2 - 1 - n issu de la transformée .
    Figure imgb0025
  • Avec α n jeu de coefficients positifs ou nuls inférieurs ou égaux à un.
  • La portion 2M,...3M-1 est décodée en utilisant la fin des échantillons CELP transmis entre les indices 2M à 5M/2. Ensuite, en se basant sur ce résultat décodé, les échantillons issus de la transformée suivante sont reconstruits dans la zone de recouvrement, qui contient du repliement de façon analogue à la zone de recouvrement entre les trames T51 et T52. La différence avec l'autre sens de transition réside dans le fait que le CELP ne fournira pas tous les échantillons de la zone de transition de la transformée, mais seulement une moitié (i.e. M'o/2=M/8 dans notre exemple pour une taille de transition de M'o=M/4). Cependant, seule une moitié de cette zone de transition est nécessaire pour pouvoir annuler le repliement temporel de la transformée.
  • La fenêtre h51 peut être asymétrique. Ainsi, la zone de recouvrement entre la partie CELP et TDAC, notée Mo', peut être différente de Mo.
  • Transmission du CELP
  • On décrit dans la suite plusieurs alternatives pour transmettre la trame CELP.
  • Dans un exemple, la trame CELP couvre une durée égale à la taille M+Mo/2 comme présenté sur la figure 4. Conformément au standard AMR WB, cette trame est découpée en sous segments, de taille notée Mc sur la figure 5, permettant une mise à jour fréquente des paramètres permettant de synthétiser un signal CELP de qualité. Ainsi les valeurs de pitch, gain et la partie stochastique sont transmis initialement et mis à jour optionnellement.
  • La longueur du premier sous segment (Mc'), suivant immédiatement la transformée peut être différente si on veut utiliser une longueur Mo' arbitraire avec un codeur CELP normalisé avec Mc imposé par cette norme.
  • Le pitch peut être estimé sur la partie décodée avant l'échantillon d'indice M+(M-Mo)/2. Ainsi, on peut éviter de transmettre le pitch initial, seul le gain de pitch qui est estimé suivant la méthode commune présentée dans la recommandation AMR WB est transmis.
  • Dans une variante de cet exemple, le gain de pitch n'est pas transmis. Il est estimé sur le signal décodé dans la partie transformée.
  • Dans un exemple alternatif, l'estimation de pitch peut être effectuée en incluant la période M+(M-Mo)/2 à M+(M+Mo)/2 qui contient des composantes repliées.
  • La partie stochastique est transmise en préambule, ou ignorée. Et ce, en particulier si elle est considérée négligeable de part sa faible puissance, ou si lors de la reconstruction on se base sur la version utilisant la pondération α n .
  • En effet, une partie stochastique est implicitement présente dans le signal issu des composantes repliées venant de la partie transformée.
  • La partie de durée Mo/2 couverte par le CELP peut donc être une partie spécialisée, en ce sens qu'elle peut bénéficier des informations issues du décodage complet de la partie issue de la transformée précédente.
  • Mo/2 peut être égale à Mc si on cherche une compatibilité particulière avec un codeur existant. Par exemple, dans le cadre d'une réalisation incluant un CELP de type AMR WB, on peut choisir Mo/2=Mc=5 ms.
  • Un exemple alternatif est présenté sur la figure 6. Dans cet exemple, le codage CELP couvre une longueur plus courte que la trame de base de longueur M. La partie couverte par les échantillons M+(M-M/2)/2 à 2M+M/16 est encodée à partir d'une transformée d'une taille plus courte que la taille initiale (M/2).
  • Dans la figure 6, seule la trame T63 est codée en CELP. Les trames T61, T62 et T64 sont représentées dans le domaine transformé de la TDAC. Les trames T61 et T64 sont codées avec des transformées de longueur M (fenêtres h61 et h64), la trame T62 étant codée avec une transformée de taille M/2 (fenêtre h62).
  • Ce codage est efficace car la fenêtre h61 est relativement douce, ce qui permet d'obtenir une meilleure concentration d'énergie dans le domaine fréquentiel. La fenêtre h62 possède en revanche une transition plus abrupte au voisinage de l'échantillon 2M, mais cette fenêtre abrupte ne pénalise pas trop la qualité du codage du fait que temporellement la durée affectée est courte. La T63 est codée en CELP comme présenté au dessus, ici Mo =M/8.
  • Ainsi une trame de longueur M peut être subdivisée en sous parties codées en CELP ou TDAC de taille variable.
  • Une fois les échantillons restitués dans le domaine temporel, on peut optionnellement appliquer des filtres de synthèse LPC pour restituer le cas échéant le signal sonore.
  • Dans un exemple particulier, la transformée est opérée dans un domaine pondéré, c'est-à-dire que la transformée est réalisée sur le signal filtré par un filtre de pondération de type W(z) = A(z1)Hde-emph (z) avec A(z) le filtre de prédiction linéaire (LPC) et gamma un facteur d'aplatissement de ce filtre, le filtre Hde-emph(z) est un filtre de dé-emphase des hautes fréquences. Le codeur CELP lui fonctionne, c'est-à-dire que le signal d'excitation rn sera bien calculé dans le domaine résiduel d'un filtre de prédiction linéaire A(z). Une attention particulière sera portée pour que le signal synthétisé par la première transformée inverse, et qui est donc dans un domaine perceptivement pondéré, soit remis dans le domaine de l'excitation du CELP, pour que la partie long-terme de l'excitation du CELP puisse être calculée.
  • Dans la suite on décrit un exemple de procédé de codage.
  • En référence à la figure 7, on illustre le problème du passage entre un codage de type transformée avec un codage de type prédictif.
  • On considère un signal x à coder puis décoder. On considère que les échantillons de 0 à 3M-1 doivent être codés par transformée, tandis que les échantillons de 3M à 4M-1 doivent être codés par codage prédictif, comme indiqué par les double flèches T et P.
  • Selon l'art antérieur, on code les échantillons de 0 à 2M-1 par codage par transformée selon un vecteur de transformée X 0 T .
    Figure imgb0026
  • Le décodage de ce vecteur de transformée donne les échantillons de 0 à 2M-1 d'un signal décodé x. Ce décodage fait apparaitre du repliement REP1, notamment dans les échantillons de M à 2M-1.
  • Par ailleurs, on code les échantillons de M à 3M-1 par codage par transformée selon un vecteur de transformée X 1 T .
    Figure imgb0027
  • Le décodage de ce vecteur de transformée donne les échantillons de M à 3M-1 du signal décodé x. Ce décodage fait apparaître le même repliement avec un signe opposé à REP1 dans les échantillons de M à 2M-1 que lors du décodage de X 0 T .
    Figure imgb0028
    Il fait également apparaître du repliement REP2 dans les échantillons de 2M à 3M-1 dans x.
  • Ainsi, il est possible par combinaison des échantillons de M à 2M-1 issus respectivement du décodage de X 0 T
    Figure imgb0029
    et X 1 T
    Figure imgb0030
    de supprimer (SUPPR_REP) le repliement REP1.
  • On code ensuite les échantillons de 3M à 4M-1 de x par codage prédictif selon le vecteur de prédiction X 2 p .
    Figure imgb0031
  • Pour être décodé, ce vecteur nécessite la connaissance des échantillons précédents. C'est-à-dire les échantillons de 2M à 3M-1. Ces échantillons sont disponibles au décodage de X 1 T ,
    Figure imgb0032
    néanmoins ils sont inutilisables du fait de la présence du repliement REP2.
  • Ainsi, X 2 p
    Figure imgb0033
    ne peut être décodé.
  • De plus, la suppression du repliement REP2 nécessite la connaissance des échantillons de x de 2M à 3M-1 pour recréer le repliement et le supprimer par combinaison. Or, ces échantillons ne sont pas disponibles au décodage.
  • Ainsi, le décodage de X 1 T
    Figure imgb0034
    n'est pas terminé.
  • Pour régler ces difficultés, l'art antérieur propose de communiquer au décodeur les échantillons dont il a besoin en plus des vecteurs issues de la transformée et de la partie prédiction. Néanmoins, cette solution n'est pas optimale du point de vue du débit.
  • La présente invention propose la solution illustrée sur la figure 8.
  • Sur cette figure, on retrouve le signal x, le vecteur de transformée X 1 T ,
    Figure imgb0035
    et le vecteur de prédiction X 2 p .
    Figure imgb0036
  • Cependant, selon la présente invention, le vecteur de prédiction X 2 p
    Figure imgb0037
    code un nombre M d'échantillons comportant une partie des échantillons codés par X 1 T .
    Figure imgb0038
  • Cette disposition permet de reconstruire le signal x au décodage.
  • En effet, les échantillons précédant le repliement REP crée au décodage de X 1 T
    Figure imgb0039
    sont utilisés pour le décodage des premiers échantillons que le décodage de X 2 p
    Figure imgb0040
    va permettre d'obtenir. C'est-à-dire, ceux qu'il a en commun avec X 1 T .
    Figure imgb0041
  • Ainsi, on récupère des échantillons de x permettant de recréer le repliement REP. Par exemple, on fait subir aux échantillons de x correspondant à REP un codage suivi d'un décodage identique à ceux subis par les échantillons de M à 3M-1.
  • Ce repliement ainsi crée est combiné à celui présent dans les échantillons issus du décodage de X 1 T ,
    Figure imgb0042
    et X 1 T
    Figure imgb0043
    peut ainsi être complètement décodé.
  • Ensuite, on peut utiliser les échantillons de M à 3M-1 complètement décodés pour décoder X 2 p .
    Figure imgb0044
  • Dans la suite, en référence à la figure 9, on décrit un procédé de codage reprenant les principes décrits ci-avant.
  • A l'étape S90 on reçoit des échantillons d'un signal à coder. Ensuite, à l'étape S91, on délimite deux séquences d'échantillons, en sorte que la deuxième séquence commence avant la fin de la première séquence. On obtient ainsi une première séquence SEQ1 et une deuxième séquence SEQ2.
  • Chacune de ces séquences est ensuite codé selon un codage par transformée lors de l'étape S93 pour SEQ1, et selon un codage prédictif lors de l'étape S94 pour SEQ2.
  • En référence à la figure 10, on décrit un exemple dans lequel, le codage par transformée se fait par application d'une fenêtre d'analyse, permettant de déterminer une fenêtre de synthèse, au moyen d'une relation de reconstruction parfaite, adapté au présent codage.
  • Les fenêtres d'analyse et de synthèse étant liées par la relation de reconstruction parfaite, il est équivalent de décrire l'un ou l'autre.
  • Sur la figure 10, on décrit la fenêtre de synthèse H. Cette fenêtre comporte quatre parties particulières.
  • INIT correspond à la partie initiale du filtre, on choisit cette partie en fonction du codage des échantillons précédents. Par exemple, ici, H permet de reconstituer une partie de SEQ1 (des échantillons 0 à M-1). Si les échantillons précédant SEQ1 sont codés par transformée, on choisit avantageusement INIT comme une transition douce. Cela permet de ne pas perturber ces échantillons précédents.
  • NOMI correspond à une partie nominale. Avantageusement, cette partie prend une valeur sensiblement constante.
  • NL correspond à une partie sensiblement nulle de la fenêtre. La durée de NL (ou le nombre de coefficient de NL) peuvent avantageusement être choisis en fonction de la durée (ou nombre de coefficients) de NOMI.
  • Enfin, la partie INTER est une partie continue entre NOMI et NL. Cette partie peut avoir une forme adaptée à la transition entre le codage par transformée de SEQ1 et le codage prédictif de SEQ2. Par exemple, c'est une transition relativement abrupte.
  • Ainsi, INIT et NOMI sont appliquées à la sous-séquence S-SEQ1 de SEQ1 qui ne comporte pas d'échantillon de S-SEQ, la sous-séquence commune à SEQ1 et SEQ2. INTER est appliquée à S-SEQ. Et NL est appliquée à S-SEQ2, la sous-séquence de SEQ2 qui ne comporte pas d'échantillon de S-SEQ.
  • En référence à la figure 11, on décrit un procédé de décodage avantageux pour décoder un signal numérique selon les principes décrits ci-avant.
  • Aux étapes S110 et S111, on reçoit respectivement un vecteur de transformée comportant des échantillons S-SEQ1* codant S-SEQ1, et un vecteur de prédiction comportant des échantillons S-SEQ* codant S-SEQ et des échantillons S-SEQ2* codant S-SEQ2.
  • A l'étape S112, on applique une transformée inverse aux échantillons S-SEQ1*. Par exemple, il s'agit d'une fenêtre du type de H. Par exemple, on peut en outre prévoir une étape S113 comportant des opérations supplémentaires de décodage pour obtenir S-SEQ1.
  • A l'étape S114, on reçoit S-SEQ décodé par l'étape S113, et S-SEQ*. On décode, au moins par décodage prédictif, à l'étape S114 S-SEQ.
  • Enfin, à l'étape S115, on reçoit S-SEQ décodé lors de l'étape S114 et S-SEQ2* puis on décode S-SEQ2 par décodage prédictif. Au besoin, on peut également faire intervenir S-SEQ1 décodé à l'étape S113.
  • Un mode de réalisation de l'étape S114 est décrit en référence à la figure 12.
  • Dans ce mode de réalisation, on fait intervenir à la fois un décodage par transformée, et un décodage prédictif.
  • A l'étape S120, on reçoit S-SEQ1 (issu de S114) et S-SEQ*, puis on décode S-SEQ par décodage prédictif. On obtient S-SEQ'.
  • A l'étape S121, on applique une transformée inverse (par exemple celle déjà appliquée à S-SEQ1* pour obtenir S-SEQ1) à S-SEQ1*. On obtient S-SEQ".
  • Enfin, à l'étape S 122, on réalise une combinaison linéaire des échantillons S-SEQ' et S-SEQ" pour obtenir S-SEQ.
  • En référence à la figure 13, on décrit un autre mode de réalisation de l'étape S114.
  • Dans ce mode de réalisation, on recrée à partir de S-SEQ* décodé par décodage prédictif le repliement de signe opposé généré par le décodage de S-SEQ* par transformée (S-SEQ").
  • Ainsi, dans ce mode de réalisation on reçoit à l'étape S130 S-SEQ1 et S-SEQ* puis on décode S-SEQ. On obtient S-SEQ'.
  • Ensuite, lors de l'étape S131, on crée le même repliement que S-SEQ" dans S-SEQ'. A cet effet on lui applique la matrice S décrite ci-avant..
  • S-SEQ " correspond au décodage de S-SEQ* par transformée lors de l'étape S132.
  • Enfin, on combine S-SEQ'" et S-SEQ" lors de l'étape S133 pour obtenir S-SEQ.
  • En référence à la figure 14, on décrit une entité de codage COD adaptée pour mettre en oeuvre l'exemple de procédé de codage décrit ci-avant.
  • Cette entité de codage comporte une unité de traitement 140 adaptée pour recevoir un signal numérique SIG et déterminer deux séquences d'échantillons : une première séquence comportant une sous-séquence S-SEQ commune aux deux séquences, et une sous-séquence S-SEQ1, et une deuxième séquence qui commence avant la fin de la première séquence et qui contient S-SEQ et une sous-séquence S-SEQ2.
  • L'entité de codage comporte également un codeur par transformée 141, et un codeur prédictif 142. Ces codeurs sont adaptés pour mettre en oeuvre les étapes du procédé de codage décrit ci-avant, et délivrer respectivement un vecteur transformée V_T codant la première séquence et un vecteur de prédiction V_P codant la deuxième séquence.
  • On peut prévoir des moyens de communication (non-représentés) pour échanger des signaux entre les codeurs.
  • En référence à la figure 15, on décrit une entité de décodage pour mettre en oeuvre le procédé de décodage décrit ci-avant.
  • Cette entité de décodage DECOD comporte des unités de réception 150 et 151 pour recevoir respectivement un vecteur de transformée V_T comportant des échantillons S-SEQ1* codant S-SEQ1, et un vecteur de prédiction V_P comportant des échantillons S-SEQ* codant S-SEQ et des échantillons S-SEQ2* codant S-SEQ2.
  • L'unité 150 fournit S-SEQ1* à une unité d'application de transformée inverse 152. On peut par exemple prévoir en outre que l'unité 152 fournit un résultat à une unité de décodage par transformée 153 pour réaliser des opérations de décodage supplémentaires et fournir S-SEQ1.
  • Une fois décodée par l'unité 153, l'unité de décodage 154 reçoit S-SEQ1 décodé par l'unité 153, et S-SEQ* fourni par l'unité 151. L'unité 154 décode, au moins par décodage prédictif S-SEQ, et fourni S-SEQ.
  • Enfin, DECOD comporte une unité de décodage prédictif 155 pour recevoir S-SEQ fourni par l'unité 154, et S-SEQ2* fourni par l'unité 151, puis décoder S-SEQ2 par décodage prédictif et fournir S-SEQ2. Au besoin, l'unité 153 fourni également S-SEQ1 décodé préalablement par l'unité 153.
  • Un programme informatique pour comportant des instructions pour mettre en oeuvre l'exemple de procédé de codage décrit ci-avant pourrait être établi selon un algorithme général décrit par la figure 9.
  • Ce programme informatique pourrait être exécuté dans un processeur d'une entité de codage telle que décrite ci-avant, pour coder un signal avec au moins les mêmes avantages que ceux procurés par le procédé de codage.
  • De la même manière, un programme informatique pour comportant des instructions pour mettre en oeuvre le procédé de décodage décrit ci-avant pourrait être établi selon un algorithme général décrit par la figure 11.
  • Ce programme informatique pourrait être exécuté dans un processeur d'une entité de décodage telle que décrite ci-avant, pour décoder un signal avec au moins les mêmes avantages que ceux procurés par le procédé de décodage.
  • En référence à la figure 16, on décrit un dispositif matériel adapté pour réaliser un exemple de ou un décodeur selon un mode de réalisation de la présente invention.
  • Ce dispositif DISP comporte une entrée E pour recevoir un signal numérique SIG. Le dispositif comporte également un processeur PROC de signaux numériques adapté pour réaliser des opérations de codage/décodage notamment sur un signal provenant de l'entrée E. Ce processeur est relié à une ou plusieurs unités de mémoire MEM adaptées pour stocker des informations nécessaires au pilotage du dispositif pour le codage/décodage. Par exemple, ces unités de mémoire comportent des instructions pour la mise en oeuvre du procédé de codage/décodage décrit ci-avant. Ces unités de mémoire peuvent également comporter des paramètres de calcul ou d'autres informations. Le processeur est également adapté pour stocker des résultats dans ces unités de mémoire. Enfin, le dispositif comporte une sortie S reliée au processeur pour fournir un signal de sortie SIG*.
  • Bien entendu, on peut avantageusement combiner une ou plusieurs caractéristiques décrites ci-avant dans le cadre de l'objet défini par les revendications suivantes.

Claims (8)

  1. Procédé de décodage d'un signal numérique audio, comportant les étapes :
    - recevoir (S110) un vecteur de transformée codant une première séquence d'échantillons du signal numérique audio selon un codage par transformée ;
    - recevoir (S101) un vecteur de prédiction codant une deuxième séquence d'échantillons du signal numérique audio selon un codage de type CELP utilisant une prédiction à long terme ;
    le procédé étant caractérisé en ce que la deuxième séquence commence avant la fin de la première séquence, une sous-séquence commune aux première et deuxième séquences étant ainsi reçue codée à la fois par le codage de type CELP utilisant une prédiction à long terme et par le codage par transformée ; et en ce qu'il comporte en outre les étapes :
    a) appliquer (S112) au vecteur de transformée une transformée inverse du codage par transformée pour décoder une sous-séquence de la première séquence non codée par codage de type CELP utilisant une prédiction à long terme;
    b) décoder (S114) au moins dans le vecteur de prédiction la sous-séquence commune aux première et deuxième séquences au moins par un décodage de type CELP utilisant une prédiction à long terme en se fondant sur au moins un échantillon issu de l'étape a) ;
    c) décoder (S115) dans le vecteur prédictif par un décodage de type CELP utilisant une prédiction à long terme une sous-séquence de la deuxième séquence non codée par codage par transformée, en se fondant sur au moins un échantillon issu de l'une des étapes a) et b).
  2. Procédé selon la revendication 1, caractérisé en ce que l'étape b) comporte les sous-étapes :
    b1) décoder (S120) dans le vecteur prédictif la sous-séquence commune aux première et deuxième séquences par un décodage de type CELP utilisant une prédiction à long terme en se fondant sur au moins un échantillon issu de l'étape a) ;
    b2) appliquer (S121) au vecteur de transformée une transformée inverse du codage par transformée pour décoder la sous-séquence commune aux première et deuxième séquences ; et
    b3) décoder (S122) la sous-séquence commune aux première et deuxième séquences par combinaison d'au moins un échantillon issu de l'étape b1) avec un échantillon correspondant issu de l'étape b2).
  3. Procédé selon la revendication 1, caractérisé en ce que l'étape b) comporte les sous-étapes :
    b4) décoder (S130) dans le vecteur prédictif la sous-séquence commune aux première et deuxième séquences par un décodage de type CELP utilisant une prédiction à long terme en se fondant sur au moins un échantillon issu de l'étape a) ;
    b5) créer (S131) à partir d'au moins un échantillon issu de l'étape b4) un échantillon contenant un repliement équivalent à un codage par transformée suivi d'un décodage par transformée b6) appliquer (S 132) au vecteur de transformée une transformée
    inverse du codage par transformée pour décoder la sous-séquence commune aux première et deuxième séquences ; et
    b7) décoder (S133) la sous-séquence commune aux première et deuxième séquences par combinaison d'au moins un échantillon issu de l'étape b5) avec un échantillon correspondant issu de l'étape b6).
  4. Procédé selon la revendication 1, caractérisé en ce que l'étape a) comporte l'application d'une fenêtre de synthèse comportant au moins trois parties :
    - une première partie nominale,
    - une deuxième partie terminale sensiblement nulle,
    - une troisième partie intermédiaire continue entre les première et deuxième zones,
    et en ce qu'au moins les deuxième et troisième parties de la fenêtre de synthèse sont appliquées à des échantillons codant la sous-séquence commune aux deux séquences.
  5. Programme informatique comportant des instructions pour la mise en oeuvre du procédé selon la revendication 1 lorsque le programme est exécuté par un processeur.
  6. Entité de décodage (DECOD) d'un signal numérique audio, comportant des moyens de réception (150, 151):
    - d'un vecteur de transformée (V_T) codant une première séquence d'échantillons du signal numérique audio selon un codage par transformée ; et
    - d'un vecteur de prédiction (V_P) codant une deuxième séquence d'échantillons du signal numérique audio selon un codage de type CELP utilisant une prédiction à long terme ;
    l'entité de décodage étant caractérisée en ce que la deuxième séquence commence avant la fin de la première séquence, une sous-séquence commune aux première et deuxième séquences étant ainsi codée à la fois par codage de type CELP utilisant une prédiction à long terme et par codage par transformée ; et en ce qu'elle comporte en outre :
    - un premier décodeur (152, 153) pour appliquer au vecteur de transformée une transformée inverse du codage par transformée pour décoder une sous-séquence de la première séquence non codée par codage de type CELP utilisant une prédiction à long terme ;
    - un deuxième décodeur (154) pour décoder au moins dans le vecteur prédictif la sous-séquence commune aux première et deuxième séquences au moins par un décodage de type CELP utilisant une prédiction à long terme en se fondant sur au moins un échantillon issu du premier décodeur par transformée ; et
    - un troisième décodeur (155) prédictif pour décoder dans le vecteur prédictif par un décodage de type CELP utilisant une prédiction à long terme une sous-séquence de la deuxième séquence non codée par codage par transformée, en se fondant sur au moins un échantillon issu de l'un des premier et deuxième décodeurs.
  7. Entité de décodage selon la revendication 6, caractérisée en ce que le deuxième décodeur comporte :
    - des premiers moyens pour décoder dans le vecteur prédictif la sous-séquence commune aux première et deuxième séquences par un décodage de type CELP utilisant une prédiction à long terme en se fondant sur au moins un échantillon restitué par le premier décodeur par transformée ;
    - des deuxièmes moyens pour appliquer au vecteur de transformée une transformée inverse du codage par transformée pour décoder la sous-séquence commune aux première et deuxième séquences ; et
    - des troisièmes moyens pour décoder la sous-séquence commune aux première et deuxième séquences par combinaison d'au moins un échantillon issu des premiers moyens avec un échantillon correspondant issu des deuxièmes moyens.
  8. Entité de décodage selon la revendication 6, caractérisée en ce que le deuxième décodeur comporte :
    - des premiers moyens pour décoder dans le vecteur prédictif la sous-séquence commune aux première et deuxième séquences par un décodage de type CELP utilisant une prédiction à long terme en se fondant sur au moins un échantillon restitué par le premier décodeur par transformée ;
    - des quatrièmes moyens pour créer un repliement à partir d'au moins un échantillon issu des premiers moyens équivalent à un codage par transformée suivi d'un décodage par transformée ;
    - des cinquièmes moyens pour appliquer au vecteur de transformée une transformée inverse du codage par transformée pour décoder la sous-séquence commune aux première et deuxième séquences ; et
    - des sixièmes moyens pour décoder la sous-séquence commune aux première et deuxième séquences par combinaison d'au moins un échantillon issu des quatrièmes moyens avec un échantillon correspondant issu des cinquièmes moyens.
EP09755960.3A 2008-10-08 2009-10-05 Procédé, programme informatique et entité de décodage d'un signal audio numérique Active EP2345029B1 (fr)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
FR0856822A FR2936898A1 (fr) 2008-10-08 2008-10-08 Codage a echantillonnage critique avec codeur predictif
PCT/FR2009/051888 WO2010040937A1 (fr) 2008-10-08 2009-10-05 Codage a echantillonnage critique avec codeur predictif

Publications (2)

Publication Number Publication Date
EP2345029A1 EP2345029A1 (fr) 2011-07-20
EP2345029B1 true EP2345029B1 (fr) 2015-04-22

Family

ID=40457007

Family Applications (1)

Application Number Title Priority Date Filing Date
EP09755960.3A Active EP2345029B1 (fr) 2008-10-08 2009-10-05 Procédé, programme informatique et entité de décodage d'un signal audio numérique

Country Status (6)

Country Link
US (1) US8880411B2 (fr)
EP (1) EP2345029B1 (fr)
CN (1) CN102177544B (fr)
ES (1) ES2542067T3 (fr)
FR (1) FR2936898A1 (fr)
WO (1) WO2010040937A1 (fr)

Families Citing this family (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2012004349A1 (fr) * 2010-07-08 2012-01-12 Fraunhofer-Gesellschaft zur Förderung der angewandten Forschung e.V. Codeur utilisant l'annulation directe du crènelage
FR2969805A1 (fr) * 2010-12-23 2012-06-29 France Telecom Codage bas retard alternant codage predictif et codage par transformee
FR2992766A1 (fr) * 2012-06-29 2014-01-03 France Telecom Attenuation efficace de pre-echos dans un signal audionumerique
AU2014211586B2 (en) * 2013-01-29 2017-02-16 Fraunhofer-Gesellschaft Zur Foerderung Der Angewandten Forschung E.V. Concept for coding mode switching compensation
FR3024582A1 (fr) * 2014-07-29 2016-02-05 Orange Gestion de la perte de trame dans un contexte de transition fd/lpd

Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2010003532A1 (fr) * 2008-07-11 2010-01-14 Fraunhofer-Gesellschaft zur Förderung der angewandten Forschung e.V. Dispositif et procédé d’encodage/de décodage d’un signal audio utilisant une méthode de commutation à repliement

Family Cites Families (21)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6134518A (en) * 1997-03-04 2000-10-17 International Business Machines Corporation Digital audio signal coding using a CELP coder and a transform coder
WO1999010719A1 (fr) * 1997-08-29 1999-03-04 The Regents Of The University Of California Procede et appareil de codage hybride de la parole a 4kbps
ATE302991T1 (de) * 1998-01-22 2005-09-15 Deutsche Telekom Ag Verfahren zur signalgesteuerten schaltung zwischen verschiedenen audiokodierungssystemen
US6947888B1 (en) * 2000-10-17 2005-09-20 Qualcomm Incorporated Method and apparatus for high performance low bit-rate coding of unvoiced speech
US6658383B2 (en) * 2001-06-26 2003-12-02 Microsoft Corporation Method for coding speech and music signals
US6785645B2 (en) * 2001-11-29 2004-08-31 Microsoft Corporation Real-time speech and music classifier
US20030220800A1 (en) * 2002-05-21 2003-11-27 Budnikov Dmitry N. Coding multichannel audio signals
AU2003272037A1 (en) * 2002-09-24 2004-04-19 Rad Data Communications A system and method for low bit-rate compression of combined speech and music
FR2867649A1 (fr) * 2003-12-10 2005-09-16 France Telecom Procede de codage multiple optimise
CA2457988A1 (fr) * 2004-02-18 2005-08-18 Voiceage Corporation Methodes et dispositifs pour la compression audio basee sur le codage acelp/tcx et sur la quantification vectorielle a taux d'echantillonnage multiples
ATE371926T1 (de) * 2004-05-17 2007-09-15 Nokia Corp Audiocodierung mit verschiedenen codierungsmodellen
US7596486B2 (en) * 2004-05-19 2009-09-29 Nokia Corporation Encoding an audio signal using different audio coder modes
US7751572B2 (en) * 2005-04-15 2010-07-06 Dolby International Ab Adaptive residual audio coding
US7418394B2 (en) * 2005-04-28 2008-08-26 Dolby Laboratories Licensing Corporation Method and system for operating audio encoders utilizing data from overlapping audio segments
US20070297624A1 (en) * 2006-05-26 2007-12-27 Surroundphones Holdings, Inc. Digital audio encoding
JP2008096906A (ja) * 2006-10-16 2008-04-24 Matsushita Electric Ind Co Ltd オーディオ信号復号装置およびリソースアクセス制御方法
JP5171842B2 (ja) * 2006-12-12 2013-03-27 フラウンホッファー−ゲゼルシャフト ツァ フェルダールング デァ アンゲヴァンテン フォアシュンク エー.ファオ 時間領域データストリームを表している符号化および復号化のための符号器、復号器およびその方法
KR101412255B1 (ko) * 2006-12-13 2014-08-14 파나소닉 인텔렉츄얼 프로퍼티 코포레이션 오브 아메리카 부호화 장치, 복호 장치 및 이들의 방법
CN101025918B (zh) * 2007-01-19 2011-06-29 清华大学 一种语音/音乐双模编解码无缝切换方法
CN101231850B (zh) * 2007-01-23 2012-02-29 华为技术有限公司 编解码方法及装置
CN101221766B (zh) * 2008-01-23 2011-01-05 清华大学 音频编码器切换的方法

Patent Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2010003532A1 (fr) * 2008-07-11 2010-01-14 Fraunhofer-Gesellschaft zur Förderung der angewandten Forschung e.V. Dispositif et procédé d’encodage/de décodage d’un signal audio utilisant une méthode de commutation à repliement

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
"3rd Generation Partnership Project; Technical Specification Group Service and System Aspects; Audio codec processing functions; Extended AMR Wideband codec; Transcoding functions (Release 6)", 3GPP STANDARD; 3GPP TS 26.290, 3RD GENERATION PARTNERSHIP PROJECT (3GPP), MOBILE COMPETENCE CENTRE ; 650, ROUTE DES LUCIOLES ; F-06921 SOPHIA-ANTIPOLIS CEDEX ; FRANCE, no. V0.5.6, 1 May 2004 (2004-05-01), pages 1 - 71, XP050370247 *

Also Published As

Publication number Publication date
FR2936898A1 (fr) 2010-04-09
US20110178809A1 (en) 2011-07-21
US8880411B2 (en) 2014-11-04
CN102177544A (zh) 2011-09-07
ES2542067T3 (es) 2015-07-30
CN102177544B (zh) 2014-07-09
EP2345029A1 (fr) 2011-07-20
WO2010040937A1 (fr) 2010-04-15

Similar Documents

Publication Publication Date Title
EP1989706B1 (fr) Dispositif de ponderation perceptuelle en codage/decodage audio
EP2104936B1 (fr) Codage par transformee, utilisant des fenetres de ponderation et a faible retard
EP2115741B1 (fr) Codage/decodage perfectionnes de signaux audionumeriques
EP2951813B1 (fr) Correction perfectionnée de perte de trame au décodage d&#39;un signal
EP2452337B1 (fr) Allocation de bits dans un codage/décodage d&#39;amélioration d&#39;un codage/décodage hiérarchique de signaux audionumériques
EP3175444B1 (fr) Gestion de la perte de trame dans un contexte de transition fd/lpd
EP2345029B1 (fr) Procédé, programme informatique et entité de décodage d&#39;un signal audio numérique
EP3103116B1 (fr) Extension ameliorée de bande de fréquence dans un décodeur de signaux audiofréquences
EP1997103B1 (fr) Procede de codage d&#39;un signal audio source, dispositif de codage, procede et dispositif de decodage, signal, produits programme d&#39;ordinateur correspondants
EP3069340B1 (fr) Transition d&#39;un codage/décodage par transformée vers un codage/décodage prédictif
EP3175443B1 (fr) Détermination d&#39;un budget de codage d&#39;une trame de transition lpd/fd
EP2232489B1 (fr) Codage/decodage par transformee, a fenetres adaptatives
EP1275109B1 (fr) Methode et dispositif d&#39;enrichissement spectral
FR2984580A1 (fr) Procede de detection d&#39;une bande de frequence predeterminee dans un signal de donnees audio, dispositif de detection et programme d&#39;ordinateur correspondant
WO2023165946A1 (fr) Codage et décodage optimisé d&#39;un signal audio utilisant un auto-encodeur à base de réseau de neurones
EP2589045B1 (fr) Codage/décodage prédictif linéaire adaptatif
FR2911227A1 (fr) Codage par transformee, utilisant des fenetres de ponderation et a faible retard
FR2821475A1 (fr) Procede et dispositif de reconstruction spectrale de signaux a plusieurs voies, notamment de signaux stereophoniques
FR2980620A1 (fr) Traitement d&#39;amelioration de la qualite des signaux audiofrequences decodes

Legal Events

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

Free format text: ORIGINAL CODE: 0009012

17P Request for examination filed

Effective date: 20110421

AK Designated contracting states

Kind code of ref document: A1

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

AX Request for extension of the european patent

Extension state: AL BA RS

DAX Request for extension of the european patent (deleted)
17Q First examination report despatched

Effective date: 20120308

RAP1 Party data changed (applicant data changed or rights of an application transferred)

Owner name: ORANGE

REG Reference to a national code

Ref country code: DE

Ref legal event code: R079

Ref document number: 602009030802

Country of ref document: DE

Free format text: PREVIOUS MAIN CLASS: G10L0019020000

Ipc: G10L0019080000

GRAP Despatch of communication of intention to grant a patent

Free format text: ORIGINAL CODE: EPIDOSNIGR1

RIC1 Information provided on ipc code assigned before grant

Ipc: G10L 19/107 20130101ALN20141024BHEP

Ipc: G10L 19/08 20130101AFI20141024BHEP

Ipc: G10L 19/20 20130101ALN20141024BHEP

Ipc: G10L 19/022 20130101ALN20141024BHEP

Ipc: G10L 19/02 20130101ALI20141024BHEP

RIC1 Information provided on ipc code assigned before grant

Ipc: G10L 19/107 20130101ALN20141111BHEP

Ipc: G10L 19/08 20130101AFI20141111BHEP

Ipc: G10L 19/02 20130101ALI20141111BHEP

Ipc: G10L 19/022 20130101ALN20141111BHEP

Ipc: G10L 19/20 20130101ALN20141111BHEP

INTG Intention to grant announced

Effective date: 20141126

GRAS Grant fee paid

Free format text: ORIGINAL CODE: EPIDOSNIGR3

GRAA (expected) grant

Free format text: ORIGINAL CODE: 0009210

AK Designated contracting states

Kind code of ref document: B1

Designated state(s): AT BE BG CH CY CZ DE DK EE ES FI FR GB GR HR HU IE IS IT LI LT LU LV MC MK MT NL NO PL PT RO 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: 723656

Country of ref document: AT

Kind code of ref document: T

Effective date: 20150515

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

Country of ref document: DE

Effective date: 20150603

REG Reference to a national code

Ref country code: ES

Ref legal event code: FG2A

Ref document number: 2542067

Country of ref document: ES

Kind code of ref document: T3

Effective date: 20150730

REG Reference to a national code

Ref country code: NL

Ref legal event code: VDEP

Effective date: 20150422

REG Reference to a national code

Ref country code: AT

Ref legal event code: MK05

Ref document number: 723656

Country of ref document: AT

Kind code of ref document: T

Effective date: 20150422

REG Reference to a national code

Ref country code: LT

Ref legal event code: MG4D

Ref country code: FR

Ref legal event code: PLFP

Year of fee payment: 7

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

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

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

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

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

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

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

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

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

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

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

REG Reference to a national code

Ref country code: DE

Ref legal event code: R097

Ref document number: 602009030802

Country of ref document: DE

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

Ref country code: EE

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

Effective date: 20150422

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

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

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

Effective date: 20150422

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

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

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

26N No opposition filed

Effective date: 20160125

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

Ref country code: LU

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

REG Reference to a national code

Ref country code: CH

Ref legal event code: PL

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

Ref country code: 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: 20150422

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

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

Effective date: 20151031

Ref country code: LI

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

Effective date: 20151031

REG Reference to a national code

Ref country code: FR

Ref legal event code: PLFP

Year of fee payment: 8

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

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

Ref country code: HU

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

Effective date: 20091005

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

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

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

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

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

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

Ref country code: BE

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

Effective date: 20151031

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

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

REG Reference to a national code

Ref country code: FR

Ref legal event code: PLFP

Year of fee payment: 9

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

Ref country code: MK

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

REG Reference to a national code

Ref country code: FR

Ref legal event code: PLFP

Year of fee payment: 10

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

Ref country code: IT

Payment date: 20230920

Year of fee payment: 15

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

Ref country code: ES

Payment date: 20231102

Year of fee payment: 15

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

Ref country code: DE

Payment date: 20230920

Year of fee payment: 15

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

Ref country code: GB

Payment date: 20240919

Year of fee payment: 16

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

Ref country code: FR

Payment date: 20240919

Year of fee payment: 16