EP2452336A1 - Improved coding /decoding of digital audio signals - Google Patents

Improved coding /decoding of digital audio signals

Info

Publication number
EP2452336A1
EP2452336A1 EP10745327A EP10745327A EP2452336A1 EP 2452336 A1 EP2452336 A1 EP 2452336A1 EP 10745327 A EP10745327 A EP 10745327A EP 10745327 A EP10745327 A EP 10745327A EP 2452336 A1 EP2452336 A1 EP 2452336A1
Authority
EP
European Patent Office
Prior art keywords
coding
frequency
decoding
signal
band
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
EP10745327A
Other languages
German (de)
French (fr)
Other versions
EP2452336B1 (en
Inventor
David Virette
Stéphane RAGOT
Balazs Kovesi
Pierre Berthet
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 EP2452336A1 publication Critical patent/EP2452336A1/en
Application granted granted Critical
Publication of EP2452336B1 publication Critical patent/EP2452336B1/en
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • GPHYSICS
    • G10MUSICAL INSTRUMENTS; ACOUSTICS
    • G10LSPEECH ANALYSIS OR SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING; 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/002Dynamic bit allocation
    • GPHYSICS
    • G10MUSICAL INSTRUMENTS; ACOUSTICS
    • G10LSPEECH ANALYSIS OR SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING; 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 OR SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING; 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/032Quantisation or dequantisation of spectral components
    • G10L19/038Vector quantisation, e.g. TwinVQ audio
    • GPHYSICS
    • G10MUSICAL INSTRUMENTS; ACOUSTICS
    • G10LSPEECH ANALYSIS OR SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING; 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/24Variable rate codecs, e.g. for generating different qualities using a scalable representation such as hierarchical encoding or layered encoding

Definitions

  • the present invention relates to a sound data processing.
  • This processing is adapted in particular to the transmission and / or storage of digital signals such as audio-frequency signals (speech, music, or other).
  • the invention applies more particularly to hierarchical coding (or "scalable” coding) which generates a so-called “hierarchical” bitstream because it comprises a core rate and one or more improvement layer (s).
  • the G.722 standard at 48, 56 and 64 kbit / s is an example of a scalable bit rate codec
  • the ITU-T G .129.1 and MPEG-4 CELP codecs are examples of scalable codecs in both bitrate and bitrate. in bandwidth.
  • Hierarchical coding having the capacity to provide varied bit rates, is described below by distributing the information relating to an audio signal to be coded in hierarchical subsets, so that this information can be used in order of importance. in terms of audio rendering quality.
  • the criterion taken into account for determining the order is a criterion for optimizing (or rather reducing) the quality of the coded audio signal.
  • Hierarchical coding is particularly suited to transmission over heterogeneous networks or having variable available rates over time, or to transmission to terminals with varying capacities.
  • the bit stream includes a base layer and one or more enhancement layers.
  • the base layer is generated by a fixed rate codec, referred to as
  • Heart coded guaranteeing the minimum quality of the coding. This layer must be received by the decoder to maintain an acceptable level of quality. Improvement layers are used to improve quality. However, they may not all be received by the decoder.
  • the main advantage of hierarchical coding is that it allows an adaptation of the bit rate simply by "truncation of the bit stream".
  • the number of layers i.e., the number of possible truncations of the bitstream
  • the number of layers defines the granularity of the coding.
  • scalable bandwidth and scalability encoding techniques are described below, with a CELP core-type coder, in a telephone band, and one or more broadband enhancement layer (s).
  • An example of such systems is given in the ITU-T G.729.1 8-32 kbit / s fine grain standard.
  • the G.729.1 coding / decoding algorithm is summarized below.
  • the G.729.1 encoder is an extension of the ITU-T G.729 coder. It is a modified G.729 heart-shaped hierarchical encoder producing a bandwidth ranging from narrow band (50-4000 Hz) to wide band (50-7000 Hz) at a rate of 8 to 32 kbit / s for conversational services. This codec is compatible with existing VoIP devices that use the G.729 codec.
  • the G.729.1 coder is shown diagrammatically in FIG. 1.
  • the broadband input signal s sampled at 16 kHz, is first decomposed into two subbands by QMF (for "Quadrature Mirror Filter") filtering.
  • the low band (0-4000 Hz) is obtained by LP low-pass filtering (block 100) and decimation (block 101), and the band high (4000-8000 Hz) by high-pass filtering HP (block 102) and decimation (block 103).
  • the LP and HP filters are of length 64.
  • the low band is pretreated with a high-pass filter eliminating the components below 50 Hz (block 104), to obtain the signal S 18 , before CELP coding in narrow band (block 105) at 8 and 12 kbit / s.
  • This high-pass filtering takes into account the fact that the wanted band is defined as covering the interval 50-7000 Hz.
  • the narrow-band CELP coding is a cascaded CELP coding comprising as a first stage a modified G.729 coding without a filter. preprocessing and as a second stage an additional fixed CELP dictionary.
  • the high band is first pretreated (block 106) to compensate for the folding due to the high-pass filter (block 102) combined with the decimation (block 103).
  • the high band is then filtered by a low pass filter (block 107) eliminating the components between 3000 and 4000 Hz from the high band (that is, the components between 7000 and
  • a parametric band extension (block 108) is then performed.
  • the error signal d LB of the low band is calculated (block 109) from the output of the CELP coder (block 105) and a predictive coding by transform (of type
  • TDAC for "Time Domain Aliasing Cancellation" in the G.729.1 standard) is carried out at block 110.
  • TDAC is applied to both the error signal on the low band and the signal filtered on the high band.
  • Additional parameters may be transmitted by the block 1 11 to a homologous decoder, this block 111 performing a so-called “FEC” treatment for "Frame Erasure Concealment", in order to reconstruct any erased frames.
  • FEC Fre Erasure Concealment
  • the different bit streams generated by the coding blocks 105, 108, 110 and 111 are finally multiplexed and structured into a hierarchical bit stream in the multiplexing block 112.
  • the coding is performed by 20 ms sample blocks (or frames). 320 samples per frame.
  • the coded G .129.1 therefore has a three-step coding architecture comprising: CELP coding in cascade,
  • TDAC transform predictive coding applied after an MDCT (Modified Discrete Cosine Transform) transformation.
  • MDCT Modified Discrete Cosine Transform
  • the G.729.1 decoder is illustrated in Figure 2. The bits describing each frame of 20 ms are demultiplexed in the block 200.
  • the bit stream of the 8 and 12 kbit / s layers is used by the CELP decoder (block 201) to generate the narrow-band synthesis (0-4000 Hz).
  • the portion of the bit stream associated with the 14 kbit / s layer is decoded by the tape extension module (block 202).
  • the portion of the bit stream associated with data rates greater than 14 kbit / s is decoded by the TDAC module (block 203).
  • Pre-echo and post-echo processing is performed by blocks 204 and 207 as well as enrichment (block 205) and aftertreatment of the low band (block 206).
  • the extended band output signal s wb sampled at 16 kHz, is obtained via the QMF synthesis filter bank (blocks 209, 210, 211, 212 and 213) integrating the inverse folding (block 208).
  • the TDAC type transform coding in the G.729.1 encoder is illustrated in FIG.
  • the filter W 18 (Z) (block 300) is a perceptual weighting filter, with gain compensation, applied to the low band error signal d LB. MDCT transforms are then calculated (blocks 301 and 302) to obtain:
  • These MDCT transforms (blocks 301 and 302) apply to 20 ms of sampled signal at 8 kHz (160 coefficients).
  • the spectrum Y (k) from the block 303 of fusion thus comprises 2 x 160, or 320 coefficients. It is defined as follows:
  • This spectrum is divided into eighteen sub-bands, a sub-band j being assigned a number of coefficients noted nb _coef (j).
  • the subband splitting is specified in Table 1 below.
  • a subband j comprises the coefficients Y (k) with sb _ bound (j) ⁇ k ⁇ sb _ b ⁇ und (j + 1). It should be noted that the coefficients 280-319 corresponding to the frequency band 7000 Hz - 8000 Hz are not coded; they are set to zero at the decoder because the bandwidth of the codec is 50-7000 Hz.
  • Table 1 Limits and size of subbands in TDAC coding
  • the spectral envelope is coded at variable rate in block 305.
  • This quantized value set _index (j) is transmitted to the bit allocation block 306.
  • two types of coding can be chosen according to a given criterion, and, more precisely, the values put _index (j):
  • a bit (0 or 1) is transmitted to the decoder to indicate the encoding mode that has been chosen.
  • the number of bits allocated to each subband for its quantization is determined at block 306 from the quantized spectral envelope from block 305.
  • the bit allocation performed minimizes the squared error while respecting the constraint of a whole number of bits allocated per subband and a number of bits. maximum not to be exceeded.
  • the spectral content of the subbands is then encoded by spherical vector quantization (block 307).
  • the different bit streams generated by the blocks 305 and 307 are then multiplexed and structured into a hierarchical bit stream at the multiplexing block 308.
  • the TDAC-type transform decoding step in the G.729.1 decoder is illustrated in FIG. 4.
  • block 401 allows to find the allocation of bits (block 402).
  • Envelope decoding (block 401) reconstructs the quantized values of the spectral envelope
  • each of the subbands is found by inverse spherical vector quantization (block 403).
  • the non-transmitted sub-bands, due to a lack of "budget" of bits, are extrapolated (block 404) from the MDCT transform of the signal at the output of the band extension block (block 202 of FIG. 2).
  • the MDCT spectrum is separated into two (block 407):
  • IMDCT inverse MDCT transform
  • W 18 (Z) '1 the inverse perceptual weighting
  • the sub-bit allocation (block 306 of FIG. 3 or block 402 of FIG. 4) is described more particularly below.
  • the purpose of the binary allocation is to distribute between each of the sub-bands a certain bit budget (variable) noted nbits _ VQ, with:
  • nbits _VQ 351 - nbits _ put, where nbits _ mis is the number of bits used by the coding of the spectral envelope.
  • Table 2 Possible values of number of bits allocated in TDAC subbands.
  • nbit (j) arg min nb _coef (j) x (ip (j) - ⁇ ) - r where ⁇ is a dichotomy optimized parameter to satisfy the global constraint 17
  • the TDAC coding uses the perceptual weighting W / B (z) filter in the low band (block 300), as indicated above.
  • perceptual weighting filtering allows you to format the coding noise.
  • the principle of this filtering is to exploit the fact that it is possible to inject more noise in the frequency zones where the original signal has a high energy.
  • the most common perceptual weighting filters used in narrow-band CELP coding are of the form ⁇ (z / ⁇ 1) / ⁇ (z / ⁇ 2) where 0 ⁇ 2 ⁇ l ⁇ 1 and ⁇ (z) represents a prediction spectrum linear (LPC).
  • the synthesis analysis in CELP coding thus amounts to minimizing the quadratic error in a signal domain perceptually weighted by this type of filter.
  • the filter W LB (z) is defined in the form:
  • the energy criterion of TDAC coding of G.729.1, used in the high band (4000-7000 Hz), is not optimal from a perceptual point of view, in particular to code musical signals.
  • the perceptual weighting filter is particularly suited to speech signals. It is widely used in speech coding standards based on the CELP coding format. However, for the musical signals, it appears that this perceptual weighting based on a shaping of the quantization noise according to the formants of the input signal is insufficient. Most audio coders rely on transform coding using frequency masking or simultaneous masking models; they are more generic (in the sense that they do not use a speech production model like the CELP) and are therefore more suitable for encoding musical signals.
  • the present invention improves the situation.
  • a method of hierarchical coding of a digital audio input signal in several frequency subbands comprising heart encoding of the input signal at a first rate and at least one higher rate enhancement coding of a residual signal, the core coding using a binary allocation according to an energy criterion.
  • the method is such that it comprises the following steps for improvement coding:
  • the coding according to the invention takes advantage of an enhancement coding layer to improve the coding quality from a perceptual point of view.
  • the enhancement layer will thus benefit from frequency masking which does not exist in the core coding stage, in order to best allocate the bits in the frequency bands of the improvement coding.
  • the step of determining a perceptual importance comprises: a first step of defining a first perceptual importance for at least one frequency sub-band of the improvement coding, as a function of the frequency masking threshold in the sub-band, of quantized values of the coding of the spectral envelope for the frequency subband and a determined normalization factor;
  • the first perceptual importance that will be used for the improvement layer does not take into account the core coding but only the signal to mask ratio to define a perceptual importance. This perceptual importance is determined on the input signal of the transform coder.
  • a first transform coding layer based on an energy allocation has allocated a certain number of bits per subband.
  • the perceptual importance is furthermore determined as a function of bits allocated for coding of improvement of the preceding core coding, having a binary allocation according to an energy criterion.
  • the non-transmitted subbands due to a lack of sufficient bit budget, are extrapolated (block 404) from the MDCT transform of the output signal of the band extension block (block 202 of FIG. ). Even at the higher bit rate of G.729.1 (32 kbit / s) some frequency bands remain extrapolated.
  • a first coding enhancement coding heart uses the original signal and operates according to energy criteria for bit allocation. According to one embodiment of the invention, this first enhancement coding modifies the number of bits nbi 1 (j) allocated to the subbands and the decoded subband Y q (k) (defined later in FIG. 5).
  • the improvement coding according to the invention therefore also takes into account the bits allocated during this first improvement coding, in addition to the bits allocated in the core coding.
  • the masking threshold is determined for a sub-band, by a convoi ution between:
  • the method comprises a step of obtaining an information according to which the signal to be encoded is tonal or non-tonal and the steps of calculating the masking threshold and of determining a perceptual importance according to this masking threshold, are conducted only if the signal is non-tonal.
  • the coding is adapted to the signal whether it is tonal or not and allows optimal allocation of the bits.
  • the improvement coding is a TDAC type enhancement coding in an extended coder whose core coding is of the G.729.1 standard encoder type.
  • the quality of the G.729.1 codec in the enlarged band (50-7000 Hz) is improved.
  • Such an improvement is important to extend the G.729.1 encoder band of the enlarged band (50-7000Hz) to the super-wide band (50-14000Hz).
  • the present invention also relates to a method of hierarchical decoding of a digital audio frequency signal into a plurality of frequency subbands comprising a core decoding of a signal received at a first rate and at least a higher rate of improvement decoding, d a residual signal, the core decoding using a binary allocation according to an energy criterion.
  • the method is such that it comprises the following steps for the improvement decoding:
  • the step of determining a perceptual importance comprises:
  • the invention relates to a hierarchical coder of a digital audio frequency input signal in several frequency subbands comprising a core encoder of the input signal according to a first bit rate and at least one higher bit rate improvement coder, d a residual signal, the core coder using a binary allocation according to an energy criterion.
  • the enhancement coder includes:
  • a module for coding the residual signal according to the bit allocation a module for coding the residual signal according to the bit allocation.
  • the enhancement decoder comprises:
  • the invention relates to a computer program comprising code instructions for implementing the steps of a coding method according to the invention, when they are executed by a processor and to a computer program comprising instructions. code for implementing the steps of a decoding method according to the invention, when executed by a processor.
  • FIG. 1 illustrates the structure of a G.729.1 type encoder described above
  • FIG. 2 illustrates the structure of a G.729.1 type decoder described above
  • FIG. 3 illustrates the structure of a TDAC encoder included in the G.729.1 type encoder and described previously:
  • FIG. 4 illustrates the structure of a TDAC decoder included in a G.729.1 decoder and as described above;
  • FIG. 5 illustrates the structure of a TDAC coder comprising enhancement coding according to one embodiment of the invention
  • FIG. 6 illustrates the structure of a TDAC decoder comprising improvement decoding according to one embodiment of the invention
  • FIG. 7 illustrates an advantageous spreading function for masking within the meaning of the invention
  • FIG. 8 illustrates a normalization of the masking curve, in one embodiment of the invention.
  • FIG. 9 illustrates the structure of a frequency band extended G.729.1 encoder in which a TDAC encoder according to one embodiment of the invention is included;
  • FIG. 10 illustrates the structure of a G.729.1 extended frequency band decoder in which a TDAC decoder according to one embodiment of the invention is included;
  • FIG. 11a illustrates an exemplary hardware embodiment of a terminal including an encoder according to an embodiment of the invention.
  • FIG. 11b illustrates an example of a hardware embodiment of a terminal including a decoder according to one embodiment of the invention.
  • One of the objects of the invention is the improvement of the quality of G.729.1 in wideband (50-7000 Hz), in particular for musical signals. It will be recalled here that the G.729.1 coding has a useful band of 50 to 7000 Hz. Moreover, the quality of G.729.1 for some signals such as music signals is not transparent at its highest bit rate (32 kbit / s) - this limitation is due to the hierarchical structure CELP + TDBWE + TDAC and the bit rate limited to 32 kbit / s .
  • This invention is motivated by the ongoing standardization in ITU-T of a scalable extension of G.729.1, in particular to extend the coded band by
  • the G.729.1 quality improvement can be achieved with one or more additional rate enhancement layers (in addition to 32 kbit / s).
  • these additional flow enhancement layers can serve both the band extension (7000-14000 Hz) and the quality improvement in the enlarged band (50-7000 Hz).
  • part of the additional bit rate of the enhancement layers can be devoted to improving the broadband signal decoded by a G.729.1 decoder.
  • G.729.1 has a narrow-band CELP core coder, while the super-expanded band extension (50-14000Hz) of G.729.1 has for heart G.729.1.
  • core and core rate coding mean a G.729.1 type coding and the associated bit rate of 32 kbit / s.
  • it is more particularly a TDAC encoder and decoder as described above, in which an enhancement layer is integrated.
  • Figure 5 describes such an improved TDAC coder.
  • a scalable extension of G.729.1 is considered in several enhancement layers.
  • the core coding is a G.729.1 coding, which uses TDAC coding in the band [50-7000 Hz] from the bit rate of 14 kbit / s to 32 kbit / s. It is assumed that between 32 and 48 kbit / s two enhancement layers of 8 kbit / s are produced in order to extend the band from 7000 to 14000 Hz and to replace the non-transmitted subbands of the TDAC coding of G.729.1 . These enhancement layers of 8 kbit / s ranging from 32 to 48 kbit / s are not described here.
  • the present invention provides two additional 8 kbit / s enhancement layers of the TDAC coding in the 50 to 7000 Hz band that increase the bit rate from 48 kbit / s to 56 and 64 kbit / s.
  • the encoder applying the present invention has enhancement layers that add G.729.1 core bit rate (32 kbit). These enhancement layers serve both to improve the quality in the enlarged band (50-7000 Hz) and to extend the upper band from 7000 to 14000 Hz. In the following we ignore the extension of 7000 to 14000 Hz, because this feature does not influence the implementation of the present invention. For reasons of simplicity, the modules corresponding to the 7000 to 14000 Hz band extension are not illustrated in FIGS. 5 and 6.
  • the TDAC encoder according to one embodiment of the invention here comprises an enhancement layer (blocks 509 to 513) which improves the core layer (blocks 504 to 507).
  • the block 507 here corresponds to the spherical vector quantization (SVQ) of G.729.1, which may comprise a modification as mentioned above.
  • SVQ spherical vector quantization
  • This modification uses the original signal Y (k) and operates according to energy criteria for bit allocation. The number of bits nbit (j) allocated to the subbands and the decoded subband Yq (k) are then modified.
  • Block 506 performs a binary allocation based on energy criteria as described with reference to FIG.
  • the core layer is therefore coded and sent to the multiplexing module 508.
  • the core signal is also decoded locally in the coder by the block.
  • this heart signal is subtracted from the original signal at 509, in the transformed domain, to obtain a residual signal err (k).
  • This residual signal is then coded from a bit rate of 48 kbit / s in block 513.
  • this masking is performed only on the high band of the signal, with:
  • the masking threshold M (J) for a sub-band j is therefore defined by a convolution between:
  • FIG. 7 An advantageous spreading function is that shown in FIG. 7. It is a triangular function whose first slope is + 27dB / Bark and -10dB / Bark for the second. This representation of the spreading function allows the iterative calculation of the following masking curve:
  • a 1 (J) IO ⁇ 10 ("> - V > * ⁇ )
  • the values of A 1 (J) and ⁇ 9 (j) can be pre-calculated and stored. Since the low band is already filtered perceptually by the module 500, the application of the masking threshold is in this embodiment, limited to the high band. In order to ensure the spectral continuity between the low and high band spectrum weighted by the masking threshold and to avoid biasing the bit allocation, the masking threshold is normalized for example by its value on the last sub-band. band of the low band.
  • a first perceptual importance calculation step is then performed taking into account the signal-to-mask ratio given by:
  • normfac log 2 JT ⁇ 2 (j) x B (V 9 - V j )
  • log_ mask (j) log 2 (M (J)) - normfac.
  • FIG. 8 An illustration of the standardization of the masking threshold is given in FIG. 8, showing the connection of the high band on which the masking (4-7 kHz) is applied to the low band (0-4 kHz).
  • the standardization of the masking threshold can be rather carried out from the value of the band.
  • the masking threshold can be calculated over the entire frequency band, with:
  • normfac log 2 ⁇ 2 (j) x B (V 10 - v ; )
  • these relations giving the normalization factor normfac or the masking threshold M (J) can be generalized to any number of subbands (different, in total, from eighteen) in high band (with a different number of eight), as in low band (with a different number of ten).
  • a first perceptual importance ip (j) is sent to the binary allocation block 512 for improvement coding.
  • This block 512 also receives bit allocation information nbit (j) from the core layer of the TDAC coding, G.729.1.
  • Block 512 thus defines a new perceptual importance that takes into account these two pieces of information.
  • nbit (j) represents the number of bits allocated by the base layer to the frequency band j
  • nb_coeff (j) represents the number of coefficients of the band j according to Table 1 described above.
  • the new perceptual importance is calculated by subtracting from the first perceptual importance, a ratio between the number of bits allocated for core coding and the number of possible coefficients in the subband.
  • the block 512 performs a bit allocation on the residual signal to code the enhancement layer.
  • nbit_err (j) arg reR t At ⁇ l ) - r where optimization must satisfy the constraint
  • j 0 nbits _VQ_err corresponding to the additional number of bits in the enhancement layer (320 bits for the 2 8 kbit / s layers).
  • the residual signal err (k) is then coded by the module 513 by spherical vector quantization, using the number of allocated bits nbit_err (j) as previously calculated.
  • This coded residual signal is then multiplexed with the signal resulting from the core coding and the coded envelope by the multiplexing module 508.
  • This enhancement coding not only extends the allocated bit rate but improves from a perceptual point of view, the coding of the signal.
  • the TDAC coding enhancement layer as described can be applied after modifying the TDAC coding of G.729.1.
  • a first enhancement (not described here) of the TDAC coding of G.729.1 is performed.
  • This enhancement allocates bits to subbands between 4 and 7 kHz where no bit rate was allocated by the G.729.1 TDAC core encoding even at its higher 32 kbit / s bit rate.
  • This first improvement of the TDAC coding of G.729.1 therefore uses the original signal between 4 and 7 kHz and does not implement the steps of calculating a masking threshold nor determining the perceptual importance of the coding method of the 'invention.
  • Block 507 is considered to correspond to this modified TDAC coding integrating this improvement.
  • FIG. 5 not only illustrates the TDAC coder with its improvement coding stage but also serves to illustrate the steps of the coding method according to one embodiment of the invention as described above and in particular the steps of:
  • FIG. 6 illustrates the TDAC decoder with an enhancement decoding stage as well as the steps of a decoding method according to one embodiment of the invention.
  • the decoder comprises the modules (601, 602, 603, 606, 607, 608, 609 and 610) identical to those described for the TDAC decoding of the G.729.1 coder with reference to FIG. 4 (401, 402, 403, 406, 407, 408, 409 and 410).
  • the block 606 for processing in the MDCT domain (aimed at shaping the coding noise) is here optional because the invention improves the quality of the decoded MDCT spectrum from block 603.
  • the module 605 of the decoder corresponds to the encoder module 511 and operates in the same way from the quantized values of the spectral envelope.
  • the allocation module 604 determines a second perceptual importance in taking into account the allocation of bits received from the core coding, in the same way as in the coding module 512.
  • This bit allocation for the enhancement coding allows the module 611 to decode the signal received from the demultiplexing module 600 by spherical vector dequantization.
  • the decoded signal from the module 611 is an error signal err (k) which is then combined at 612 with the decoded heart signal at 603.
  • This signal is then processed as for the G.729.1 coding described with reference to FIG. 4, to give a difference signal d L g in low band and a signal S HB in high band.
  • the calculation of a frequency masking performed by the module 511 or 605 and as described above may or may not be carried out according to the signal to be encoded (in particular if it is tonal or not).
  • the application of the spreading function B (v) results in a masking threshold very close to a tone a little more spread out in frequencies.
  • the criterion of minimization of the masked coding noise ratio then gives a bit allocation that is not necessarily optimal.
  • the calculation of the masking threshold and the determination of the perceptual importance as a function of this masking threshold according to the invention is applied only if the signal to be encoded is not tonal.
  • the bit relating to the mode of the spectral envelope coding indicates a "differential Huffman" mode or a "natural direct binary” mode.
  • This mode bit can be interpreted as a tone detection, since, in general, a tonal signal leads to envelope coding by the "natural direct binary” mode, while most non-tonal signals, having a spectral dynamic more limited, lead to envelope coding by the "Differential Huffman" mode.
  • the super-wideband extension of the G.729.1 encoder as shown consists of an extension of the frequencies coded by the module 915, the frequency band used from
  • the encoder as represented in FIG. 9 comprises the same modules as the core G.729.1 coding shown in FIG. 1 and an additional band extension module 915 which provides an extension signal to the multiplexing module 912.
  • This frequency band extension is calculated on the original full-band signal S SWB while the input signal of the core encoder is obtained by decimation (block 913) and low-pass filtering (block 914). At the output of these blocks, the broadband input signal S WB is obtained.
  • the TDAC coding module 910 is different from that illustrated in FIG. 1. This module is for example that described with reference to FIG. 5 and provides the multiplexing module with both the coded core signal and the coded improvement signal. the invention.
  • a G.729.1 decoder extended in super-wideband is described with reference to FIG. 10. It comprises the same modules as the decoder
  • band extension module 1014 which receives from the demultiplexing module 1000, the band extension signal. It also comprises the synthesis filter bank (blocks 1015, 1016) making it possible to obtain the super-wideband output signal S swh .
  • the TDAC decoding module 1003 is also different from the TDAC decoding module illustrated with reference to FIG. 2. This module is for example that described and illustrated with reference to FIG. 6. It therefore receives from the demultiplexing module, both the heart signal and the signal of improvement.
  • the invention is used to improve the quality of TDAC coding in the G.729.1 codec.
  • the invention applies to other types of transform coding with a binary allocation and to the scalable extension of other core codes than G.729.1.
  • FIGS. 11a and 11b An exemplary hardware embodiment of the encoder and the decoder as described with reference to FIGS. 5 and 6 is now described with reference to FIGS. 11a and 11b.
  • FIG. 11a illustrates an encoder or terminal comprising an encoder as described in FIG. 5. It comprises a processor PROC cooperating with a memory block BM comprising a storage and / or working memory MEM.
  • This terminal comprises an input module able to receive a low band signal d LB and a high band signal S HB or any type of digital signal to be coded. These signals may come from another coding stage or a communication network, a digital content storage memory.
  • the memory block BM may advantageously comprise a computer program comprising code instructions for implementing the steps of the coding method in the sense of the invention, when these instructions are executed by the processor PROC, and in particular the steps of:
  • FIG. 5 repeats the steps of an algorithm of such a computer program.
  • the computer program can also be stored on a memory medium readable by a reader of the terminal or encoder or downloadable in the memory space thereof.
  • the terminal comprises an output module capable of transmitting a multiplexed stream derived from the coding of the input signals.
  • FIG. 11b illustrates an example of a decoder or terminal including a decoder as described with reference to FIG.
  • This terminal comprises a PROC processor cooperating with a memory block
  • BM having a memory storage and / or working MEM.
  • the terminal comprises an input module adapted to receive a multiplexed stream coming for example from a communication network, a storage module.
  • the memory block may advantageously comprise a computer program comprising code instructions for implementing the steps of the decoding method in the sense of the invention, when these instructions are executed by the processor PROC, and in particular the steps of:
  • FIG. 6 shows the steps of an algorithm of such a computer program.
  • the computer program can also be stored on a memory medium readable by a reader of the terminal or downloadable in the memory space thereof.
  • the terminal comprises an output module able to transmit decoded signals ⁇ dtB, S HB ) for another coding stage or for a content reproduction.
  • such a terminal may comprise both the encoder and the decoder according to the invention.

Abstract

The invention pertains to a method of hierarchical coding of a digital audio frequency input signal into several frequency sub-bands comprising a core coding of the input signal according to a first throughput and at least one enhancement coding of higher throughput, of a residual signal, the core coding using a binary allocation (506) according to an energy criterion. The method is such that it comprises the following steps for the enhancement coding: - calculation of a frequency-based masking threshold (511) for at least part of the frequency bands processed by the enhancement coding; - determination (512) of a perceptual importance per frequency sub-band as a function of the masking threshold calculated and as a function of the number of bits allocated for the core coding; - binary allocation (512) of bits in the frequency sub-bands processed by the enhancement coding, as a function of the perceptual importance determined; and – coding of the residual signal (513) according to the bit allocation. The invention also pertains to a suitable method of decoding, a coder and a decoder.

Description

Codage/Décodage perfectionné de signaux audionumériques  Advanced coding / decoding of digital audio signals
La présente invention concerne un traitement de données sonores. The present invention relates to a sound data processing.
Ce traitement est adapté notamment à la transmission et/ou au stockage de signaux numériques tels que des signaux audiofréquences (parole, musique, ou autres).  This processing is adapted in particular to the transmission and / or storage of digital signals such as audio-frequency signals (speech, music, or other).
L'invention s'applique plus particulièrement au codage hiérarchique (ou codage "scalable") qui génère un flux binaire dit « hiérarchique » car il comprend un débit cœur et une ou plusieurs couche(s) d'amélioration. La norme G.722 à 48, 56 et 64 kbit/s est un exemple de codée scalable en débit, tandis que les codées UIT-T G .129.1 et MPEG-4 CELP sont des exemples de codées scalables à la fois en débit et en largeur de bande.  The invention applies more particularly to hierarchical coding (or "scalable" coding) which generates a so-called "hierarchical" bitstream because it comprises a core rate and one or more improvement layer (s). The G.722 standard at 48, 56 and 64 kbit / s is an example of a scalable bit rate codec, while the ITU-T G .129.1 and MPEG-4 CELP codecs are examples of scalable codecs in both bitrate and bitrate. in bandwidth.
On détaille ci-après le codage hiérarchique, ayant la capacité de fournir des débits variés, en répartissant les informations relatives à un signal audio à coder dans des sous-ensembles hiérarchisés, de telle sorte que ces informations puissent être utilisées par ordre d'importance sur le plan de la qualité de rendu audio. Le critère pris en compte pour déterminer l'ordre est un critère d'optimisation (ou plutôt de moindre dégradation) de la qualité du signal audio codé. Le codage hiérarchique est particulièrement adapté à la transmission sur des réseaux hétérogènes ou présentant des débits disponibles variables au cours du temps, ou encore à la transmission à destination de terminaux présentant des capacités variables.  Hierarchical coding, having the capacity to provide varied bit rates, is described below by distributing the information relating to an audio signal to be coded in hierarchical subsets, so that this information can be used in order of importance. in terms of audio rendering quality. The criterion taken into account for determining the order is a criterion for optimizing (or rather reducing) the quality of the coded audio signal. Hierarchical coding is particularly suited to transmission over heterogeneous networks or having variable available rates over time, or to transmission to terminals with varying capacities.
Le concept de base du codage audio hiérarchique (ou "scalable") peut être décrit comme suit.  The basic concept of hierarchical audio coding (or "scalable") can be described as follows.
Le flux binaire comprend une couche de base et une ou plusieurs couches d'amélioration. La couche de base est générée par un codée à débit fixe, qualifié de The bit stream includes a base layer and one or more enhancement layers. The base layer is generated by a fixed rate codec, referred to as
« codée cœur », garantissant la qualité minimale du codage. Cette couche doit être reçue par le décodeur pour maintenir un niveau de qualité acceptable. Les couches d'amélioration servent à améliorer la qualité. Il peut arriver toutefois qu'elles ne soient pas toutes reçues par le décodeur. "Heart coded", guaranteeing the minimum quality of the coding. This layer must be received by the decoder to maintain an acceptable level of quality. Improvement layers are used to improve quality. However, they may not all be received by the decoder.
L'intérêt principal du codage hiérarchique est qu'il permet alors une adaptation du débit par simple « troncature du flux binaire ». Le nombre de couches (c'est-à-dire le nombre de troncatures possibles du flux binaire) définit la granularité du codage. On parle de codage à « granularité forte » si le flux binaire comprend peu de couches (de l'ordre de 2 à 4) et de codage à « granularité fine » permet par exemple un pas de l'ordre de 1 à 2 kbit/s.  The main advantage of hierarchical coding is that it allows an adaptation of the bit rate simply by "truncation of the bit stream". The number of layers (i.e., the number of possible truncations of the bitstream) defines the granularity of the coding. We speak of coding with "high granularity" if the bit stream comprises few layers (of the order of 2 to 4) and coding with "fine granularity" allows for example a step of the order of 1 to 2 kbit / s.
On décrit plus particulièrement ci-après les techniques de codage scalable en débit et en largeur de bande, avec un codeur cœur de type CELP, en bande téléphonique et une ou plusieurs couche(s) d'amélioration en bande élargie. Un exemple de tels systèmes est donné dans la norme UIT-T G.729.1 de 8 à 32 kbit/s à granularité fine. L'algorithme de codage/décodage G.729.1 est résumé ci-après.  More specifically, the scalable bandwidth and scalability encoding techniques are described below, with a CELP core-type coder, in a telephone band, and one or more broadband enhancement layer (s). An example of such systems is given in the ITU-T G.729.1 8-32 kbit / s fine grain standard. The G.729.1 coding / decoding algorithm is summarized below.
* Rappels sur le codeur G.729.1 * Reminders on the G.729.1 encoder
Le codeur G.729.1 est une extension du codeur UIT-T G.729. Il s'agit d'un codeur hiérarchique à cœur G.729, modifié, produisant un signal dont la bande va de la bande étroite (50-4000 Hz) à la bande élargie (50-7000 Hz) à un débit de 8 à 32 kbit/s pour les services conversationnels. Ce codée est compatible avec les équipements de voix sur IP existants qui utilisent le codée G.729. The G.729.1 encoder is an extension of the ITU-T G.729 coder. It is a modified G.729 heart-shaped hierarchical encoder producing a bandwidth ranging from narrow band (50-4000 Hz) to wide band (50-7000 Hz) at a rate of 8 to 32 kbit / s for conversational services. This codec is compatible with existing VoIP devices that use the G.729 codec.
Le codeur G.729.1 est schématisé sur la figure 1. Le signal d'entrée en bande élargie s^ , échantillonné à 16 kHz, est d'abord décomposé en deux sous-bandes par filtrage QMF (pour "Quadrature Mirror Filter"). La bande basse (0-4000 Hz) est obtenue par le filtrage passe-bas LP (bloc 100) et décimation (bloc 101), et la bande haute (4000-8000 Hz) par filtrage passe-haut HP (bloc 102) et décimation (bloc 103). Les filtres LP et HP sont de longueur 64. The G.729.1 coder is shown diagrammatically in FIG. 1. The broadband input signal s, sampled at 16 kHz, is first decomposed into two subbands by QMF (for "Quadrature Mirror Filter") filtering. The low band (0-4000 Hz) is obtained by LP low-pass filtering (block 100) and decimation (block 101), and the band high (4000-8000 Hz) by high-pass filtering HP (block 102) and decimation (block 103). The LP and HP filters are of length 64.
La bande basse est prétraitée par un filtre passe-haut éliminant les composantes en dessous de 50 Hz (bloc 104), pour obtenir le signal S18 , avant codage CELP en bande étroite (bloc 105) à 8 et 12 kbit/s. Ce filtrage passe-haut tient compte du fait que la bande utile est définie comme couvrant l'intervalle 50-7000 Hz. Le codage CELP en bande étroite est un codage CELP en cascade comprenant comme premier étage un codage G.729 modifié sans filtre de prétraitement et comme deuxième étage un dictionnaire CELP fixe supplémentaire. The low band is pretreated with a high-pass filter eliminating the components below 50 Hz (block 104), to obtain the signal S 18 , before CELP coding in narrow band (block 105) at 8 and 12 kbit / s. This high-pass filtering takes into account the fact that the wanted band is defined as covering the interval 50-7000 Hz. The narrow-band CELP coding is a cascaded CELP coding comprising as a first stage a modified G.729 coding without a filter. preprocessing and as a second stage an additional fixed CELP dictionary.
La bande haute est d'abord prétraitée (bloc 106) pour compenser le repliement dû au filtre passe-haut (bloc 102) combiné avec la décimation (bloc 103). La bande haute est ensuite filtrée par un filtre passe-bas (bloc 107) éliminant les composantes entre 3000 et 4000 Hz de la bande haute (c'est-à-dire les composantes entre 7000 et The high band is first pretreated (block 106) to compensate for the folding due to the high-pass filter (block 102) combined with the decimation (block 103). The high band is then filtered by a low pass filter (block 107) eliminating the components between 3000 and 4000 Hz from the high band (that is, the components between 7000 and
8000 Hz dans le signal original) pour obtenir le signal sHB . Une extension de bande paramétrique (bloc 108) est ensuite réalisée. 8000 Hz in the original signal) to obtain the HB signal. A parametric band extension (block 108) is then performed.
Une particularité importante de l'encodeur G.729.1 selon la figure 1 est la suivante. Le signal d'erreur dLB de la bande basse est calculé (bloc 109) à partir de la sortie du codeur CELP (bloc 105) et un codage prédictif par transformée (de typeAn important feature of the G.729.1 encoder according to Figure 1 is as follows. The error signal d LB of the low band is calculated (block 109) from the output of the CELP coder (block 105) and a predictive coding by transform (of type
TDAC pour « Time Domain Aliasing Cancellation » dans la norme G.729.1) est réalisé au bloc 110. En référence à la figure 1, on voit en particulier que l'encodageTDAC for "Time Domain Aliasing Cancellation" in the G.729.1 standard) is carried out at block 110. With reference to FIG. 1, it can be seen in particular that the encoding
TDAC est appliqué à la fois au signal d'erreur sur la bande basse et au signal filtré sur la bande haute. TDAC is applied to both the error signal on the low band and the signal filtered on the high band.
Des paramètres supplémentaires peuvent être transmis par le bloc 1 11 à un décodeur homologue, ce bloc 111 réalisant un traitement dit « FEC » pour « Frame Erasure Concealment », en vue de reconstituer d'éventuelles trames effacées. - A - Additional parameters may be transmitted by the block 1 11 to a homologous decoder, this block 111 performing a so-called "FEC" treatment for "Frame Erasure Concealment", in order to reconstruct any erased frames. - AT -
Les différents flux binaires générés par les blocs de codage 105, 108, 110 et 111 sont enfin multiplexes et structurés en un train binaire hiérarchique dans le bloc de multiplexage 112. Le codage est réalisé par blocs d'échantillons (ou trames) de 20 ms, soit 320 échantillons par trame. The different bit streams generated by the coding blocks 105, 108, 110 and 111 are finally multiplexed and structured into a hierarchical bit stream in the multiplexing block 112. The coding is performed by 20 ms sample blocks (or frames). 320 samples per frame.
Le codée G .129.1 a donc une architecture en trois étapes de codage comprenant : le codage CELP en cascade,  The coded G .129.1 therefore has a three-step coding architecture comprising: CELP coding in cascade,
l'extension de bande paramétrique par le module 108, de type TDBWE (pour « Time Domain Bandwidth Extension »), et  the parametric band extension by the module 108, of the TDBWE (for "Time Domain Bandwidth Extension") type, and
un codage prédictif par transformée TDAC, appliqué après une transformation de type MDCT (pour « Modified Discrète Cosine Transform » ou « transformation en cosinus discrète modifiée »).  a TDAC transform predictive coding, applied after an MDCT (Modified Discrete Cosine Transform) transformation.
* Rappels sur le décodeur G.729.1 Le décodeur G.729.1 est illustré sur la figure 2. Les bits décrivant chaque trame de 20 ms sont démultiplexés dans le bloc 200. * Reminders on the G.729.1 decoder The G.729.1 decoder is illustrated in Figure 2. The bits describing each frame of 20 ms are demultiplexed in the block 200.
Le flux binaire des couches à 8 et 12 kbit/s est utilisé par le décodeur CELP (bloc 201) pour générer la synthèse en bande étroite (0-4000 Hz). La portion du flux binaire associée à la couche à 14 kbit/s est décodée par le module d'extension de bande (bloc 202). La portion du flux binaire associée aux débits supérieurs à 14 kbit/s est décodée par le module TDAC (bloc 203). Un traitement des pré-échos et post-échos est réalisé par les blocs 204 et 207 ainsi qu'un enrichissement (bloc 205) et un post-traitement de la bande basse (bloc 206). Le signal de sortie en bande élargie swb , échantillonné à 16 kHz, est obtenu par l'intermédiaire du banc de filtres QMF de synthèse (blocs 209, 210, 211, 212 et 213) intégrant le repliement inverse (bloc 208). The bit stream of the 8 and 12 kbit / s layers is used by the CELP decoder (block 201) to generate the narrow-band synthesis (0-4000 Hz). The portion of the bit stream associated with the 14 kbit / s layer is decoded by the tape extension module (block 202). The portion of the bit stream associated with data rates greater than 14 kbit / s is decoded by the TDAC module (block 203). Pre-echo and post-echo processing is performed by blocks 204 and 207 as well as enrichment (block 205) and aftertreatment of the low band (block 206). The extended band output signal s wb , sampled at 16 kHz, is obtained via the QMF synthesis filter bank (blocks 209, 210, 211, 212 and 213) integrating the inverse folding (block 208).
La description de la couche de codage par transformée est détaillée ci-après.  The description of the transform coding layer is detailed below.
* Rappels sur le codeur par transformée TDAC dans le codeur G.729.1 * Feedback on the TDAC Transform Encoder in the G.729.1 Encoder
Le codage par transformée de type TDAC dans le codeur G.729.1 est illustré sur la figure 3. The TDAC type transform coding in the G.729.1 encoder is illustrated in FIG.
Le filtre W18 (Z) (bloc 300) est un filtre de pondération perceptuelle, avec compensation de gain, appliqué au signal d'erreur en bande basse dLB . Des transformées MDCT sont ensuite calculées (bloc 301 et 302) pour obtenir : The filter W 18 (Z) (block 300) is a perceptual weighting filter, with gain compensation, applied to the low band error signal d LB. MDCT transforms are then calculated (blocks 301 and 302) to obtain:
le spectre MDCT D^ du signal de différence, filtré perceptuellement, et le spectre MDCT SHB du signal original de la bande haute. Ces transformées MDCT (blocs 301 et 302) s'appliquent à 20 ms de signal échantillonné à 8 kHz (160 coefficients). Le spectre Y(k) issu du bloc 303 de fusion comprend ainsi 2 x 160, soit 320 coefficients. Il est défini comme suit : the MDCT spectrum D ^ of the difference signal, perceptually filtered, and the spectrum MDCT S HB of the original signal of the high band. These MDCT transforms (blocks 301 and 302) apply to 20 ms of sampled signal at 8 kHz (160 coefficients). The spectrum Y (k) from the block 303 of fusion thus comprises 2 x 160, or 320 coefficients. It is defined as follows:
[F(O) F(I)- - 7(319)] = [DL w B (0) D^(I) -D^ (159) SHB(0) SHB(l) -5Wfl(159)J [F (O) F (I) - - 7 (319)] = [D L w B (O) D 1 (I) -D 1 (159) S HB (O) S HB (1) -5 Wfl ( 159) J
Ce spectre est divisé en dix-huit sous-bandes, une sous-bande j étant affectée d'un nombre de coefficients noté nb _coef(j) . Le découpage en sous-bandes est spécifié dans le tableau 1 ci-après.  This spectrum is divided into eighteen sub-bands, a sub-band j being assigned a number of coefficients noted nb _coef (j). The subband splitting is specified in Table 1 below.
Ainsi, une sous-bande j comprend les coefficients Y(k) avec sb _ bound(j)≤ k < sb _ bυund(j + 1) . A noter que les coefficients 280-319 correspondants à la bande de fréquence 7000 Hz - 8000 Hz ne sont pas codés; ils sont mis à zéro au décodeur, car la bande passante du codée est de 50-7000 Hz. Thus, a subband j comprises the coefficients Y (k) with sb _ bound (j) ≤ k <sb _ bυund (j + 1). It should be noted that the coefficients 280-319 corresponding to the frequency band 7000 Hz - 8000 Hz are not coded; they are set to zero at the decoder because the bandwidth of the codec is 50-7000 Hz.
Tableau 1 : Limites et taille des sous-bandes en codage TDAC L'enveloppe spectrale {\og_ rms(j)} χη est calculée dans le bloc 304 suivant la formule : Y(k)2 + εrm j = o,...,nTable 1: Limits and size of subbands in TDAC coding The spectral envelope {\ og_rms (j)} χη is calculated in block 304 according to the formula: Y (k) 2 + ε rm j = 0, ..., n
où £ ,, = 2 -24 where £ ,, = 2 -24
L'enveloppe spectrale est codée à débit variable dans le bloc 305. Ce bloc 305 produit des valeurs quantifiées, entières, notées mis _index( j) (avec 7=0,...,17), obtenues par simple quantification scalaire : The spectral envelope is coded at variable rate in block 305. This block 305 produces quantized values, integer, denoted by _index (j) (with 7 = 0, ..., 17), obtained by simple scalar quantization:
mis _ index(j) = round ( 2• log_ rms(j)) où la notation « round » désigne l'arrondi à l'entier le plus proche, et avec la contrainte :  set _ index (j) = round (2 • log_rms (j)) where the notation "round" designates the rounding to the nearest integer, and with the constraint:
- I I < mis _ index(j)≤ +20  - I I <put _ index (j) ≤ +20
Cette valeur quantifiée mis _index(j) est transmise au bloc d'allocation de bits 306.  This quantized value set _index (j) is transmitted to the bit allocation block 306.
Le codage de l'enveloppe spectrale, lui-même, est effectué encore par le bloc 305, séparément pour la bande basse ( mis _index(j) , avec 7=0,..., 9) et pour la bande haute ( mis _index(j) , avec 7=10,... ,17). Dans chaque bande, deux types de codage peuvent être choisis selon un critère donné, et, plus précisément, les valeurs mis _index(j) :  The coding of the spectral envelope, itself, is carried out again by the block 305, separately for the low band (set _index (j), with 7 = 0, ..., 9) and for the high band (set _index (j), with 7 = 10, ..., 17). In each band, two types of coding can be chosen according to a given criterion, and, more precisely, the values put _index (j):
peuvent être codées par codage dit « de Huffman différentiel »,  can be coded by "differential Huffman" coding,
ou peuvent être codées par codage binaire naturel.  or can be encoded by natural binary coding.
Un bit (0 ou 1) est transmis au décodeur pour indiquer le mode de codage qui a été choisi.  A bit (0 or 1) is transmitted to the decoder to indicate the encoding mode that has been chosen.
Le nombre de bits alloués à chaque sous-bande pour sa quantification est déterminé au bloc 306 à partir de l'enveloppe spectrale quantifiée issue du bloc 305.  The number of bits allocated to each subband for its quantization is determined at block 306 from the quantized spectral envelope from block 305.
L'allocation des bits effectuée minimise l'erreur quadratique tout en respectant la contrainte d'un nombre de bits entier alloué par sous-bande et d'un nombre de bits maximum à ne pas dépasser. Le contenu spectral des sous-bandes est ensuite codé par quantification vectorielle sphérique (bloc 307). The bit allocation performed minimizes the squared error while respecting the constraint of a whole number of bits allocated per subband and a number of bits. maximum not to be exceeded. The spectral content of the subbands is then encoded by spherical vector quantization (block 307).
Les différents flux binaires générés par les blocs 305 et 307 sont ensuite multiplexes et structurés en un train binaire hiérarchique au bloc de multiplexage 308. The different bit streams generated by the blocks 305 and 307 are then multiplexed and structured into a hierarchical bit stream at the multiplexing block 308.
* Rappel sur le décodeur par transformée dans le décodeur G.729.1 * Reminder on the decoder by transform in the G.729.1 decoder
L'étape de décodage par transformée de type TDAC dans le décodeur G.729.1 est illustrée sur la figure 4. The TDAC-type transform decoding step in the G.729.1 decoder is illustrated in FIG. 4.
De façon symétrique à l'encodeur (figure 3), l'enveloppe spectrale décodée In a symmetrical way to the encoder (FIG. 3), the decoded spectral envelope
(bloc 401) permet de retrouver l'allocation des bits (bloc 402). Le décodage d'enveloppe (bloc 401) reconstruit les valeurs quantifiées de l'enveloppe spectrale(block 401) allows to find the allocation of bits (block 402). Envelope decoding (block 401) reconstructs the quantized values of the spectral envelope
( mis _index(j) , pour j=0,...,17), à partir du train binaire généré par le bloc 305 (multiplexe) et en déduit l'enveloppe décodée : (set _index (j), for j = 0, ..., 17), from the bit stream generated by block 305 (multiplexed) and deduces from it the decoded envelope:
rms _ q(j) = 2'A ms-'ndeUj) rms _ q (j) = 2 ' A ms -' ofUj)
Le contenu spectral de chacune des sous-bandes est retrouvé par quantification vectorielle sphérique inverse (bloc 403). Les sous-bandes non transmises, faute de « budget » de bits suffisant, sont extrapolées (bloc 404) à partir de la transformée MDCT du signal en sortie du bloc d'extension de bande (bloc 202 de la figure 2).  The spectral content of each of the subbands is found by inverse spherical vector quantization (block 403). The non-transmitted sub-bands, due to a lack of "budget" of bits, are extrapolated (block 404) from the MDCT transform of the signal at the output of the band extension block (block 202 of FIG. 2).
Après mise à niveau de ce spectre (bloc 405) en fonction de l'enveloppe spectrale et post-traitement (bloc 406), le spectre MDCT est séparé en deux (bloc 407) :  After upgrading this spectrum (block 405) as a function of the spectral envelope and after-treatment (block 406), the MDCT spectrum is separated into two (block 407):
avec 160 premiers coefficients correspondant au spectre D^ du signal de différence décodé en bande basse, filtré perceptuellement, et 160 coefficients suivants correspondant au spectre SHB du signal original décodé en bande haute. with 160 first coefficients corresponding to the spectrum D i of the decoded difference signal in low band, filtered perceptually, and 160 subsequent coefficients corresponding to the spectrum S HB of the original decoded high band signal.
Ces deux spectres sont transformés en des signaux temporels par transformée MDCT inverse, notée IMDCT (blocs 408 et 410), et la pondération perceptuelle inverse (filtre noté W18 (Z)'1 ) est appliquée au signal dL w B (bloc 409) résultant de la transformée inverse. These two spectra are transformed into time signals by inverse MDCT transform, denoted IMDCT (blocks 408 and 410), and the inverse perceptual weighting (filter denoted W 18 (Z) '1 ) is applied to the signal d L w B (block 409 ) resulting from the inverse transform.
On décrit plus particulièrement ci-après l'allocation de bits aux sous-bandes (bloc 306 de la figure 3 ou bloc 402 de la figure 4).  The sub-bit allocation (block 306 of FIG. 3 or block 402 of FIG. 4) is described more particularly below.
Les blocs 306 et 402 réalisent une opération identique à partir des valeurs mis _index(j) ,7=0,..., 17. On se contente donc par la suite de décrire uniquement le fonctionnement du bloc 306.  Blocks 306 and 402 perform an identical operation from the values set _index (j), 7 = 0, ..., 17. It is therefore merely necessary to describe only the operation of block 306.
Le but de l'allocation binaire est de répartir entre chacune des sous-bandes un certain budget de bits (variable) noté nbits _ VQ , avec :  The purpose of the binary allocation is to distribute between each of the sub-bands a certain bit budget (variable) noted nbits _ VQ, with:
nbits _VQ = 351 - nbits _ mis , où nbits _ mis est le nombre de bits utilisés par le codage de l'enveloppe spectrale. nbits _VQ = 351 - nbits _ put, where nbits _ mis is the number of bits used by the coding of the spectral envelope.
Le résultat de l'allocation est le nombre entier de bits, noté nbit(j) (avec=0,... ,17), alloués à chacune des sous-bande avec comme contrainte globale :  The result of the allocation is the integer number of bits, denoted nbit (j) (with = 0, ..., 17), allocated to each of the sub-bands with as global constraint:
17  17
∑nbiti j)≤ nbits _VQ  Σnbiti j) ≤ nbits _VQ
y=o y =
Dans la norme G.729.1, les valeurs nbit(j) (/=0,...,17), sont de plus contraintes par le fait que nbit(j) doit être choisi parmi un jeu de valeurs réduit spécifié au tableau 2 ci-après. In the G.729.1 standard, the nbit (j) values (/=0,...,17) are further constrained by the fact that nbit (j) must be selected from a reduced set of values specified in Table 2 below.
Tableau 2 : Valeurs possibles de nombre de bits alloués dans les sous-bandes TDAC. Table 2: Possible values of number of bits allocated in TDAC subbands.
L'allocation dans la norme G.729.1 repose sur une "importance perceptuelle" par sous-bande liée à l'énergie de la sous-bande, notée ip(j) (/=0..17), définie comme suit :  The allocation in G.729.1 is based on a "perceptual importance" per subband related to the energy of the subband, denoted ip (j) (/=0..17), defined as follows:
ψ(j) - -Iog2(rms _q(jf xnb _coef(j))+ offset ψ (j) - -Iog 2 (rms _q (jf xnb _coef (j)) + offset
où offset = -2.  where offset = -2.
Puisque les valeurs rms _q(j) = 2'A r'm-mJex(J) ^ ce^e formule se simplifie sous la forme : rms _ index( j) pour j = 0, ... , 16 Since the rms values _q (j) = 2 'to R' m - mJex (J) ^ e ^ this formula simplifies as: _ rms index (j) for j = 0, ..., 16
ip(j) =  ip (j) =
(rms _ index( j)— l) pour j = 17  (rms _ index (j) - l) for j = 17
A partir de l'importance perceptuelle de chaque sous-bande, l'allocation nbit(j) est calculée comme suit : From the perceptual importance of each sub-band, the allocation nbit (j) is calculated as follows:
nbit(j) = arg min nb _coef(j) x(ip(j) - λ )- r où λ est un paramètre optimisé par dichotomie pour satisfaire la contrainte globale 17 nbit (j) = arg min nb _coef (j) x (ip (j) - λ) - r where λ is a dichotomy optimized parameter to satisfy the global constraint 17
∑nbit(j)≤nbits _VQ  Σnbit (j) ≤nbits _VQ
J=O  J = O
en s'approchant au mieux du seuil nbits_VQ. approaching the nbits_VQ threshold.
On décrit plus en détail maintenant l'incidence de la pondération perceptuelle (filtrage du bloc 300) sur l'allocation de bits (bloc 306) du codeur par transformée TDAC. The incidence of perceptual weighting (filtering of block 300) on the bit allocation (block 306) of the TDAC transform coder is described in more detail below.
Dans la norme G.729.1, le codage TDAC utilise le filtre W/B (z) de pondération perceptuelle dans la bande basse (bloc 300), comme indiqué ci-avant. En substance, le filtrage de pondération perceptuelle permet de mettre en forme le bruit de codage. Le principe de ce filtrage est d'exploiter le fait qu'il est possible d'injecter plus de bruit dans les zones de fréquences où le signal original a une forte énergie. In the G.729.1 standard, the TDAC coding uses the perceptual weighting W / B (z) filter in the low band (block 300), as indicated above. In essence, perceptual weighting filtering allows you to format the coding noise. The principle of this filtering is to exploit the fact that it is possible to inject more noise in the frequency zones where the original signal has a high energy.
Les filtres de pondération perceptuelle les plus couramment utilisés en codage CELP en bande étroite sont de la forme Â(z/γl)/Â(z/γ2) où 0 < γ2 < γl < 1 et Â(z) représente un spectre de prédiction linéaire (LPC). L'analyse par synthèse en codage CELP revient ainsi à minimiser l'erreur quadratique dans un domaine de signal pondéré perceptuellement par ce type de filtre.  The most common perceptual weighting filters used in narrow-band CELP coding are of the form  (z / γ1) /  (z / γ2) where 0 <γ2 <γl <1 and  (z) represents a prediction spectrum linear (LPC). The synthesis analysis in CELP coding thus amounts to minimizing the quadratic error in a signal domain perceptually weighted by this type of filter.
Cependant, pour assurer la continuité spectrale lorsque les spectres D"B et Sιm sont accolés (bloc 303 de la figure 3), le filtre WLB (z) est défini sous la forme : )However, to ensure the spectral continuity when the spectra D " B and S ιm are contiguous (block 303 of FIG. 3), the filter W LB (z) is defined in the form:
avec γ, Le facteur fac permet d'assurer à la jonction des bandes basse et haute (4 kHz) un gain du filtre à 1 à 4 kHz. Il est important de noter que, dans le codage TDAC selon la norme G.729.1, le codage ne repose que sur un critère énergétique. * Inconvénients de l'art antérieur with γ, The fac factor makes it possible to ensure at the junction of the low and high bands (4 kHz) a gain of the filter at 1 to 4 kHz. It is important to note that in the G.729.1 TDAC coding, the coding is based on an energetic criterion only. * Disadvantages of the prior art
Le critère énergétique du codage TDAC de G.729.1, utilisé dans la bande haute (4000-7000 Hz), n'est pas optimal d'un point de vue perceptuel, notamment pour coder des signaux musicaux.  The energy criterion of TDAC coding of G.729.1, used in the high band (4000-7000 Hz), is not optimal from a perceptual point of view, in particular to code musical signals.
Le filtre de pondération perceptuel est particulièrement adapté aux signaux de parole. Il est largement utilisé dans les normes de codage de la parole basé sur le format de codage de type CELP. Cependant, pour les signaux musicaux, il apparaît que cette pondération perceptuelle basée sur une mise en forme du bruit de quantification suivant les formants du signal d'entrée est insuffisante. La plupart des codeurs audio s'appuient sur un codage par transformée utilisant des modèles de masquage fréquentiel, ou masquage simultané; ils sont plus génériques (dans le sens où ils n'utilisent pas un modèle de production de la parole à l'instar du CELP) et sont donc plus adaptés pour coder les signaux musicaux.  The perceptual weighting filter is particularly suited to speech signals. It is widely used in speech coding standards based on the CELP coding format. However, for the musical signals, it appears that this perceptual weighting based on a shaping of the quantization noise according to the formants of the input signal is insufficient. Most audio coders rely on transform coding using frequency masking or simultaneous masking models; they are more generic (in the sense that they do not use a speech production model like the CELP) and are therefore more suitable for encoding musical signals.
On pourra se référer au document intitulé "Introduction to digital audio coding and standards", de M. Bosi et R. Goldberg, publié par Kluver Académie Publishers, en 2003, pour avoir plus de détails sur les modèles de masquage et leur application dans les codeurs par transformée.  Reference can be made to Mr. Bosi and R. Goldberg's "Introduction to digital audio coding and standards," published by Kluver Academy Publishers, in 2003, for more details on masking patterns and their application in transform coders.
Il existe donc un besoin d'améliorer la qualité de codage des signaux pour un meilleur rendu perceptuel, tout en gardant l'interopérabilité avec le codage G.729.1. There is therefore a need to improve the signal coding quality for better perceptual rendering, while maintaining interoperability with G.729.1 coding.
La présente invention vient améliorer la situation. The present invention improves the situation.
Elle propose à cet effet, un procédé de codage hiérarchique d'un signal audiofréquence numérique d'entrée en plusieurs sous-bandes fréquentielles comportant un codage cœur du signal d'entrée selon un premier débit et au moins un codage d'amélioration de débit supérieur d'un signal résiduel, le codage cœur utilisant une allocation binaire selon un critère énergétique. Le procédé est tel qu'il comporte les étapes suivantes pour le codage d'amélioration: It proposes for this purpose, a method of hierarchical coding of a digital audio input signal in several frequency subbands comprising heart encoding of the input signal at a first rate and at least one higher rate enhancement coding of a residual signal, the core coding using a binary allocation according to an energy criterion. The method is such that it comprises the following steps for improvement coding:
- calcul d'un seuil de masquage fréquentiel pour au moins une partie des bandes de fréquences traitées par le codage d'amélioration;  calculating a frequency masking threshold for at least part of the frequency bands processed by the improvement coding;
- détermination d'une importance perceptuelle par sous bande de fréquence en fonction du seuil de masquage calculé et en fonction du nombre de bits alloués pour le codage cœur;  determining perceptual importance by sub-frequency band according to the calculated masking threshold and as a function of the number of bits allocated for the core coding;
- allocation binaire de bits dans les sous-bandes fréquentielles traitées par le codage d'amélioration, en fonction de l'importance perceptuelle déterminée; et  binary bit allocation in the frequency subbands processed by the enhancement coding, according to the determined perceptual importance; and
-codage du signal résiduel selon l'allocation de bits.  -coding the residual signal according to the bit allocation.
Ainsi, le codage selon l'invention profite d'une couche de codage d'amélioration pour améliorer la qualité de codage d'un point de vue perceptuel. La couche d'amélioration va ainsi bénéficier d'un masquage fréquentiel qui n'existe pas dans l'étage de codage cœur, pour allouer au mieux les bits dans les bandes fréquentielles du codage d'amélioration.  Thus, the coding according to the invention takes advantage of an enhancement coding layer to improve the coding quality from a perceptual point of view. The enhancement layer will thus benefit from frequency masking which does not exist in the core coding stage, in order to best allocate the bits in the frequency bands of the improvement coding.
Cette opération ne modifie pas le codage cœur qui reste ainsi compatible avec le codage normalisé existant, garantissant ainsi l'interopérabilité avec les équipements déjà sur le marché qui utilisent le codage normalisé existant.  This does not change the core coding, which is thus compatible with existing standard coding, thus ensuring interoperability with existing equipment that uses existing standard coding.
Les différents modes particuliers de réalisation mentionnés ci-après peuvent être ajoutés indépendamment ou en combinaison les uns avec les autres, aux étapes du procédé de codage défini ci-dessus.  The various particular embodiments mentioned below may be added independently or in combination with each other, to the steps of the coding method defined above.
Dans un mode de réalisation particulier, l'étape de détermination d'une importance perceptuelle comporte: - une première étape de définition d'une première importance perceptuelle pour au moins une sous bande de fréquence du codage d'amélioration, en fonction du seuil de masquage fréquentiel dans la sous-bande, de valeurs quantifiés du codage de l'enveloppe spectrale pour la sous bande de fréquence et d'un facteur de normalisation déterminé; In a particular embodiment, the step of determining a perceptual importance comprises: a first step of defining a first perceptual importance for at least one frequency sub-band of the improvement coding, as a function of the frequency masking threshold in the sub-band, of quantized values of the coding of the spectral envelope for the frequency subband and a determined normalization factor;
-une deuxième étape de soustraction à la première importance perceptuelle d'un rapport entre le nombre de bits alloués pour le codage cœur et le nombre de coefficients dans ladite sous-bande.  a second step of subtracting from the first perceptual importance a ratio between the number of bits allocated for the core coding and the number of coefficients in said sub-band.
Ainsi, la première importance perceptuelle qui sera utilisé pour la couche d'amélioration, ne prend pas en compte le codage cœur mais uniquement le rapport signal à masque pour définir une importance perceptuelle. Cette importance perceptuelle est déterminée sur le signal d'entrée du codeur par transformée.  Thus, the first perceptual importance that will be used for the improvement layer, does not take into account the core coding but only the signal to mask ratio to define a perceptual importance. This perceptual importance is determined on the input signal of the transform coder.
La prise en compte du codage cœur se fait simplement par soustraction du nombre de bits moyen par échantillon déjà alloués. L'utilisation de l'importance perceptuelle basée sur le rapport signal à masque permettrait d'obtenir une allocation optimale au sens perceptuel. Cependant cette allocation serait utile si l'on codait directement le signal d'entrée de la couche de codage par transformée. Hors, dans le cadre de l'invention, une première couche de codage par transformée, basée sur une allocation énergétique a alloué un certain nombre de bits par sous-bande.  Taking into account the core coding is simply done by subtracting the average number of bits per sample already allocated. The use of the perceptual importance based on the signal-to-mask ratio would make it possible to obtain an optimal allocation in the perceptual sense. However, this allocation would be useful if the input signal of the transform coding layer was coded directly. In the context of the invention, a first transform coding layer based on an energy allocation has allocated a certain number of bits per subband.
Si l'on veut améliorer la qualité en codant le signal résiduel de cette couche du codeur cœur sans gaspiller de débit, il est nécessaire d'adapter l'importance perceptuelle basée sur le rapport signal à masque du signal d'entrée au signal résiduel. Pour cela, on soustrait de la première importance perceptuelle une valeur représentative du nombre de bits alloués dans le codeur cœur. Il faut noter que l'on ne peut pas calculer l'importance perceptuelle basée sur le rapport signal à masque d'un signal résiduel. En effet, dans ce cas la courbe de masquage qui serait calculée n'aurait pas réellement de sens perceptif, puisqu'elle ne se baserait pas sur le signal réellement perçu. If one wants to improve the quality by coding the residual signal of this core encoder layer without wasting rate, it is necessary to adapt the perceptual importance based on the signal to mask ratio of the input signal to the residual signal. For this purpose, a value representative of the number of bits allocated in the core coder is subtracted from the first perceptual importance. It should be noted that the perceptual importance based on the signal to mask ratio of a residual signal can not be calculated. Indeed, in this case the masking curve that would be calculated would not really have a perceptive meaning, since it would not be based on the perceived signal.
Dans une variante de réalisation, l'importance perceptuelle est déterminée en outre en fonction de bits alloués pour un codage d'amélioration du codage cœur, précédent, ayant une allocation binaire selon un critère énergétique.  In a variant embodiment, the perceptual importance is furthermore determined as a function of bits allocated for coding of improvement of the preceding core coding, having a binary allocation according to an energy criterion.
Dans le décodeur G.729.1 les sous-bandes non transmises, faute de budget de bits suffisant, sont extrapolées (bloc 404) à partir de la transformée MDCT du signal en sortie du bloc d'extension de bande (bloc 202 de la figure 2). Même au plus haut débit du codage G.729.1 (32 kbit/s) certaines bandes de fréquence restent ainsi extrapolées. Avant d'appliquer le codage d'amélioration selon la présente invention on peut d'abord faire appel à un premier codage d'amélioration du codage cœur pour combler le manque de débit du codage cœur pour ces sous-bandes non transmises. Ce premier codage d'amélioration utilise le signal original et fonctionne selon des critères énergétiques pour l'allocation de bits. Selon un mode de réalisation de l'invention ce premier codage d'amélioration vient modifier le nombre de bits nbiî(j) alloués aux sous-bandes et la sous-bande décodée Yq(k) (définie plus tard à la figure 5).  In the G.729.1 decoder the non-transmitted subbands, due to a lack of sufficient bit budget, are extrapolated (block 404) from the MDCT transform of the output signal of the band extension block (block 202 of FIG. ). Even at the higher bit rate of G.729.1 (32 kbit / s) some frequency bands remain extrapolated. Before applying the enhancement coding according to the present invention, it is first possible to use a first coding enhancement coding heart to fill the heart encoding bit rate for these non-transmitted subbands. This first enhancement coding uses the original signal and operates according to energy criteria for bit allocation. According to one embodiment of the invention, this first enhancement coding modifies the number of bits nbi 1 (j) allocated to the subbands and the decoded subband Y q (k) (defined later in FIG. 5).
Le codage d'amélioration selon l'invention prend donc également en compte les bits alloués lors de ce premier codage d'amélioration, en plus des bits alloués dans le codage cœur.  The improvement coding according to the invention therefore also takes into account the bits allocated during this first improvement coding, in addition to the bits allocated in the core coding.
Avantageusement, le seuil de masquage est déterminé pour une sous-bande, par une convoi ution entre:  Advantageously, the masking threshold is determined for a sub-band, by a convoi ution between:
- une expression d'une enveloppe spectrale calculée, et  an expression of a calculated spectral envelope, and
- une fonction d'étalement faisant intervenir une fréquence centrale de ladite sous-bande. Dans une variante de réalisation, le procédé comporte une étape d'obtention d'une information selon laquelle le signal à coder est tonal ou non tonal et les étapes de calcul du seuil de masquage et de détermination d'une importance perceptuelle en fonction de ce seuil de masquage, ne sont menées que si le signal est non tonal. a spreading function involving a central frequency of said subband. In an alternative embodiment, the method comprises a step of obtaining an information according to which the signal to be encoded is tonal or non-tonal and the steps of calculating the masking threshold and of determining a perceptual importance according to this masking threshold, are conducted only if the signal is non-tonal.
Ainsi, le codage est adapté au signal qu'il soit tonal ou pas et permet une allocation optimale des bits.  Thus, the coding is adapted to the signal whether it is tonal or not and allows optimal allocation of the bits.
Dans une application particulièrement adaptée de l'invention, le codage d'amélioration est un codage d'amélioration de type TDAC dans un codeur étendu dont le codage cœur est de type codeur normalisé G.729.1.  In a particularly suitable application of the invention, the improvement coding is a TDAC type enhancement coding in an extended coder whose core coding is of the G.729.1 standard encoder type.
Ainsi, la qualité du codée G.729.1 dans la bande élargie (50-7000 Hz), est améliorée. Une telle amélioration est importante pour étendre la bande du codeur G.729.1 de la bande élargie (50-7000Hz) à la bande super-élargie (50-14000Hz).  Thus, the quality of the G.729.1 codec in the enlarged band (50-7000 Hz) is improved. Such an improvement is important to extend the G.729.1 encoder band of the enlarged band (50-7000Hz) to the super-wide band (50-14000Hz).
La présente invention se rapporte à également un procédé de décodage hiérarchique d'un signal audiofréquence numérique en plusieurs sous-bandes fréquentielles comportant un décodage cœur d'un signal reçu selon un premier débit et au moins un décodage d'amélioration de débit supérieur, d'un signal résiduel, le décodage cœur utilisant une allocation binaire selon un critère énergétique. Le procédé est tel qu'il comporte les étapes suivantes pour le décodage d'amélioration:  The present invention also relates to a method of hierarchical decoding of a digital audio frequency signal into a plurality of frequency subbands comprising a core decoding of a signal received at a first rate and at least a higher rate of improvement decoding, d a residual signal, the core decoding using a binary allocation according to an energy criterion. The method is such that it comprises the following steps for the improvement decoding:
- calcul d'un seuil de masquage fréquentiel pour au moins une partie des sous-bandes de fréquences traitées par le décodage d'amélioration;  calculating a frequency masking threshold for at least a portion of the frequency subbands processed by the enhancement decoding;
- détermination d'une importance perceptuelle par sous-bande de fréquence en fonction du seuil de masquage calculé et en fonction du nombre de bits alloués pour le décodage cœur;  determination of a perceptual importance by frequency sub-band according to the calculated masking threshold and as a function of the number of bits allocated for the core decoding;
- allocation de bits dans les sous-bandes fréquentielles traitées par le décodage d'amélioration, en fonction de l'importance perceptuelle déterminée; et bit allocation in the frequency sub-bands processed by the enhancement decoding, according to the determined perceptual importance; and
-décodage du signal résiduel selon l'allocation de bits. De la même façon et avec les mêmes avantages que pour le codage l'étape de détermination d'une importance perceptuelle comporte: decoding the residual signal according to the bit allocation. In the same way and with the same advantages as for coding, the step of determining a perceptual importance comprises:
- une première étape de définition d'une première importance perceptuelle pour au moins une sous- bande de fréquence du décodage d'amélioration, en fonction du seuil de masquage fréquentiel dans la sous-bande, de valeurs quantifiés du décodage de l'enveloppe spectrale pour la sous-bande de fréquence et d'un facteur de normalisation déterminé;  a first step of defining a first perceptual importance for at least one frequency sub-band of the improvement decoding, as a function of the frequency masking threshold in the sub-band, of quantized values of the spectral envelope decoding for the frequency sub-band and a determined normalization factor;
-une deuxième étape de soustraction à la première importance perceptuelle d'un rapport entre le nombre de bits alloués pour le décodage cœur et le nombre de coefficients dans ladite sous-bande.  a second step of subtracting from the first perceptual importance a ratio between the number of bits allocated for the core decoding and the number of coefficients in said subband.
L'invention se rapporte à un codeur hiérarchique d'un signal audiofréquence numérique d'entrée en plusieurs sous-bandes fréquentielles comportant un codeur cœur du signal d'entrée selon un premier débit et au moins un codeur d'amélioration de débit supérieur, d'un signal résiduel, le codeur cœur utilisant une allocation binaire selon un critère énergétique. Le codeur d'amélioration comporte:  The invention relates to a hierarchical coder of a digital audio frequency input signal in several frequency subbands comprising a core encoder of the input signal according to a first bit rate and at least one higher bit rate improvement coder, d a residual signal, the core coder using a binary allocation according to an energy criterion. The enhancement coder includes:
- un module de calcul d'un seuil de masquage fréquentiel pour au moins une partie des bandes de fréquences traitées par le codeur d'amélioration;  a module for calculating a frequency masking threshold for at least part of the frequency bands processed by the improvement coder;
- un module de détermination d'une importance perceptuelle par sous bande de fréquence en fonction du seuil de masquage calculé et en fonction du nombre de bits alloués pour le codeur cœur;  a module for determining perceptual importance by sub-frequency band according to the calculated masking threshold and as a function of the number of bits allocated for the core coder;
- un module d'allocation binaire de bits dans les sous-bandes fréquentielles traitées par le codeur d'amélioration, en fonction de l'importance perceptuelle déterminée; et  a module for bit binary allocation in the frequency sub-bands processed by the improvement coder, according to the determined perceptual importance; and
-un module de codage du signal résiduel selon l'allocation de bits.  a module for coding the residual signal according to the bit allocation.
Elle se rapporte également à un décodeur hiérarchique d'un signal audiofréquence numérique en plusieurs sous-bandes fréquentielles comportant un décodeur cœur d'un signal reçu selon un premier débit et au moins un décodeur d'amélioration de débit supérieur, d'un signal résiduel, le décodeur cœur utilisant une allocation binaire selon un critère énergétique. Le décodeur d'amélioration comporte: It also relates to a hierarchical decoder of a digital audio signal in several frequency subbands including a heart decoder of a signal received at a first rate and at least one higher rate improvement decoder, of a residual signal, the heart decoder using a binary allocation according to an energy criterion. The enhancement decoder comprises:
- un module de calcul d'un seuil de masquage fréquentiel pour au moins une partie des sous-bandes de fréquences traitées par le décodeur d'amélioration;  a module for calculating a frequency masking threshold for at least a portion of the frequency sub-bands processed by the improvement decoder;
- un module de détermination d'une importance perceptuelle par sous-bande de fréquence en fonction du seuil de masquage calculé et en fonction du nombre de bits alloués pour le décodeur cœur;  a module for determining a perceptual importance per frequency subband as a function of the calculated masking threshold and as a function of the number of bits allocated for the heart decoder;
- un module d'allocation de bits dans les sous-bandes fréquentielles traitées par le décodeur d'amélioration, en fonction de l'importance perceptuelle déterminée; et  a bit allocation module in the frequency sub-bands processed by the enhancement decoder, according to the determined perceptual importance; and
-un module de décodage du signal résiduel selon l'allocation de bits.  a module for decoding the residual signal according to the allocation of bits.
Enfin, l'invention se rapporte à un programme informatique comportant des instructions de code pour la mise en œuvre des étapes d'un procédé de codage selon l'invention, lorsqu'elles sont exécutées par un processeur et à un programme informatique comportant des instructions de code pour la mise en œuvre des étapes d'un procédé de décodage selon l'invention, lorsqu'elles sont exécutées par un processeur.  Finally, the invention relates to a computer program comprising code instructions for implementing the steps of a coding method according to the invention, when they are executed by a processor and to a computer program comprising instructions. code for implementing the steps of a decoding method according to the invention, when executed by a processor.
D'autres caractéristiques et avantages de l'invention apparaîtront plus clairement à la lecture de la description suivante, donnée uniquement à titre d'exemple non limitatif, et faite en référence aux dessins annexés, sur lesquels:  Other features and advantages of the invention will appear more clearly on reading the following description, given solely by way of nonlimiting example, and with reference to the appended drawings, in which:
- la figure 1 illustre la structure d'un codeur de type G.729.1 décrit précédemment;  FIG. 1 illustrates the structure of a G.729.1 type encoder described above;
- la figure 2 illustre la structure d'un décodeur de type G.729.1 décrit précédemment; - la figure 3 illustre la structure d'un codeur TDAC inclus dans le codeur de type G.729.1 et décrit précédemment: FIG. 2 illustrates the structure of a G.729.1 type decoder described above; FIG. 3 illustrates the structure of a TDAC encoder included in the G.729.1 type encoder and described previously:
- la figure 4 illustre la structure d'un décodeur TDAC inclus dans un décodeur de type G.729.1 et tel que décrit précédemment;  FIG. 4 illustrates the structure of a TDAC decoder included in a G.729.1 decoder and as described above;
- la figure 5 illustre la structure d'un codeur TDAC comportant un codage d'amélioration selon un mode de réalisation de l'invention;  FIG. 5 illustrates the structure of a TDAC coder comprising enhancement coding according to one embodiment of the invention;
- la figure 6 illustre la structure d'un décodeur TDAC comportant un décodage d'amélioration selon un mode de réalisation de l'invention;  FIG. 6 illustrates the structure of a TDAC decoder comprising improvement decoding according to one embodiment of the invention;
- la figure 7 illustre une fonction d'étalement avantageuse pour le masquage au sens de l'invention;  FIG. 7 illustrates an advantageous spreading function for masking within the meaning of the invention;
- la figure 8 illustre une normalisation de la courbe de masquage, dans une forme de réalisation de l'invention;  FIG. 8 illustrates a normalization of the masking curve, in one embodiment of the invention;
- la figure 9 illustre la structure d'un codeur G.729.1 étendu en bande de fréquence dans lequel un codeur TDAC selon un mode de réalisation de l'invention, est inclus;  FIG. 9 illustrates the structure of a frequency band extended G.729.1 encoder in which a TDAC encoder according to one embodiment of the invention is included;
- la figure 10 illustre la structure d'un décodeur G.729.1 étendu en bande de fréquence dans lequel un décodeur TDAC selon un mode de réalisation de l'invention, est inclus;  FIG. 10 illustrates the structure of a G.729.1 extended frequency band decoder in which a TDAC decoder according to one embodiment of the invention is included;
- la figure l ia illustre un exemple de réalisation matérielle d'un terminal incluant un codeur selon un mode de réalisation de l'invention; et  FIG. 11a illustrates an exemplary hardware embodiment of a terminal including an encoder according to an embodiment of the invention; and
- la figure 11b illustre un exemple de réalisation matérielle d'un terminal incluant un décodeur selon un mode de réalisation de l'invention.  FIG. 11b illustrates an example of a hardware embodiment of a terminal including a decoder according to one embodiment of the invention.
Un des objets de l'invention est l'amélioration de la qualité de G.729.1 en bande élargie (50-7000 Hz), notamment pour les signaux musicaux. On rappelle ici que le codage G.729.1 a une bande utile de 50 à 7000 Hz. De plus la qualité de G.729.1 pour certains signaux tels que les signaux musicaux n'est pas transparente à son plus haut débit (32 kbit/s) - cette limitation est due à la structure hiérarchique CELP+TDBWE+TDAC et au débit limité à 32 kbit/s. One of the objects of the invention is the improvement of the quality of G.729.1 in wideband (50-7000 Hz), in particular for musical signals. It will be recalled here that the G.729.1 coding has a useful band of 50 to 7000 Hz. Moreover, the quality of G.729.1 for some signals such as music signals is not transparent at its highest bit rate (32 kbit / s) - this limitation is due to the hierarchical structure CELP + TDBWE + TDAC and the bit rate limited to 32 kbit / s .
Cette invention est motivée par la normalisation en cours à l' UIT-T d'une extension scalable de G.729.1 visant en particulier à étendre la bande codée par This invention is motivated by the ongoing standardization in ITU-T of a scalable extension of G.729.1, in particular to extend the coded band by
G.729.1 à la bande super-élargie (50-14000 Hz). L'expérience montre que l'extension de bande (ex: 7000-14000 Hz) d'un signal à bande limitée (ex: 50-7000 Hz) requiert d'avoir un signal à bande limitée qui soit déjà de bonne qualité; en effet l'extension de bande fait ressortir les défauts existants dans ce signal. Ainsi, il existe un besoin d'amélioration de la qualité de G.729.1 en bande élargie (50-7000 Hz). G.729.1 to the super-enlarged band (50-14000 Hz). Experience shows that the band extension (eg 7000-14000 Hz) of a limited band signal (eg 50-7000 Hz) requires having a limited band signal that is already of good quality; indeed the band extension highlights the existing defects in this signal. Thus, there is a need to improve the quality of G.729.1 in broadband (50-7000 Hz).
L'amélioration de la qualité de G.729.1 peut être réalisée avec une ou plusieurs couches d'amélioration de débit supplémentaire (en plus de 32 kbit/s). En pratique ces couches d'amélioration de débit supplémentaire peuvent servir à la fois à l'extension de bande (7000-14000 Hz) et à l'amélioration de qualité dans la bande élargie (50-7000 Hz). Ainsi une partie du débit supplémentaire des couches d'amélioration peut être consacrée à l'amélioration du signal en bande élargie décodé par un décodeur G.729.1.  The G.729.1 quality improvement can be achieved with one or more additional rate enhancement layers (in addition to 32 kbit / s). In practice these additional flow enhancement layers can serve both the band extension (7000-14000 Hz) and the quality improvement in the enlarged band (50-7000 Hz). Thus, part of the additional bit rate of the enhancement layers can be devoted to improving the broadband signal decoded by a G.729.1 decoder.
A noter qu'on peut distinguer deux cœurs dans le codage hiérarchique considéré dans le présent document: G.729.1 a un codeur cœur CELP en bande étroite, tandis que l'extension en bande super-élargie (50-14000Hz) de G.729.1 a pour cœur G.729.1.  It should be noted that two cores can be distinguished in the hierarchical coding considered in this document: G.729.1 has a narrow-band CELP core coder, while the super-expanded band extension (50-14000Hz) of G.729.1 has for heart G.729.1.
Dans la suite par les termes codage cœur et débit cœur on entend un codage de type G.729.1 et le débit associé de 32 kbit/s.  In the following, the terms core and core rate coding mean a G.729.1 type coding and the associated bit rate of 32 kbit / s.
Dans un mode de réalisation de l'invention, on s'intéresse plus particulièrement à un codeur et un décodeur TDAC tel que décrit précédemment, dans lequel une couche d'amélioration est intégrée. La figure 5 décrit un tel codeur TDAC amélioré. In one embodiment of the invention, it is more particularly a TDAC encoder and decoder as described above, in which an enhancement layer is integrated. Figure 5 describes such an improved TDAC coder.
On considère une extension scalable de G.729.1 en plusieurs couches d'amélioration. Ici le codage cœur est un codage G.729.1, qui utilise un codage TDAC dans la bande [50-7000 Hz] à partir du débit de 14 kbit/s et jusqu'à 32 kbit/s. On suppose qu'entre 32 et 48 kbit/s deux couches d'amélioration de 8 kbit/s sont produites afin d'étendre la bande de 7000 à 14000 Hz et de remplacer les sous-bandes non transmises du codage TDAC de G.729.1. Ces couches d'amélioration de 8 kbit/s permettant d'aller de 32 à 48 kbit/s ne sont pas décrites ici.  A scalable extension of G.729.1 is considered in several enhancement layers. Here the core coding is a G.729.1 coding, which uses TDAC coding in the band [50-7000 Hz] from the bit rate of 14 kbit / s to 32 kbit / s. It is assumed that between 32 and 48 kbit / s two enhancement layers of 8 kbit / s are produced in order to extend the band from 7000 to 14000 Hz and to replace the non-transmitted subbands of the TDAC coding of G.729.1 . These enhancement layers of 8 kbit / s ranging from 32 to 48 kbit / s are not described here.
L'invention porte sur deux couches d'amélioration de 8 kbit/s supplémentaires du codage TDAC dans la bande 50 à 7000 Hz et qui font passer le débit de 48 kbit/s à 56 et 64 kbit/s.  The present invention provides two additional 8 kbit / s enhancement layers of the TDAC coding in the 50 to 7000 Hz band that increase the bit rate from 48 kbit / s to 56 and 64 kbit / s.
Le codeur appliquant la présente invention comporte des couches d'amélioration qui rajoute du débit au débit cœur de G.729.1 (32 kbits). Ces couches d'amélioration servent à la fois à améliorer la qualité dans la bande élargie (50-7000 Hz) et à étendre la bande supérieure de 7000 à 14000 Hz. Dans la suite on ignore l'extension de 7000 à 14000 Hz, car cette fonctionnalité n'influence pas la mise en œuvre de la présente invention. Pour des raisons de simplicité les modules correspondants à l'extension de bande de 7000 à 14000 Hz ne sont pas illustrés sur les figures 5 et 6.  The encoder applying the present invention has enhancement layers that add G.729.1 core bit rate (32 kbit). These enhancement layers serve both to improve the quality in the enlarged band (50-7000 Hz) and to extend the upper band from 7000 to 14000 Hz. In the following we ignore the extension of 7000 to 14000 Hz, because this feature does not influence the implementation of the present invention. For reasons of simplicity, the modules corresponding to the 7000 to 14000 Hz band extension are not illustrated in FIGS. 5 and 6.
On retrouve ici les mêmes blocs (blocs 500 à 507) que ceux utilisés dans la couche de base du G.729.1 (blocs 300 à 307) tel que décrit en référence à la figure 3.  Here we find the same blocks (blocks 500 to 507) as those used in the base layer of G.729.1 (blocks 300 to 307) as described with reference to FIG.
Le codeur TDAC selon un mode de réalisation de l'invention comporte ici une couche d'amélioration (blocs 509 à 513) qui améliore la couche coeur (blocs 504 à 507).  The TDAC encoder according to one embodiment of the invention here comprises an enhancement layer (blocks 509 to 513) which improves the core layer (blocks 504 to 507).
A noter que le bloc 507 correspond ici à la quantification vectorielle sphérique (spherical vector quantizaύon ou SVQ) de G.729.1, qui peut comporter une modification telle que mentionnée précédemment. Ainsi, dans ce bloc 507, on fait appel à un premier codage d'amélioration du codage cœur G.729.1 pour combler le manque de débit pour les sous-bandes non transmises (où nbit(j) = 0). Cette modification utilise le signal original Y(k) et fonctionne selon des critères énergétiques pour l'allocation de bits. Le nombre de bits nbit(j) alloués aux sous- bandes et la sous-bande décodée Yq(k) sont alors modifiés. Note that the block 507 here corresponds to the spherical vector quantization (SVQ) of G.729.1, which may comprise a modification as mentioned above. Thus, in this block 507, a first coding for improving the G.729.1 core coding is used to fill the lack of bit rate for the non-transmitted subbands (where nbit (j) = 0). This modification uses the original signal Y (k) and operates according to energy criteria for bit allocation. The number of bits nbit (j) allocated to the subbands and the decoded subband Yq (k) are then modified.
Le bloc 506 effectue une allocation binaire basée sur des critères énergétiques telle que décrit en référence à la figure 3.  Block 506 performs a binary allocation based on energy criteria as described with reference to FIG.
La couche cœur est donc codée et envoyée au module de multiplexage 508. Le signal cœur est également décodé localement dans le codeur par le bloc The core layer is therefore coded and sent to the multiplexing module 508. The core signal is also decoded locally in the coder by the block.
510 qui effectue une déquantification sphérique et mise à l'échelle ; ce signal cœur est soustrait du signal original en 509, dans le domaine transformé, pour obtenir un signal résiduel err(k). Ce signal résiduel est ensuite codé à partir d'un débit de 48 kbit/s, dans le bloc 513. 510 which performs spherical dequantization and scaling; this heart signal is subtracted from the original signal at 509, in the transformed domain, to obtain a residual signal err (k). This residual signal is then coded from a bit rate of 48 kbit / s in block 513.
Le bloc 511 calcule une courbe de masquage à partir de l'enveloppe spectrale codée rms _ q(j) obtenue par le bloc 505, où y=0,...,17 est le numéro de la sous- bande. Block 511 computes a masking curve from the coded spectral envelope rms _ q (j) obtained by block 505, where y = 0, ..., 17 is the number of the subband.
Le seuil de masquage M(j) de la sous-bande j est défini par la convolution de l'enveloppe d'énergie â2(j) = rms _ q(j)2 xnb _coef(j) , par une fonction d' étalement B(v) . The masking threshold M (j) of the subband j is defined by the convolution of the energy envelope at 2 (j) = rms_q (j) 2 xnb _coef (j), by a function of spreading B (v).
Dans un premier mode de réalisation, ce masquage n'est effectué que sur la bande haute du signal, avec :  In a first embodiment, this masking is performed only on the high band of the signal, with:
M(J) = ]T σ2(/:) x 5(v7 -v, ) M ( J ) =] T σ 2 (/ :) x 5 (v 7 -v,)
/(=10 où vk est la fréquence centrale de la sous-bande k en Bark, / (= 10 where v k is the central frequency of the sub-band k in Bark,
le signe « x » désignant « multiplié par », avec la fonction d'étalement décrite ci-après.  the sign "x" denoting "multiplied by", with the spreading function described below.
En termes plus génériques, le seuil de masquage M(J), pour une sous-bande j, est donc défini par une convolution entre :  In more generic terms, the masking threshold M (J) for a sub-band j is therefore defined by a convolution between:
- une expression de l'enveloppe spectrale, et  an expression of the spectral envelope, and
- une fonction d'étalement faisant intervenir une fréquence centrale de la sous-bande j- a spreading function involving a central frequency of the sub-band
Une fonction d'étalement avantageuse est celle présentée à la figure 7. Il s'agit d'une fonction triangulaire dont la première pente est de +27dB/Bark et - lOdB/Bark pour la deuxième. Cette représentation de la fonction d'étalement permet le calcul itératif de la courbe de masquage suivant : An advantageous spreading function is that shown in FIG. 7. It is a triangular function whose first slope is + 27dB / Bark and -10dB / Bark for the second. This representation of the spreading function allows the iterative calculation of the following masking curve:
M- (IO) 7 = 10  M- (IO) 7 = 10
M {j) = M+ (j) + M~ (j) + σ2 (j) j = l..,l6 M {j) = M + (j) + M ~ (j) + σ 2 (j) j = 1 .., 16
M+ (Il) J = IV M + (II) J = IV
or
MHj) = O-2 (J-I) - A2 (J) + M+ (J-I) - A2 (J) y = 11,..,17 M'U) = à2 (j + l) - Aι (j) + M~ (J + I) - A1 (J) 7 = 10,..,16 et MHj) = 2 O- (JI) - A 2 (J) + M + (JI) - A 2 (J) y = 11, .., 17 M U) = 2 (j + l) - A ι (j) + M ~ (J + I) - A 1 (J) 7 = 10, .., 16 and
-10/ -10 /
Δ2 (./) = 10" Δ 2 (./) = 10 "
A1 (J) = IO Έ 10(">-V>*<) A 1 (J) = IO Έ 10 ("> - V > * < )
Les valeurs de A1(J) et Δ9 (j) peuvent être pré-calculées et stockées. La bande basse étant déjà filtrée perceptuellement par le module 500, l'application du seuil de masquage est dans ce mode de réalisation, limitée à la bande haute. De manière à assurer la continuité spectrale entre le spectre en bande basse et celui en bande haute pondéré par le seuil de masquage et pour éviter de biaiser l'allocation binaire, le seuil de masquage est normalisé par exemple par sa valeur sur la dernière sous-bande de la bande basse. The values of A 1 (J) and Δ 9 (j) can be pre-calculated and stored. Since the low band is already filtered perceptually by the module 500, the application of the masking threshold is in this embodiment, limited to the high band. In order to ensure the spectral continuity between the low and high band spectrum weighted by the masking threshold and to avoid biasing the bit allocation, the masking threshold is normalized for example by its value on the last sub-band. band of the low band.
Une première étape de calcul d'importance perceptuelle est alors effectuée en prenant en compte le rapport signal-à-masque donné par : A first perceptual importance calculation step is then performed taking into account the signal-to-mask ratio given by:
L'importance perceptuelle est donc définie comme suit dans le bloc 511 : 0..9 10..17 The perceptual importance is therefore defined as follows in block 511: 0..9 10..17
où offset = -2 et normfac est un facteur de normalisation calculé suivant la relation : normfac = log2 JT σ2 (j) x B(V9 - Vj ) where offset = -2 and normfac is a normalization factor calculated according to the relation: normfac = log 2 JT σ 2 (j) x B (V 9 - V j )
y =9  y = 9
On note que l'importance perceptuelle ip(j) , j=0,...,9, est identique à celle définie dans la norme G.729.1. Par contre, la définition du terme ip(j) , j=lθ,...,l7, est changée.  We note that the perceptual importance ip (j), j = 0, ..., 9, is identical to that defined in the G.729.1 standard. On the other hand, the definition of the term ip (j), j = lθ, ..., l7, is changed.
L'importance perceptuelle définie ci-dessus s'écrit maintenant :  The perceptual importance defined above is now written:
— mis _ index(j) pour 7 = 0, ...,9 - put _ index (j) for 7 = 0, ..., 9
ip(j) =  ip (j) =
- [rms _ index(j) - log_ mask( j)] pour j = 10, ..., 17 où log_ mask(j) = log2 (M(J)) - normfac . - [rms _ index (j) - log_ mask (j)] for j = 10, ..., 17 where log_ mask (j) = log 2 (M (J)) - normfac.
Une illustration de la normalisation du seuil de masquage est donnée en figure 8, montrant le raccord de la bande haute sur laquelle est appliquée le masquage (4-7 kHz) à la bande basse (0-4 kHz).  An illustration of the standardization of the masking threshold is given in FIG. 8, showing the connection of the high band on which the masking (4-7 kHz) is applied to the low band (0-4 kHz).
Dans une variante de ce mode de réalisation où la normalisation du seuil de masquage s'effectue par rapport à sa valeur sur la dernière sous-bande de la bande basse, la normalisation du seuil de masquage peut être plutôt réalisée à partir de la valeur du seuil de masquage dans la première sous-bande de la bande haute, comme suit : normfac = log2 ∑σ2α)x5(vl0 -vy) In a variant of this embodiment in which the masking threshold is normalized with respect to its value on the last subband of the low band, the standardization of the masking threshold can be rather carried out from the value of the band. masking threshold in the first subband of the high band, as follows: normfac = log 2 Σσ 2 α) x5 (v l0 -v y )
y=10  y = 10
Dans une autre variante encore, le seuil de masquage peut être calculé sur l'ensemble de la bande de fréquences, avec : In another variant, the masking threshold can be calculated over the entire frequency band, with:
Le seuil de masquage est ensuite appliqué uniquement à la bande haute après normalisation du seuil de masquage par sa valeur sur la dernière sous-bande de la bande basse: normfac = log2 ∑σ2(j)x B(V9 -V1 ) The masking threshold is then applied only to the high band after normalization of the masking threshold by its value on the last subband of the low band: normfac = log 2 Σσ 2 (j) x B (V 9 -V 1 )
J=O  J = O
ou encore par sa valeur sur la première sous-bande de la bande haute : normfac = log2 ∑σ2(j)x B(V10 - v;) or else by its value on the first subband of the high band: normfac = log 2 Σσ 2 (j) x B (V 10 - v ; )
j=0  j = 0
Bien entendu, ces relations donnant le facteur de normalisation normfac ou le seuil de masquage M(J) sont généralisables à un nombre de sous-bandes quelconque (différent, au total, de dix-huit) en bande haute (avec un nombre différent de huit), comme en bande basse (avec un nombre différent de dix). Of course, these relations giving the normalization factor normfac or the masking threshold M (J) can be generalized to any number of subbands (different, in total, from eighteen) in high band (with a different number of eight), as in low band (with a different number of ten).
A partir de ce calcul de masquage fréquentiel, une première importance perceptuelle ip(j), est envoyée au bloc 512 d'allocation binaire pour le codage d'amélioration.  From this frequency masking calculation, a first perceptual importance ip (j) is sent to the binary allocation block 512 for improvement coding.
Ce bloc 512 reçoit également les informations d'allocations de bits nbit(j) de la couche cœur du codage TDAC, G.729.1.  This block 512 also receives bit allocation information nbit (j) from the core layer of the TDAC coding, G.729.1.
Le bloc 512 définit ainsi une nouvelle importance perceptuelle qui prend en compte ces deux informations.  Block 512 thus defines a new perceptual importance that takes into account these two pieces of information.
Ainsi, une seconde importance perceptuelle est définie comme suit: ip' (Jl = (PU)- "blt(j2, ., Pourj=l, ..., 18 So, a second perceptual importance is defined as follows: ip '(Jl = ( PU) - " blt (j 2,., Pourj = l, ..., 18
nb_coeff(j) nb_coeff ( j )
où nbit(j) représente le nombre de bits alloués par la couche de base à la bande de fréquence j, et nb_coeff(j) représente le nombre de coefficients de la bande j selon le tableau 1 décrit précédemment. where nbit (j) represents the number of bits allocated by the base layer to the frequency band j, and nb_coeff (j) represents the number of coefficients of the band j according to Table 1 described above.
En d'autres termes, la nouvelle importance perceptuelle est calculée par soustraction à la première importance perceptuelle, d'un rapport entre le nombre de bits alloués pour le codage cœur et le nombre de coefficients possibles dans la sous- bande.  In other words, the new perceptual importance is calculated by subtracting from the first perceptual importance, a ratio between the number of bits allocated for core coding and the number of possible coefficients in the subband.
Avec cette nouvelle importance perceptuelle, le bloc 512 effectue une allocation de bits sur le signal résiduel pour coder la couche d'amélioration.  With this new perceptual importance, the block 512 performs a bit allocation on the residual signal to code the enhancement layer.
Cette allocation de bits est calculée comme suit:  This bit allocation is calculated as follows:
nbit_err(j) = argreR t Àιψl) - r où l'optimisation doit satisfaire la contrainte nbit_err (j) = arg reR t At ιψl ) - r where optimization must satisfy the constraint
17  17
^ nbit _ err( j)≤ nbits _ VQ _ err  ^ nbit _ err (j) ≤ nbits _ VQ _ err
j=0 nbits _VQ_err correspondant au nombre de bits supplémentaire dans la couche d'amélioration (320 bits pour les 2 couches de 8 kbit/s). j = 0 nbits _VQ_err corresponding to the additional number of bits in the enhancement layer (320 bits for the 2 8 kbit / s layers).
Elle prend donc en compte la nouvelle importance perceptuelle calculée. It therefore takes into account the new calculated perceptual importance.
Le signal résiduel err(k) est ensuite codé par le module 513 par quantification vectorielle sphérique, en utilisant le nombre de bits alloués nbit_err(j) tel que calculé précédemment. The residual signal err (k) is then coded by the module 513 by spherical vector quantization, using the number of allocated bits nbit_err (j) as previously calculated.
Ce signal résiduel codé est ensuite multiplexe avec le signal issu du codage cœur et l'enveloppe codée, par le module de multiplexage 508.  This coded residual signal is then multiplexed with the signal resulting from the core coding and the coded envelope by the multiplexing module 508.
Ce codage d'amélioration, étend non seulement le débit alloué mais améliore d'un point de vue perceptuel, le codage du signal. This enhancement coding, not only extends the allocated bit rate but improves from a perceptual point of view, the coding of the signal.
On rappelle que la couche d'amélioration du codage TDAC tel que décrit peut s'appliquer après avoir modifié le codage TDAC de G.729.1. Dans les couches d'amélioration de 32 à 48 kbit/s, une première amélioration (non décrite ici) du codage TDAC de G.729.1 est réalisée. Cette amélioration alloue des bits aux sous- bandes comprises entre 4 et 7 kHz auxquelles aucun débit n'a été alloué par le codage cœur TDAC de G.729.1 même à son plus haut débit de 32 kbit/s. Cette première amélioration du codage TDAC de G.729.1 utilise donc le signal original entre 4 et 7 kHz et ne met pas en œuvre les étapes de calcul d'un seuil de masquage ni de détermination de l'importance perceptuelle du procédé de codage de l'invention. On considère que le bloc 507 correspond à ce codage TDAC modifié intégrant cette amélioration.  It is recalled that the TDAC coding enhancement layer as described can be applied after modifying the TDAC coding of G.729.1. In the 32 to 48 kbit / s enhancement layers, a first enhancement (not described here) of the TDAC coding of G.729.1 is performed. This enhancement allocates bits to subbands between 4 and 7 kHz where no bit rate was allocated by the G.729.1 TDAC core encoding even at its higher 32 kbit / s bit rate. This first improvement of the TDAC coding of G.729.1 therefore uses the original signal between 4 and 7 kHz and does not implement the steps of calculating a masking threshold nor determining the perceptual importance of the coding method of the 'invention. Block 507 is considered to correspond to this modified TDAC coding integrating this improvement.
Ainsi, dans la couche d'amélioration du procédé de codage de l'invention, aux débits allant de 48 kbit/s à 64 kbit/s, la détermination de l'importance perceptuelle Thus, in the enhancement layer of the coding method of the invention, at rates ranging from 48 kbit / s to 64 kbit / s, the determination of the perceptual importance
(blocs 511, 512) prend non seulement en compte les bits alloués pour le codage cœur ou de base mais également les bits alloués pour le codage d'amélioration précédent, en l'occurrence, le codage d'amélioration de débit 40 kbit/s. La figure 5 illustre non seulement le codeur TDAC avec son étage de codage d'amélioration mais sert également à une illustration des étapes du procédé de codage selon un mode de réalisation de l'invention tel que décrit précédemment et notamment des étapes de: (blocks 511, 512) not only takes into account the bits allocated for core or base coding but also the bits allocated for the previous enhancement coding, in this case, the 40 kbit / s rate enhancement coding . FIG. 5 not only illustrates the TDAC coder with its improvement coding stage but also serves to illustrate the steps of the coding method according to one embodiment of the invention as described above and in particular the steps of:
- calcul d'un seuil de masquage fréquentiel pour au moins une partie des bandes de fréquences traitées par le codage d'amélioration; calculating a frequency masking threshold for at least part of the frequency bands processed by the improvement coding;
- détermination d'une importance perceptuelle par sous-bande de fréquence en fonction du seuil de masquage calculé et en fonction du nombre de bits alloués pour le codage cœur;  determination of a perceptual importance by frequency sub-band according to the calculated masking threshold and as a function of the number of bits allocated for the core coding;
- allocation binaire de bits dans les sous-bandes fréquentielles traitées par le codage d'amélioration, en fonction de l'importance perceptuelle déterminée; et binary bit allocation in the frequency subbands processed by the enhancement coding, according to the determined perceptual importance; and
- codage du signal résiduel selon l'allocation de bits.  coding of the residual signal according to the bit allocation.
La figure 6 illustre le décodeur TDAC avec un étage de décodage d'amélioration ainsi que les étapes d'un procédé de décodage selon un mode de réalisation de l'invention.  FIG. 6 illustrates the TDAC decoder with an enhancement decoding stage as well as the steps of a decoding method according to one embodiment of the invention.
Le décodeur comporte les modules (601, 602, 603, 606, 607, 608, 609 et 610) identiques à ceux décrits pour le décodage TDAC du codeur G.729.1 en référence à la figure 4 (401, 402, 403, 406, 407, 408, 409 et 410). A noter que le bloc 606 de postraitement dans le domaine MDCT (visant à mettre en forme le bruit de codage) est ici optionnel car l'invention vient améliorer la qualité du spectre MDCT décodé issu du bloc 603.  The decoder comprises the modules (601, 602, 603, 606, 607, 608, 609 and 610) identical to those described for the TDAC decoding of the G.729.1 coder with reference to FIG. 4 (401, 402, 403, 406, 407, 408, 409 and 410). Note that the block 606 for processing in the MDCT domain (aimed at shaping the coding noise) is here optional because the invention improves the quality of the decoded MDCT spectrum from block 603.
Le module 605 du décodeur correspond au module 511 du codeur et fonctionne de la même façon à partir des valeurs quantifiées de l'enveloppe spectrale.  The module 605 of the decoder corresponds to the encoder module 511 and operates in the same way from the quantized values of the spectral envelope.
A partir de la première importance perceptuelle ip(j) calculée par ce module 605, le module d'allocation 604, détermine une seconde importance perceptuelle en prenant en compte l'allocation de bits reçus du codage cœur, de la même façon que dans le module 512 du codage. From the first perceptual importance ip (j) calculated by this module 605, the allocation module 604 determines a second perceptual importance in taking into account the allocation of bits received from the core coding, in the same way as in the coding module 512.
Cette allocation de bits pour le codage d'amélioration permet au module 611 de décoder le signal reçu du module de démultiplexage 600, par déquantification vectorielle sphérique.  This bit allocation for the enhancement coding allows the module 611 to decode the signal received from the demultiplexing module 600 by spherical vector dequantization.
Le signal décodé issu du module 611 est un signal d'erreur err(k) qui est ensuite combiné en 612, au signal cœur décodé en 603.  The decoded signal from the module 611 is an error signal err (k) which is then combined at 612 with the decoded heart signal at 603.
Ce signal est ensuite traité comme pour le codage G.729.1 décrit en référence à la figure 4, pour donné un signal en différence dLg en bande basse et un signal SHB en bande haute. This signal is then processed as for the G.729.1 coding described with reference to FIG. 4, to give a difference signal d L g in low band and a signal S HB in high band.
On indique aussi que le calcul d'un masquage fréquentiel effectué par le module 511 ou 605 et tel que décrit précédemment, peut être effectué ou non selon le signal à coder (en particulier s'il est tonal ou non).  It is also indicated that the calculation of a frequency masking performed by the module 511 or 605 and as described above, may or may not be carried out according to the signal to be encoded (in particular if it is tonal or not).
Il a pu être observé en effet que le calcul du seuil de masquage est particulièrement avantageux lorsque le signal à coder n'est pas tonal.  It has indeed been observed that the calculation of the masking threshold is particularly advantageous when the signal to be encoded is not tonal.
Si le signal est tonal, l'application de la fonction d'étalement B(v) résulte en un seuil de masquage très proche d'un ton un peu plus étalé en fréquences. Le critère de minimisation du rapport bruit de codage à masque donne alors une allocation des bits qui n'est pas obligatoirement optimale.  If the signal is tonal, the application of the spreading function B (v) results in a masking threshold very close to a tone a little more spread out in frequencies. The criterion of minimization of the masked coding noise ratio then gives a bit allocation that is not necessarily optimal.
On peut donc pour améliorer cette allocation, utiliser une allocation des bits suivant des critères énergétiques pour un signal tonal.  It is therefore possible to improve this allocation, use a bit allocation according to energy criteria for a tonal signal.
Ainsi, dans une variante de réalisation, le calcul du seuil de masquage et la détermination de l'importance perceptuelle en fonction de ce seuil de masquage selon l'invention n'est appliqué que si le signal à coder n'est pas tonal.  Thus, in an alternative embodiment, the calculation of the masking threshold and the determination of the perceptual importance as a function of this masking threshold according to the invention is applied only if the signal to be encoded is not tonal.
En termes génériques, on obtient donc une information (du bloc 505) selon laquelle le signal à coder est tonal ou non tonal, et la pondération perceptuelle de la bande haute, avec la détermination du seuil de masquage et la normalisation, ne sont menées que si le signal est non tonal. In generic terms, we obtain information (from block 505) that the signal to be encoded is tonal or non-tonal, and the perceptual weighting of the high band, with the determination of the masking threshold and normalization, are conducted only if the signal is non-tonal.
Avec un codage cœur de type G.729.1, le bit relatif au mode du codage de l'enveloppe spectrale (bloc 505 ou 601) indique un mode "Huffman différentiel" ou un mode "binaire naturel direct". Ce bit de mode peut être interprété comme une détection de tonalité, car, en général, un signal tonal conduit à un codage d'enveloppe par le mode "binaire naturel direct", tandis que la plupart des signaux non tonaux, ayant une dynamique spectrale plus limitée, conduisent à un codage d'enveloppe par le mode "Huffman différentiel".  With G.729.1 type core coding, the bit relating to the mode of the spectral envelope coding (block 505 or 601) indicates a "differential Huffman" mode or a "natural direct binary" mode. This mode bit can be interpreted as a tone detection, since, in general, a tonal signal leads to envelope coding by the "natural direct binary" mode, while most non-tonal signals, having a spectral dynamic more limited, lead to envelope coding by the "Differential Huffman" mode.
Ainsi, il peut être tiré un avantage de la « détection de tonalité du signal » pour mettre en œuvre le masquage fréquentiel ou non. Plus particulièrement, ce calcul de seuil de masquage est appliquée dans le cas où l'enveloppe spectrale a été codée en mode "Huffman différentiel" et la première importance perceptuelle est définie alors au sens de l'invention, comme suit :  Thus, it can be taken advantage of the "signal tone detection" to implement frequency masking or not. More particularly, this masking threshold calculation is applied in the case where the spectral envelope has been coded in "differential Huffman" mode and the first perceptual importance is defined in the sense of the invention, as follows:
Par contre, si l'enveloppe a été codée en mode "binaire naturel direct", la première importance perceptuelle reste telle que définie dans la norme G.729.1 : On the other hand, if the envelope has been coded in "natural direct binary" mode, the first perceptual importance remains as defined in the G.729.1 standard:
0,...,l6 0, ..., l6
17 17
On décrit maintenant une application possible de l'invention à une extension de l'encodeur G.729.1, en particulier en bande super-élargie. A possible application of the invention to an extension of the G.729.1 encoder, in particular in super-wideband, is now described.
En référence à la figure 9, un tel codeur est illustré. L'extension en bande super-élargie du codeur G.729.1 tel que représenté consiste en une extension des fréquences codées par le module 915, la bande de fréquence utilisée passant de With reference to FIG. 9, such an encoder is illustrated. The super-wideband extension of the G.729.1 encoder as shown consists of an extension of the frequencies coded by the module 915, the frequency band used from
[50Hz-7KHz] à [50Hz-14kHz] et en une amélioration de la couche de base du[50Hz-7KHz] to [50Hz-14kHz] and an improvement of the base layer of the
G.729.1 par le module de codage TDAC (bloc 910) et tel que décrit en référence à la figure 5. G.729.1 by the TDAC coding module (block 910) and as described with reference to FIG. 5.
Ainsi, le codeur tel que représenté en figure 9, comporte les mêmes modules que le codage cœur G.729.1 représenté en figure 1 et un module supplémentaire d'extension de bande 915 qui fournit un signal d'extension au module de multiplexage 912.  Thus, the encoder as represented in FIG. 9 comprises the same modules as the core G.729.1 coding shown in FIG. 1 and an additional band extension module 915 which provides an extension signal to the multiplexing module 912.
Cette extension de bande de fréquence est calculée sur le signal original pleine bande SSWB alors que le signal d'entrée du codeur cœur est obtenu par décimation (bloc 913) et filtrage passe-bas (bloc 914). A la sortie de ces blocs, le signal d'entrée en bande élargie SWB est obtenu. This frequency band extension is calculated on the original full-band signal S SWB while the input signal of the core encoder is obtained by decimation (block 913) and low-pass filtering (block 914). At the output of these blocks, the broadband input signal S WB is obtained.
Le module 910 de codage TDAC est différent de celui illustré en figure 1. Ce module est par exemple celui décrit en référence à la figure 5 et fournit au module de multiplexage, à la fois le signal cœur codé et le signal d'amélioration codé selon l'invention.  The TDAC coding module 910 is different from that illustrated in FIG. 1. This module is for example that described with reference to FIG. 5 and provides the multiplexing module with both the coded core signal and the coded improvement signal. the invention.
De la même façon, un décodeur G.729.1 étendu en bande super-élargie est décrit en référence à la figure 10. Il comporte les mêmes modules que le décodeur In the same way, a G.729.1 decoder extended in super-wideband is described with reference to FIG. 10. It comprises the same modules as the decoder
G.729.1 décrit en référence à la figure 2. G.729.1 described with reference to FIG.
II comporte cependant un module supplémentaire d'extension de bande 1014 qui reçoit du module de démultiplexage 1000, le signal d'extension de bande. Il comporte également le banc de filtres de synthèse (blocs 1015, 1016) permettant d'obtenir le signal de sortie en bande super-élargie Sswh . However, it comprises an additional band extension module 1014 which receives from the demultiplexing module 1000, the band extension signal. It also comprises the synthesis filter bank (blocks 1015, 1016) making it possible to obtain the super-wideband output signal S swh .
Le module 1003 de décodage TDAC est également différent du module de décodage TDAC illustré en référence à la figure 2. Ce module est par exemple celui décrit et illustré en référence à la figure 6. Il reçoit donc du module de démultiplexage, à la fois le signal cœur et le signal d'amélioration.  The TDAC decoding module 1003 is also different from the TDAC decoding module illustrated with reference to FIG. 2. This module is for example that described and illustrated with reference to FIG. 6. It therefore receives from the demultiplexing module, both the heart signal and the signal of improvement.
Dans le mode de réalisation privilégié présenté précédemment, l'invention est utilisée pour améliorer la qualité du codage TDAC dans le codée G.729.1. Naturellement l'invention s'applique à d'autres types de codage par transformée avec une allocation binaire et à l'extension scalable d'autres codées cœur que G.729.1.  In the preferred embodiment presented above, the invention is used to improve the quality of TDAC coding in the G.729.1 codec. Naturally, the invention applies to other types of transform coding with a binary allocation and to the scalable extension of other core codes than G.729.1.
Un exemple de réalisation matérielle du codeur et du décodeur tel que décrit en référence aux figures 5 et 6 est maintenant décrit en référence aux figures 11 a et 11b.  An exemplary hardware embodiment of the encoder and the decoder as described with reference to FIGS. 5 and 6 is now described with reference to FIGS. 11a and 11b.
Ainsi, la figure lia illustre un codeur ou terminal comprenant un codeur tel que décrit en figure 5. Il comporte un processeur PROC coopérant avec un bloc mémoire BM comportant une mémoire de stockage et/ou de travail MEM.  Thus, FIG. 11a illustrates an encoder or terminal comprising an encoder as described in FIG. 5. It comprises a processor PROC cooperating with a memory block BM comprising a storage and / or working memory MEM.
Ce terminal comporte un module d'entrée apte à recevoir un signal en bande basse dLB et un signal SHB en bande haute ou tout type de signaux numériques à coder. Ces signaux peuvent provenir d'un autre étage de codage ou d'un réseau de communication, d'une mémoire de stockage de contenu numérique. This terminal comprises an input module able to receive a low band signal d LB and a high band signal S HB or any type of digital signal to be coded. These signals may come from another coding stage or a communication network, a digital content storage memory.
Le bloc mémoire BM peut avantageusement comporter un programme informatique comportant des instructions de code pour la mise en œuvre des étapes du procédé de codage au sens de l'invention, lorsque ces instructions sont exécutées par le processeur PROC, et notamment les étapes de:  The memory block BM may advantageously comprise a computer program comprising code instructions for implementing the steps of the coding method in the sense of the invention, when these instructions are executed by the processor PROC, and in particular the steps of:
- calcul d'un seuil de masquage fréquentiel pour au moins une partie des sous- bandes de fréquences traitées par le codage d'amélioration; - détermination d'une importance perceptuelle par sous-bande de fréquence en fonction du seuil de masquage calculé et en fonction du nombre de bits alloués pour le codage cœur; calculating a frequency masking threshold for at least a portion of the frequency sub-bands processed by the improvement coding; determination of a perceptual importance by frequency sub-band according to the calculated masking threshold and as a function of the number of bits allocated for the core coding;
- allocation de bits dans les sous-bandes fréquentielles traitées par le codage d'amélioration, en fonction de l'importance perceptuelle déterminée; et  bit allocation in the frequency sub-bands processed by the improvement coding, according to the determined perceptual importance; and
- codage du signal résiduel selon l'allocation de bits.  coding of the residual signal according to the bit allocation.
Typiquement, la description de la figure 5 reprend les étapes d'un algorithme d'un tel programme informatique. Le programme informatique peut également être stocké sur un support mémoire lisible par un lecteur du terminal ou codeur ou téléchargeable dans l'espace mémoire de celui-ci.  Typically, the description of FIG. 5 repeats the steps of an algorithm of such a computer program. The computer program can also be stored on a memory medium readable by a reader of the terminal or encoder or downloadable in the memory space thereof.
Le terminal comporte un module de sortie apte à transmettre un flux multiplexe issu du codage des signaux d'entrée.  The terminal comprises an output module capable of transmitting a multiplexed stream derived from the coding of the input signals.
De la même façon, la figure 11b illustre un exemple de décodeur ou de terminal comportant un décodeur tel que décrit en référence à la figure 6.  In the same way, FIG. 11b illustrates an example of a decoder or terminal including a decoder as described with reference to FIG.
Ce terminal comporte un processeur PROC coopérant avec un bloc mémoire This terminal comprises a PROC processor cooperating with a memory block
BM comportant une mémoire de stockage et/ou de travail MEM. BM having a memory storage and / or working MEM.
Le terminal comporte un module d'entrée apte à recevoir un flux multiplexe provenant par exemple d'un réseau de communication, d'un module de stockage.  The terminal comprises an input module adapted to receive a multiplexed stream coming for example from a communication network, a storage module.
Le bloc mémoire peut avantageusement comporter un programme informatique comportant des instructions de code pour la mise en œuvre des étapes du procédé de décodage au sens de l'invention, lorsque ces instructions sont exécutées par le processeur PROC, et notamment les étapes de:  The memory block may advantageously comprise a computer program comprising code instructions for implementing the steps of the decoding method in the sense of the invention, when these instructions are executed by the processor PROC, and in particular the steps of:
- calcul d'un seuil de masquage fréquentiel pour au moins une partie des sous-bandes de fréquences traitées par le décodage d'amélioration; - détermination d'une importance perceptuelle par sous-bande de fréquence en fonction du seuil de masquage calculé et en fonction du nombre de bits alloués pour le décodage cœur; calculating a frequency masking threshold for at least a portion of the frequency subbands processed by the enhancement decoding; determination of a perceptual importance by frequency sub-band according to the calculated masking threshold and as a function of the number of bits allocated for the core decoding;
- allocation de bits dans les sous-bandes fréquentielles traitées par le décodage d'amélioration, en fonction de l'importance perceptuelle déterminée; et bit allocation in the frequency sub-bands processed by the enhancement decoding, according to the determined perceptual importance; and
-décodage du signal résiduel selon l'allocation de bits. decoding the residual signal according to the bit allocation.
Typiquement, la description de la figure 6 reprend les étapes d'un algorithme d'un tel programme informatique. Le programme informatique peut également être stocké sur un support mémoire lisible par un lecteur du terminal ou téléchargeable dans l'espace mémoire de celui-ci.  Typically, the description of FIG. 6 shows the steps of an algorithm of such a computer program. The computer program can also be stored on a memory medium readable by a reader of the terminal or downloadable in the memory space thereof.
Le terminal comporte un module de sortie apte à transmettre des signaux décodés {dtB, SHB) pour un autre étage de codage ou pour une restitution de contenu. The terminal comprises an output module able to transmit decoded signals {dtB, S HB ) for another coding stage or for a content reproduction.
Bien évidemment, un tel terminal peut comporter à la fois le codeur et le décodeur selon l'invention.  Of course, such a terminal may comprise both the encoder and the decoder according to the invention.

