EP2345029A1 - Critical sampling encoding with a predictive encoder - Google Patents

Critical sampling encoding with a predictive encoder

Info

Publication number
EP2345029A1
EP2345029A1 EP09755960A EP09755960A EP2345029A1 EP 2345029 A1 EP2345029 A1 EP 2345029A1 EP 09755960 A EP09755960 A EP 09755960A EP 09755960 A EP09755960 A EP 09755960A EP 2345029 A1 EP2345029 A1 EP 2345029A1
Authority
EP
European Patent Office
Prior art keywords
decoding
coding
predictive
transform
sequence
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Granted
Application number
EP09755960A
Other languages
German (de)
French (fr)
Other versions
EP2345029B1 (en
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
France Telecom SA
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by France Telecom SA filed Critical France Telecom SA
Publication of EP2345029A1 publication Critical patent/EP2345029A1/en
Application granted granted Critical
Publication of EP2345029B1 publication Critical patent/EP2345029B1/en
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

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 advantageously applies 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 + One solution for effectively coding a signal containing these two types of content is to select the best technique over time. This solution has been recommended by the 3GPP ("3rd Generation Partnership Project") standardization organization, and a technique called AMR WB + has been proposed. This technique is based on CELP technology of the AMR WB type and transform coding based on a Fourier transform overlay.
  • the overlapping Fourier transform is not a critical sampling transformation, and therefore, it is suboptimal.
  • 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 present invention proposes a method of encoding a digital signal, comprising the steps:
  • the folding created by the coding in the subsequence of the first sequence can be suppressed 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.
  • the transform coding of the first sequence comprises the application of an analysis window making it possible to deduce from a perfect reconstruction relation of the digital signal a synthesis window comprising at least three parts: a first nominal part,
  • 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.
  • the 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 present invention also provides a method for decoding a digital signal, comprising the steps of:
  • step b) decoding at least in the prediction vector the subsequence common to the first and second sequences at least by a predictive decoding based on at least one sample from step a);
  • step b) comprises the sub-steps:
  • step b) decoding in the predictive vector the common subsequence to the first and second sequences by a predictive decoding based on at least one sample from step a);
  • step b3) decoding the common subsequence to the first and second sequences by combining at least one sample from step b1) with a corresponding sample from step b2).
  • the combination is a linear combination.
  • step b) comprises the sub-steps:
  • step b7) decoding the common subsequence to the first and second sequences by combining at least one sample from step b5) with a corresponding sample from step b6).
  • 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 transform coding / decoding can be used, with the same analysis and synthesis windows, whenever such coding / decoding is performed.
  • step a) comprises the application of a synthesis window comprising at least three parts:
  • the present invention provides a computer program comprising instructions for implementing the encoding method as described, when the program is executed by a processor.
  • the present invention aims a support readable by a computer on which is recorded such a computer program.
  • 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 aims a support readable by a computer on which is recorded such a computer program.
  • the present invention provides a coding entity adapted to implement the coding method as described.
  • Such a coding entity of a digital audio signal may comprise:
  • transform encoder for encoding a first sequence of samples of the digital audio signal according to transform coding
  • a predictive encoder for encoding a second sequence of samples of the digital audio signal according to a predictive encoding; it is expected that the second sequence begins before the end of the first sequence, a subsequence common to the first and second sequences thus being encoded by both predictive coding and transform coding.
  • the present invention provides a decoding entity adapted to implement the decoding method as described.
  • a prediction vector encoding a second sequence of samples of the digital signal according to a predictive coding
  • a first decoder for applying to the transformed vector an inverse transformation of the transform coding for decoding a subsequence of the first non-coded sequence by predictive coding
  • a second decoder for decoding at least in the predictive vector the subsequence common to the first and second sequences by at least one predictive decoding based on at least one sample derived from the first transform decoder; and a third predictive decoder for decoding in the predictive vector by a predictive decoding a subsequence of the second non-coded sequence by transform coding, based on at least one sample derived from one of the first and second coders.
  • the second decoder comprises:
  • third means for decoding the common subsequence to the first and second sequences by combining at least one sample from the first means with a corresponding sample from the second means.
  • the second decoder comprises:
  • fourth means for creating, from at least one sample returned by the first means, a sample containing folding equivalent to transform coding followed by transform decoding
  • sixth means for decoding the common subsequence to the first and second sequences by combining at least one sample from the fourth means with a corresponding sample from the fifth means.
  • encoders / decoders described may comprise a signal processor, storage elements, as well as means of communication between these elements.
  • the present invention thus makes it possible to alternate transformation coding techniques, for example with TDAC-type critical sampling, and predictive coding techniques, for example of the CELP type over time in order to obtain a good quality of reconstruction.
  • the invention proposes particular temporal relations between the two types of coding: the time position of the CELP and transformed frames being temporally offset.
  • the invention also proposes extending the 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 its application in sound coding systems, in particular in standardized speech coders, in particular to the ITU ("International Telecommunications Union") or to the ISO ("International Standard Organization") for coding generic sounds, including speech signals.
  • ITU International Telecommunications Union
  • ISO International Standard Organization
  • FIG. 1 illustrates two windows of synthesis of a transform coding
  • FIG. 2 illustrates synthetic windows of one embodiment of the invention
  • FIG. 3 illustrates data frames processed by synthesis windows
  • FIG. 4 illustrates sample vectors obtained by application of synthesis windows
  • FIG. 5 illustrates the case of a TDAC coding followed by an AMR WB coding, followed by a TDAC coding according to one embodiment of the invention
  • FIG. 6 illustrates the same case of coding with an advantageous asymmetric window
  • FIG. 7 illustrates a general context of a problem solved by the invention
  • FIG. 8 illustrates a general scheme for solving this problem by the present invention
  • FIG. 9 illustrates the steps of an embodiment of a coding method according to the invention.
  • FIG. 10 illustrates the composition of a synthesis window according to one embodiment of the invention
  • FIG. 11 illustrates the steps of an embodiment of a decoding method according to the present invention
  • FIG. 12 illustrates an advantageous decoding used in the decoding method
  • FIG. 13 illustrates a variant of this advantageous decoding
  • FIG. 14 illustrates an encoder according to one embodiment of the invention
  • FIG. 15 illustrates a decoder according to one embodiment of the invention
  • FIG. 16 illustrates a hardware device adapted to produce an encoder or a decoder according to an embodiment of the present invention.
  • a digitized sound signal is considered according to a sampling period - (F e being the sampling frequency).
  • M represents the size of the transform
  • the following inverse transform, at decoding is applied in order to reconstruct the samples O ⁇ n ⁇ M which are then in a recovery zone of two consecutive transforms.
  • the decoded samples are then given by:
  • J M is the anti-identity square matrix of size M, which, at a series of increasing index values, returns the same series of values with the decreasing indices
  • - 0 M is a square matrix of size M containing only zeros.
  • the synthesis is illustrated by an example in FIG. 1.
  • two inverse transforms of size M h s o and h s i are passed.
  • M 0 a given integer value between 1 and M-I.
  • h s o (n) will be taken as symmetric in this area of h s i to obtain the perfect reconstruction.
  • h s i can be defined also by a function of "Kaiser
  • a first frame T30 (windowed by h s o) combined with the frame T3 1 (windowed by hs l) makes it possible to reconstruct the segment from M to 2M-1, the frames T3 1 and T33 enabling 'get 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.
  • h s o contains zeros between M + (M + M 0 ) / 2 and 2M-1
  • h a i contains zeros between 0 and (MM o ) / 2.
  • the vector * o, M + n contains 3 zones:
  • - x l ⁇ does not contain folding components between (M + Mo) / 2 and M-I, and the central zone around M / 2 for which there are folded components.
  • 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 AMR WB coding is based on a prediction of the periodicity of the signal, termed long-term prediction. As such, it builds its samples as follows
  • 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 + (M-MQ) H and M + (M + Mo) / 2 as long as the frame T52 will not be restored with the folding to delete that of the frame T51.
  • 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 0 is limited in duration in order to avoid transmitting too much additional information.
  • M 0 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-Mo) / 2 is reconstructed using the inverse transform of a frame T50 (not shown) preceding the frame T51. Then the area between M + (M-Mo) / 2 and M-I is reconstructed with the CELP alone which is based for the long term on the samples returned by the transformed part.
  • a set of positive or zero coefficients less than or equal to one.
  • the portion 2M, ... 3M-1 is decoded using the end of the CELP samples transmitted between the indices 2M to 5M / 2. Then, in
  • 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 hs i may be asymmetrical.
  • the overlap zone between the CELP and TDAC part, denoted M 0 ', may be different from M 0 .
  • the CELP frame covers a duration equal to the size M + Mo / 2 as presented in FIG. 4. According to the AMR standard WB, this frame is divided into sub segments, of size denoted Mc in FIG. , allowing a frequent update of the parameters making it possible to synthesize a signal CELP of quality. Thus 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 a 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 portion 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 6 ⁇ and h 64 ), the frame T62 being encoded with a transform of size M / 2 (window h 62 ).
  • This coding is effective because the window h 6 i 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 filter Hd e - emph (z) is a high frequency de-emphasis filter.
  • 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 transformed vector X o .
  • samples of M to 3M-1 are coded by transform coding according to a transformed vector Xf.
  • Decoding of this transformed vector gives the samples from M to 3M-1 of the decoded signal *.
  • This decoding shows the same folding with a sign opposite REP 1 in the samples from M to 2M-1 as during the decoding of x £. It also shows REP2 folding in samples from 2M to 3M-1 in *.
  • DELPR_REP delete
  • the samples of 3M to 4M-1 of x are then coded by predictive coding according to the prediction vector X ⁇ .
  • this vector requires knowledge of previous samples. That is to say the samples from 2M to 3M-1. These samples are available at the decoding of X, r , 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 prior art proposes to communicate to the decoder the samples it needs in addition to the vectors from the transform and the prediction part.
  • the present invention proposes the solution illustrated in FIG.
  • the prediction vector X ⁇ encodes a number M of samples comprising part of the samples coded by xj.
  • This arrangement makes it possible to reconstruct the signal x at decoding.
  • the samples preceding the REP folding creates the decoding of X
  • r are used for the decoding of the first samples that the decoding of X ⁇ will make it possible to obtain. That is, those he has in common with x, ⁇ .
  • 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 undergone by the samples from M to 3M-1.
  • the completely decoded M to 3M-1 samples can be used to decode x £.
  • step S90 samples of a signal to be coded are received.
  • step S91 two sample sequences are delimited, so that the second sequence begins before the end of the first sequence.
  • a first sequence SEQ 1 and a second sequence SEQ 2 are thus obtained.
  • Each of these sequences is then coded according to a transform coding in step S93 for SEQ 1, and according to a predictive coding in step S94 for SEQ2.
  • the synthesis window H is described. This window comprises 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 part of SEQ 1 (samples 0 to M-I). If the samples preceding SEQ 1 are coded by transform, we advantageously 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.
  • 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.
  • steps S101 and S111 a transformed vector containing samples S-SEQ1 * encoding S-SEQ1, and a prediction vector comprising S-SEQ * samples encoding S-SEQ and S-SEQ2 * samples encoding S-, are respectively received.
  • step S 112 an inverse transform is applied to the S-SEQl * samples.
  • it is an H-type window.
  • step S11 comprising additional decoding operations to obtain S-SEQ1.
  • step S14 S-SEQ1 is decoded by step S13 and S-SEQ *. At least by predictive decoding, at step S14 S-SEQ is decoded.
  • step S 115 S-SEQ decoded in step S14 and S-SEQ2 * is received and then S-SEQ2 is decoded by predictive decoding. If necessary, it is also possible to use S-SEQ1 decoded in step S113.
  • step S 114 An embodiment of step S 114 is described with reference to FIG. In this embodiment, both transform decoding and predictive decoding are involved.
  • step S 120 S-SEQ 1 (from S14) and S-SEQ * are received, and then S-SEQ is decoded by predictive decoding. We obtain S-SEQ '.
  • step S 121 an inverse transform (for example that already applied to S-SEQ 1 * to obtain S-SEQ 1) is applied to S-SEQ 1 *.
  • 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 S14 is described.
  • step S 13 the same folding as S-SEQ "in S-SEQ 'is created, for which purpose the matrix S described above is applied.
  • S-SEQ "corresponds to the decoding of S-SEQ * by transform in step S 132.
  • S-SEQ '' and S-SEQ '' are combined in step S 133 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 sub-sequence 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 DECOD decoding entity comprises reception units 150 and 151 for respectively receiving a transformed vector V_T comprising samples S-SEQ 1 * encoding S-
  • the unit 150 provides S-SEQ1 * to an inverse transform application unit 152.
  • the unit 152 provides a result to a transform decode unit 153 for performing additional decoding operations. and provide S-SEQ l.
  • the decoding unit 154 receives S-SEQ 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-SEQ 1 previously decoded by the unit 153.
  • a computer program for comprising instructions for implementing the coding method described above could be established according to a general algorithm described in FIG. 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.
  • 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)

