WO2007096551A2 - Procede de codage binaire d'indices de quantification d'une enveloppe d'un signal, procede de decodage d'une enveloppe d'un signal et modules de codage et decodage correspondants - Google Patents

Procede de codage binaire d'indices de quantification d'une enveloppe d'un signal, procede de decodage d'une enveloppe d'un signal et modules de codage et decodage correspondants Download PDF

Info

Publication number
WO2007096551A2
WO2007096551A2 PCT/FR2007/050781 FR2007050781W WO2007096551A2 WO 2007096551 A2 WO2007096551 A2 WO 2007096551A2 FR 2007050781 W FR2007050781 W FR 2007050781W WO 2007096551 A2 WO2007096551 A2 WO 2007096551A2
Authority
WO
WIPO (PCT)
Prior art keywords
coding
mode
module
envelope
decoding
Prior art date
Application number
PCT/FR2007/050781
Other languages
English (en)
Other versions
WO2007096551A3 (fr
Inventor
Balazs Kovesi
Stéphane RAGOT
Original Assignee
France Telecom
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 filed Critical France Telecom
Priority to BRPI0708267-3A priority Critical patent/BRPI0708267A2/pt
Priority to EP07731606A priority patent/EP1989707A2/fr
Priority to JP2008555850A priority patent/JP5235684B2/ja
Priority to CN2007800066863A priority patent/CN101390158B/zh
Priority to US12/280,644 priority patent/US8315880B2/en
Priority to KR1020087023295A priority patent/KR101364979B1/ko
Priority to MX2008010836A priority patent/MX2008010836A/es
Publication of WO2007096551A2 publication Critical patent/WO2007096551A2/fr
Publication of WO2007096551A3 publication Critical patent/WO2007096551A3/fr

Links

Classifications

    • HELECTRICITY
    • H03ELECTRONIC CIRCUITRY
    • H03MCODING; DECODING; CODE CONVERSION IN GENERAL
    • H03M7/00Conversion of a code where information is represented by a given sequence or number of digits to a code where the same, similar or subset of information is represented by a different sequence or number of digits
    • H03M7/30Compression; Expansion; Suppression of unnecessary data, e.g. redundancy reduction
    • GPHYSICS
    • G10MUSICAL INSTRUMENTS; ACOUSTICS
    • G10LSPEECH ANALYSIS TECHNIQUES OR SPEECH SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING TECHNIQUES; SPEECH OR AUDIO CODING OR DECODING
    • G10L19/00Speech or audio signals analysis-synthesis techniques for redundancy reduction, e.g. in vocoders; Coding or decoding of speech or audio signals, using source filter models or psychoacoustic analysis
    • G10L19/02Speech or audio signals analysis-synthesis techniques for redundancy reduction, e.g. in vocoders; Coding or decoding of speech or audio signals, using source filter models or psychoacoustic analysis using spectral analysis, e.g. transform vocoders or subband vocoders
    • G10L19/032Quantisation or dequantisation of spectral components
    • GPHYSICS
    • G10MUSICAL INSTRUMENTS; ACOUSTICS
    • G10LSPEECH ANALYSIS TECHNIQUES OR SPEECH SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING TECHNIQUES; SPEECH OR AUDIO CODING OR DECODING
    • G10L19/00Speech or audio signals analysis-synthesis techniques for redundancy reduction, e.g. in vocoders; Coding or decoding of speech or audio signals, using source filter models or psychoacoustic analysis
    • GPHYSICS
    • G10MUSICAL INSTRUMENTS; ACOUSTICS
    • G10LSPEECH ANALYSIS TECHNIQUES OR SPEECH SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING TECHNIQUES; SPEECH OR AUDIO CODING OR DECODING
    • G10L19/00Speech or audio signals analysis-synthesis techniques for redundancy reduction, e.g. in vocoders; Coding or decoding of speech or audio signals, using source filter models or psychoacoustic analysis
    • G10L19/04Speech or audio signals analysis-synthesis techniques for redundancy reduction, e.g. in vocoders; Coding or decoding of speech or audio signals, using source filter models or psychoacoustic analysis using predictive techniques
    • G10L19/16Vocoder architecture
    • G10L19/18Vocoders using multiple modes
    • GPHYSICS
    • G10MUSICAL INSTRUMENTS; ACOUSTICS
    • G10LSPEECH ANALYSIS TECHNIQUES OR SPEECH SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING TECHNIQUES; SPEECH OR AUDIO CODING OR DECODING
    • G10L19/00Speech or audio signals analysis-synthesis techniques for redundancy reduction, e.g. in vocoders; Coding or decoding of speech or audio signals, using source filter models or psychoacoustic analysis
    • G10L19/02Speech or audio signals analysis-synthesis techniques for redundancy reduction, e.g. in vocoders; Coding or decoding of speech or audio signals, using source filter models or psychoacoustic analysis using spectral analysis, e.g. transform vocoders or subband vocoders
    • G10L19/0212Speech or audio signals analysis-synthesis techniques for redundancy reduction, e.g. in vocoders; Coding or decoding of speech or audio signals, using source filter models or psychoacoustic analysis using spectral analysis, e.g. transform vocoders or subband vocoders using orthogonal transformation

Definitions

  • the invention relates to a method for the binary coding of quantization indices describing an envelope of a signal. It also relates to a binary coding module for implementing said method. The invention further relates to a method and a module for decoding a coded envelope by means of the method and the binary coding module according to the invention.
  • waveform coding methods, such as MIC or ADPCM (PCM or ADPCM) coding
  • CELP coding Code Excited Linear Prediction
  • the invention is essentially concerned with transform coding techniques.
  • the ITU-T G.722.1 standard (ITU-T G.722.1 Recommendation, Coding at 24 and 32 kbit / s for hand-free operation in systems with low frame loss, September 1999) discloses a transform encoder for compressing audio, speech or music signals in a bandwidth of 50-7000 Hz, referred to as an extended band, at a sampling rate of 16 kHz and at a rate of 24 or 32 kbit / s.
  • Figure 1 gives the associated coding scheme, as provided by the above standard.
  • the G.722.1 encoder is based on the MLT transform.
  • the value of the spectral envelope for the j-th subband is defined in the logarithmic domain as:
  • the spectral envelope is then quantized in the following manner.
  • range of quantization indices that can be represented by the binary coding
  • range of quantization indices the differential index range is limited to the range [-
  • the range of the G.722.1 encoder is called "insufficient".
  • the quantization index rmsjndex ( ⁇ ) is transmitted in the 5-bit G.722.1 encoder.
  • variable length coding can lead to using a very large number of bits for the coding of the spectral envelope in the worst cases.
  • the differential coding it has been pointed out above the risk of saturation for certain signals with high spectral disparity, such as isolated sinusoids, the differential coding not working because, in these cases, the range of +/- 36.12 dB can not represent all the dynamics of the differences between the rms values.
  • a technical problem to be solved by the object of the present invention is to propose a binary coding method of quantization indices describing an envelope of a signal, comprising a variable length coding step, which would make it possible to minimize the coding length at a limited number of bits, even in the worst cases.
  • the solution to this technical problem consists, according to the present invention, in that said method comprising a first variable length coding mode is such that the first coding mode includes envelope saturation detection, and in that said method also includes a second coding mode, performed in parallel with the first coding mode and a selection retaining one of the two coding modes according to a code length criterion and the result of the envelope saturation detection of the first coding mode. coding.
  • the invention relates to a program comprising instructions recorded on a computer-readable medium for implementing the steps of the method according to the invention.
  • Figure 1 is a diagram of an encoder according to G.722.1.
  • Figure 2 shows the schematic of a DMCT type transformation.
  • Fig. 3 is a table of the minimum (Min) and maximum (Max) bit length of the codes in each sub-band in a Huffman coding for the encoder of Fig. 1.
  • Fig. 4 is a diagram of an encoder hierarchical audio including an MDCT encoder embodying the invention.
  • Figure 5 is a detailed diagram of the MDCT encoder of Figure 4.
  • FIG. 6 is a diagram of the spectral envelope coding module of the MDCT encoder of FIG. 5.
  • FIG. 7 gives a table (a) defining the spectrum cut-out
  • MDCT in 18 subbands and a table (b) giving the size of the subbands.
  • Fig. 8 is a table giving an example of Huffman codes for representing the differential indices.
  • FIG. 9 is a diagram of a hierarchical audio decoder including an MDCT decoder embodying the invention.
  • Fig. 11 is a schematic diagram of the spectral envelope decoding module of the MDCT decoder of Fig. 10.
  • the invention will now be described in the context of a hierarchical audio coder of 8 to 32 kbit / s of a particular type.
  • the binary spectral envelope coding methods and modules according to the invention are not limited to this type of encoder and that they can be applied to any binary coding of spectral envelope describing the energy in subbands of a signal.
  • the input signal of the wideband hierarchical encoder sampled at 16 kHz, is first broken down into two subbands by Quadrature Mirror Filter (QMF).
  • QMF Quadrature Mirror Filter
  • the low band from 0 to 4000 Hz is obtained by low-pass filtering 300 and decimation 301, and the high band from 4000 to 8000 Hz by high-pass filtering 302 and decimation 303.
  • the filters 300 and 302 are of length 64 and are consistent with those described in the J. Johnston article, ICASSP. flight. 5, pp. 291-294, 1980.
  • the low band is pre-processed by a high-pass filter 304 eliminating the components below 50 Hz before CELP 305 coding in 50-4000 Hz narrow band.
  • the high-pass filtering takes account of the fact that the enlarged band is defined as the band 50-7000 Hz.
  • the CELP 305 narrow-band coding used corresponds to a cascaded CELP coding comprising as a first stage a modified G.729 coding (ITU-T G.729 Recommendation, Coding of Speech at 8 kbps using Conjugate Structure Algebraic Code Excited Linear Prediction (CS-ACELP), March 1996) without pre-processing filter, and, as a second stage, an additional fixed dictionary.
  • the error signal of the CELP coding is calculated by the subtractor 306 and perceptually weighted by a filter W NB (Z) 307 to obtain the signal .v / ( , This signal is analyzed by discrete modified cosine transform MDCT 308 to obtain the discrete transformed spectrum Xy.
  • the high band is first unfolded spectrally 309 to compensate for the folding due to the QMF filter H 302, and then pretreated by a low pass filter 310 eliminating the components between 7000 and 8000 Hz in the original signal.
  • the resulting signal ⁇ h is transformed by MDCT 311 to obtain the discrete transformed spectrum X hi .
  • a band extension 312 is made from x hi e ⁇ X hi .
  • the MDCT transformation is implemented by means of the algorithm described in the article by P. Duhamel, Y. Mahieux, JP Petit, A fast algorithm for the implementation of filter banks based on the lime domain aliasing cancellation, ICASSP, vol. 3, pp.2209-2212, 1991.
  • the MDCT transforms in low band and high band Xy and X M are encoded in the MDCT encoder 313.
  • the invention relates more specifically to this encoder.
  • the different bitstreams generated by the coding modules 305, 312 and 313 are multiplexed and structured into a hierarchical binary train in the multiplexer 314.
  • the coding is done in blocks of samples, or frames, of
  • the encoding rate is 8, 12, or between 14 and 32 kbit / s in 2 kbit / s steps.
  • the MDCT encoder 313 will be described in detail with reference to FIG.
  • the MDCT transforms of the low and high bands are first combined in the merge block 400.
  • the coefficients are first combined in the merge block 400.
  • the X (O), ..., X (L-I) coefficients of X coming from the MDCT are grouped into K subbands.
  • the first subband then comprises the coefficients X (tabis (0)) to X (tabis (I) -I), while the second subband includes the coefficients X (tabis (1)) to X (tabis (2) ) -1), etc.
  • K 18, the associated cut is specified in Table (a) of Figure 7.
  • the amplitude spectral envelope log_rm.s describing the energy distribution by subbands is calculated 401 then coded by the spectral envelope encoder 402 to obtain the indices rmsjndex.
  • the bits are allocated to each sub-band 403 and a spherical vector quantization 404 is applied to the X spectrum.
  • the bit allocation corresponds to the method set forth in the article by Y. Mahieux, JP Petit , Transform coding of audio signed at 64 kbit / s, IEEE GLOBECOM, pp. 518-522, vol.1, 1990, and spherical vector quantization is performed as described in International Application PCT / FR04 / 00219.
  • the bits resulting from the coding of the spectral envelope and the vector quantization of the MDCT coefficients are processed by the multiplexer 314. We will now more particularly describe the calculation and the spectral envelope coding.
  • the spectral envelope log_rm, s in the logarithmic domain is defined for the j-th subband as:
  • nb_coeff (j) tabis (j + l) -tabis (j) is the number of coefficients in the j-th subband.
  • serves to avoid Iog 2 (0).
  • the spectral envelope corresponds to the rms in dB of the j-th subband; it is therefore an envelope of amplitude.
  • the size of the subbands nb_coeff (j) is given in Table (b) of Figure 7.
  • 2 "24 , which implies log_rms (j) ⁇ -12.
  • the resulting rmsjndex vector contains integer indices between -11 and +20 (32 possible values).
  • the low band envelope rms_index_bb is binary form by two coding modules 502 and 503 put into competition, namely a variable length coding module 502 and a fixed length coding module, said "equiprobable", 503.
  • the module 502 is a differential Huffman coding module
  • the module 503 is a natural binary coding module.
  • the differential Huffman coding module 502 comprises two coding steps which are detailed below:
  • the indicator satur_bb thus makes it possible to detect spectral envelope saturations by differential Huffman coding of the low band.
  • the quantization index rmsjndex ( ⁇ ) has an integer value between -11 and +20. It is directly encoded in 5-bit fixed length binary.
  • bit_cntl_bb the total number of bits, bit_cntl_bb, resulting from this binary conversion of rmsjndex ( ⁇ ) and Huffman coding of the diffjndex quantization indices (j) is variable.
  • the mode selection is specified below:
  • the high band envelope rms_index_bh undergoes a treatment identical to the processing of rms_index_bb: uniform coding of the first log_rms (0) index on 5 bits by the equiprobable coding module 507 and Huffman coding of the differential indices by the coding module 506.
  • the table the Huffman used in the module 506 is identical to that of the module 502.
  • the equiprobable encoding 507 is identical to that of the low band 503.
  • the mode selector 508 generates a bit which indicates the mode selected between the differential Huffman codings. and equiprobable, and this bit is multiplexed with the bits coming from the flip-flop 509 in the multiplexer 314.
  • the hierarchical audio decoder associated with the encoder which has just been described is represented in FIG. 9.
  • the bits describing each frame of 20 ms are demultiplexed in the demultiplexer 600.
  • the decoding which operates from 8 to 32 kbit / s is presented.
  • the bit stream could be truncated at 8, 12, 14 or between 14 and 32 kbit / s in steps of 2 kbit / s.
  • the bit stream of the 8 and 12 kbit / s layers is used by the decoder
  • CELP 601 to generate a first narrow-band synthesis (0-4000 Hz).
  • the portion of the bit stream associated with the 14 kbit / s layer is decoded by the band extension module 602; the signal obtained in the high band (4000-7000 Hz) is transformed by MDCT 603 into a transformed signal X h1 .
  • MDCT decoding 604 is explained in Figure 10 and discussed below. It generates from the bit stream associated with the bit rates of 14 to 32 kbit / s a reconstructed spectrum X 10 in low band and a reconstructed spectrum X h ⁇ in high band. These spectra are brought back to time signals x 10 and x h 1 by inverse MDCT in blocks 605 and 606.
  • the signal ⁇ ; o is added to the CELP synthesis 608 after inverse perceptual filtering 607, the result is then post-filtered 609.
  • the extended band output signal sampled at 16 kHz, is obtained through the synthesis QMF filter bank which includes the 610 and 612 oversampling, low pass and high pass 611 and 613 and addition 614.
  • the MDCT decoder 604 is now described with reference to FIG.
  • the sub-bands that are not received or not coded, because they are too low in energy, are replaced by those of the X h ⁇ spectrum in the substitution module 704.
  • the module 705 applies the envelope of amplitude by subbands to the coefficients provided at the module output 704, and the reconstructed spectrum X is separated 706 into a reconstructed spectrum X lo in a low band (0-4000 Hz) and a reconstructed spectrum X 10 in a high band (4000-7000 Hz).
  • Figure 11 shows the operation of the decoding of the spectral envelope.
  • the bits associated with the spectral envelope are demultiplexed by the demultiplexer 600.
  • the decoding begins with the reading in the mode selector 801 of the value of the mode selection bit received from the encoder, differential Huffman mode or equiprobable mode.
  • the selector 801 follows the same convention as the coding, ie: 0 for the differential Huffman mode, 1 for the equiprobable mode.
  • the value of the bit makes it possible to actuate the flip-flops 802 and 805.
  • the mode selection bit is 1
  • the decoding indicates to the decoder MDCT that an error has been detected. occurred.
  • the bits associated with the low band are decoded in the same way as those of the high band.
  • the vector rmsjndex represents the spectral envelope reconstructed on a logarithmic scale in base 2 ; the spectral envelope is converted on a linear scale by the conversion module 812, which performs the following operation:
  • the fixed-length coding step competing with the differential Huffman coding may be replaced by a variable-length coding step, for example a Hufman coding of the quantization indices instead of that of the differential indices.
  • Huffman coding can also be replaced by any other form of lossless coding, such as arithmetic coding, Tunstall coding, and so on.

Landscapes

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

Abstract

Module (402) de codage binaire d'une enveloppe d'un signal, comprenant un module (502) de codage d'un premier mode à longueur variable. Selon l'invention, le module de codage d'un premier mode intègre un détecteur de saturation d'enveloppe et ledit module (402) de codage comprend également un deuxième module (503) de codage d'un second mode, disposé en parallèle au module (502) de codage du premier mode, et un sélecteur (504) de mode apte à retenir un des deux modes de codage, en fonction d'un critère de longueur de code et du résultat issu du détecteur de saturation d'enveloppe. Application au codage par transformée de signaux audio-fréquences.

Description

PROCEDE DE CODAGE BINAIRE D'INDICES DE QUANTIFICATION D'UNE
ENVELOPPE D'UN SIGNAL, PROCEDE DE DECODAGE D'UNE ENVELOPPE D'UN SIGNAL ET MODULES DE CODAGE ET DECODAGE
CORRESPONDANTS
L'invention concerne un procédé de codage binaire d'indices de quantification décrivant une enveloppe d'un signal. Elle concerne également un module de codage binaire pour la mise en œuvre dudit procédé. L'invention concerne en outre un procédé et un module de décodage d'une enveloppe codée au moyen du procédé et du module de codage binaire selon l'invention.
L'invention trouve une application particulièrement avantageuse dans le domaine de la transmission et du stockage de signaux numériques, tels que les signaux audio-fréquences de parole, de musique, etc.. Le procédé et le module de codage selon l'invention sont plus spécialement adaptés au codage par transformée des signaux audio-fréquences.
Différentes techniques existent aujourd'hui pour convertir sous forme numérique et pour compresser un signal audio-fréquences de parole, de musique, etc. Les méthodes les plus courantes sont :
- les méthodes de « codage de forme d'onde », telles que le codage MIC ou MICDA (PCM ou ADPCM en anglais),
- les méthodes de « codage paramétrique par analyse par synthèse » comme le codage CELP (« Code Excited Linear Prédiction »),
- les méthodes de « codage perceptuel en sous-bandes ou par transformée ».
Ces techniques classiques de codage de signaux audio-fréquences sont décrites par exemple dans WB. Kleijn and K.K. Paliwal Editors, Speech Coding and Synthesis, Elsevier, 1995.
Comme cela a été mentionné plus haut, l'invention s'intéresse essentiellement aux techniques de codage par transformée.
La norme UIT-T G.722.1 (ITU-T G.722.1 Recommandation, Coding at 24 and 32 kbit/s for hand-free opération in Systems with low frame loss, September 1999) décrit un codeur par transformée destiné à compresser les signaux audio, parole ou musique, dans une bande passante de 50-7000 Hz, dite bande élargie, à la fréquence d'échantillonnage de 16 kHz et à un débit de 24 ou 32 kbit/s. La figure 1 donne le schéma de codage associé, tel que fourni par la norme précitée.
Comme le montre cette figure, le codeur G.722.1 est basé sur la transformée MLT. La longueur de trame est de 20 ms et contient Λ/=320 échantillons.
La transformée MLT, ou transformation modulée avec recouvrement de Malvar, est une variante de la méthode de transformation connue sous le nom de MDCT (« Modified Discrète Cosine Transform »).
Sur la figure 2, on a représenté succinctement le principe d'une transformation MDCT.
La MDCT X(m) d'un signal x(n) de longueur L=2N comprenant les échantillons de la trame courante et de la trame future est définie comme :
X(m) = Lc(n)
Figure imgf000004_0001
OU m = 0,..., N-I. Dans la formule ci-dessus, le terme en sinus correspond au fenêtrage illustré à la figure 2. Le calcul de X(m) correspond donc à la projection de x(n) sur une base de cosinus locale avec fenêtrage sinusoïdal. Des algorithmes rapides de calcul de la MDCT existent (voir par exemple l'article de P.
Duhamel, Y. Mahieux, J. P. Petit, A fast algorithm for the implementation of filter banks based on time domain aliasing cancellation, ICASSP, vol. 3, pp.2209-2212, 1991 ).
Pour le calcul de l'enveloppe spectrale de la transformée, les valeurs
X(O),...,X(N-I) issus de la MDCT sont regroupées en 16 sous-bandes de 20 coefficients. Seules les 14 premières sous-bandes (14x20=280 coefficients) sont quantifiées et codées, correspondant à la bande de fréquence 0-7000 Hz, la bande 7000-8000 (40 coefficients) étant ignorée par mise à zéro.
La valeur de l'enveloppe spectrale pour la j-ème sous-bande est définie dans le domaine logarithmique comme :
Figure imgf000005_0001
où ; = 0,..., 13, le terme ε servant à éviter Iog2(0). Cette enveloppe correspond donc à la valeur efficace (« root mean square » ou rms en anglais) par sous- bande.
L'enveloppe spectrale est ensuite quantifiée de la manière suivante. L'ensemble des valeurs
\og_rms = {\og_rms(0) \og_rms(l).. Λog_rms(13)} est d'abord arrondi à : rms_index = {rms_index(0) rms_index(l) ... rms_index(13)} où les indices rmsjndex(j) sont les arrondis à l'entier le plus proche de \og_rms(j)xO,5 pour; = 0,..., 13.
Le pas de quantification est donc de 20 x logio(20'5) = 3,0103... dB. Les valeurs obtenues sont bornées :
3 < rmsjndex(θ) ≤ 33 (dynamique 31 x 3,01 = 93,31 dB) pour; = 0 et -6 < rmsjndex(j) ≤ 33 (dynamique 40 x 3,01 = 120,4 dB) pour; = 1,..., 13 Les rmsjndex des 13 dernières bandes sont ensuite transformés en indices différentiels en calculant la différence des valeurs efficaces rms de l'enveloppe spectrale d'une sous-bande et la précédente : diff_rms_index(j) = rms_index(j) - rms_index(j-l) pour; = 1,..., 13 Ces indices différentiels sont également bornés : -12 ≤ diff_rms_index(j) ≤ 11 ; pour; = 1,..., 13
Dans la suite, on désignera par « gamme d'indices de quantification » l'intervalle des indices pouvant être représentés par le codage binaire. Dans le codeur G.722.1 , la gamme d'indices différentiels est limitée à l'intervalle [-
11 ,12]. Ainsi, la gamme du codeur G.722.1 est dite « suffisante » pour coder les écarts entre rmsjndex(j) et rms_index(j-l) si
-12 ≤ rms_index(j) - rms_index(j-l) ≤ 11 Autrement, la gamme du codeur G.722.1 est dite « insuffisante ». Ainsi, le codage d'enveloppe spectrale est en saturation dès que l'écart de rms entre deux sous-bandes adjacentes dépasse 12 x 3,01 = 36,12 dB. L'indice de quantification rmsjndex(θ) est transmis dans le codeur G.722.1 sur 5 bits. Les indices de quantification différentiels diff_rms_index(j) (j = 1,..., 13) sont codés par codage de Huffman, chaque variable ayant sa propre table de Huffman. Il s'agit donc d'un codage entropique de longueur variable qui a pour principe d'affecter un code court en terme de bits aux valeurs d'indice différentiel les plus probables, les valeurs d'indice de quantification différentiel les moins probables ayant un code plus long. Ce type de codage est très efficace en terme de débit moyen, on rappelle que le nombre de bits total utilisé pour coder l'enveloppe spectrale dans le codeur G.722.1 est d'environ 50 bits en moyenne. Cependant, comme on le verra ci- après, le pire cas n'est pas contrôlé.
Le tableau de la figure 3 donne pour chaque sous-bande la longueur du plus court code (Min), donc celui de la valeur la plus probable (meilleur cas), et du plus long code (Max), à savoir celui de la valeur la moins probable (pire cas). On remarquera sur ce tableau que la première sous-bande (j = 0) a une longueur fixe de 5 bits, contrairement aux sous-bandes suivantes.
Avec ces valeurs de longueur de code, on voit que dans le meilleur cas l'encodage de l'enveloppe spectrale demande 39 bits (1 ,95 kbit/s), mais que le pire cas théorique est de 190 bits (9,5 kbit/s). Dans le codeur G.722.1 , les bits restant après le codage des indices de quantification de l'enveloppe spectrale sont ensuite distribués pour coder les coefficients MDCT normalisés par l'enveloppe quantifiée. L'allocation des bits parmi les sous-bandes est effectuée par un processus de catégorisation qui n'est pas lié à la présente invention et ne sera pas détaillé ici. Le reste du codage G.722.1 n'est pas non plus détaillé pour la même raison.
Le codage de l'enveloppe spectrale MDCT dans le codeur G.722.1 présente un certain nombre d'inconvénients.
En effet, comme on vient de le voir, le codage à longueur variable peut conduire à utiliser un nombre de bits très grand pour le codage de l'enveloppe spectrale dans les pires cas. D'autre part, il a été signalé plus haut le risque de saturation pour certains signaux à forte disparité spectrale, comme par exemple les sinusoïdes isolées, le codage différentiel ne fonctionnant pas car, dans ces cas, la plage de +/-36,12 dB ne peut pas représenter toute la dynamique des différences entre les valeurs de rms.
Aussi, un problème technique à résoudre par l'objet de la présente invention est de proposer un procédé de codage binaire d'indices de quantification décrivant une enveloppe d'un signal, comprenant une étape de codage à longueur variable, qui permettrait de minimiser la longueur de codage à un nombre de bits limité, même dans les pires cas.
Par ailleurs, un autre problème à résoudre par l'invention concerne la gestion des risques de saturation pour des signaux présentant de fortes valeurs efficaces, comme les sinusoïdes.
La solution à ce problème technique consiste, selon la présente invention, en ce que ledit procédé comprenant un premier mode de codage à longueur variable est tel que le premier mode de codage intègre une détection de saturation d'enveloppe, et en ce que ledit procédé comprend également un second mode de codage, effectué parallèlement au premier mode de codage et une sélection retenant un des deux modes de codage en fonction d'un critère de longueur de code et du résultat de la détection de saturation d'enveloppe du premier mode de codage.
Ainsi, le procédé conforme à l'invention repose sur la mise en concurrence de deux modes de codage dont au moins un à longueur variable, de manière à pouvoir choisir le mode conduisant au nombre de bits de codage le plus faible, notamment dans les pires cas, c'est à dire pour les valeurs de rms les moins probables.
De plus, lorsque l'un des modes de codage conduit à une saturation de la valeur efficace d'une sous-bande, l'autre mode est « forcé » et devient prioritaire, même s'il conduit à une longueur de codage plus grande.
Dans un mode préféré de réalisation, la sélection est telle que le second mode de codage est retenu si au moins une des conditions suivantes est vérifiée: - la longueur de code du second mode de codage est plus courte que la longueur de code du premier mode de codage;
- la détection de saturation d'enveloppe du premier mode de codage indique une saturation. L'invention concerne également un module de codage binaire d'une enveloppe d'un signal, comprenant un module de codage d'un premier mode à longueur variable, remarquable en ce que le module de codage d'un premier mode intègre un détecteur de saturation d'enveloppe et en ce que ledit module de codage comprend également un deuxième module de codage d'un second mode, disposé en parallèle au module de codage du premier mode, et un sélecteur de mode apte à retenir un des deux modes de codage, en fonction d'un critère de longueur de code et du résultat issu du détecteur de saturation d'enveloppe. En plus de sélectionner le codage le plus approprié, ledit sélecteur de mode est apte à générer un indicateur du mode de codage retenu, afin d'indiquer au décodeur en aval quel mode de décodage il doit appliquer.
L'invention concerne en outre un procédé de décodage d'une enveloppe d'un signal, ladite enveloppe étant codée au moyen du procédé de codage binaire selon l'invention, remarquable en ce que ledit procédé de décodage comprend une étape de détection dudit indicateur du mode codage retenu et une étape de décodage selon le codage retenu. L'invention concerne encore un module de décodage d'une enveloppe d'un signal, ladite enveloppe étant codée au moyen du module de codage binaire selon l'invention, ledit module de décodage comprenant un module de décodage d'un premier mode à longueur variable, remarquable en ce que ledit module de décodage comprend également un deuxième module de décodage d'un second mode, disposé en parallèle audit module de décodage du premier mode à longueur variable, et un détecteur de mode apte à détecter ledit indicateur du mode de codage et à activer le module de décodage correspondant à l'indicateur détecté.
Enfin, l'invention concerne un programme comprenant des instructions enregistrées sur un support lisible par un ordinateur pour mettre en œuvre les étapes du procédé selon l'invention. La description qui va suivre en regard des dessins annexés, donnés à titre d'exemples non limitatifs, fera bien comprendre en quoi consiste l'invention et comment elle peut être réalisée.
La figure 1 est un schéma d'un codeur conforme à la norme G.722.1. La figure 2 représente le schéma d'une transformation de type DMCT.
La figure 3 est un tableau de la longueur minimale (Min) et maximale (Max) en bits des codes dans chaque sous-bande dans un codage de Huffman pour le codeur de la figure 1. La figure 4 est un schéma d'un codeur audio hiérarchique incluant un codeur MDCT mettant en œuvre l'invention.
La figure 5 est un schéma détaillé du codeur MDCT de la figure 4.
La figure 6 est un schéma du module de codage d'enveloppe spectrale du codeur MDCT de la figure 5. La figure 7 donne un tableau (a) définissant la découpe du spectre
MDCT en 18 sous-bandes et un tableau (b) donnant la taille des sous-bandes.
La figure 8 est un tableau donnant un exemple de codes de Huffman pour représenter les indices différentiels.
La figure 9 est un schéma d'un décodeur audio hiérarchique incluant un décodeur MDCT mettant en œuvre l'invention.
La figure 10 est un schéma détaillé du décodeur MDCT de la figure 9.
La figure 11 est un schéma du module de décodage d'enveloppe spectrale du décodeur MDCT de la figure 10.
L'invention va maintenant être décrite dans le cadre d'un codeur audio hiérarchique de 8 à 32 kbit/s d'un type particulier. Cependant, il doit être bien entendu que les procédés et les modules de codage et décodage binaires d'enveloppe spectrale conformes à l'invention ne sont pas limités à ce type de codeur et qu'ils peuvent s'appliquer à tout codage binaire d'enveloppe spectrale décrivant l'énergie en sous-bandes d'un signal. Comme le montre la figure 4, le signal d'entrée du codeur hiérarchique en bande élargie, échantillonné à 16 kHz, est d'abord décomposé en deux sous-bandes par filtrage miroir en quadrature QMF (« Quadrature Mirror Filter »). La bande basse de 0 à 4000 Hz est obtenue par filtrage passe-bas 300 et décimation 301 , et la bande haute de 4000 à 8000 Hz par filtrage passe-haut 302 et décimation 303. Dans un mode de réalisation préféré, les filtres 300 et 302 sont de longueur 64 et sont conformes à ceux décrits dans l'article de J. Johnston, A filter family designed for use in quadrature mirror filter banks, ICASSP. vol. 5, pp. 291 - 294, 1980. La bande basse est pré-traitée par un filtre passe-haut 304 éliminant les composantes en dessous de 50 Hz avant codage CELP 305 en bande étroite 50-4000 Hz. Le filtrage passe-haut tient compte du fait que la bande élargie est définie comme la bande 50-7000 Hz. Dans le mode de réalisation décrit, le codage CELP 305 en bande étroite utilisé correspond à un codage CELP en cascade comprenant comme premier étage un codage G.729 modifié (ITU-T G.729 Recommandation, Coding of Speech at 8 kbit/s using Conjugate Structure Algebraic Code Excited Linear Prédiction (CS-ACELP), March 1996) sans filtre de pré-traitement, et, comme deuxième étage, un dictionnaire fixe supplémentaire. Le signal d'erreur du codage CELP est calculé par le soustracteur 306 et pondéré perceptuellement par un filtre WNB(Z) 307 pour obtenir le signal .v/(, Ce signal est analysé par transformée discrète en cosinus modifiée MDCT 308 pour obtenir le spectre transformé discret Xy.
La bande haute est d'abord dépliée spectralement 309 pour compenser le repliement dû au filtre QMF H 302, puis pré-traitée par un filtre passe-bas 310 éliminant les composantes entre 7000 et 8000 Hz dans le signal original. Le signal résultant χh; est transformé par MDCT 311 pour obtenir le spectre transformé discret Xhi. Une extension de bande 312 est réalisée à partir de xhi e\ Xhi. Comme cela a déjà été expliqué en regard de la figure 2, les signaux ΛV,, et xu sont découpés en trames de N échantillons et la transformée MDCT de longueur L = 2N analyse les trames courante et future. Dans un mode de réalisation préféré, xto et xM sont des signaux en bande étroite échantillonnés à 8 kHz et N = 160, soit 20 ms. Les transformées MDCT Xy et XM comprennent donc N = 160 coefficients ; chaque coefficient représente alors une bande fréquentielle de 4000/160 = 25 Hz. Dans un mode de réalisation préféré, la transformation MDCT est implantée au moyen de l'algorithme décrit dans l'article de P. Duhamel, Y. Mahieux, J. P. Petit, A fast algorithm for the implementation of filter banks based on lime domain aliasing cancellation', ICASSP, vol. 3, pp.2209-2212, 1991.
Les transformées MDCT en bande basse et bande haute Xy et XM sont codés dans le codeur MDCT 313. L'invention se rapporte plus précisément à ce codeur. Les différents flux binaires générés par les modules de codage 305, 312 et 313 sont multiplexes et structurés en un train binaire hiérarchique dans le multiplexeur 314. Le codage est réalisé par blocs d'échantillons, ou trames, de
20 ms, soit 320 échantillons. Le débit de codage est de 8, 12, ou entre 14 et 32 kbit/s par pas de 2 kbit/s.
Le codeur MDCT 313 va être décrit en détail en référence à la figure 5.
Les transformées MDCT des bandes basse et haute sont d'abord combinées dans le bloc de fusion 400. Ainsi, les coefficients
Xio = {Xio(0) Xιo(l) ... Xo(N-I)J et Xhi = (Xhi(0) Xhi(l) ... XM(N-I)) sont regroupés en un seul vecteur pour former un spectre transformé discret pleine bande :
X = (X(m) }m=0..χ_i = (Xi0(O) Xi0(I) . .. X10(N-I) Xhl(0) Xhl(l) . .. Xhl(N-l) }
Les coefficients X(O),...,X(L-I) de X issus de la MDCT sont regroupés en K sous-bandes. La découpe en sous-bandes peut-être décrite par un tableau tabis = {tabis(O) tabis(l) ... tabis(K)} de K+1 éléments définissant les frontières des sous-bandes. La première sous-bande comprend alors les coefficients X(tabis(0)) à X(tabis( I)-I), tandis que la seconde sous-bande comprend les coefficients X(tabis(l)) à X(tabis(2)-1), etc.
Dans un mode de réalisation préféré, K=18, la découpe associée est spécifiée dans le tableau (a) de la figure 7.
L'enveloppe spectrale d'amplitude log_rm.s décrivant la répartition énergétique par sous-bandes est calculée 401 puis codée par le codeur d'enveloppe spectrale 402 pour obtenir les indices rmsjndex. Les bits sont alloués à chaque sous-bande 403 et une quantification vectorielle sphérique 404 est appliquée au spectre X. Dans un mode de réalisation préféré, l'allocation des bits correspond à la méthode exposée dans l'article de Y. Mahieux, J. P. Petit, Transform coding of audio signais at 64 kbit/s, IEEE GLOBECOM, pp. 518 - 522, vol.1 , 1990, et la quantification vectorielle sphérique est réalisée comme décrit la demande internationale PCT/FR04/00219.
Les bits issus du codage de l'enveloppe spectrale et de la quantification vectorielle des coefficients MDCT sont traités par le multiplexeur 314. On va maintenant décrire plus particulièrement le calcul et le codage d'enveloppe spectrale.
L'enveloppe spectrale log_rm,s dans le domaine logarithmique est définie pour la j-ème sous-bande comme :
tabιs n(jj++ln)-→l log_ rms(j) = -log X(m)2 + ε nb_ coeff(j) m=ta 'bιs(j)
où j=0...K-I et nb_coeff(j) = tabis(j+l)-tabis(j) est le nombre de coefficients dans la j-ème sous-bande. Le terme ε sert à éviter Iog2(0). L'enveloppe spectrale correspond à la rms en dB de la j-ème sous-bande; il s'agit donc d'une enveloppe d'amplitude.
Dans un mode de réalisation préféré, la taille des sous-bandes nb_coeff(j) est donnée au tableau (b) de la figure 7. De plus, ε = 2"24, ce qui implique log_rms(j) ≥ -12. Le codage de l'enveloppe spectrale par le codeur 402 est détaillé à la figure 6.
L'enveloppe log_rm.s dans le domaine logarithmique est d'abord arrondie à rms_index = {rms_index(0) rms_index(l) ... rms_index(K-l)} par quantification uniforme 500. Cette quantification est donnée simplement par : rmsJndexQ) = arrondi à l'entier le plus proche de \og_rms(j)xO,5 si rmsjndexφ < -11, rmsjndexφ = -11 si rmsJndexQ) > +20, rmsJndexQ) = +20
L'enveloppe spectrale est ainsi codée avec des pas logarithmiques uniformes de 20 x Iog-ι0(20'5) = 3,0103... dB. Le vecteur rmsjndex résultant contient des indices entiers compris entre -11 et +20 (soit 32 valeurs possibles). Ainsi, l'enveloppe spectrale est représentée avec une gamme dynamique de l'ordre de 32 x 3,01 = 96,31 dB.
L'enveloppe quantifiée rmsjndex est ensuite décomposée en deux sous-vecteurs par le bloc 501 : l'un rms_index_bb = {rmsjndex(θ) rmsjndex(l) ... rms_index(K_BB-l)} pour l'enveloppe en bande basse et l'autre mιs_index_bh =
{rms_index(K_BB) ... rmsJndex(K-l)} pour l'enveloppe en bande haute. Dans un mode de réalisation préféré, K = 18 et K_BB = 10; autrement dit, les 10 premières sous-bandes sont dans la bande basse (0-4000 Hz) tandis que les 8 dernières sont dans la bande haute (4000-7000 Hz).
L'enveloppe bande basse rms_index_bb est mise sous forme binaire par deux modules de codage 502 et 503 mis en compétition, à savoir un module de codage différentiel à longueur variable 502 et un module de codage à longueur fixe, dit "équiprobable", 503. Dans un mode de réalisation préféré, le module 502 est un module de codage de Huffman différentiel, et le module 503 un module de codage binaire naturel.
Le module de codage de Huffman différentiel 502 comprend deux étapes de codage qui sont détaillées ci-dessous :
- calcul des indices différentiels.
Les indices de quantification différentiels diffjndex(l) diff_index(2) ... diffjndex (K_BB-1) sont donnés par : saturjbb = 0 diff_index(j) = rms_index(j) — rms_index(j-l)
Si {diffjndex(j) < -12 ) ou {diffjndex(j) > +12 ), saturjbb = 1
L'indicateur binaire satur_bb permet de détecter les cas où diffjndex(j) n'est pas dans l'intervalle [-12, + 12]. Si satur_bb = 0, tous les éléments diffjndex(j) sont dans cet intervalle et donc la gamme d'indices du codage de Huffman différentiel est suffisante, autrement, l'un de ces éléments est inférieur à -12 ou supérieur à +12 et ladite gamme d'indices est alors insuffisante. L'indicateur satur_bb permet donc de détecter des saturations d'enveloppe spectrale par codage de Huffman différentiel de la bande basse.
Dans le cas où une saturation est détectée, on bascule sur le mode équiprobable de codage à longueur fixe. En effet, la gamme d'indices du mode équiprobable est de par sa conception toujours suffisante.
- conversion binaire du premier indice et codage de Huffman des indices différentiels :
* l'indice de quantification rmsjndex(θ) a une valeur entière comprise entre -11 et +20. Il est codé directement en binaire de longueur fixe sur 5 bits.
Ensuite, les indices de quantification différentiels diffjndex(j) pour j=l...K_BB-1 sont convertis sous forme binaire par codage de Huffman (à longueur variable). La table de Huffman utilisée est spécifiée dans le tableau de la figure 8.
* le nombre total de bits, bit_cntl_bb, issu de cette conversion binaire de rmsjndex(θ) et codage de Huffman des indices de quantification diffjndex(j) est variable.
* dans un mode de réalisation préféré, la longueur maximale d'un code de Huffman est de 14 bits et le codage de Huffman est appliqué à K_BB-1 = 9 indices différentiels de la bande basse. Donc, la valeur théorique maximale de bit_cntl_bb est 5 + 9x14 = 131 bits. Bien qu'il ne s'agisse que d'une valeur théorique, on observe que dans le pire cas le nombre de bits utilisés par le codage de l'enveloppe spectrale de la bande basse peut être très important; c'est précisément le rôle du codage « équiprobable » que de limiter le cas pire.
Le module de codage équiprobable 503 se résume à convertir directement sous forme binaire naturelle les éléments rmsjndex(θ) rmsjndex(l) ... rms_index(K_BB-l). Ceux-ci sont compris entre -11 et +20 et sont donc codés chacun sur 5 bits. Le nombre de bits nécessaire au codage équiprobable est donc simplement : bit_cnt2_bb = 5 * K_BB bits. Dans un mode de réalisation préféré, K_BB = 10, donc bit_cnt2_bb = 50 bits.
Le sélecteur de mode 504 choisit lequel des deux modules 502 ou 503, Huffman différentiel ou équiprobable, génère le nombre de bits le plus faible. Comme le mode Huffman différentiel sature les indices différentiels à +/-12, le mode équiprobable est aussi choisi dès qu'une saturation est détectée dans le calcul des indices de quantification différentiels. Ce procédé permet d'éviter les saturations d'enveloppe spectrale dès que l'écart des valeurs de rms entre deux bandes adjacentes dépasse 12 x 3,01 = 36,12 dB. La sélection de mode est spécifiée ci-dessous :
- si (saturjbb = 1 ) ou (bit_cnt2_bb < bit_cntl_bb), le mode équiprobable est choisi,
- sinon, le mode Huffman différentiel est choisi. Le sélecteur de mode 504 génère un bit qui indique le mode sélectionné entre les modes Huffman différentiel et équiprobable avec la convention suivante : 0 pour le mode Huffman différentiel, 1 pour le mode équiprobable. Ce bit est multiplexe aux autres bits générés par le codage de l'enveloppe spectrale dans le multiplexeur 510. De plus, le sélecteur de mode 504 actionne une bascule 505 qui permet de multiplexer dans le multiplexeur 314 les bits du mode de codage choisi.
L'enveloppe bande haute rms_index_bh subit un traitement identique au traitement de rms_index_bb : codage uniforme du premier indice log_rms(0) sur 5 bits par le module de codage équiprobable 507 et codage de Huffman des indices différentiels par le module de codage 506. La table de Huffman utilisée dans le module 506 est identique à celle du module 502. De même, le codage équiprobable 507 est identique à celui de bande basse 503. Le sélecteur de mode 508 génère un bit qui indique le mode sélectionné entre les codages de Huffman différentiel et équiprobable, et ce bit est multiplexe aux bits issus de la bascule 509 dans le multiplexeur 314. Le nombre de bits nécessaire au codage équiprobable de la bande haute est bit_cnt2_bh = (K-K_BB) x 5 ; dans le mode de réalisation préféré, K-K_BB = 8 donc bit_cnt2_bh = 40 bits. II est important de noter que dans le mode de réalisation préféré les bits associés à l'enveloppe de la bande haute sont multiplexes avant les bits associés à l'enveloppe de la bande basse. De cette façon, si une partie seulement de l'enveloppe spectrale codée est reçue au décodeur, l'enveloppe de la bande haute peut être décodée avant celle de la bande basse. Le décodeur audio hiérarchique associé au codeur qui vient d'être décrit est représenté à la figure 9. Les bits décrivant chaque trame de 20 ms sont démultiplexés dans le démultiplexeur 600. On présente ici le décodage qui fonctionne de 8 à 32 kbit/s. En pratique le flux binaire a pu être tronqué à 8, 12, 14 ou entre 14 et 32 kbit/s par pas de 2 kbit/s. Le flux binaire des couches à 8 et 12 kbit/s est utilisé par le décodeur
CELP 601 pour générer une première synthèse en bande étroite (0-4000 Hz). La portion du flux binaire associée à la couche à 14 kbit/s est décodé par le module d'extension de bande 602; le signal obtenu en bande haute (4000- 7000 Hz) est transformé par MDCT 603 en un signal transformé Xhl . Le décodage MDCT 604 est explicité à la figure 10 et discuté ci-après. Il génère à partir du flux binaire associé aux débits de 14 à 32 kbit/s un spectre reconstruit X10 en bande basse et un spectre reconstruit X en bande haute. Ces spectres sont ramenés à des signaux temporels xl0 et x par MDCT inverse dans les blocs 605 et 606. Le signal χ;oest ajouté à la synthèse CELP 608 après filtrage perceptuel inverse 607, le résultat est ensuite postfiltré 609.
Le signal de sortie en bande élargie, échantillonné à 16 kHz, est obtenu par l'intermédiaire du banc de filtres QMF de synthèse qui comprend les opérations de sur-échantillonnage 610 et 612, filtrages passe-bas et passe- haut 611 et 613 et addition 614.
Le décodeur MDCT 604 est maintenant décrit en regard de la figure 10.
Les bits associés à ce module sont démultiplexés dans le démultiplexeur 600. L'enveloppe spectrale est d'abord décodée 701 pour obtenir les indices rmsjndex ainsi que l'enveloppe spectrale reconstruite en échelle linéaire mιs_q. Le module de décodage 701 est explicité à la figure 11 et détaillé ci-après. En l'absence d'erreur binaire et si tous les bits décrivant l'enveloppe spectrale sont bien reçus, les indices rmsjndex correspondent exactement à ceux qui sont calculés au codeur; cette propriété est essentielle car l'allocation des bits 702 doit disposer de la même information au codeur et au décodeur pour que les codeur et décodeur soient compatibles. Les coefficients MDCT normalisés sont décodés dans le bloc 703.
Les sous-bandes non-reçues ou non codées, car d'énergie trop faibles, sont remplacées par celles du spectre X dans le module de substitution 704. Enfin, le module 705 applique l'enveloppe d'amplitude par sous-bandes aux coefficients fournis en sortie de module 704, et le spectre reconstruit X est séparé 706 en spectre reconstruit Xloen bande basse (0-4000 Hz) et spectre reconstruit X10 en bande haute (4000-7000 Hz).
La figure 11 présente le fonctionnement du décodage de l'enveloppe spectrale. Les bits associés à l'enveloppe spectrale sont démultiplexés par le démultiplexeur 600.
Dans le mode de réalisation préféré, les bits associés à l'enveloppe spectrale de la bande haute sont transmis avant ceux de la bande basse. Ainsi, le décodage commence par la lecture dans le sélecteur de mode 801 de la valeur du bit de sélection de mode reçu du codeur, mode Huffman différentiel ou mode équiprobable. Le sélecteur 801 suit la même convention qu'au codage à savoir : 0 pour le mode Huffman différentiel, 1 pour le mode équiprobable. La valeur du bit permet d'actionner les bascules 802 et 805. Si le bit de sélection de mode est à O, un décodage de Huffman différentiel est réalisé par le module de décodage à longueur variable 803 : la valeur absolue rms_index(K_BB) comprise entre -11 et +20 et représentée sur 5 bits est d'abord décodée, puis les codes de Huffman associés aux indices de quantification différentiels diffjndex(j) pour j= K_BB..K-1 sont ensuite décodées. Les indices entiers rmsjndex(j) sont alors reconstruits par la relation
rms_index(j) = rms_index(j-l) + diff_index(j) pour j= K_BB.. K-I.
Si le bit de sélection de mode est à 1 , les valeurs de rmsjndex(j) comprises entre -11 et +20 et représentées sur 5 bits pour 7= K_BB..K-1 sont décodées successivement par le module de décodage à longueur fixe 804. Dans le cas où aucun code de Huffman n'a été trouvé, en mode 0, ou si le nombre de bits reçu est insuffisant pour réaliser le décodage complet de la bande haute, le décodage indique au décodeur MDCT qu'une erreur a eu lieu.
Les bits associés à la bande basse sont décodés de la même façon que ceux de la bande haute. On retrouve donc pour cette partie le sélecteur de mode 806, les bascules 807 et 810 et les modules de décodage 808 et 809.
L'enveloppe spectrale reconstruite en bande haute comprend les indices entiers rmsjndex(j) pour j= K_BB..K-1. Celle qui est reconstruite en bande basse comprend les indices entiers rmsjndex(j) pour 7= 0...K_BB-l. Ces indices sont regroupés en un seul vecteur rmsjndex = {rmsjndex(θ) rmsjndex(l) ... rmsJndex(K-l)} dans le bloc de fusion 811. Le vecteur rmsjndex représente l'enveloppe spectrale reconstruite sur une échelle logarithmique en base 2; l'enveloppe spectrale est convertie sur une échelle linéaire par le module de conversion 812, qui réalise l'opération suivante :
rms_q(j) = 2msJndex<j)
OU j= 0,...,K-l.
Il est bien entendu que l'invention n'est pas limitée au seul mode de réalisation qui vient d'être décrit. En particulier, on notera que l'enveloppe codée par l'invention peut correspondre à l'enveloppe temporelle décrivant la valeur efficace rms par sous-trames d'un signal au lieu d'une enveloppe spectrale décrivant la valeur efficace par sous-trame.
De plus, l'étape de codage à longueur fixe mise en compétition avec le codage de Huffman différentiel peut être remplacée par une étape de codage à longueur variable, par exemple un codage de Hufman des indices de quantification au lieu de celui des indices différentiels. Le codage de Huffman peut également être remplacé par toute autre forme de codage sans perte, tel que codage arithmétique, codage de Tunstall, etc.

Claims

REVENDICATIONS
1. Procédé de codage binaire d'indices de quantification décrivant une enveloppe d'un signal, comprenant un premier mode de codage à longueur variable caractérisé en ce que le premier mode de codage intègre une détection de saturation d'enveloppe, et en ce que ledit procédé comprend également un second mode de codage, effectué parallèlement au premier mode de codage et une sélection retenant un des deux modes de codage en fonction d'un critère de longueur de code et du résultat de la détection de saturation d'enveloppe du premier mode de codage.
2. Procédé selon la revendication 1 , caractérisé en ce que la sélection est telle que le second mode de codage est retenu si au moins une des conditions suivantes est vérifiée:
- la longueur de code du second mode de codage est plus courte que la longueur de code du premier mode de codage;
- la détection de saturation d'enveloppe du premier mode de codage indique une saturation.
3. Procédé selon l'une des revendications 1 ou 2, caractérisé en ce que ledit procédé comprend également une étape de génération d'un indicateur du mode de codage retenu.
4. Procédé selon la revendication 3, caractérisé en ce que ledit indicateur est constitué par un bit unique.
5. Procédé selon l'une quelconque des revendications 1 à 4, caractérisé en ce que ledit second mode de codage est un codage binaire naturel à longueur fixe.
6. Procédé selon l'une quelconque des revendications 1 à 5, caractérisé en ce que ledit premier mode de codage à longueur variable est un codage différentiel à longueur variable.
7. Procédé selon l'une quelconque de revendications 1 à 6, caractérisé en ce que ledit premier mode de codage à longueur variable est un codage de Huffman différentiel.
8. Procédé selon l'une quelconque des revendications 1 à 7, caractérisé en ce que lesdits indices de quantification sont obtenus par quantification scalaire d'une enveloppe fréquentielle décrivant l'énergie en sous-bandes dudit signal.
9. Procédé selon l'une quelconque des revendications 1 à 7, caractérisé en ce que lesdits indices de quantification sont obtenus par quantification scalaire d'une enveloppe temporelle décrivant l'énergie en sous-trames dudit signal.
10. Procédé selon l'une des revendications 8 ou 9, caractérisé en ce que la première sous-bande ou sous-trame est codée selon un codage à longueur fixe, et en ce que l'énergie différentielle d'une sous-bande ou sous-trame par rapport à la précédente est codée selon le codage à longueur variable.
1 1. Procédé de décodage d'une enveloppe d'un signal, ladite enveloppe étant codée au moyen du procédé de codage binaire selon l'une quelconque des revendications 2 à 10, caractérisé en ce que ledit procédé de décodage comprend une étape de détection dudit indicateur du mode de codage retenu et une étape de décodage selon le mode de codage retenu.
12. Module (402) de codage binaire d'une enveloppe d'un signal, comprenant un module (502) de codage d'un premier mode à longueur variable, caractérisé en ce que le module de codage d'un premier mode intègre un détecteur de saturation d'enveloppe et en ce que ledit module (402) de codage comprend également un deuxième module (503) de codage d'un second mode, disposé en parallèle au module (502) de codage du premier mode, et un sélecteur (504) de mode apte à retenir un des deux modes de codage, en fonction d'un critère de longueur de code et du résultat issu du détecteur de saturation d'enveloppe.
13. Module selon la revendication 12, caractérisé en ce que ledit sélecteur (504) de mode est apte à générer un indicateur du mode de codage retenu.
14. Module (701 ) de décodage d'une enveloppe d'un signal, ladite enveloppe étant codée au moyen du module de codage binaire selon la revendication 13, ledit module de décodage comprenant un module (808) de décodage d'un premier mode à longueur variable, caractérisé en ce que ledit module (701 ) de décodage comprend également un deuxième module (809) de décodage d'un second mode, disposé en parallèle audit module (808) de décodage du premier mode, et un détecteur (806) de mode apte à détecter ledit indicateur du mode de codage et à activer le module (808, 809) de décodage correspondant à l'indicateur détecté.
15. Application du procédé de codage selon l'une quelconque des revendications 1 à 10 et du module de codage selon l'une quelconque des revendications 12 à 13 au codage par transformée de signaux audiofréquences.
16. Application selon la revendication 15, caractérisée en ce que ladite transformée est une transformée MDCT.
17. Programme comprenant des instructions enregistrées sur un support lisible par un ordinateur pour mettre en œuvre les étapes du procédé selon les revendications 1 à 10, lorsque ledit programme est exécuté sur un ordinateur.
PCT/FR2007/050781 2006-02-24 2007-02-13 Procede de codage binaire d'indices de quantification d'une enveloppe d'un signal, procede de decodage d'une enveloppe d'un signal et modules de codage et decodage correspondants WO2007096551A2 (fr)

Priority Applications (7)

Application Number Priority Date Filing Date Title
BRPI0708267-3A BRPI0708267A2 (pt) 2006-02-24 2007-02-13 método de codificação binária de ìndices de quantificação de um envelope de sinal, método de decodificação de um envelope de sinal, e módulos de codificação e decodificação correspondentes
EP07731606A EP1989707A2 (fr) 2006-02-24 2007-02-13 Procede de codage binaire d'indices de quantification d'une enveloppe d'un signal, procede de decodage d'une enveloppe d'un signal et modules de codage et decodage correspondants
JP2008555850A JP5235684B2 (ja) 2006-02-24 2007-02-13 信号包絡線の量子化インデックスをバイナリ符号化する方法、信号包絡線を復号化する方法、および、対応する符号化および復号化モジュール
CN2007800066863A CN101390158B (zh) 2006-02-24 2007-02-13 量化索引的编码方法、解码信号包络方法、编解码模块
US12/280,644 US8315880B2 (en) 2006-02-24 2007-02-13 Method for binary coding of quantization indices of a signal envelope, method for decoding a signal envelope and corresponding coding and decoding modules
KR1020087023295A KR101364979B1 (ko) 2006-02-24 2007-02-13 신호 엔벨로프의 양자화 인덱스들의 이진 코딩 방법과 신호엔벨로프의 디코딩 방법, 및 대응하는 코딩 모듈과 디코딩모듈
MX2008010836A MX2008010836A (es) 2006-02-24 2007-02-13 Un metodo para codificacion binaria de indices de cuantificacion de una envoltura de señal, un metodo para descodificar una envoltura de señal, y modulos de codificacion y descodificacion correspondiente.

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
FR0650638 2006-02-24
FR0650638 2006-02-24

Publications (2)

Publication Number Publication Date
WO2007096551A2 true WO2007096551A2 (fr) 2007-08-30
WO2007096551A3 WO2007096551A3 (fr) 2007-11-01

Family

ID=37192313

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/FR2007/050781 WO2007096551A2 (fr) 2006-02-24 2007-02-13 Procede de codage binaire d'indices de quantification d'une enveloppe d'un signal, procede de decodage d'une enveloppe d'un signal et modules de codage et decodage correspondants

Country Status (9)

Country Link
US (1) US8315880B2 (fr)
EP (1) EP1989707A2 (fr)
JP (1) JP5235684B2 (fr)
KR (1) KR101364979B1 (fr)
CN (1) CN101390158B (fr)
BR (1) BRPI0708267A2 (fr)
MX (1) MX2008010836A (fr)
RU (1) RU2420816C2 (fr)
WO (1) WO2007096551A2 (fr)

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8688442B2 (en) 2009-09-30 2014-04-01 Panasonic Corporation Audio decoding apparatus, audio coding apparatus, and system comprising the apparatuses
US9858934B2 (en) 2011-06-01 2018-01-02 Samsung Electronics Co., Ltd. Audio-encoding method and apparatus, audio-decoding method and apparatus, recoding medium thereof, and multimedia device employing same
US10424304B2 (en) 2011-10-21 2019-09-24 Samsung Electronics Co., Ltd. Energy lossless-encoding method and apparatus, audio encoding method and apparatus, energy lossless-decoding method and apparatus, and audio decoding method and apparatus
CN110709927A (zh) * 2017-06-07 2020-01-17 日本电信电话株式会社 编码装置、解码装置、平滑化装置、逆平滑化装置、其方法及程序

Families Citing this family (23)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR100889750B1 (ko) * 2007-05-17 2009-03-24 한국전자통신연구원 오디오 신호의 무손실 부호화/복호화 장치 및 그 방법
EP2263388B1 (fr) * 2008-04-08 2014-02-12 Med-El Elektromedizinische Geräte GmbH Stimulation électrique du nerf acoustique avec une structure fine cohérente
CN102256139B (zh) * 2010-05-19 2013-10-02 晨星软件研发(深圳)有限公司 媒体编码系统、量化系数编码装置及量化系数编码方法
EP4322161A3 (fr) 2011-04-20 2024-05-01 Panasonic Holdings Corporation Dispositif et procédé d'exécution de codage de huffman
CN103854653B (zh) * 2012-12-06 2016-12-28 华为技术有限公司 信号解码的方法和设备
JP2016512727A (ja) * 2013-03-15 2016-05-09 コンフォーミス・インコーポレイテッドConforMIS, Inc. 後方安定型膝関節インプラント部品及び器具
EP4290510A3 (fr) 2013-05-24 2024-02-14 Dolby International AB Codeur et décodeur audio
PT3008726T (pt) * 2013-06-10 2017-11-24 Fraunhofer Ges Forschung Aparelho e método de codificação, processamento e descodificação de envelope de sinal de áudio por modelação da representação de soma cumulativa empregando codificação e quantização de distribuição
MX353188B (es) 2013-06-10 2018-01-05 Fraunhofer Ges Forschung Aparato y método para codificación, procesamiento y decodificación de la envolvente de la señal de audio mediante división de la envolvente de la señal de audio, mediante el uso de cuantificación de distribución y codificación.
CN108198564B (zh) 2013-07-01 2021-02-26 华为技术有限公司 信号编码和解码方法以及设备
JP6001814B1 (ja) * 2013-08-28 2016-10-05 ドルビー ラボラトリーズ ライセンシング コーポレイション ハイブリッドの波形符号化およびパラメトリック符号化発話向上
US10468033B2 (en) * 2013-09-13 2019-11-05 Samsung Electronics Co., Ltd. Energy lossless coding method and apparatus, signal coding method and apparatus, energy lossless decoding method and apparatus, and signal decoding method and apparatus
EP3046105B1 (fr) * 2013-09-13 2020-01-15 Samsung Electronics Co., Ltd. Procédé de codage sans perte
CN110634495B (zh) 2013-09-16 2023-07-07 三星电子株式会社 信号编码方法和装置以及信号解码方法和装置
PL3696812T3 (pl) * 2014-05-01 2021-09-27 Nippon Telegraph And Telephone Corporation Koder, dekoder, sposób kodowania, sposób dekodowania, program kodujący, program dekodujący i nośnik rejestrujący
CN106572911B (zh) * 2014-06-24 2020-07-21 国立大学法人爱媛大学 人工膝关节
CN111968655B (zh) 2014-07-28 2023-11-10 三星电子株式会社 信号编码方法和装置以及信号解码方法和装置
EP3405951B1 (fr) 2016-01-22 2019-11-13 Fraunhofer Gesellschaft zur Förderung der Angewand Procédés et dispositifs de codage et décodage d'un signal audio multicanal utilisant une synchronisation des contrôles de trames
CN107342090B (zh) * 2016-04-29 2020-08-25 华为技术有限公司 一种音频信号编码、解码方法及音频信号编码器、解码器
GB2559200A (en) * 2017-01-31 2018-08-01 Nokia Technologies Oy Stereo audio signal encoder
BR112021013726A2 (pt) * 2019-01-13 2021-09-21 Huawei Technologies Co., Ltd. Método implementado por computador para realizar quantização residual, dispositivo eletrônico e meio legível por computador não transitório
GB2587196A (en) * 2019-09-13 2021-03-24 Nokia Technologies Oy Determination of spatial audio parameter encoding and associated decoding
WO2021120067A1 (fr) * 2019-12-18 2021-06-24 深圳市大疆创新科技有限公司 Procédé de codage de données, procédé de décodage de données, procédé de traitement de données, codeur, décodeur, système, plateforme mobile, et support lisible par ordinateur

Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2005083889A1 (fr) 2004-01-30 2005-09-09 France Telecom Quantification vectorielle en dimension et resolution variables

Family Cites Families (21)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US4815068A (en) * 1987-08-07 1989-03-21 Dolby Ray Milton Audio encoder for use with more than one decoder each having different characteristics
WO1989012292A1 (fr) * 1988-06-08 1989-12-14 Fujitsu Limited Appareil codeur/decodeur
JPH0783315B2 (ja) * 1988-09-26 1995-09-06 富士通株式会社 可変レート音声信号符号化方式
JPH05334038A (ja) * 1992-06-04 1993-12-17 Toshiba Corp データの符号化及び復元処理装置
US5924064A (en) 1996-10-07 1999-07-13 Picturetel Corporation Variable length coding using a plurality of region bit allocation patterns
JP2000151413A (ja) * 1998-11-10 2000-05-30 Matsushita Electric Ind Co Ltd オーディオ符号化における適応ダイナミック可変ビット割り当て方法
DE60011606T3 (de) * 1999-04-16 2008-01-24 Dolby Laboratories Licensing Corp., San Francisco Audiokodierung mit verstärkungsadaptiver quantisierung und symbolen verschiedener länge
JP3323175B2 (ja) * 1999-04-20 2002-09-09 松下電器産業株式会社 符号化装置
JP2001075600A (ja) * 1999-09-07 2001-03-23 Mitsubishi Electric Corp 音声符号化装置および音声復号化装置
US6625226B1 (en) * 1999-12-03 2003-09-23 Allen Gersho Variable bit rate coder, and associated method, for a communication station operable in a communication system
DE60135487D1 (de) * 2000-12-22 2008-10-02 Sony Corp Codierer
JP3580251B2 (ja) 2000-12-27 2004-10-20 日本電気株式会社 データ圧縮装置及び圧縮方法並びにその制御プログラムを記録した記録媒体
US6850179B2 (en) * 2001-06-15 2005-02-01 Sony Corporation Encoding apparatus and encoding method
BR0206202A (pt) * 2001-10-26 2004-02-03 Koninklije Philips Electronics Métodos para codificar um sinal de áudio e para decodificar um fluxo de áudio, codificador de áudio, reprodutor de áudio, sistema de áudio, fluxo de áudio, e, meio de armazenamento
DE60212600T2 (de) * 2001-11-14 2007-07-05 Matsushita Electric Industrial Co., Ltd., Kadoma Audiocodierung und decodierung
US6845360B2 (en) * 2002-11-22 2005-01-18 Arbitron Inc. Encoding multiple messages in audio data and detecting same
FI114071B (fi) * 2003-01-13 2004-07-30 Nokia Corp Kuvien käsitteleminen rajoitetulla bittimäärällä
DE602004023917D1 (de) * 2003-02-06 2009-12-17 Dolby Lab Licensing Corp Kontinuierliche audiodatensicherung
US7739120B2 (en) * 2004-05-17 2010-06-15 Nokia Corporation Selection of coding models for encoding an audio signal
US7596486B2 (en) * 2004-05-19 2009-09-29 Nokia Corporation Encoding an audio signal using different audio coder modes
CN101124626B (zh) * 2004-09-17 2011-07-06 皇家飞利浦电子股份有限公司 用于最小化感知失真的组合音频编码

Patent Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2005083889A1 (fr) 2004-01-30 2005-09-09 France Telecom Quantification vectorielle en dimension et resolution variables

Non-Patent Citations (6)

* Cited by examiner, † Cited by third party
Title
J. JOHNSTON: "A filter family designed for use in quadrature mirror filter banks", ICASSP., vol. 5, 1980, pages 291 - 294
P. DUHAMEL; Y. MAHIEUX; J.P. PETIT: "A fast algorithm for the implementation of filter banks based on 'time domain aliasing cancellation", ICASSP, vol. 3, 1991, pages 2209 - 2212
P. DUHAMEL; Y. MAHIEUX; J.P. PETIT: "A fast algorithm for the implementation of filter banks based on time domain aliasing cancellation", ICASSP, vol. 3, 1991, pages 2209 - 2212
See also references of EP1989707A2
WB. KLEIJN; K.K. PALIWAL: "Speech Coding and Synthesis", 1995, ELSEVIER
Y. MAHIEUX; J.P. PETIT: "Transform coding of audio signais at 64 kbit/s", IEEE GLOBECOM, vol. 1, 1990, pages 518 - 522

Cited By (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8688442B2 (en) 2009-09-30 2014-04-01 Panasonic Corporation Audio decoding apparatus, audio coding apparatus, and system comprising the apparatuses
US9858934B2 (en) 2011-06-01 2018-01-02 Samsung Electronics Co., Ltd. Audio-encoding method and apparatus, audio-decoding method and apparatus, recoding medium thereof, and multimedia device employing same
US10424304B2 (en) 2011-10-21 2019-09-24 Samsung Electronics Co., Ltd. Energy lossless-encoding method and apparatus, audio encoding method and apparatus, energy lossless-decoding method and apparatus, and audio decoding method and apparatus
US10878827B2 (en) 2011-10-21 2020-12-29 Samsung Electronics Co.. Ltd. Energy lossless-encoding method and apparatus, audio encoding method and apparatus, energy lossless-decoding method and apparatus, and audio decoding method and apparatus
US11355129B2 (en) 2011-10-21 2022-06-07 Samsung Electronics Co., Ltd. Energy lossless-encoding method and apparatus, audio encoding method and apparatus, energy lossless-decoding method and apparatus, and audio decoding method and apparatus
CN110709927A (zh) * 2017-06-07 2020-01-17 日本电信电话株式会社 编码装置、解码装置、平滑化装置、逆平滑化装置、其方法及程序
EP3637418A4 (fr) * 2017-06-07 2021-02-24 Nippon Telegraph And Telephone Corporation Dispositif de codage, dispositif de décodage, dispositif de lissage, dispositif de lissage inverse, procédés associés et programme
US11087774B2 (en) 2017-06-07 2021-08-10 Nippon Telegraph And Telephone Corporation Encoding apparatus, decoding apparatus, smoothing apparatus, inverse smoothing apparatus, methods therefor, and recording media
CN110709927B (zh) * 2017-06-07 2022-11-01 日本电信电话株式会社 编码装置、解码装置、平滑化装置、逆平滑化装置、其方法及记录介质

Also Published As

Publication number Publication date
BRPI0708267A2 (pt) 2011-05-24
RU2008137987A (ru) 2010-03-27
RU2420816C2 (ru) 2011-06-10
EP1989707A2 (fr) 2008-11-12
KR20080107428A (ko) 2008-12-10
MX2008010836A (es) 2008-11-26
CN101390158B (zh) 2012-03-14
KR101364979B1 (ko) 2014-02-20
WO2007096551A3 (fr) 2007-11-01
US8315880B2 (en) 2012-11-20
US20090030678A1 (en) 2009-01-29
JP5235684B2 (ja) 2013-07-10
JP2009527785A (ja) 2009-07-30
CN101390158A (zh) 2009-03-18

Similar Documents

Publication Publication Date Title
WO2007096551A2 (fr) Procede de codage binaire d&#39;indices de quantification d&#39;une enveloppe d&#39;un signal, procede de decodage d&#39;une enveloppe d&#39;un signal et modules de codage et decodage correspondants
EP1989706B1 (fr) Dispositif de ponderation perceptuelle en codage/decodage audio
EP1905010B1 (fr) Codage/décodage audio hiérarchique
EP2452337B1 (fr) Allocation de bits dans un codage/décodage d&#39;amélioration d&#39;un codage/décodage hiérarchique de signaux audionumériques
EP1907812B1 (fr) Procede de commutation de debit en decodage audio scalable en debit et largeur de bande
EP2115741B1 (fr) Codage/decodage perfectionnes de signaux audionumeriques
EP2366177B1 (fr) Codage de signal audionumerique avec mise en forme du bruit dans un codeur hierarchique
EP2452336B1 (fr) Codage/décodage perfectionne de signaux audionumériques
AU2006332046A1 (en) Scalable compressed audio bit stream and codec using a hierarchical filterbank and multichannel joint coding
FR2761801A1 (fr) Methode de codage audio et dispositif
EP1692689A1 (fr) Procede de codage multiple optimise
WO2007107670A2 (fr) Procede de post-traitement d&#39;un signal dans un decodeur audio
WO2012080649A1 (fr) Codage perfectionne d&#39;un etage d&#39;amelioration dans un codeur hierarchique
EP2171713B1 (fr) Codage de signaux audionumériques
CA2296006A1 (fr) Codeur audio
AU2011205144B2 (en) Scalable compressed audio bit stream and codec using a hierarchical filterbank and multichannel joint coding
WO2009080982A2 (fr) Traitement d&#39;erreurs binaires dans une trame binaire audionumerique
FR2737360A1 (fr) Procedes de codage et de decodage de signaux audiofrequence, codeur et decodeur pour la mise en oeuvre de tels procedes

Legal Events

Date Code Title Description
121 Ep: the epo has been informed by wipo that ep was designated in this application
WWE Wipo information: entry into national phase

Ref document number: 6397/DELNP/2008

Country of ref document: IN

WWE Wipo information: entry into national phase

Ref document number: 2008555850

Country of ref document: JP

Ref document number: MX/a/2008/010836

Country of ref document: MX

WWE Wipo information: entry into national phase

Ref document number: 12280644

Country of ref document: US

Ref document number: 200780006686.3

Country of ref document: CN

NENP Non-entry into the national phase

Ref country code: DE

WWE Wipo information: entry into national phase

Ref document number: 2007731606

Country of ref document: EP

ENP Entry into the national phase

Ref document number: 2008137987

Country of ref document: RU

Kind code of ref document: A

WWE Wipo information: entry into national phase

Ref document number: 1020087023295

Country of ref document: KR

ENP Entry into the national phase

Ref document number: PI0708267

Country of ref document: BR

Kind code of ref document: A2

Effective date: 20080825