Claims

REVENDICATIONS
1. Procédé de codage hiérarchique d'un signal audiofréquence numérique d'entrée en plusieurs sous-bandes fréquentielles comportant un codage cœur du signal d'entrée selon un premier débit et au moins un codage d'amélioration de débit supérieur d'un signal résiduel, le codage cœur utilisant une allocation binaire (506) selon un critère énergétique, caractérisé en ce qu'il comporte les étapes suivantes pour le codage d'amélioration: 1. A method of hierarchical coding of an input digital audio frequency signal in several frequency sub-bands comprising a core encoding of the input signal according to a first bit rate and at least one higher bit rate improvement coding of a residual signal. , the core coding using a binary allocation (506) according to an energy criterion, characterized in that it comprises the following steps for the improvement coding:
- calcul d'un seuil de masquage fréquentiel (511) pour au moins une partie des bandes de fréquences traitées par le codage d'amélioration;  calculating a frequency masking threshold (511) for at least a portion of the frequency bands processed by the improvement coding;
- détermination (511,512) d'une importance perceptuelle par sous-bande de fréquence en fonction du seuil de masquage calculé et en fonction du nombre de bits alloués pour le codage cœur;  determination (511, 512) of a perceptual importance per frequency sub-band as a function of the calculated masking threshold and as a function of the number of bits allocated for the core coding;
- allocation binaire (512) de bits dans les sous-bandes fréquentielles traitées par le codage d'amélioration, en fonction de l'importance perceptuelle déterminée; et bit allocation (512) of bits in the frequency sub-bands processed by the enhancement coding, according to the determined perceptual importance; and
-codage du signal résiduel (513) selon l'allocation de bits. -coding the residual signal (513) according to the bit allocation.
2. Procédé selon la revendication 1, caractérisé en ce que l'étape de détermination d'une importance perceptuelle comporte: 2. Method according to claim 1, characterized in that the step of determining a perceptual importance comprises:
- une première étape (511) de définition d'une première importance perceptuelle pour au moins une sous bande de fréquence du codage d'amélioration, en fonction du seuil de masquage fréquentiel dans la sous-bande, de valeurs quantifiés du codage de l'enveloppe spectrale pour la sous bande de fréquence et d'un facteur de normalisation déterminé; -une deuxième étape (512) de soustraction à la première importance perceptuelle d'un rapport entre le nombre de bits alloués pour le codage cœur et le nombre de coefficients dans ladite sous-bande. a first step (511) for defining a first perceptual importance for at least one frequency sub-band of the improvement coding, as a function of the frequency masking threshold in the sub-band, of quantified values of the coding of the spectral envelope for the frequency subband and a determined normalization factor; a second step (512) of subtracting from the first perceptual importance a ratio between the number of bits allocated for the core coding and the number of coefficients in said sub-band.
3. Procédé selon la revendication 1, caractérisé en ce que l'importance perceptuelle est déterminée en outre en fonction de bits alloués pour un codage d'amélioration du codage cœur, précédent, ayant une allocation binaire selon un critère énergétique. 3. Method according to claim 1, characterized in that the perceptual importance is further determined as a function of bits allocated for coding for improving the previous core coding, having a binary allocation according to an energy criterion.
4. Procédé selon la revendication 1, caractérisé en ce que le seuil de masquage est déterminé pour une sous-bande, par une convolution entre: 4. Method according to claim 1, characterized in that the masking threshold is determined for a subband, by a convolution between:
- une expression d'une enveloppe spectrale calculée, et  an expression of a calculated spectral envelope, and
- une fonction d'étalement faisant intervenir une fréquence centrale de ladite sous-bande.  a spreading function involving a central frequency of said subband.
5. Procédé selon la revendication 1, caractérisé en ce qu'il comporte en outre une étape d'obtention d'une information selon laquelle le signal à coder est tonal ou non tonal et que les étapes de calcul du seuil de masquage et de détermination d'une importance perceptuelle en fonction de ce seuil de masquage, ne sont menées que si le signal est non tonal. 5. Method according to claim 1, characterized in that it further comprises a step of obtaining an information according to which the signal to be encoded is tonal or non-tonal and that the steps of calculating the threshold of masking and determination. of perceptual importance according to this masking threshold, are conducted only if the signal is non-tonal.
6. Procédé selon la revendication 1, caractérisé en ce que le codage d'amélioration est un codage d'amélioration de type TDAC dans un codeur étendu dont le codage cœur est de type codeur normalisé G.729.1. 6. Method according to claim 1, characterized in that the improvement coding is a TDAC type enhancement coding in an extended coder whose core coding is of standard G.729.1 coder type.
7. Procédé de décodage hiérarchique d'un signal audiofréquence numérique en plusieurs sous-bandes fréquentielles comportant un décodage cœur d'un signal reçu selon un premier débit et au moins un décodage d'amélioration de débit supérieur, d'un signal résiduel, le décodage cœur utilisant une allocation binaire selon un critère énergétique, caractérisé en ce qu'il comporte les étapes suivantes pour le décodage d'amélioration: A method of hierarchical decoding of a digital audio frequency signal into a plurality of frequency sub-bands comprising a core decoding of a received signal at a first rate and at least one higher rate improvement decoding of a residual signal, the heart decoding using a binary allocation according to an energy criterion, characterized in that it comprises the following steps for the improvement decoding:
- calcul d'un seuil de masquage fréquentiel (605) pour au moins une partie des sous-bandes de fréquences traitées par le décodage d'amélioration;  calculating a frequency masking threshold (605) for at least a portion of the frequency sub-bands processed by the enhancement decoding;
- détermination (604) d'une importance perceptuelle par sous-bande de fréquence en fonction du seuil de masquage calculé et en fonction du nombre de bits alloués pour le décodage cœur;  determining (604) a perceptual importance per frequency subband as a function of the calculated masking threshold and as a function of the number of bits allocated for the core decoding;
- allocation de bits (604, 605) dans les sous-bandes fréquentielles traitées par le décodage d'amélioration, en fonction de l'importance perceptuelle déterminée; et  - bit allocation (604, 605) in the frequency sub-bands processed by the enhancement decoding, according to the determined perceptual importance; and
-décodage (611) du signal résiduel selon l'allocation de bits.  -decoding (611) the residual signal according to the bit allocation.
8. Procédé de décodage selon la revendication 7, caractérisé en ce que l'étape de détermination d'une importance perceptuelle comporte: 8. Decoding method according to claim 7, characterized in that the step of determining a perceptual importance comprises:
- une première étape (605) de définition d'une première importance perceptuelle pour au moins une sous- bande de fréquence du décodage d'amélioration, en fonction du seuil de masquage fréquentiel dans la sous-bande, de valeurs quantifiés du décodage de l'enveloppe spectrale pour la sous-bande de fréquence et d'un facteur de normalisation déterminé;  a first step (605) of defining a first perceptual importance for at least one frequency sub-band of the improvement decoding, as a function of the frequency masking threshold in the sub-band, of quantized values of the decoding of the spectral envelope for the frequency subband and a determined normalization factor;
-une deuxième étape (604) de soustraction à la première importance perceptuelle d'un rapport entre le nombre de bits alloués pour le décodage cœur et le nombre de coefficients possibles dans ladite sous-bande. a second step (604) of subtracting from the first perceptual importance a ratio between the number of bits allocated for the core decoding and the number of possible coefficients in said sub-band.
9. Codeur hiérarchique d'un signal audiofréquence numérique d'entrée en plusieurs sous-bandes fréquentielles comportant un codeur cœur du signal d'entrée selon un premier débit et au moins un codeur d'amélioration de débit supérieur d'un signal résiduel, le codeur cœur utilisant une allocation binaire (506) selon un critère énergétique, caractérisé en ce que le codeur d'amélioration comporte: 9. Hierarchical coder of a digital audio frequency input signal in a plurality of frequency sub-bands comprising an input signal core encoder at a first rate and at least one higher rate improvement encoder of a residual signal, the heart encoder using a binary allocation (506) according to an energy criterion, characterized in that the enhancement coder comprises:
- un module (511) de calcul d'un seuil de masquage fréquentiel pour au moins une partie des bandes de fréquences traitées par le codeur d'amélioration;  a module (511) for calculating a frequency masking threshold for at least part of the frequency bands processed by the improvement coder;
- un module de détermination (512) d'une importance perceptuelle par sous bande de fréquence en fonction du seuil de masquage calculé et en fonction du nombre de bits alloués pour le codeur cœur;  a determination module (512) of perceptual importance by sub-frequency band according to the calculated masking threshold and as a function of the number of bits allocated for the core coder;
- un module d'allocation binaire (512) de bits dans les sous-bandes fréquentielles traitées par le codeur d'amélioration, en fonction de l'importance perceptuelle déterminée; et  a bit allocation module (512) of bits in the frequency sub-bands processed by the enhancement coder, according to the determined perceptual importance; and
-un module de codage du signal résiduel (513) selon l'allocation de bits.  a module for coding the residual signal (513) according to the bit allocation.
10. Décodeur hiérarchique d'un signal audiofréquence numérique en plusieurs sous-bandes fréquentielles comportant un décodeur cœur d'un signal reçu selon un premier débit et au moins un décodeur d'amélioration de débit supérieur, d'un signal résiduel, le décodeur cœur utilisant une allocation binaire selon un critère énergétique, caractérisé en ce qu'il comporte le décodeur d'amélioration comporte: 10. Hierarchical decoder of a digital audio signal in several frequency subbands comprising a heart decoder of a signal received at a first rate and at least one higher rate of improvement decoder, a residual signal, the heart decoder. using a binary allocation according to an energy criterion, characterized in that it comprises the improvement decoder comprises:
- un module de calcul d'un seuil de masquage fréquentiel (605) pour au moins une partie des sous-bandes de fréquences traitées par le décodeur d'amélioration; - un module de détermination (604) d'une importance perceptuelle par sous- bande de fréquence en fonction du seuil de masquage calculé et en fonction du nombre de bits alloués pour le décodeur cœur; a module for calculating a frequency masking threshold (605) for at least a portion of the frequency sub-bands processed by the enhancement decoder; a determination module (604) of perceptual importance per frequency subband as a function of the calculated masking threshold and as a function of the number of bits allocated for the heart decoder;
- un module d'allocation de bits (604) dans les sous-bandes fréquentielles traitées par le décodeur d'amélioration, en fonction de l'importance perceptuelle déterminée; et  a bit allocation module (604) in the frequency sub-bands processed by the enhancement decoder, according to the determined perceptual importance; and
-un module de décodage (611) du signal résiduel selon l'allocation de bits.  a decoding module (611) of the residual signal according to the bit allocation.
11. Programme informatique comportant des instructions de code pour la mise en œuvre des étapes d'un procédé de codage selon l'une des revendications 1 à11. Computer program comprising code instructions for implementing the steps of a coding method according to one of claims 1 to
6, lorsqu'elles sont exécutées par un processeur. 6, when executed by a processor.
12. Programme informatique comportant des instructions de code pour la mise en œuvre des étapes d'un procédé de décodage selon l'une des revendications 7 à 8, lorsqu'elles sont exécutées par un processeur. Computer program comprising code instructions for implementing the steps of a decoding method according to one of claims 7 to 8, when executed by a processor.
EP10745327.6A 2009-07-07 2010-06-25 Improved coding /decoding of digital audio signals Active EP2452336B1 (en)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
FR0954682A FR2947944A1 (en) 2009-07-07 2009-07-07 PERFECTED CODING / DECODING OF AUDIONUMERIC SIGNALS
PCT/FR2010/051307 WO2011004097A1 (en) 2009-07-07 2010-06-25 Improved coding /decoding of digital audio signals