Abstract

The invention relates to a method for encoding and decoding a digital audio signal, said method comprising the steps of: encoding a first sequence of samples of the digital signal according to a transform encoding; encoding a second sequence of samples of the digital signal according to a predictive encoding; wherein the second sequence starts before the end of the first sequence, a subsequence common to the first and second sequences being thus encoded both by predictive encoding and by transform encoding.

Description

Codage à échantillonnage critique avec codeur prédictif Critical sampling coding with predictive coder
La présente invention concerne le domaine du codage des signaux numériques.The present invention relates to the field of coding digital signals.
L'invention s' applique avantageusement au codage de sons présentant des alternances de parole et de musique.The invention advantageously applies to the coding of sounds with alternating speech and music.
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.To effectively code speech sounds, CELP (Code Excited Linear Prediction) techniques are recommended. To effectively encode musical sounds, transform coding techniques are preferred.
Les codeurs de type CELP sont des codeurs prédictifs. Ils ont pour but de modéliser la production de la parole à partir de divers éléments : une prédiction à 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.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.
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é.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.
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. 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.One solution for effectively coding a signal containing these two types of content is to select the best technique over time. This solution has been recommended by the 3GPP ("3rd Generation Partnership Project") standardization organization, and a technique called AMR WB + has been proposed. This technique is based on CELP technology of the AMR WB type and transform coding based on a Fourier transform overlay.
Cette solution souffre d'une qualité insuffisante sur la musique. Cette insuffisance vient particulièrement du codage par transformée.This solution suffers from insufficient quality on the music. This deficiency comes particularly from transform coding.
En effet, la transformée de Fourier à recouvrement n'est pas une transformation à échantillonnage critique, et de ce fait, elle est sous optimale.Indeed, the overlapping Fourier transform is not a critical sampling transformation, and therefore, it is suboptimal.
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.In addition, the windows used in this encoder are not optimal vis-à-vis the concentration of energy: the frequency forms of these windows are relatively fixed.
On connaît 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 »).Critical sampling transformations are known. For example, the transforms used in MP3 and AAC type music encoders. These transforms are based on the formalism called 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.The use of 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.
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.Indeed, during a transition from TDAC to CELP the temporal folding of the TDAC portion is not canceled by the signal from the CELP which does not integrate any folding.
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 propose un procédé de codage d' un signal numérique, comportant les étapes :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 ). For this purpose, the present invention proposes a method of encoding a digital signal, comprising the steps:
coder une première séquence d'échantillons du signal numérique selon un codage par transformée ;encoding a first sequence of samples of the digital signal according to transform coding;
- coder une deuxième séquence d'échantillons du signal numérique selon un codage prédictif ;coding a second sequence of samples of the digital signal according to a predictive coding;
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.and wherein the second sequence begins before the end of the first sequence, whereby a subsequence common to the first and second sequences is encoded by both predictive and transform coding.
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.Thus, during the decoding of the digital audio signal, the folding created by the coding in the subsequence of the first sequence can be suppressed by means of samples of this subsequence resulting from the decoding of the sub-sequence within the second sequence. In addition, the second sequence can be decoded because the samples of the past, useful for predictive decoding, do not have this folding.
Avantageusement le codage par transformée est un codage par transformée à échantillonnage critique.Advantageously, the transform coding is a critical sampling transform coding.
Par exemple, le codage par transformée est un codage par transformée de type TDAC.For example, transform coding is a TDAC type transform coding.
Par exemple, le codage prédictif est un codage de type CELP.For example, predictive coding is a CELP encoding.
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,In an advantageous embodiment, the transform coding of the first sequence comprises the application of an analysis window making it possible to deduce from a perfect reconstruction relation of the digital signal a synthesis window comprising at least three parts: a first nominal part,
une deuxième partie terminale sensiblement nulle,a second terminal portion substantially zero,
une troisième partie intermédiaire sensiblement continue entre les première et deuxième parties.a third substantially continuous intermediate portion between the first and second portions.
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.It is then expected that at least the parts of the analysis window making it possible to deduce respectively the second and third parts of the synthesis window are applied to the subsequence common to the two sequences.
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."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.
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.The perfect reconstruction relation imposes a relation between the forms of the windows of analysis and synthesis. In addition, when switching between a transform coding and a predictive coding, it is possible to describe the analysis window or the synthesis window in an equivalent manner. Indeed, in this case, the relation of reconstruction makes appear a direct relation between the two forms.
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.With an analysis window (and therefore synthesis) thus chosen, it is possible to reduce the area in which the folding appears on the decoding of the first sequence.
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.With the window thus defined, it is possible to reduce the number of samples of the second sequence (predictive coding) to be transmitted for decoding.
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.In addition, the additional number of samples is related to the size of the intermediate part. For example, the middle part is a sinus arch. For example again, 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.
Par exemple, la fenêtre de synthèse est une fenêtre asymétrique.For example, the summary window is an asymmetric window.
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.Thus, it is possible to adapt the profile of the synthesis window (thus the analysis window) to the coding of the following sequence or preceding the first sequence.
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.In an advantageous embodiment, the synthesis window further comprises a fourth continuous initial portion between a substantially zero value and a non-zero value of the first part.
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.Thus, it is possible to minimize the impact of the transition between transform coding and predictive coding on transform coding.
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.For example, the fourth part of the synthesis window is a smooth transition between an initial value and a value of the nominal part, and the third part is an abrupt transition between a value of the nominal part and a value of the substantially zero part. .
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.Thus, a better concentration of the signal energy in the frequency domain is obtained for a better coding efficiency of the transformed part.
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.It can be provided that the first and second sequences belong to the same frame of the digital signal. Thus, 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.
La présente invention prévoit également un procédé de décodage d'un signal numérique, comportant les étapes :The present invention also provides a method for decoding a digital signal, comprising the steps of:
- recevoir un vecteur transformée codant une première séquence d'échantillons du signal numérique selon un codage par transformée ;receiving a transformed vector encoding a first sequence of samples of the digital signal according to transform coding;
- recevoir un vecteur de prédiction codant une deuxième séquence d'échantillons du signal numérique selon un codage prédictif ;receiving a prediction vector coding a second sequence of samples of the digital signal according to a predictive coding;
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 codage prédictif et par codage par transformée ; et qui comporte en outre les étapes :wherein the second sequence begins before the end of the first sequence, a common subsequence to the first and second sequences thus being received encoded by both predictive and transform coding; and which further comprises the steps:
a) appliquer au vecteur 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 prédictif;a) applying to the transformed vector an inverse transformation of the transform coding for decoding a subsequence of the first non-coded sequence by predictive coding;
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 prédictif en se fondant sur au moins un échantillon issu de l 'étape a);b) decoding at least in the prediction vector the subsequence common to the first and second sequences at least by a predictive decoding based on at least one sample from step a);
c) décoder dans le vecteur prédictif par un décodage prédictif 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 prédictif.c) decoding in the predictive vector by a predictive decoding a subsequence of the second non-coded sequence by transform coding, based on at least one sample from one of the steps a) and b). Thus, the folding present in the decoded subsequence can be eliminated by using decoded samples by predictive decoding.
Dans une réalisation avantageuse, l 'étape b) comporte les sous- étapes :In an advantageous embodiment, step b) comprises the sub-steps:
b l ) décoder dans le vecteur prédictif la sous-séquence commune aux première et deuxième séquences par un décodage prédictif en se fondant sur au moins un échantillon issu de l'étape a) ;b) decoding in the predictive vector the common subsequence to the first and second sequences by a predictive decoding based on at least one sample from step a);
b2) appliquer au vecteur 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 ; etb2) applying to the transformed vector an inverse transformation of the transform coding for decoding the common subsequence to the first and second sequences; and
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 bl) avec un échantillon correspondant issu de l'étape b2).b3) decoding the common subsequence to the first and second sequences by combining at least one sample from step b1) with a corresponding sample from step b2).
Par exemple, la combinaison est une combinaison linéaire. En combinant ainsi les échantillons, on obtient un décodage plus robuste.For example, the combination is a linear combination. By thus combining the samples, a more robust decoding is obtained.
Dans une autre réalisation avantageuse, l'étape b) comporte les sous-étapes :In another advantageous embodiment, step b) comprises the sub-steps:
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 prédictif 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 ;b4) decoding in the predictive vector the common subsequence to the first and second sequences by predictive decoding based on at least one sample from step a); b5) creating from at least one sample from step b4) a sample containing a folding equivalent to a transform coding followed by a transform decoding;
b6) appliquer au vecteur 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 ; etb6) applying to the transformed vector an inverse transformation of the transform coding for decoding the common subsequence to the first and second sequences; and
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).b7) decoding the common subsequence to the first and second sequences by combining at least one sample from step b5) with a corresponding sample from step b6).
Ainsi, le repliement créé par l'étape b5) correspond exactement au repliement présent dans la sous-séquence décodée.Thus, the folding created by step b5) corresponds exactly to the folding present in the decoded subsequence.
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.The creation of the folding can be done by applying 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.
Bien entendu, on peut utiliser un même codage prédictif pour tous les échantillons.Of course, one can use the same predictive coding for all samples.
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.Similarly, the same transform coding / decoding can be used, with the same analysis and synthesis windows, whenever such coding / decoding is performed.
Dans un mode de réalisation, l'étape a) comporte l' application d' une fenêtre synthèse comportant au moins trois parties :In one embodiment, step a) comprises the application of a synthesis window comprising at least three parts:
- une première partie nominale,a first nominal part,
une deuxième partie terminale sensiblement nulle, une troisième partie intermédiaire continue entre les première et deuxième zones,a second terminal portion substantially zero, a third intermediate portion continuous between the first and second 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.and at least the second and third portions are applied to samples coding the subsequence common to both sequences.
La présente invention prévoit un programme informatique comportant des instructions pour la mise en œuvre du procédé de codage tel que décrit, lorsque le programme est exécuté par un processeur.The present invention provides a computer program comprising instructions for implementing the encoding method as described, when the program is executed by a processor.
De plus, la présente invention vise un support lisible par un ordinateur sur lequel est enregistré un tel programme d'ordinateur.In addition, the present invention aims a support readable by a computer on which is recorded such a computer program.
La présente invention prévoit également un programme informatique comportant des instructions pour la mise en œuvre du procédé de décodage tel que décrit, lorsque le programme est exécuté par un processeur.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.
De plus, la présente invention vise un support lisible par un ordinateur sur lequel est enregistré un tel programme d'ordinateur.In addition, the present invention aims a support readable by a computer on which is recorded such a computer program.
La présente invention prévoit une entité de codage adaptée pour mettre en œuvre le procédé de codage tel que décrit.The present invention provides a coding entity adapted to implement the coding method as described.
Une telle entité de codage d'un signal numérique audio, peut comporter:Such a coding entity of a digital audio signal may comprise:
un codeur par transformée pour coder une première séquence d'échantillons du signal numérique audio selon un codage par transformée ;a transform encoder for encoding a first sequence of samples of the digital audio signal according to transform coding;
un codeur prédictif pour coder une deuxième séquence d' échantillons du signal numérique audio selon un codage prédictif ; on prévoit 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 prédictif et par codage par transformée.a predictive encoder for encoding a second sequence of samples of the digital audio signal according to a predictive encoding; it is expected that the second sequence begins before the end of the first sequence, a subsequence common to the first and second sequences thus being encoded by both predictive coding and transform coding.
La présente invention prévoit une entité de décodage adaptée pour mettre en œuvre le procédé de décodage tel que décrit.The present invention provides a decoding entity adapted to implement the decoding method as described.
On peut prévoir une entité de décodage de signal numérique, comportant des moyens de réception:It is possible to provide a digital signal decoding entity comprising receiving means:
d' un vecteur transformée codant une première séquence d'échantillons du signal numérique selon un codage par transformée ; eta transformed vector encoding a first sequence of samples of the digital signal according to transform coding; and
d'un vecteur de prédiction codant une deuxième séquence d'échantillons du signal numérique selon un codage prédictif ;a prediction vector encoding a second sequence of samples of the digital signal according to a predictive coding;
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 ; et qui comporte en outre :wherein the second sequence begins before the end of the first sequence, whereby a common subsequence to the first and second sequences is encoded by both predictive and transform coding; and which further comprises:
- un premier décodeur pour appliquer au vecteur 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 prédictif ;a first decoder for applying to the transformed vector an inverse transformation of the transform coding for decoding a subsequence of the first non-coded sequence by predictive coding;
- 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 prédictif 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 prédictif 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.a second decoder for decoding at least in the predictive vector the subsequence common to the first and second sequences by at least one predictive decoding based on at least one sample derived from the first transform decoder; and a third predictive decoder for decoding in the predictive vector by a predictive decoding a subsequence of the second non-coded sequence by transform coding, based on at least one sample derived from one of the first and second coders.
Dans une réalisation avantageuse, le deuxième décodeur comporte :In an advantageous embodiment, the second decoder comprises:
- 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 prédictif en se fondant sur au moins un échantillon issu du premier décodeur par transformée ;first means for decoding in the predictive vector the common subsequence of the first and second sequences by a predictive decoding based on at least one sample derived from the first transform decoder;
- des deuxièmes moyens pour appliquer au vecteur 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; etsecond means for applying to the transformed vector an inverse transformation of the transform coding for decoding the common subsequence to the first and second sequences; and
- 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.third means for decoding the common subsequence to the first and second sequences by combining at least one sample from the first means with a corresponding sample from the second means.
Dans une autre réalisation avantageuse, le deuxième décodeur comporte :In another advantageous embodiment, the second decoder comprises:
- 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 prédictif en se fondant sur au moins un échantillon issu du premier décodeur par transformée ;first means for decoding in the predictive vector the common subsequence of the first and second sequences by a predictive decoding based on at least one sample derived from the first transform decoder;
- 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 ;fourth means for creating, from at least one sample returned by the first means, a sample containing folding equivalent to transform coding followed by transform decoding;
- des cinquièmes moyens pour appliquer au vecteur 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 ; etfifth means for applying to the transformed vector an inverse transformation of the transform coding for decoding the common subsequence to the first and second sequences; and
- 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.sixth means for decoding the common subsequence to the first and second sequences by combining at least one sample from the fourth means with a corresponding sample from the fifth means.
B ien entendu, tous les moyens réalisant un même type de codage ou décodage (prédictif ou par transformée) peuvent être réunis dans une même unité.Of course, all means performing the same type of coding or decoding (predictive or transform) can be combined in one 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.Similarly, one can provide a single unit (coding or decoding) to perform sometimes coding, respectively decoding, predictive and transform.
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.Of course, the encoders / decoders described may comprise a signal processor, storage elements, as well as means of communication between these elements.
La présente invention permet donc 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.The present invention thus makes it possible to alternate transformation coding techniques, for example with TDAC-type critical sampling, and predictive coding techniques, for example of the CELP type over time in order to obtain a good quality of reconstruction.
L'invention propose à 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 des réalisations avantageuses, l'invention 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.To this end, the invention proposes particular temporal relations between the two types of coding: the time position of the CELP and transformed frames being temporally offset. In advantageous embodiments, the invention also proposes extending the 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.
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.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.
Selon un avantage de la présente invention, 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é.According to an advantage of the present invention, a frame of M samples can be subdivided into several subframes mixing portions encoded in CELP and others in the transformed domain.
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.The invention finds its application in sound coding systems, in particular in standardized speech coders, in particular to the ITU ("International Telecommunications Union") or to the ISO ("International Standard Organization") for coding generic sounds, including speech signals.
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 :Other features and advantages of the invention will appear on examining the following detailed description, and the appended figures among which:
- la figure 1 illustre deux fenêtres de synthèse d'un codage par transformée,FIG. 1 illustrates two windows of synthesis of a transform coding,
- la figure 2 illustre des fenêtres de synthèse d'un mode de réalisation de l' invention,FIG. 2 illustrates synthetic windows of one embodiment of the 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,FIG. 3 illustrates data frames processed by synthesis windows, FIG. 4 illustrates sample vectors obtained by application of synthesis windows,
- 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,FIG. 5 illustrates the case of a TDAC coding followed by an AMR WB coding, followed by a TDAC coding according to one embodiment of the invention,
- la figure 6 illustre le même cas de codage avec une fenêtre asymétrique avantageuse,FIG. 6 illustrates the same case of coding with an advantageous asymmetric window,
- la figure 7 illustre un contexte général d' un problème résolu par l' invention,FIG. 7 illustrates a general context of a problem solved by the invention,
- la figure 8 illustre un schéma général de résolution de ce problème par la présente invention,FIG. 8 illustrates a general scheme for solving this problem by the present invention,
- la figure 9 illustre les étapes d'un mode de réalisation d'un procédé de codage selon l' invention,FIG. 9 illustrates the steps of an embodiment of a coding method according to the invention,
- la figure 10 illustre la composition d'une fenêtre de synthèse selon un mode de réalisation de l' invention,FIG. 10 illustrates the composition of a synthesis window according to one embodiment of the 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,FIG. 11 illustrates the steps of an embodiment of a decoding method according to the present invention,
- la figure 12 illustre un décodage avantageux utilisé dans le procédé de décodage,FIG. 12 illustrates an advantageous decoding used in the decoding method,
- la figure 13 illustre une variante de ce décodage avantageux,FIG. 13 illustrates a variant of this advantageous decoding,
- la figure 14 illustre un codeur selon un mode de réalisation de l' invention, - la figure 15 illustre un décodeur selon un mode de réalisation de l' invention,FIG. 14 illustrates an encoder according to one embodiment of the invention, FIG. 15 illustrates a decoder according to one embodiment of the invention,
- la figure 16 illustre un dispositif matériel adapté pour réaliser un codeur ou un décodeur selon un mode de réalisation de la présente invention.FIG. 16 illustrates a hardware device adapted to produce an encoder or a decoder according to an embodiment of the present invention.
Dans la suite, on commence par décrire une transformationIn the following, we begin by describing a transformation
TDAC à reconstruction parfaite, puis on présente une technique permettant de la rendre compatible avec un échantillonnage critique.TDAC with perfect reconstruction, then we present a technique to make it compatible with critical sampling.
Enfin, on décrit un codage CELP et une combinaison de ce codage avec le codage TDAC.Finally, a CELP coding and a combination of this coding with TDAC coding are described.
TDAC et reconstruction parfaiteTDAC and perfect reconstruction
On considère un signal sonore numérisé selon une période d'échantillonnage — (Fe étant la fréquence d'échantillonnage). PourA digitized sound signal is considered according to a sampling period - (F e being the sampling frequency). For
une trame donnée d' indice t, les échantillons sont notés χn+[M pour chaque instant n + tM .a given frame of index t, the samples are denoted χ n + [M for each moment n + tM.
L'expression de la transformée TDAC au codage de la trame est présentée ci-dessous :The expression of the TDAC transform to the frame encoding is shown below:
2M-I2M-I
*,,* = ∑ -W MO 0 ≤ k < M , n=0* ,, * = Σ -W MO 0 ≤ k <M, n = 0
- M représente la taille de la transformée,M represents the size of the transform,
- X1 k sont les échantillons dans le domaine transformé pour la trame t,- X 1 k are the samples in the transformed domain for the frame t,
Pk (n) = K (")QA («)cos — (2n + l + Λ/ )(2* + l) est une fonction de base de la transformée dont : - le terme Λu (/i)est appelé filtre prototype ouPk ( n ) = K (") QA ( " ) cos - (2n + 1 + Λ /) (2 * + 1) is a basic function of the transform of which: the term Λ u (/ i) is called a prototype filter or
"fenêtre de pondération d'analyse" et couvre 2M échantillons,"analysis weighting window" and covers 2M samples,
- et dont le terme Cn k définit la modulation.and whose term C nk defines the modulation.
Pour restituer les échantillons temporels initiaux, la transformation inverse suivante, au décodage, est appliquée afin de reconstituer les échantillons O ≤ 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 :To restore the initial time samples, the following inverse transform, at decoding, is applied in order to reconstruct the samples O ≤ n <M which are then in a recovery zone of two consecutive transforms. The decoded samples are then given by:
M -I x n, +t/H+M = ∑[*r+u />; («)+*,.*/>; («+ ^)] ,M -I xn, + t / H + M = Σ [* r + u />; ( ") + * ,. * />;("+ ^)],
*=0* = 0
où ps (n) = hs (n) Cn <k 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.where p s (n) = h s (n) C n <k defines the synthesis transform, the synthesis weighting window being denoted h s (n) and also covering 2M samples.
L'équation de reconstruction donnant les échantillons décodés peut s'écrire aussi sous la forme suivante :The reconstruction equation giving the decoded samples can also be written in the following form:
M -IM -I
X n+M+M ∑[x,+uMn)Q.n + *αM«+Λθctin+M ] X n + M + M Σ [x, + uMn) Q. n + * αM "+ Λ θc tin + M ]
= h s (n) X,ΛCkjl+ M = h s (n) X, Λ C kjl + M
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 Xt+lk , 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=l on a :This other presentation of the reconstruction equation amounts to considering that two inverse cosine transforms can be carried out successively on the samples in the transformed domain X tk and X t + lk , their result being then combined by a weighting and addition operation. It is the addition of two consecutive frames which makes it possible to suppress the so-called folded components of the transformation. Indeed if one writes the operations of transformation direct and inverse in matrix form for the frames t = 0 and t = 1 one has:
/zû0(2M-l) X2M-1 / z û0 (2M-1) X 2M-1
A la synthèse, on obtientAt the synthesis, we get
-"ôo /z(0(0) 0 0 Q 00 C1 10 C M, -I 0 00 -*bo 0 A10(I) 0 Q 01 C1 C M, -I 1 01- "oo / z (0 (0) 0 0 Q 00 10 C 1 CM, -I 0 00 - * bo 0 10 (I) 01 C Q 0 1 CM, -I 1 01
^02M-I 0 A40 (2Af -1) Q 02M-1 C1 I 2M-1 Cj 2.M M --1M-1 X, OM-I^ 02M-I 0 40 (2AF -1) 02M-1 Q 1 I C 2M-1 Cj 2.MM --1M X-1, OM-I
-I -I
AvecWith
Q 00 C, 10 C M1 -IO Q 0 C01 Co 2M-IQ 00 C, 10CM 1 -IO Q 0 C 01 Co 2M-I
Q 01 C1 C M1 -I I Q0 c I, I Q 2M-IQ 01 C 1 CM 1 -IIQ 0 c I, IQ 2M-I
5 =5 =
Q 02M-I Q 2M-I C1 2M-I M-I C "-M-I 0 C "-Af-I 1 C M1 -I 2M-IQ 02M-IQ 2M-IC 1 2M-I MI C "-MI 0 C" -Af-I 1 CM 1 -I 2M-I
S = 'M JM "M «M 'M +JM - IM étant la matrice carrée identité de taille M,S = 'M JM' M 'M' M + JM Where I M is the square matrix identity of size 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,Where J M is the anti-identity square matrix of size M, which, at a series of increasing index values, returns the same series of values with the decreasing indices,
- 0M est une matrice carrée de taille M ne contenant que des zéros.- 0 M is a square matrix of size M containing only zeros.
Ainsi, il vient :So, he comes:
J J
et par analogie en utilisant la trame t=l :and by analogy using the t = 1 frame:
J "al,2M -\-nx3M -\-n }J "al, 2M - \ - n x 3M - \ - n}
Ainsi, si on additionne \M+n et Jc1 „ terme à terme on obtient :Thus, if we add \ M + n and Jc 1 "term to term we obtain:
xM+n ~ -Xo.M+π + x\,n ~ "tO,M +n + Kθ,2M -\-nx2M -\-n y [}ιa\ nxM+n ~ 'ιa\,M -\-nx2M -\-n J xM+n J + X2M -]-n J x M + n ~ -Xo.M + π + x \, n ~ "tO, M + n + Kθ, 2M - \ - n x 2M - \ - ny [} ι a \ n x M + n ~ ' ι a \, M - \ - n x 2M - \ - n J x M + n J + X 2M -] - n J
Si on veut assurer χM+n = χM+π et obtenir ainsi la reconstruction parfaite, on obtient les conditions nécessaires suivantes sur les filtres d'analyse et de synthèse: = ®If we want to ensure χ M + n = χ M + π and thus obtain the perfect reconstruction, we obtain the following necessary conditions on the analysis and synthesis filters: = ®
c'est-à-dire that is to say
avecwith
D{n) = ha0 {n + M) - hal {M -l -n) + hal (n) - ha0 (2M -l -n) .D {n) = h {a0 n + M) - h {M -l al -n) + h s (n) - h a0 (2M -l -n).
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- l -n.It appears that to ensure perfect reconstruction, the forms of analysis and synthesis are constructed by temporal reversal and weighting. Consequently, if h s contains zeros n, then h a will contain the symmetrical portion about M / 2, that is to say the index M- l -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 hso et hsi .The synthesis is illustrated by an example in FIG. 1. In this example, two inverse transforms of size M h s o and h s i are passed.
Pour reconstruire les échantillons entre M et 2M- 1 on additionne les échantillons couverts par la partie commune entre hso et hS) . La reconstruction sera parfaite si les fenêtres vérifient les conditions de reconstruction parfaite énoncées ci-dessus.To reconstruct the samples between M and 2M-1, the samples covered by the common part are added between h s o and h S ). The reconstruction will be perfect if the windows verify the perfect reconstruction conditions stated above.
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+i , issus de transformations directes et qu'on leur applique les transformations inverses pour obtenir respectivement Jc0 et Jc1 . Le signal d'origine sera parfaitement reconstruit par addition des M derniers échantillons du premier ensemble avec les M premiers du second.The usual case of reconstruction is therefore when, in a decoder, two consecutive spectra are received, for example X t and X t + 1, resulting from direct transformations and the inverse transformations are applied to them to obtain Jc 0 and Jc 1, respectively . The original signal will be perfectly reconstructed by adding the last M samples of the first set with the first M of the second.
On peut également considérer que Xt seul a été transmis. La reconstruction parfaite pourra être obtenue si on sait construire le signal Jc1 n . Ceci sera possible si on connaît les échantillons XM à X2M i -It can also be considered that X t alone has been transmitted. The perfect reconstruction can be obtained if we know how to construct the signal Jc 1 n . This will be possible if we know the samples X M to X 2M i -
De cette manière il sera possible, par pondération par les fenêtres hs i et hai , de construire le vecteur permettant de supprimer le repliement émanant du vecteur X0.In this way it will be possible, by weighting by the windows h s i and h a i , to construct the vector for suppressing folding from the vector X 0 .
Dans ce qui précède, on a considéré que l'on avait à disposition les signaux Xt et XM à X2M i -In the foregoing, it has been considered that the signals X t and X M are available at X 2 M i -
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 X2M à X3M- I - 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.If now we consider that the following frame is transmitted in the frequency domain (X t + 2 ), we do not suppress the folding located between X 2 M to X 3M - I - To do this, it would have been necessary to have received these samples at prior. Nevertheless, this trivial solution is suboptimal from the point of view of critical sampling.
Dans la suite, on présente un moyen de pallier cet inconvénient.In the following, we present a way to overcome this disadvantage.
Codage temporel efficaceEffective time coding
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.It is proposed to choose particular windows for transmitting the coded signal in time when desired without losing the critical sampling (ie the same number of samples transmitted and reconstructed). This is illustrated in Figure 2.
Par construction, comme illustré sur la figure 2, on choisit :By construction, as illustrated in FIG. 2, one chooses:
hsO = 0 pour n compris entre M+ (M+Mo)/2 et 2M- 1 , ethsO = 0 for n between M + (M + Mo) / 2 and 2M-1, and
hs l = 0 pour n compris entre 0 et (M-Mo)/2,hs l = 0 for n between 0 and (M-Mo) / 2,
avec M0 une valeur entière donnée comprise entre 1 et M- I .with M 0 a given integer value between 1 and M-I.
Par exemple, les portions descendantes et ascendantes de hsO et hs l autour de l'échantillon M+M/2 sont constituées d'arches de sinus données par l'équation : hsi(n) =sin (pi * (0.5+n - ( (M-Mo)/2))/2/Mo) pour n compris entre (M-Mo)/2 et (M+Mo)/2For example, the downward and upward portions of hsO and hs l around the M + M / 2 sample consist of sinus arches given by the equation: h s i (n) = sin (pi * (0.5 + n - ((M-Mo) / 2)) / 2 / Mo) for n between (M-Mo) / 2 and (M + Mo) / 2
hso(n) sera prise comme symétrique dans cette zone de hsi pour obtenir la reconstruction parfaite.h s o (n) will be taken as symmetric in this area of h s i to obtain the perfect reconstruction.
hsi pourra être défini également par une fonction de « Kaiserh s i can be defined also by a function of "Kaiser
Bessel » dérivée utilisé par exemple dans les codeurs de type AAC.Bessel "derivative used for example in AAC coders.
Ainsi définies, les formes de hs0 et hsi permettent d'assurer la reconstruction parfaite.Thus defined, the forms of h s0 and h s i make it possible to ensure perfect reconstruction.
Comme illustré sur la figure 3 , une première trame T30 (fenêtrée par hso) combinée à la trame T3 1 (fenêtrée par hs l ) permet de reconstruire le segment de M à 2M- 1 , les trames T3 1 et T33 permettant d'obtenir les échantillons 2M à 3M- 1 etc.As illustrated in FIG. 3, a first frame T30 (windowed by h s o) combined with the frame T3 1 (windowed by hs l) makes it possible to reconstruct the segment from M to 2M-1, the frames T3 1 and T33 enabling 'get the samples 2M to 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.In the case where the signal of the frame T31 is transmitted in frequency, the critical sampling is respected and the reconstruction is perfect insofar as the analysis and synthesis filters verify the necessary condition.
Dans la mesure où l'échantillon X3M/2+11 (n<Mo/2) est transmis dans la trame T3 1 alors l'échantillon X^M/2 i -n pourra être généré en se basant sur la connaissance de χa M+Mi2+n 1 S S U de la trame T30. On se basera sur la relation :Since the sample X3 M / 2 + 11 (n <Mo / 2) is transmitted in the frame T3 1 then the sample X ^ M / 2 i -n can be generated based on the knowledge of χa M + M i 2 + n 1 SSU of the T30 frame. We will build on the relationship:
-*0 M +n = > \0 M +« M +« %+„ + Λo IM 1 nx2M l-,, ] P0 Ur Ω = M/2- * 0 M + n => \ 0 M + "M +"% + "+ Λo IM 1 n x 2M l- ,,] P 0 Ur Ω = M / 2
On aura alors : x H) W/2+nWe will then have: x H) W / 2 + n
3M/2 1-π Kθ MU /2+nxÏM /2+n3M / 2 1-π K MU MU / 2 + n x ÏM / 2 + n
"α0 W/2-l n SO W/2+n"α0 W / 2-l n SO W / 2 + n
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: ) This can be reiterated to find the samples in the overlap zone, ie between the samples (M-Mo) / 2 and M / 2. Using predefined relationships:)
Du fait que hso contient des zéros entre M+(M+M0)/2 et 2M- 1 , hai contient des zéros entre 0 et (M-Mo)/2.Since h s o contains zeros between M + (M + M 0 ) / 2 and 2M-1, h a i contains zeros between 0 and (MM o ) / 2.
De même, du fait que hsi ne contient que des zéros entre 0 etSimilarly, because h s i contains only zeros between 0 and
(M-Mo)/2, hao ne contient que des zéros entre M+(M+Mo)/2 et 2M- 1.(M-Mo) / 2, h a o contains only zeros between M + (M + Mo) / 2 and 2M-1.
hsO = 0 pour n=M+(M+Mo)/2...2M- l ,hsO = 0 for n = M + (M + Mo) / 2 ... 2M-1,
hs l = 0 pour n=0...(M-Mo)/2,hs l = 0 for n = 0 ... (M-Mo) / 2,
ha l = 0 pour n=0...(M-Mo)/2,ha l = 0 for n = 0 ... (M-Mo) / 2,
haO = 0 pour n=M+(M+Mo)/2 et 2M- l .haO = 0 for n = M + (M + Mo) / 2 and 2M-1.
Par conséquent, comme illustré sur la figure 4, le vecteur *o,M+n contient 3 zones :Therefore, as illustrated in FIG. 4, the vector * o, M + n contains 3 zones:
- xoM+n =0 de n= (M+Mo)/2... M- 1 ,- x oM + n = 0 of n = (M + Mo) / 2 ... M-1,
- χ$ M+n ne contient pas de composantes repliées entre n=0 et n=(M- Mo)/2, et- χ $ M + n does not contain folded components between n = 0 and n = (M-Mo) / 2, and
- la zone centrale autour de M+M/2 pour laquelle il existe des composantes repliées.the central zone around M + M / 2 for which there are folded components.
De même :Likewise:
- Jt1 n =0 entre n=0 et n=(M-Mo)/2,- Jt 1 n = 0 between n = 0 and n = (M-Mo) / 2,
- x ne contient pas de composantes de repliement entre (M+Mo)/2 et M- I , et - la zone centrale autour de M/2 pour laquelle il existe des composantes repliées .- x does not contain folding components between (M + Mo) / 2 and M-I, and the central zone around M / 2 for which there are folded components.
Grâce à ces propriétés, on peut donc recouvrer le segment X M - - X2M î en assurant une reconstruction parfaiteThanks to these properties, we can recover the segment XM - - X2M i ensuring a perfect reconstruction
Cette reconstruction parfaite peut être obtenue :This perfect reconstruction can be obtained:
- par transmission dans le domaine transformé du vecteur Xi ,by transmission in the transformed domain of the vector Xi,
- par transmission dans le domaine temporel des échantillons- by transmission in the time domain of the samples
X3 M/2 - X5M/2 1X3 M / 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.From the foregoing, one can now perform critical sampling TDAC coding while avoiding problems related to aliasing. In the following, a CELP coding is described, allowing an advantageous combination with the previously described TDAC coding.
TDAC+CELPTDAC + 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 ).It is recalled that one places oneself within the framework of a type operation presented in the AMR WB + specification. 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).
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 h.5 1 ) suivi par une trame T52 en AMR WB puis d'une trame T53 à nouveau en TDAC (fenêtrée par h.53).Without loss of generality, with reference to FIG. 5, we take the case of a coding of a T51 frame by TDAC (windowed by h 5 1 ) followed by a T52 frame in AMR WB and then a T53 frame to new in TDAC (windowed by hr 53 ).
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 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é.In order to reconstruct the samples, the AMR WB coding is based on a prediction of the periodicity of the signal, termed long-term prediction. As such, it builds its samples as follows 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.
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- MQ)H et M + (M+Mo)/2 tant que la trame T52 ne sera pas restituée avec le repliement permettant de supprimer celui de la trame T51.Thus, in order to effectively achieve long-term prediction, the CELP decoder uses past samples that should not have artifacts. However, since the frame T51 is coded in TDAC, there will be folding in the samples between M + (M-MQ) H and M + (M + Mo) / 2 as long as the frame T52 will not be restored with the folding to delete that of the frame 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.In order to allow the return of the samples of the CELP-encoded frame T52 without folding, the area of coverage of the samples transmitted by this coding is widened to cover the initial transition zone completely.
On étend la durée du CELP au contenu d'indice M+ (M-Mo)/2 ... 5M/2.The duration of the CELP is extended to the content of index 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.In this sense, there is no critical sampling for the coded part by the predictive coding.
En revanche la zone M0 est limitée en durée afin d'éviter de transmettre trop d'information supplémentaire.On the other hand, the zone M 0 is limited in duration in order to avoid transmitting too much additional information.
Par exemple, M0 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 5 puissance de 2.For example, M 0 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. We can also choose 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.
Pour reconstruire les échantillons de la zone entre M et 2M- 1 , on reconstruit au préalable la période entre M et (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 M- I est 10 reconstruite avec le CELP seul qui se base pour la partie long terme sur les échantillons restitués par la partie transformée.To reconstruct the samples of the area between M and 2M-1, the period between M and (M-Mo) / 2 is reconstructed using the inverse transform of a frame T50 (not shown) preceding the frame T51. Then the area between M + (M-Mo) / 2 and M-I is reconstructed with the CELP alone which is based for the long term on the samples returned by the transformed part.
Une variante pour obtenir les échantillons compris entre M+A variant to obtain samples between M +
(M-Mo)/2 et M+ (M+Mo)/2- l consiste à combiner les échantillons(M-Mo) / 2 and M + (M + Mo) / 2- 1 is to combine the samples
CELP avec les échantillons contenant du repliement issus de la trameCELP with samples containing folding from the frame
15 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éalablement15 T51. In this case, we can achieve a linear combination of samples from the CELP and the previously determined equation
La combinaison linéaire fonctionne suivant le modèle ci- dessous :The linear combination works according to the model below:
-^" xlMI2-\-n = an X3M 12-l-n + \) ~ an ) x~iM 12-X-H1 issu du celp issu de la transformée- ^ "x LMI2 - \ - n = a n X 3M 12-ln + \) ~ a n) x ~ iM-12 H 1 from CELP from the transformed
Avec α,, un jeu de coefficients positifs ou nuls inférieurs ou égaux à un.With α ,, a set of positive or zero coefficients less than or equal to one.
La portion 2M, ...3M- 1 est décodée en utilisant la fin des échantillons CELP transmis entre les indices 2M à 5M/2. Ensuite, enThe portion 2M, ... 3M-1 is decoded using the end of the CELP samples transmitted between the indices 2M to 5M / 2. Then, in
25 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.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 difference with the other direction of transition lies in the fact that the CELP will not supply all the samples of the transition zone of the transform, but only a half (ie M'o / 2 = M / 8 in our example for a transition size of M'o = M / 4). However, only half of this transition zone is necessary to be able to cancel the time folding of the transform.
La fenêtre hs i peut être asymétrique. Ainsi, la zone de recouvrement entre la partie CELP et TDAC, notée M0', peut être différente de M0.The window hs i may be asymmetrical. Thus, the overlap zone between the CELP and TDAC part, denoted M 0 ', may be different from M 0 .
Transmission du CELPTransmission of CELP
On décrit dans la suite plusieurs alternatives pour transmettre la trame CELP.Several alternatives are described hereinafter for transmitting the CELP frame.
Dans un mode de réalisation, 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.In one embodiment, the CELP frame covers a duration equal to the size M + Mo / 2 as presented in FIG. 4. According to the AMR standard WB, this frame is divided into sub segments, of size denoted Mc in FIG. , allowing a frequent update of the parameters making it possible to synthesize a signal CELP of quality. Thus the values of pitch, gain and the stochastic part are initially transmitted and updated optionally.
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.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.
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.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.
Dans une variante de ce mode de réalisation, le gain de pitch n'est pas transmis. Il est estimé sur le signal décodé dans la partie transformée.In a variant of this embodiment, the pitch gain is not transmitted. It is estimated on the decoded signal in the transformed part.
Dans un mode de réalisation 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.In an alternative embodiment, the pitch estimate can be performed by including the period M + (M-Mo) / 2 to M + (M + Mo) / 2 which contains folded components.
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 an .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 a n .
En effet, une partie stochastique est implicitement présente dans le signal issu des composantes repliées venant de la partie transformée.Indeed, a stochastic part is implicitly present in the signal coming from the folded components coming from the transformed part.
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.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.
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.Mo / 2 can be equal to Mc if one looks for a particular compatibility with an existing coder. For example, in the context of an embodiment including a CELP AMR type WB, one can choose Mo / 2 = Mc = 5 ms.
Un mode de réalisation alternatif est présenté sur la figure 6. Dans ce mode de réalisation, 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).An alternative embodiment is shown in Figure 6. In this embodiment, the CELP encoding covers a shorter length than the base frame of length M. The covered portion 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).
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 h6ι et h64), la trame T62 étant codée avec une transformée de taille M/2 (fenêtre h62).In FIG. 6, only the T63 frame is coded in CELP. 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 6 ι and h 64 ), the frame T62 being encoded with a transform of size M / 2 (window h 62 ).
Ce codage est efficace car la fenêtre h6i 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.This coding is effective because the window h 6 i is relatively soft, which allows to obtain a better concentration of energy in the frequency domain. The h 62 window, on the other hand, 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. The T63 is coded in CELP as shown above, here 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.Thus a frame of length M can be subdivided into subparts coded in CELP or TDAC of variable size.
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.Once the samples are restored in the time domain, LPC synthesis filters can optionally be applied to restore the sound signal if necessary.
Dans un mode de réalisation 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(z I Y\)H de_emph(z) avec A(z) le filtre de prédiction linéaireIn a particular embodiment, the transform is operated in a weighted domain, that is to say that the transform is performed on the filtered signal by a weighting filter of type W (z) = A (z IY \ ) H of _ emph (z) with A (z) the linear prediction filter
(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.(LPC) and gamma a flattening factor of this filter, the filter Hd e - emph (z) is a high frequency de-emphasis filter. 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.
Dans la suite on décrit un mode de réalisation du procédé de codage.In the following an embodiment of the coding method is described.
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.Referring to Figure 7, we illustrate the problem of switching between a type of coding transformed with a predictive type coding.
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.We consider a signal x to code and then decode. Samples from 0 to 3M-1 are considered to be transform-coded, whereas samples from 3M to 4M-1 must be coded by predictive coding, as indicated by the double arrows T and P.
Selon l' art antérieur, on code les échantillons de 0 à 2M- 1 par codage par transformée selon un vecteur transformée Xo .According to the prior art, the samples are coded from 0 to 2M-1 by transform coding according to a transformed vector X o .
Le décodage de ce vecteur transformé donne les échantillons deDecoding of this transformed vector gives the samples of
0 à 2M- 1 d'un signal décodé * . Ce décodage fait apparaitre du repliement REP l , notamment dans les échantillons de M à 2M- 1.0 to 2M- 1 of a decoded signal *. This decoding reveals REP 1 refolding, especially in the samples from M to 2M-1.
Par ailleurs, on code les échantillons de M à 3M- 1 par codage par transformée selon un vecteur transformée Xf .Moreover, the samples of M to 3M-1 are coded by transform coding according to a transformed vector Xf.
Le décodage de ce vecteur transformée donne les échantillons de M à 3M- 1 du signal décodé * . Ce décodage fait apparaître le même repliement avec un signe opposé à REP l dans les échantillons de M à 2M- 1 que lors du décodage de x£ . Il fait également apparaître du repliement REP2 dans les échantillons de 2M à 3M- 1 dans * . Ainsi, il est possible par combinaison des échantillons de M à 2M- 1 issus respectivement du décodage de XQ et x[ de supprimer (SUPPR_REP) le repliement REPl .Decoding of this transformed vector gives the samples from M to 3M-1 of the decoded signal *. This decoding shows the same folding with a sign opposite REP 1 in the samples from M to 2M-1 as during the decoding of x £. It also shows REP2 folding in samples from 2M to 3M-1 in *. Thus, it is possible by combination of the samples of M to 2M-1 respectively from the decoding of X Q and x [delete (DELPR_REP) folding REPL.
On code ensuite les échantillons de 3M à 4M- 1 de x par codage prédictif selon le vecteur de prédiction Xζ .The samples of 3M to 4M-1 of x are then coded by predictive coding according to the prediction vector Xζ.
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,r , néanmoins ils sont inutilisables du fait de la présence du repliement REP2.To be decoded, this vector requires knowledge of previous samples. That is to say the samples from 2M to 3M-1. These samples are available at the decoding of X, r , nevertheless they are unusable because of the presence of REP2 folding.
Ainsi, Xf ne peut être décodé.Thus, Xf can not be decoded.
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.In addition, the removal of REP2 folding requires knowledge of x samples from 2M to 3M-1 to recreate the folding and delete it by combination. However, these samples are not available for decoding.
Ainsi, le décodage de Xf n'est pas terminé.Thus, the decoding of Xf is not finished.
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.To solve these difficulties, the prior art proposes to communicate to the decoder the samples it needs in addition to the vectors from the transform and the prediction part.
Néanmoins, cette solution n'est pas optimale du point de vue du débit.Nevertheless, this solution is not optimal from the point of view of flow.
La présente invention propose la solution illustrée sur la figure 8.The present invention proposes the solution illustrated in FIG.
Sur cette figure, on retrouve le signal x, le vecteur transformée X,r , et le vecteur de prédiction X% . Cependant, selon la présente invention, le vecteur de prédiction Xξ code un nombre M d'échantillons comportant une partie des échantillons codés par xj .In this figure, we find the signal x, the transformed vector X, r , and the prediction vector X%. However, according to the present invention, the prediction vector Xξ encodes a number M of samples comprising part of the samples coded by xj.
Cette disposition permet de reconstruire le signal x au décodage.This arrangement makes it possible to reconstruct the signal x at decoding.
En effet, les échantillons précédant le repliement REP crée au décodage de X,r sont utilisés pour le décodage des premiers échantillons que le décodage de Xξ va permettre d'obtenir. C'est-à- dire, ceux qu' il a en commun avec x,τ .Indeed, the samples preceding the REP folding creates the decoding of X, r are used for the decoding of the first samples that the decoding of Xξ will make it possible to obtain. That is, those he has in common with x, τ .
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.Thus, samples of x are retrieved to recreate REP folding. For example, the samples of x corresponding to REP are subjected to coding followed by a decoding identical to those undergone by the samples from M to 3M-1.
Ce repliement ainsi crée est combiné à celui présent dans les échantillons issus du décodage de x[ , et xj peut ainsi être complètement décodé.This folding thus created is combined with that present in the samples resulting from the decoding of x [, and xj can thus be completely decoded.
Ensuite, on peut utiliser les échantillons de M à 3M- 1 complètement décodés pour décoder x£ .Then, the completely decoded M to 3M-1 samples can be used to decode x £.
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.In the following, with reference to Figure 9, there is described a coding method incorporating the principles described above.
A l' étape S90 on reçoit des échantillons d'un signal à coder.In step S90, samples of a signal to be coded are received.
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 SEQ l 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 SEQ l , et selon un codage prédictif lors de l' étape S94 pour SEQ2.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 SEQ 1 and a second sequence SEQ 2 are thus obtained. Each of these sequences is then coded according to a transform coding in step S93 for SEQ 1, and according to a predictive coding in step S94 for SEQ2.
En référence à la figure 10, on décrit un mode de réalisation 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.With reference to FIG. 10, an embodiment is described in which the transform coding is done by applying an analysis window, making it possible to determine a synthesis window, by means of a perfect reconstruction relation, adapted to the present coding.
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.The windows of analysis and synthesis being linked by the perfect reconstruction relation, it is equivalent to describe one or the other.
Sur la figure 10, on décrit la fenêtre de synthèse H. Cette fenêtre comporte quatre parties particulières.In FIG. 10, the synthesis window H is described. This window comprises four particular parts.
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 SEQ l (des échantillons 0 à M- I ). Si les échantillons précédant SEQ l 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.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 part of SEQ 1 (samples 0 to M-I). If the samples preceding SEQ 1 are coded by transform, we advantageously choose INIT as a smooth transition. This makes it possible not to disturb these previous samples.
NOMI correspond à une partie nominale. Avantageusement, cette partie prend une valeur sensiblement constante.NOMI corresponds to a nominal part. Advantageously, this portion takes a substantially constant value.
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.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.
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 SEQl et le codage prédictif de SEQ2. Par exemple, c'est une transition relativement abrupte.Finally, 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.
Ainsi, INIT et NOMI sont appliquées à la sous-séquence S-Thus, INIT and NOMI are applied to the sub-sequence S-
SEQl de SEQl qui ne comporte pas d'échantillon de S-SEQ, la sous- séquence commune à SEQl et SEQ2. INTER est appliquée à S-SEQ.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.
Et NL est appliquée à S-SEQ2, la sous-séquence de SEQ2 qui ne comporte pas d'échantillon de S-SEQ.And NL is applied to S-SEQ2, the subsequence of SEQ2 that does not have an S-SEQ sample.
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.Referring to Figure 11, an advantageous decoding method is described for decoding a digital signal according to the principles described above.
Aux étapes SIlO et SlIl, on reçoit respectivement un vecteur transformée comportant des échantillons S-SEQl* codant S-SEQl, et un vecteur de prédiction comportant des échantillons S-SEQ* codant S-SEQ et des échantillons S-SEQ2* codant S-SEQ2.In steps S101 and S111, a transformed vector containing samples S-SEQ1 * encoding S-SEQ1, and a prediction vector comprising S-SEQ * samples encoding S-SEQ and S-SEQ2 * samples encoding S-, are respectively received. SEQ2.
A l'étape S 112, on applique une transformée inverse aux échantillons S-SEQl*. Par exemple, il s'agit d'une fenêtre du type de H. Par exemple, on peut en outre prévoir une étape Sl 13 comportant des opérations supplémentaires de décodage pour obtenir S-SEQl.In step S 112, an inverse transform is applied to the S-SEQl * samples. For example, it is an H-type window. For example, it is also possible to provide a step S11 comprising additional decoding operations to obtain S-SEQ1.
A l'étape Sl 14, on reçoit S-SEQl décodé par l'étape Sl 13, et S-SEQ*. On décode, au moins par décodage prédictif, à l'étape Sl 14 S-SEQ.In step S14, S-SEQ1 is decoded by step S13 and S-SEQ *. At least by predictive decoding, at step S14 S-SEQ is decoded.
Enfin, à l'étape S 115, on reçoit S-SEQ décodé lors de l'étape Sl 14 et S-SEQ2* puis on décode S-SEQ2 par décodage prédictif. Au besoin, on peut également faire intervenir S-SEQl décodé à l'étape S113.Finally, in step S 115, S-SEQ decoded in step S14 and S-SEQ2 * is received and then S-SEQ2 is decoded by predictive decoding. If necessary, it is also possible to use S-SEQ1 decoded in step S113.
Un mode de réalisation de l'étape S 114 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.An embodiment of step S 114 is described with reference to FIG. In this embodiment, both transform decoding and predictive decoding are involved.
A l' étape S 120, on reçoit S-SEQ l (issu de S l 14) et S-SEQ*, puis on décode S-SEQ par décodage prédictif. On obtient S-SEQ' .In step S 120, S-SEQ 1 (from S14) and S-SEQ * are received, and then S-SEQ is decoded by predictive decoding. We obtain S-SEQ '.
A l' étape S 121 , on applique une transformée inverse (par exemple celle déjà appliquée à S-SEQ l * pour obtenir S-SEQ l ) à S- SEQ l * . On obtient S-SEQ" .In step S 121, an inverse transform (for example that already applied to S-SEQ 1 * to obtain S-SEQ 1) is applied to S-SEQ 1 *. We obtain 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.Finally, in step S 122, a linear combination of the samples S-SEQ 'and S-SEQ "is performed to obtain S-SEQ.
En référence à la figure 13, on décrit un autre mode de réalisation de l'étape S l 14.With reference to FIG. 13, another embodiment of step S14 is described.
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").In this embodiment, the decoding of the opposite sign generated by the decoding of S-SEQ * by transform (S-SEQ ") is recreated from S-SEQ * decoded by predictive decoding.
Ainsi, dans ce mode de réalisation on reçoit à l'étape S 130 S-Thus, in this embodiment, at step S 130 S-
SEQ l et S-SEQ* puis on décode S-SEQ. On obtient S-SEQ' .SEQ 1 and S-SEQ * and then S-SEQ is decoded. We obtain S-SEQ '.
Ensuite, lors de l 'étape S 13 1 , 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. .Then, in step S 13 1, the same folding as S-SEQ "in S-SEQ 'is created, for which purpose the matrix S described above is applied.
S-SEQ " correspond au décodage de S-SEQ* par transformée lors de l' étape S 132.S-SEQ "corresponds to the decoding of S-SEQ * by transform in step S 132.
Enfin, on combine S-SEQ' " et S-SEQ" lors de l' étape S 133 pour obtenir S-SEQ.Finally, S-SEQ '' and S-SEQ '' are combined in step S 133 to obtain S-SEQ.
En référence à la figure 14, on décrit une entité de codage COD adaptée pour mettre en œuvre le 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-SEQl , 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.With reference to FIG. 14, a coding entity COD adapted to implement the coding method described above is described. 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 sub-sequence 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.
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 œuvre 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.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.
On peut prévoir des moyens de communication (non- représentés) pour échanger des signaux entre les codeurs.Communication means (not shown) may be provided for exchanging signals between the encoders.
En référence à la figure 15, on décrit une entité de décodage pour mettre en œuvre le procédé de décodage décrit ci-avant.With reference to FIG. 15, a decoding entity is described for implementing the decoding method described above.
Cette entité de décodage DECOD comporte des unités de réception 150 et 151 pour recevoir respectivement un vecteur transformée V_T comportant des échantillons S-SEQ l * codant S-This DECOD decoding entity comprises reception units 150 and 151 for respectively receiving a transformed vector V_T comprising samples S-SEQ 1 * encoding S-
SEQ l , et un vecteur de prédiction V_P comportant des échantillonsSEQ 1, and a prediction vector V_P comprising samples
S-SEQ* codant S-SEQ et des échantillons S-SEQ2* codant S-SEQ2.S-SEQ * encoding S-SEQ and S-SEQ2 * samples encoding S-SEQ2.
L' unité 150 fournit S-SEQl * à 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-SEQ l . Une fois décodée par l 'unité 153, l'unité de décodage 154 reçoit S-SEQ l 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.The unit 150 provides S-SEQ1 * to an inverse transform application unit 152. For example, it may further be provided that the unit 152 provides a result to a transform decode unit 153 for performing additional decoding operations. and provide S-SEQ l. Once decoded by the unit 153, the decoding unit 154 receives S-SEQ 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.
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-SEQ l décodé préalablement par l'unité 153.Finally, 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-SEQ 1 previously decoded by the unit 153.
Un programme informatique pour comportant des instructions pour mettre en œuvre le procédé de codage décrit ci-avant pourrait être établi selon un algorithme général décrit par la figure 9.A computer program for comprising instructions for implementing the coding method described above could be established according to a general algorithm described in FIG. 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.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.
De la même manière, un programme informatique pour comportant des instructions pour mettre en œuvre le procédé de décodage décrit ci-avant pourrait être établi selon un algorithme général décrit par la figure 1 1 .In the same way, a computer program for comprising instructions for implementing the decoding method described above could be established according to a general algorithm described in FIG.
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.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.
En référence à la figure 16, on décrit un dispositif matériel adapté pour réaliser un codeur 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 œuvre 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*.Referring to Figure 16, there is described a hardware device adapted to realize an encoder or a decoder according to an embodiment of the present invention. 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. Finally, the device comprises an output S connected to the processor to provide an output signal SIG *.
Bien entendu, on peut avantageusement combiner une ou plusieurs caractéristiques décrites ci-avant. Of course, one can advantageously combine one or more characteristics described above.

Claims

REVENDICATIONS
1. Procédé de codage d'un signal numérique, comportant les étapes :A method of encoding a digital signal, comprising the steps of:
coder (S93) une première séquence (SEQ l ) d'échantillons du signal numérique selon un codage par transformée ;encoding (S93) a first sequence (SEQ. 1) of samples of the digital signal according to a transform coding;
- coder (S94) une deuxième séquence (SEQ2) d'échantillons du signal numérique selon un codage prédictif ;coding (S94) a second sequence (SEQ2) of samples of the digital signal according to a predictive coding;
le procédé étant caractérisé en ce que la deuxième séquencethe method being characterized in that the second sequence
(SEQ2) commence avant la fin de la première séquence(SEQ l ), une sous-séquence (S-SEQ) 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.(SEQ2) begins before the end of the first sequence (SEQ 1), a subsequence (S-SEQ) common to the first and second sequences thus being encoded by both predictive coding and transform coding.
2. Procédé selon la revendication 1 , dans lequel le codage par transformée de la première séquence comprend l' application d' une fenêtre d' analyse (H) 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 :2. Method according to claim 1, in which the transform coding of the first sequence comprises the application of an analysis window (H) making it possible to deduce from a perfect reconstruction relation of the digital signal a synthesis window comprising at least three parts:
une première partie nominale (NOMI),a first nominal part (NOMI),
une deuxième partie terminale (NL) sensiblement nulle,a second terminal part (NL) substantially zero,
- une troisième partie intermédiaire (INTER) continue entre les première et deuxième parties,a third intermediate portion (INTER) continues between the first and second parts,
caractérisé en ce qu' au moins des parties de la fenêtre d' analyse permettant de déduire respectivement lesdites 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. characterized in that at least portions of the analysis window for respectively deducing said second and third portions of the synthesis window are applied to the common subsequence of the two sequences.
3. Procédé selon la revendication 1 , caractérisé en ce que le codage par transformée est à échantillonnage critique.3. Method according to claim 1, characterized in that the transform coding is critical sampling.
4. Procédé selon la revendication 2, caractérisé en ce que la fenêtre de synthèse comporte en outre une quatrième partie de transition douce entre une valeur initiale et une valeur de la partie nominale, et en ce que la troisième partie est une transition abrupte entre une valeur de la partie nominale et une valeur de la partie sensiblement nulle.4. Method according to claim 2, characterized in that the synthesis window further comprises a fourth soft transition part between an initial value and a value of the nominal part, and in that the third part is an abrupt transition between a value of the nominal part and a value of the substantially zero part.
5. Procédé selon la revendication 1 , caractérisé en ce que les première et deuxième séquences appartiennent à une même trame du signal numérique.5. Method according to claim 1, characterized in that the first and second sequences belong to the same frame of the digital signal.
6. Procédé de décodage d'un signal numérique, comportant les étapes :6. A method of decoding a digital signal, comprising the steps:
recevoir (S I l O) un vecteur transformée codant une première séquence d'échantillons du signal numérique selon un codage par transformée ;receiving (S110) a transformed vector encoding a first sequence of samples of the digital signal according to transform coding;
recevoir (S lO l ) un vecteur de prédiction codant une deuxième séquence d' échantillons du signal numérique selon un codage prédictif ;receiving (S101) a prediction vector encoding a second sequence of samples of the digital signal according to a predictive coding;
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 codage prédictif et par codage par transformée ; et en ce qu' il comporte en outre les étapes :the method being characterized in that the second sequence begins before the end of the first sequence, a common subsequence to the first and second sequences being thus received coded both by predictive coding and by transform coding; and in that it further comprises the steps of:
a) appliquer (S 1 12) au vecteur 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 prédictif ;a) applying (S 1 12) to the transformed vector an inverse transformation of the transform coding for decoding a subsequence of the first non-coded sequence by predictive coding;
b) décoder (S l 14) 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 prédictif en se fondant sur au moins un échantillon issu de l'étape a) ;b) decoding (S14) at least in the prediction vector the subsequence common to the first and second sequences at least by a predictive decoding based on at least one sample from step a);
c) décoder (S 1 15) dans le vecteur prédictif par un décodage prédictif 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).c) decoding (S 1 15) in the predictive vector by a predictive decoding a subsequence of the second non-encoded sequence by transform coding, based on at least one sample from one of the steps a) and b ).
7. Procédé selon la revendication 6, caractérisé en ce que l'étape b) comporte les sous-étapes :7. Method according to claim 6, characterized in that step b) comprises the sub-steps:
b l ) décoder (S 120) dans le vecteur prédictif la sous-séquence commune aux première et deuxième séquences par un décodage prédictif en se fondant sur au moins un échantillon issu de l' étape a) ;b l) decoding (S 120) in the predictive vector the common subsequence to the first and second sequences by a predictive decoding based on at least one sample from step a);
b2) appliquer (S 121 ) au vecteur 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 ; etb2) applying (S 121) to the transformed vector an inverse transformation of the transform coding for decoding the common subsequence to the first and second sequences; and
b3) décoder (S 122) la sous-séquence commune aux première et deuxième séquences par combinaison d'au moins un échantillon issu de l' étape b l ) avec un échantillon correspondant issu de l'étape b2).b3) decoding (S 122) the common subsequence to the first and second sequences by combining at least one sample from step b1) with a corresponding sample from step b2).
8. Procédé selon la revendication 6, caractérisé en ce que l' étape b) comporte les sous-étapes :8. Method according to claim 6, characterized in that step b) comprises the sub-steps:
b4) décoder (S 130) dans le vecteur prédictif la sous-séquence commune aux première et deuxième séquences par un décodage prédictif en se fondant sur au moins un échantillon issu de l'étape a) ;b4) decoding (S 130) in the predictive vector the common subsequence to the first and second sequences by a predictive decoding based on at least one sample from step a);
b5) créer (S 131 ) à 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éeb5) creating (S 131) from at least one sample from step b4) a sample containing a folding equivalent to a transform coding followed by a transform decoding
b6) appliquer (S 132) au vecteur 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 ; etb6) applying (S 132) to the transformed vector an inverse transform of the transform coding for decoding the common subsequence to the first and second sequences; and
b7) décoder (S 133) 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).b7) decoding (S 133) the common subsequence to the first and second sequences by combining at least one sample from step b5) with a corresponding sample from step b6).
9. Procédé selon la revendication 6, caractérisé en ce que l ' étape a) comporte l' application d'une fenêtre de synthèse comportant au moins trois parties :9. Method according to claim 6, characterized in that step a) comprises the application of a synthesis window comprising at least three parts:
- une première partie nominale,a first nominal part,
une deuxième partie terminale sensiblement nulle, une troisième partie intermédiaire continue entre les première et deuxième zones,a second terminal portion substantially zero, a third intermediate portion continuous between the first and second 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.and in that at least the second and third parts of the synthesis window are applied to samples coding the subsequence common to both sequences.
10. Programme informatique comportant des instructions pour la mise en œuvre du procédé selon la revendication 1 lorsque le programme est exécuté par un processeur.Computer program comprising instructions for implementing the method according to claim 1 when the program is executed by a processor.
1 1. Programme informatique comportant des instructions pour la mise en œuvre du procédé selon la revendication 6 lorsque le programme est exécuté par un processeur.A computer program comprising instructions for implementing the method according to claim 6 when the program is executed by a processor.
12. Entité de codage (COD) d' un signal numérique (SIG), comportant:12. Coding entity (COD) of a digital signal (GIS), comprising:
un codeur par transformée ( 141 ) pour coder une première séquence d'échantillons du signal numérique selon un codage par transformée ;a transform coder (141) for encoding a first sequence of samples of the digital signal according to transform coding;
- un codeur prédictif ( 142) pour coder une deuxième séquence d' échantillons du signal numérique selon un codage prédictif ;a predictive coder (142) for coding a second sequence of samples of the digital signal according to a predictive coding;
l'entité de 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 (S-SEQ) aux première et deuxième séquences étant ainsi codée à la fois par codage prédictif et par codage par transformée.the coding entity being characterized in that the second sequence begins before the end of the first sequence, a common subsequence (S-SEQ) in the first and second sequences thus being encoded by both predictive coding and transform coding.
13. Entité de décodage (DECOD) d'un signal numérique, comportant des moyens de réception ( 150, 151 ):13. Decoding entity (DECOD) of a digital signal, comprising receiving means (150, 151):
d' un vecteur transformée (V_T) codant une première séquence d' échantillons du signal numérique selon un codage par transformée ; eta transformed vector (V_T) encoding a first sequence of samples of the digital signal according to transform coding; and
d'un vecteur de prédiction (V_P) codant une deuxième séquence d'échantillons du signal numérique selon un codage prédictif ;a prediction vector (V_P) encoding a second sequence of samples of the digital signal according to a predictive coding;
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 prédictif et par codage par transformée ; et en ce qu' elle comporte en outre :the decoding entity being characterized in that the second sequence begins before the end of the first sequence, a common subsequence to the first and second sequences thus being encoded by both predictive coding and transform coding; and in that it further comprises:
- un premier décodeur (152, 153) pour appliquer au vecteur 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 prédictif ;a first decoder (152, 153) for applying to the transformed vector an inverse transformation of the transform coding for decoding a subsequence of the first non-coded sequence by predictive coding;
- 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 prédictif en se fondant sur au moins un échantillon issu du premier décodeur par transformée ; eta second decoder (154) for decoding at least in the predictive vector the subsequence common to the first and second sequences by at least one predictive decoding based on at least one sample derived from the first transform decoder; and
- un troisième décodeur ( 155) prédictif pour décoder dans le vecteur prédictif par un décodage prédictif 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.a third decoder (155) predictive for decoding in the predictive vector by a predictive decoding a subsequence of the second non - coded sequence by transform coding, based on at least one sample from one of the first and second decoders.
14. Entité de décodage selon la revendication 13, caractérisée en ce que le deuxième décodeur comporte :14. Decoding entity according to claim 13, characterized in that the second decoder comprises:
- 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 prédictif en se fondant sur au moins un échantillon restitué par le premier décodeur par transformée ;first means for decoding in the predictive vector the subsequence common to the first and second sequences by predictive decoding based on at least one sample output by the first transform decoder;
- des deuxièmes moyens pour appliquer au vecteur 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 ; etsecond means for applying to the transformed vector an inverse transformation of the transform coding for decoding the common subsequence to the first and second sequences; and
— 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.Third means for decoding the common subsequence to the first and second sequences by combining at least one sample from the first means with a corresponding sample from the second means.
15. Entité de décodage selon la revendication 13, caractérisée en ce que le deuxième décodeur comporte :15. Decoding entity according to claim 13, characterized in that the second decoder comprises:
- 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 prédictif 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 ;first means for decoding in the predictive vector the subsequence common to the first and second sequences by predictive decoding based on at least one sample output by the first transform decoder; fourth means for creating a folding from at least one sample derived from the first means equivalent to a transform coding followed by a transform decoding;
- des cinquièmes moyens pour appliquer au vecteur 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 ; etfifth means for applying to the transformed vector an inverse transformation of the transform coding for decoding the common subsequence to the first and second sequences; and
- 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. sixth means for decoding the common subsequence to the first and second sequences by combining at least one sample from the fourth means with a corresponding sample from the fifth means.
EP09755960.3A 2008-10-08 2009-10-05 Method, computer program and device for decoding a digital audio signal Active EP2345029B1 (en)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
FR0856822A FR2936898A1 (en) 2008-10-08 2008-10-08 CRITICAL SAMPLING CODING WITH PREDICTIVE ENCODER
PCT/FR2009/051888 WO2010040937A1 (en) 2008-10-08 2009-10-05 Critical sampling encoding with a predictive encoder