Publications (2)

Publication Number Publication Date
EP2452336A1 true EP2452336A1 (en) 2012-05-16
EP2452336B1 EP2452336B1 (en) 2013-11-27

Family

ID=41531514

Family Applications (1)

Application Number Title Priority Date Filing Date
EP10745327.6A Active EP2452336B1 (en) 2009-07-07 2010-06-25 Improved coding /decoding of digital audio signals

Country Status (7)

Country Link
US (1) US8812327B2 (en)
EP (1) EP2452336B1 (en)
KR (1) KR101698371B1 (en)
CN (1) CN102576536B (en)
CA (1) CA2766864C (en)
FR (1) FR2947944A1 (en)
WO (1) WO2011004097A1 (en)

Families Citing this family (11)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2011086924A1 (en) * 2010-01-14 2011-07-21 パナソニック株式会社 Audio encoding apparatus and audio encoding method
FR3003682A1 (en) * 2013-03-25 2014-09-26 France Telecom OPTIMIZED PARTIAL MIXING OF AUDIO STREAM CODES ACCORDING TO SUBBAND CODING
FR3003683A1 (en) * 2013-03-25 2014-09-26 France Telecom OPTIMIZED MIXING OF AUDIO STREAM CODES ACCORDING TO SUBBAND CODING
CN108198564B (en) * 2013-07-01 2021-02-26 华为技术有限公司 Signal encoding and decoding method and apparatus
CN112967727A (en) * 2014-12-09 2021-06-15 杜比国际公司 MDCT domain error concealment
JP6611042B2 (en) * 2015-12-02 2019-11-27 パナソニックIpマネジメント株式会社 Audio signal decoding apparatus and audio signal decoding method
JP7285830B2 (en) * 2017-09-20 2023-06-02 ヴォイスエイジ・コーポレーション Method and device for allocating bit allocation between subframes in CELP codec
CN110556117B (en) * 2018-05-31 2022-04-22 华为技术有限公司 Coding method and device for stereo signal
EP3751567B1 (en) * 2019-06-10 2022-01-26 Axis AB A method, a computer program, an encoder and a monitoring device
CN111246469B (en) * 2020-03-05 2020-10-16 北京花兰德科技咨询服务有限公司 Artificial intelligence secret communication system and communication method
CN111294367B (en) * 2020-05-14 2020-09-01 腾讯科技(深圳)有限公司 Audio signal post-processing method and device, storage medium and electronic equipment

Family Cites Families (22)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5495552A (en) * 1992-04-20 1996-02-27 Mitsubishi Denki Kabushiki Kaisha Methods of efficiently recording an audio signal in semiconductor memory
JPH07160297A (en) * 1993-12-10 1995-06-23 Nec Corp Voice parameter encoding system
DE19743662A1 (en) * 1997-10-02 1999-04-08 Bosch Gmbh Robert Bit rate scalable audio data stream generation method
FI109393B (en) * 2000-07-14 2002-07-15 Nokia Corp Method for encoding media stream, a scalable and a terminal
WO2003077235A1 (en) * 2002-03-12 2003-09-18 Nokia Corporation Efficient improvements in scalable audio coding
DE10236694A1 (en) * 2002-08-09 2004-02-26 Fraunhofer-Gesellschaft zur Förderung der angewandten Forschung e.V. Equipment for scalable coding and decoding of spectral values of signal containing audio and/or video information by splitting signal binary spectral values into two partial scaling layers
FR2849727B1 (en) * 2003-01-08 2005-03-18 France Telecom METHOD FOR AUDIO CODING AND DECODING AT VARIABLE FLOW
EP1496500B1 (en) * 2003-07-09 2007-02-28 Samsung Electronics Co., Ltd. Bitrate scalable speech coding and decoding apparatus and method
KR100561869B1 (en) * 2004-03-10 2006-03-17 삼성전자주식회사 Lossless audio decoding/encoding method and apparatus
US7392195B2 (en) * 2004-03-25 2008-06-24 Dts, Inc. Lossless multi-channel audio codec
FR2888699A1 (en) * 2005-07-13 2007-01-19 France Telecom HIERACHIC ENCODING / DECODING DEVICE
CN101263554B (en) * 2005-07-22 2011-12-28 法国电信公司 Method for switching rate-and bandwidth-scalable audio decoding rate
KR100827458B1 (en) * 2006-07-21 2008-05-06 엘지전자 주식회사 Method for audio signal coding
FR2912249A1 (en) * 2007-02-02 2008-08-08 France Telecom Time domain aliasing cancellation type transform coding method for e.g. audio signal of speech, involves determining frequency masking threshold to apply to sub band, and normalizing threshold to permit spectral continuity between sub bands
US8032359B2 (en) * 2007-02-14 2011-10-04 Mindspeed Technologies, Inc. Embedded silence and background noise compression
JP4708446B2 (en) * 2007-03-02 2011-06-22 パナソニック株式会社 Encoding device, decoding device and methods thereof
JP4871894B2 (en) * 2007-03-02 2012-02-08 パナソニック株式会社 Encoding device, decoding device, encoding method, and decoding method
WO2008114075A1 (en) * 2007-03-16 2008-09-25 Nokia Corporation An encoder
US8209190B2 (en) * 2007-10-25 2012-06-26 Motorola Mobility, Inc. Method and apparatus for generating an enhancement layer within an audio coding system
EP2287836B1 (en) * 2008-05-30 2014-10-15 Panasonic Intellectual Property Corporation of America Encoder and encoding method
US8219408B2 (en) * 2008-12-29 2012-07-10 Motorola Mobility, Inc. Audio signal decoder and method for producing a scaled reconstructed audio signal
US8200496B2 (en) * 2008-12-29 2012-06-12 Motorola Mobility, Inc. Audio signal decoder and method for producing a scaled reconstructed audio signal