Publications (2)

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

Family

ID=40457007

Family Applications (1)

Application Number Title Priority Date Filing Date
EP09755960.3A Active EP2345029B1 (en) 2008-10-08 2009-10-05 Method, computer program and device for decoding a digital audio signal

Country Status (6)

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

Families Citing this family (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
PL4120248T3 (en) * 2010-07-08 2024-05-13 Fraunhofer-Gesellschaft zur Förderung der angewandten Forschung e.V. Decoder using forward aliasing cancellation
FR2969805A1 (en) 2010-12-23 2012-06-29 France Telecom LOW ALTERNATE CUSTOM CODING PREDICTIVE CODING AND TRANSFORMED CODING
FR2992766A1 (en) * 2012-06-29 2014-01-03 France Telecom EFFECTIVE MITIGATION OF PRE-ECHO IN AUDIONUMERIC SIGNAL
EP2951821B1 (en) * 2013-01-29 2017-03-01 Fraunhofer Gesellschaft zur Förderung der angewandten Forschung e.V. Concept for coding mode switching compensation
FR3024582A1 (en) * 2014-07-29 2016-02-05 Orange MANAGING FRAME LOSS IN A FD / LPD TRANSITION CONTEXT

Family Cites Families (22)

* 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
US6233550B1 (en) * 1997-08-29 2001-05-15 The Regents Of The University Of California Method and apparatus for hybrid coding of speech at 4kbps
ATE302991T1 (en) * 1998-01-22 2005-09-15 Deutsche Telekom Ag METHOD FOR SIGNAL-CONTROLLED SWITCHING BETWEEN DIFFERENT AUDIO CODING SYSTEMS
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
WO2004029935A1 (en) * 2002-09-24 2004-04-08 Rad Data Communications A system and method for low bit-rate compression of combined speech and music
FR2867649A1 (en) * 2003-12-10 2005-09-16 France Telecom OPTIMIZED MULTIPLE CODING METHOD
CA2457988A1 (en) * 2004-02-18 2005-08-18 Voiceage Corporation Methods and devices for audio compression based on acelp/tcx coding and multi-rate lattice vector quantization
JP2007538281A (en) * 2004-05-17 2007-12-27 ノキア コーポレイション Speech coding using different coding models.
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
WO2007139911A2 (en) * 2006-05-26 2007-12-06 Surroundphones Holdings, Inc. Digital audio encoding
JP2008096906A (en) * 2006-10-16 2008-04-24 Matsushita Electric Ind Co Ltd Audio signal decoding device and resource access control method
CA2672165C (en) * 2006-12-12 2014-07-29 Ralf Geiger Encoder, decoder and methods for encoding and decoding data segments representing a time-domain data stream
SG170078A1 (en) * 2006-12-13 2011-04-29 Panasonic Corp Encoding device, decoding device, and method thereof
CN101025918B (en) * 2007-01-19 2011-06-29 清华大学 Voice/music dual-mode coding-decoding seamless switching method
CN101231850B (en) * 2007-01-23 2012-02-29 华为技术有限公司 Encoding/decoding device and method
CN101221766B (en) * 2008-01-23 2011-01-05 清华大学 Method for switching audio encoder
AU2009267518B2 (en) * 2008-07-11 2012-08-16 Fraunhofer-Gesellschaft Zur Foerderung Der Angewandten Forschung E.V. Apparatus and method for encoding/decoding an audio signal using an aliasing switch scheme

Non-Patent Citations (1)

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

Also Published As

Publication number Publication date
FR2936898A1 (en) 2010-04-09
EP2345029B1 (en) 2015-04-22
US20110178809A1 (en) 2011-07-21
WO2010040937A1 (en) 2010-04-15
US8880411B2 (en) 2014-11-04
ES2542067T3 (en) 2015-07-30
CN102177544A (en) 2011-09-07
CN102177544B (en) 2014-07-09

Similar Documents

Publication Publication Date Title
EP1989706B1 (en) Device for perceptual weighting in audio encoding/decoding
EP2104936B1 (en) Low-delay transform coding using weighting windows
CA2766777C (en) Allocation of bits in an enhancement coding/decoding for improving a hierarchical coding/decoding of digital audio signals
EP3175444B1 (en) Frame loss management in an fd/lpd transition context
EP3161659A1 (en) Resampling of an audio signal by interpolation for low-delay encoding/decoding
FR2929466A1 (en) DISSIMULATION OF TRANSMISSION ERROR IN A DIGITAL SIGNAL IN A HIERARCHICAL DECODING STRUCTURE
EP3103116B1 (en) Improved frequency band extension in an audio signal decoder
EP2452336B1 (en) Improved coding /decoding of digital audio signals
EP3069340B1 (en) Transition from a transform coding/decoding to a predictive coding/decoding
EP2489039A1 (en) Optimized low-throughput parametric coding/decoding
EP2345029B1 (en) Method, computer program and device for decoding a digital audio signal
EP3175443B1 (en) Determining a budget for lpd/fd transition frame encoding
EP2232489B1 (en) Transform-based coding/decoding, with adaptive windows
EP1275109B1 (en) Spectral enhancing method and device
FR3133265A1 (en) Optimized encoding and decoding of an audio signal using a neural network-based autoencoder
EP2589045B1 (en) Adaptive linear predictive coding/decoding
FR2911227A1 (en) Digital audio signal coding/decoding method for telecommunication application, involves applying short and window to code current frame, when event is detected at start of current frame and not detected in current frame, respectively
FR2980620A1 (en) Method for processing decoded audio frequency signal, e.g. coded voice signal including music, involves performing spectral attenuation of residue, and combining residue and attenuated signal from spectrum of tonal components

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

Ref country code: GB

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

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