Non-Patent Citations (1)

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

Also Published As

Publication number Publication date
EP2452336B1 (en) 2013-11-27
WO2011004097A1 (en) 2011-01-13
US8812327B2 (en) 2014-08-19
CA2766864C (en) 2015-10-27
CN102576536A (en) 2012-07-11
CN102576536B (en) 2013-09-04
KR20120032025A (en) 2012-04-04
CA2766864A1 (en) 2011-01-13
FR2947944A1 (en) 2011-01-14
US20120185255A1 (en) 2012-07-19
KR101698371B1 (en) 2017-01-26

Similar Documents

Publication Publication Date Title
EP2115741B1 (en) Advanced encoding / decoding of audio digital signals
EP2452336B1 (en) Improved coding /decoding of digital audio signals
EP2452337B1 (en) Allocation of bits in an enhancement coding/decoding for improving a hierarchical coding/decoding of digital audio signals
EP1989706B1 (en) Device for perceptual weighting in audio encoding/decoding
EP1905010B1 (en) Hierarchical audio encoding/decoding
EP1907812B1 (en) Method for switching rate- and bandwidth-scalable audio decoding rate
CA2512179C (en) Method for encoding and decoding audio at a variable rate
EP2366177B1 (en) Encoding of an audio-digital signal with noise transformation in a scalable encoder
EP2251861B1 (en) Encoding device and method thereof
EP2239731B1 (en) Encoding device, decoding device, and method thereof
EP1692689B1 (en) Optimized multiple coding method
WO2007107670A2 (en) Method for post-processing a signal in an audio decoder
FR2737360A1 (en) Audio digital signal coding method of successive sample blocks - using spectral analysis to select vector dictionary for each sample block and allocating vector and scalar quantisation bits

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

AK Designated contracting states

Kind code of ref document: A1

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

RIN1 Information on inventor provided before grant (corrected)

Inventor name: KOVESI, BALAZS

Inventor name: RAGOT, STEPHANE

Inventor name: BERTHET, PIERRE

Inventor name: VIRETTE, DAVID

RIN1 Information on inventor provided before grant (corrected)

Inventor name: BERTHET, PIERRE

Inventor name: RAGOT, STEPHANE

Inventor name: KOVESI, BALAZS

Inventor name: VIRETTE, DAVID

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

Free format text: ORIGINAL CODE: EPIDOSNIGR1

GRAS Grant fee paid

Free format text: ORIGINAL CODE: EPIDOSNIGR3

REG Reference to a national code

Ref country code: DE

Ref legal event code: R079

Ref document number: 602010012084

Country of ref document: DE

Free format text: PREVIOUS MAIN CLASS: G10L0019020000

Ipc: G10L0019240000

RIC1 Information provided on ipc code assigned before grant

Ipc: G10L 19/24 20130101AFI20130515BHEP

Ipc: G10L 19/002 20130101ALI20130515BHEP

Ipc: G10L 19/02 20130101ALN20130515BHEP

GRAP Despatch of communication of intention to grant a patent

Free format text: ORIGINAL CODE: EPIDOSNIGR1

INTG Intention to grant announced

Effective date: 20130624

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

Owner name: ORANGE

GRAA (expected) grant

Free format text: ORIGINAL CODE: 0009210

AK Designated contracting states

Kind code of ref document: B1

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

Country of ref document: AT

Kind code of ref document: T

Effective date: 20131215

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

Country of ref document: DE

Effective date: 20140123

REG Reference to a national code

Ref country code: NL

Ref legal event code: VDEP

Effective date: 20131127

REG Reference to a national code

Ref country code: AT

Ref legal event code: MK05

Ref document number: 642997

Country of ref document: AT

Kind code of ref document: T

Effective date: 20131127

REG Reference to a national code

Ref country code: LT

Ref legal event code: MG4D

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

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

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

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

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

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

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

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

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

Ref country code: CY

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

Effective date: 20131127

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

Ref country code: ES

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

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

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

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

REG Reference to a national code

Ref country code: DE

Ref legal event code: R097

Ref document number: 602010012084

Country of ref document: DE

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

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

Ref country code: RO

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

Effective date: 20131127

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

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

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

Ref country code: DK

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

Effective date: 20131127

PLBE No opposition filed within time limit

Free format text: ORIGINAL CODE: 0009261

STAA Information on the status of an ep patent application or granted ep patent

Free format text: STATUS: NO OPPOSITION FILED WITHIN TIME LIMIT

26N No opposition filed

Effective date: 20140828

REG Reference to a national code

Ref country code: DE

Ref legal event code: R097

Ref document number: 602010012084

Country of ref document: DE

Effective date: 20140828

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

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

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

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

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

Effective date: 20140625

Ref country code: LI

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

Effective date: 20140630

Ref country code: IT

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

Ref country code: CH

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

Effective date: 20140630

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

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

Ref country code: SM

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

Effective date: 20131127

REG Reference to a national code

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

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

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

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

Ref country code: BE

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

REG Reference to a national code

Ref country code: FR

Ref legal event code: PLFP

Year of fee payment: 8

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

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

Ref country code: AL

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

Effective date: 20131127

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

Ref country code: FR

Payment date: 20230523

Year of fee payment: 14

Ref country code: DE

Payment date: 20230523

Year of fee payment: 14

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

Ref country code: GB

Payment date: 20230524

Year of fee payment: 14