WO2004070706A1 - Procede de codage et de decodage audio a debit variable - Google Patents

Procede de codage et de decodage audio a debit variable Download PDF

Info

Publication number
WO2004070706A1
WO2004070706A1 PCT/FR2003/003870 FR0303870W WO2004070706A1 WO 2004070706 A1 WO2004070706 A1 WO 2004070706A1 FR 0303870 W FR0303870 W FR 0303870W WO 2004070706 A1 WO2004070706 A1 WO 2004070706A1
Authority
WO
WIPO (PCT)
Prior art keywords
parameters
subset
coding bits
bits
coding
Prior art date
Application number
PCT/FR2003/003870
Other languages
English (en)
Inventor
Balazs Kovesi
Dominique Massaloux
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 KR1020057012791A priority Critical patent/KR101061404B1/ko
Priority to BR0317954-0A priority patent/BR0317954A/pt
Priority to CA2512179A priority patent/CA2512179C/fr
Priority to US10/541,340 priority patent/US7457742B2/en
Priority to CN2003801084396A priority patent/CN1735928B/zh
Priority to DE60319590T priority patent/DE60319590T2/de
Priority to EP03799688A priority patent/EP1581930B1/fr
Priority to AU2003299395A priority patent/AU2003299395B2/en
Priority to MXPA05007356A priority patent/MXPA05007356A/es
Priority to JP2004567790A priority patent/JP4390208B2/ja
Publication of WO2004070706A1 publication Critical patent/WO2004070706A1/fr

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/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
    • 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
    • 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

Definitions

  • the present invention relates to devices for coding and decoding audio signals, intended in particular to take place in applications for the transmission or storage of digitized and compressed audio signals (speech and / or sounds).
  • this invention relates to audio coding systems having the capacity to provide various bit rates, also called multi-bit coding systems.
  • Such systems are distinguished from fixed rate coders by their ability to modify the coding rate, possibly during processing, which is particularly suitable for transmission over heterogeneous access networks: whether these are networks of the type IP mixing fixed and mobile access, high speed (ADSL), low speed (PSTN, GPRS modems) or involving terminals of varying capacities (mobile, PC, ).
  • Multi-bit "switchable" coders are based on a coding structure belonging to a technological family (temporal or frequency coding, for example: CELP, sinusoidal, or transform), in which a bit rate indication is simultaneously supplied to the coder and to the decoder .
  • the coder uses this information to select the parts of the algorithm and the tables relevant to the chosen bit rate.
  • the decoder operates symmetrically. Numerous switchable multi-bit coding structures have been proposed for audio coding.
  • a base layer also called “hierarchical” coding systems, also called “scalables”, the binary data resulting from the coding operation is distributed in successive layers.
  • a base layer also called
  • core is formed of the binary elements absolutely necessary for the decoding of the binary train, and determining a minimum quality of decoding.
  • the following layers make it possible to progressively improve the quality of the signal resulting from the decoding operation, each new layer bringing new information, which, exploited by the decoder, provide a signal of increasing quality as output.
  • One of the peculiarities of hierarchical coding is the possibility offered to intervene at any level of the transmission or storage chain to delete part of the bit stream without having to provide any particular indication to the coder or the decoder.
  • the decoder uses the binary information it receives and produces a signal of corresponding quality.
  • Hierarchical coding structures operate from a single type of coder, designed to deliver hierarchical coded information.
  • additional layers improve the quality of the output signal without modifying the bandwidth, we speak rather of "nested coders" (see for example RD lacovo et al., "Embedded CELP Coding for Variable Bit-Rate Between 6.4 and 9.6 kbit / s ", Proc. ICASSP 1991, pp. 681-686).
  • this type of encoder does not allow large differences between the lowest and the highest speed. proposed.
  • the hierarchy is often used to gradually increase the bandwidth of the signal: the core provides a baseband signal, for example telephone (300-3400 Hz), and the following layers allow the coding of additional frequency bands (for example, band widened up to 7 kHz, HiFi band up to 20 kHz or intermediate, ).
  • Subband coders or coders using a time-frequency transformation as described in the documents "Subband / transform coding using filter banks designs based on time domain aliasing cancellation" by J.P. Princen et al. (Proc. IEEE ICASSP-87, pp. 2161-2164) and "High Quality Audio Transform Coding at 64 kbit / s", by Y. Mahieux et al. (IEEE Trans. Commun, Vol. 42, No. 11, November 1994, pp. 3010-3019), are particularly suitable for such operations.
  • each stage consisting of a sub-coder.
  • the sub-coder of the stage of a given level can either encode parts of the signal not coded by the preceding stages, or encode the coding residue of the preceding stage, the residue is obtained by subtracting the decoded signal from the signal original.
  • CELP and time-frequency transform are particularly effective for scanning large ranges of flow rates.
  • each layer corresponds to the encoding of certain parameters, and the granularity of the hierarchical binary train depends on the bit rate assigned to these parameters (typically a layer can contain around a few tens of bits per frame, a signal frame consisting of a certain number of signal samples over a given duration, the example described below considering a frame of 960 samples corresponding to 60 ms of signal).
  • the bandwidth of the decoded signals can vary depending on the level of the binary element layers, the modification of the online bit rate can produce annoying artifacts during listening.
  • the object of the present invention is in particular to propose a multi-bit coding solution which overcomes the drawbacks mentioned in the case of the use of existing switchable and hierarchical codings.
  • the invention thus provides a method of coding a digital audio signal frame into an output binary sequence, in which a maximum number Nmax of coding bits is defined for a set of parameters which can be calculated from the signal frame, composed of a first and a second subset.
  • the proposed process includes the following steps:
  • the parameters of the first subset are calculated, and these parameters are coded on a number N0 of coding bits such that N0 ⁇ Nmax;
  • the allocation and / or the order of classification of the Nmax - N0 coding bits are determined as a function of the coded parameters of the first subset.
  • the coding method further comprises the following steps in response to the indication of a number N of bits of the output binary sequence available for coding said set of parameters, with N0 ⁇ N ⁇ Nmax:
  • the parameters of the second subset to which the N - N0 coding bits classified the first are allocated in said order are selected; - the selected parameters of the second subset are calculated, and these parameters are coded to produce the N - N0 coding bits classified first;
  • the method according to the invention makes it possible to define a multi-bit coding, which will operate at least in a range corresponding for each frame to a number of bits ranging from N0 to Nmax.
  • the number N of bits of the output binary sequence is strictly less than Nmax.
  • the coder has this remarkable fact that the allocation of the bits used does not refer to the effective output rate of the coder, but to another number Nmax agreed with the decoder.
  • Nmax N according to the instantaneous speed available on a transmission channel.
  • the output sequence of such a switchable multi-bit coder could be processed by a decoder which would not receive the entire sequence, as soon as it is able to recover the structure of the coding bits of the second subset thanks to the knowledge of Nmax.
  • N Nmax
  • N Nmax
  • the decoder When reading N 'bits of this content stored at a lower bit rate, the decoder will be able to find the structure of the coding bits of the second subset as soon as N' ⁇ N0.
  • the order of classification of the coding bits allocated to the parameters of the second subset can be a pre-established order.
  • the order of classification of the coding bits allocated to the parameters of the second subset is variable. It can in particular be an order of decreasing importance determined as a function of at least the coded parameters of the first subset.
  • the decoder which will receive a binary sequence of N 1 bits for the frame, with N0 ⁇ N ' ⁇ N ⁇ Nmax, will be able to deduce this order from the N0 bits received for the coding of the first subset.
  • Nmax - N0 bits to the coding of the parameters of the second subset can be carried out in a fixed manner (in this case, the order of classification of these bits will depend at least on the coded parameters of the first subset).
  • the allocation of Nmax - N0 bits to the coding of the parameters of the second subset is a function of the coded parameters of the first subset.
  • this order of classification of the coding bits allocated to the parameters of the second subset is determined using at least one psychoacoustic criterion as a function of the coded parameters of the first subset.
  • the parameters of the second subset may relate to spectral bands of the signal.
  • the method advantageously comprises a step of estimating a spectral envelope of the coded signal from the coded parameters of the first subset and a step of calculating a frequency masking curve by applying a model of auditory perception.
  • the psychoacoustic criterion refers to the level of the estimated spectral envelope with respect to the masking curve in each spectral band.
  • the coding bits in the output sequence are ordered so that the N0 coding bits of the first sub- set precede the N - NO coding bits of the selected parameters of the second subset and the respective coding bits of the selected parameters of the second subset appear therein in the order determined for said coding bits. This allows, in case the binary sequence is truncated, to receive the most important part.
  • the number N can vary from one frame to another, in particular depending for example on the available capacity of the transmission resource.
  • the multi-bit audio coding according to the present invention may be used in a very flexible switchable or hierarchical mode, since any number of bits to be transmitted chosen freely between N0 and Nmax. Can be selected at any time, that is to say frame by frame.
  • the coding of the parameters of the first subset can be at variable bit rate, which varies the number N0 from one frame to another. This makes it possible to best adjust the distribution of the bits as a function of the frames to be coded.
  • the first subset includes parameters calculated by an encoder core.
  • the coding core has an operating frequency band lower than the bandwidth of the signal to be coded, and the first subset further comprises energy levels of the audio signal associated with frequency bands greater than the operating band of the core.
  • encoder This type of structure is that of a two-level hierarchical coder, which delivers, for example via the coding kernel, a coded signal of a quality deemed sufficient and which, depending on the available bit rate, completes the coding carried out by the coding kernel with additional information from the coding method according to the invention.
  • the coding bits of the first subset in the output sequence are then ordered so that the coding bits of the parameters calculated by the coding core are immediately followed by the coding bits of the energy levels associated with the bands. higher frequencies. This ensures the same bandwidth for the frames successively coded as soon as the decoder receives enough bits to have information from the coding core and coded energy levels associated with the higher frequency bands.
  • a difference signal is estimated between the signal to be coded and a synthesis signal derived from the coded parameters produced by the coding core, and the first subset further comprises energy levels of the difference signal. associated with frequency bands included in the operating band of the encoder core.
  • a second aspect of the invention relates to a method of decoding an input binary sequence for synthesizing a digital audio signal corresponding to the decoding of a coded frame according to the coding method of the invention.
  • a maximum number Nmax of coding bits is defined for a set of parameters for describing a signal frame, composed of first and second subsets.
  • the input sequence comprises, for a signal frame, a number N ′ of coding bits of the set of parameters, with N 1 ⁇ Nmax.
  • the decoding method according to the invention comprises the following steps:
  • the allocation and / or the order of classification of the Nmax - N0 coding bits are determined as a function of the parameters recovered from the first subset.
  • the decoding method further comprises the following steps:
  • the selected parameters of the second subset are recovered on the basis of said N '- NO coding bits extracted; and - the signal frame is synthesized using the parameters recovered from the first and second subsets.
  • This decoding method is advantageously associated with methods for regenerating the parameters which are lacking due to the truncation of the sequence of Nmax bits produced, virtually or not, by the coder.
  • a third aspect of the invention relates to an audio coder, comprising digital signal processing means arranged to implement a coding method according to the invention.
  • Another aspect of the invention relates to an audio decoder, comprising digital signal processing means arranged to implement a decoding method according to the invention.
  • FIG. 1 is a block diagram of an example of audio coder according to the invention.
  • FIG. 2 represents a binary output sequence of N bits in an embodiment of the invention.
  • FIG. 3 is a block diagram of an audio decoder according to the invention.
  • the coder shown in Figure 1 has a hierarchical structure with two coding stages.
  • a first coding stage 1 consists for example of a coding core in the telephone band (300-3400 Hz) of the CELP type.
  • This coder is in the example considered a G.723.1 coder standardized by the ITU-T ("International Telecommunication Union") in fixed mode at 6.4 kbit / s. He calculates G.723.1 parameters according to the standard and quantifies them using 192 P1 coding bits per 30 ms frame.
  • the second coding stage 2 makes it possible to increase the bandwidth towards the widened band (50-7000 Hz), operates on the coding residue E of the first stage, provided by a subtractor 3 in the diagram of FIG. 1.
  • a signal synchronization module 4 delays the audio signal frame S by the time taken by the processing of the coding core 1. Its output is addressed to the subtractor 3 which subtracts from it the synthetic signal S 'equal to the output of the decoder core operating on the base quantized parameters as represented by the output bits P1 of the coding core.
  • the coder 1 incorporates a local decoder providing S '.
  • the audio signal to be coded S has for example a bandwidth of
  • a frame consists for example of 960 samples, that is to say 60 ms of signal or two elementary frames of the G.723.1 coding core. As the latter operates on signals sampled at
  • the signal S is subsampled by a factor of 2 at the input of the coding core 1.
  • the synthetic signal S ' is oversampled at 16 kHz at the output of the coding core 1.
  • the second stage 2 operates for example on elementary frames, or sub-frames, of 20 ms (320 samples at 16 kHz).
  • the second stage 2 comprises a time-frequency transformation module 5, for example of the MDCT ("Modified Discrete Cosine Transform") type to which the residue E obtained by the subtractor 3 is addressed.
  • MDCT Modified Discrete Cosine Transform
  • the operation of the modules 3 and 5 shown in Figure 1 can be achieved by performing the following operations for each 20 ms subframe: - MDCT transformation of the input signal S delayed by the module 4, which provides 320 MDCT coefficients.
  • the spectrum being limited to 7225 Hz, only the first 289 MDCT coefficients are different from 0;
  • the resulting spectrum is distributed into several bands of different widths by a module 6.
  • the bandwidth of the coded G.723.1 can be subdivided into 21 bands while the higher frequencies are distributed into 11 additional bands.
  • the residue E is identical to the input signal S.
  • the quantized scale factors are denoted FQ in FIG. 1.
  • the difference Nmax - N0 1536 - N2 (1) - N2 (2) - N2 (3) is available to more finely quantify the spectra of the bands.
  • a module 8 normalizes the MDCT coefficients distributed into bands by the module 6, by dividing them by the quantized scale factors FQ respectively determined for these bands.
  • the spectra thus normalized are supplied to the quantization module 9 which uses a vector quantization scheme of known type.
  • the quantization bits from module 9 are denoted P3 in FIG. 1.
  • An output multiplexer 10 collects the bits P1, P2 and P3 from the modules 1, 7 and 9 to form the binary sequence ⁇ of the encoder output.
  • the total number of bits N of the output sequence representing a current frame is not necessarily equal to Nmax. It can be lower.
  • the allocation of the quantization bits to the bands is carried out on the basis of the number Nmax.
  • this allocation is carried out for each subframe by the module 12 from the number Nmax - N0, quantified scale factors FQ and a spectral masking curve calculated by a module 11.
  • this last module 11 determines an approximate value of the original spectral envelope of the signal S from that of the difference signal, as quantified by the module 7, and that which it determines with the same resolution for the synthetic signal S 'resulting from the coding core. These last two envelopes can also be determined by a decoder which would only have the parameters of the first aforementioned subset. Thus the estimated spectral envelope of the signal S will also be available at the decoder.
  • the module 11 calculates a spectral masking curve by applying, in a manner known per se, a band-by-band auditory perception model to the estimated original spectral envelope. This curve 11 gives a level of masking for each band considered.
  • the module 12 performs a dynamic allocation of the Nmax - N0 bits remaining of the sequence ⁇ among the 3 * 32 bands of the three transformations
  • MDCT of the difference signal In the implementation of the invention presented here, according to a criterion of psychacoustic perceptual importance referring to the level of the estimated spectral envelope with respect to the masking curve in each band, a band is allocated to each band proportional to this level. Other classification criteria could be used.
  • the module 9 knows how many bits are to be considered for the quantization of each band in each sub-frame.
  • a scheduling of the bits representing the bands is carried out by a module 13 according to a criterion of perceptual importance.
  • the module 13 classifies the 3 x 32 bands in an order of decreasing importance which may be the decreasing order of the signal-to-mask ratios (ratio between the estimated spectral envelope and the masking curve in each band). This order is used for the construction of the binary sequence ⁇ in accordance with the invention.
  • the bands which are to be quantified by the module 9 are determined by selecting the bands classified first by the module 13 and retaining for each band selected a number of bits as determined by the module 12.
  • the MDCT coefficients of each selected band are quantified by the module 9, for example using a vector quantizer, in accordance with the number of bits allocated, to produce a total number of bits equal to N - N0.
  • the above coding method allows a decoding of the frame if the decoder receives N 'bits with N0 ⁇ N' ⁇ N. This number N 'will generally vary from one frame to another.
  • a decoder according to the invention is illustrated in FIG. 3.
  • a demultiplexer 20 separates the sequence of received bits ⁇ ′ to extract the coding bits P1 and P2 therefrom.
  • the 384 bits P1 are supplied to the decoder core 21 of type G.723.1 so that the latter synthesizes two frames of the basic signal S 1 in the telephone band.
  • the bits P2 are decoded according to the Huffman algorithm by a module 22 which thus recovers the quantized scale factors FQ for each of the 3 sub-frames.
  • a module 23 for calculating the masking curve receives the basic signal S ′ and the quantized scale factors FQ and produces the spectral masking levels for each of the 96 bands. From these masking levels, quantified scale factors FQ and knowledge of the number Nmax (as well as that of the number N0 which is deduced from the Huffman decoding of the bits P2 by the module 22), a module 24 determines an allocation of bits in the same way as the module 12 of FIG. 1. In addition, a module 25 proceeds to the scheduling of the bands according to the same classification criterion as the module 13 described with reference to FIG. 1.
  • the standardized MDCT coefficients relating to the missing bands can also be synthesized by interpolation or extrapolation as described below (module 27). These missing bands may have been eliminated by the coder due to a truncation at N ⁇ Nmax, or they may have been eliminated during transmission (N ' ⁇ N)
  • the normalized MDCT coefficients, synthesized by module 26 and / or module 27, are multiplied by their respective quantified scale factors (multiplier 28) before being presented to module 29 which performs the inverse frequency-time transformation of the transformation MDCT operated by module 5 of the encoder.
  • the resulting correction time signal is added to the synthetic signal S 'delivered by the decoder core 21
  • the decoder can synthesize a signal S even in cases where it does not receive the first N0 bits of the sequence.
  • the decoder performs three MDCT analyzes followed by three MDCT syntheses, allowing the memories of the MDCT transformation to be updated.
  • the output signal contains a telephone band quality signal. If the first 2 x N1 bits are not even received, the decoder considers the corresponding frame as erased and can use a known algorithm for concealing the erased frames.
  • the decoder can start to synthesize a signal in wide band. It can in particular proceed as follows.
  • the module 22 recovers the parts of the three spectral envelopes received.
  • the spectral envelope is corrected to regularize it by avoiding the holes due to the bands not received: the zero values in the upper part of the spectral envelopes FQ are for example replaced by the hundredth of the value of the masking curve calculated previously, so that they remain inaudible.
  • the full spectrum of the low bands and the spectral envelope of the high bands are known at this point.
  • the module 27 then generates the high spectrum.
  • the fine structure of these bands is generated by reflecting the fine structure of its known neighborhood before weighting by the scaling factors (multipliers 28).
  • the "known neighborhood" corresponds to the spectrum of the signal S 'produced by the decoder core
  • the synthesized signal is obtained in an enlarged band.
  • the decoder also receives at least part of the low spectral envelope of the difference signal (part c), it may or may not take this information into account to refine the spectral envelope in step 3.
  • the module 26 recovers some of the normalized MDCT coefficients according to the allocation and the scheduling indicated by modules 24 and 25. These MDCT coefficients therefore do not need to be interpolated as in step 5 above.
  • the process of steps 1 to 6 is applicable by the module 27 in the same manner as previously, the knowledge of the MDCT coefficients received for certain bands allowing a more reliable interpolation in step 5.
  • Unreceived bands may vary from one MDCT subframe to the next.
  • the "known neighborhood" of a missing band can correspond to the same band in another sub-frame where it does not miss, and / or to one or more closest bands in the frequency domain during the same sub- frame. It is also possible to regenerate a missing MDCT spectrum in a band for a sub-frame by making a weighted sum of evaluated contributions from several bands / sub-frames of the "known neighborhood".
  • the last coded parameter transmitted can, depending on the case, be transmitted completely or partially.
  • Two cases can then arise: either the coding structure adopted makes it possible to use the partial information received (case of scalar quantifiers, or vector quantization with partitioned dictionaries),

Abstract

Un maximum de Nmax bits de codage est défini pour un ensemble de paramètres calculables d'après une trame de signal. Les paramètres d'un premier sous-ensemble sont calculés et codés sur N0 bits, avec N0 < Nmax. On détermine une allocation de Nmax - N0 bits de codage pour les paramètres d'un second sous-ensemble, et on classe les bits de codage alloués aux paramètres du second sous-ensemble. On détermine l'allocation et/ou l'ordre de classement des bits de codage en fonction des paramètres codés du premier sous-ensemble. Pour un total de N bits disponibles pour le codage de l'ensemble de paramètres (N0 < N ≤ Nmax), on sélectionne les paramètres du second sous-ensemble auxquels sont alloués les N - N0 bits de codage classés les premiers dans ledit ordre. Ces paramètres sélectionnés sont calculés et codés pour produire les N - N0 bits. Les N0 bits de codage du premier sous-ensemble et les N - N0 bits de codage des paramètres sélectionnés du second sous-ensemble sont finalement insérés dans la séquence de sortie du codeur.

Description

A
PROCEDE DE CODAGE ET DE DECODAGE AUDIO A DEBIT VARIABLE
La présente invention concerne les dispositifs de codage et décodage des signaux audio, destinés notamment à prendre place dans des applications de transmission ou de stockage des signaux audio (parole et/ou sons) numérisés et compressés.
Plus particulièrement, cette invention est relative aux systèmes de codage audio ayant la capacité de fournir des débits variés, encore appelés systèmes de codage multidébit. De tels systèmes se distinguent des codeurs à débit fixe par leur capacité à modifier le débit du codage, éventuellement en cours de traitement, ce qui est particulièrement adapté à la transmission sur réseaux à accès hétérogènes: qu'il s'agisse de réseaux de type IP mélangeant des accès fixes et mobiles, hauts débits (ADSL), bas débits (modems RTC, GPRS) ou faisant intervenir des terminaux de capacités variables (mobiles, PC, ...).
On distingue essentiellement deux catégories de codeurs multidébit: celle des codeurs multidébit "commutables" et celle des codeurs "hiérarchiques".
Les codeurs multidébit "commutables" reposent sur une structure de codage appartenant à une famille technologique (codage temporel, ou fréquentiel, par exemple : CELP, sinusoïdal, ou par transformée), dans laquelle une indication de débit est simultanément fournie au codeur et au décodeur. Le codeur utilise cette information pour sélectionner les parties de l'algorithme et les tables pertinentes pour le débit choisi. Le décodeur opère de manière symétrique. De nombreuses structures de codage multidébit commutables ont été proposées pour le codage audio. C'est le cas par exemple des codeurs mobiles normalisés par l'organisation 3GPP ("3rd Génération Partnership Project"), le NB-AMR ("Narrow Band Adaptive Multi-Rate", Spécification Technique 3GPP TS 26.090, version 5.0.0, juin 2002) en bande téléphonique, ou le WB-AMR ("Wide Band Adaptive Multi-Rate", Spécification Technique 3GPP TS 26.190, version 5.1.0, décembre 2001) en bande élargie. Ces codeurs opèrent sur d'assez larges plages de débits (4,75 à 12,2 kbit/s pour le NB-AMR, et 6,60 à 23,85 kbit/s pour le WB-AMR), avec une granularité assez importante (8 débits pour le NB-AMR et 9 pour le WB-AMR). Cependant, le prix à payer pour cette flexibilité est une complexité de structure assez conséquente: pour parvenir à héberger tous ces débits, ces codeurs doivent supporter de nombreuses options différentes, des tables de quantification variées etc. La courbe des performances augmente progressivement avec le débit, mais la progression n'est pas linéaire et certains débits sont par essence mieux optimisés que d'autres.
Dans les systèmes de codage dits "hiérarchiques", encore appelés "scalables", les données binaires issues de l'opération de codage se répartissent en couches successives. Une couche de base, encore appelée
"noyau", est formée des éléments binaires absolument nécessaires au décodage du train binaire, et déterminant une qualité minimum de décodage.
Les couches suivantes permettent d'améliorer progressivement la qualité du signal issu de l'opération de décodage, chaque nouvelle couche amenant de nouvelles informations, qui, exploitées par le décodeur, fournissent en sortie un signal de qualité croissante.
L'une des particularités du codage hiérarchique est la possibilité offerte d'intervenir à n'importe quel niveau de la chaîne de transmission ou de stockage pour supprimer une partie du train binaire sans devoir fournir d'indication particulière au codeur ni au décodeur. Le décodeur utilise les informations binaires qu'il reçoit et produit un signal de qualité correspondante.
Le domaine des structures de codage hiérarchiques a donné lieu également à de nombreux travaux. Certaines structures de codage hiérarchiques fonctionnent à partir d'un seul de type de codeur, conçu pour délivrer des informations codées hiérarchisées. Lorsque les couches supplémentaires améliorent la qualité du signal de sortie sans modifier la bande passante, on parle plutôt de "codeurs imbriqués" (voir par exemple R.D. lacovo et al., "Embedded CELP Coding for Variable Bit-Rate Between 6.4 and 9.6 kbit/s", Proc. ICASSP 1991 , pp. 681-686). Ce type de codeurs ne permet cependant pas de grands écarts entre le plus bas et le plus haut débit proposés.
La hiérarchie est souvent utilisée pour augmenter progressivement la bande passante du signal : le noyau fournit un signal en bande de base, par exemple téléphonique (300-3400 Hz), et les couches suivantes permettent le codage de bandes fréquentielles supplémentaires (par exemple, bande élargie jusqu'à 7 kHz, bande HiFi jusqu'à 20 kHz ou intermédiaires, ...). Les codeurs en sous-bandes ou les codeurs utilisant une transformation temps-fréquence tels que décrit dans les documents "Subband/transform coding using filter banks designs based on time domain aliasing cancellation" de J.P. Princen et al. (Proc. IEEE ICASSP-87, pp. 2161-2164) et "High Quality Audio Transform Coding at 64 kbit/s", de Y. Mahieux et al. (IEEE Trans. Commun, Vol. 42, No. 11, novembre 1994, pp. 3010-3019), se prêtent particulièrement à de telles opérations.
Il est d'autre part fréquent d'utiliser une technique de codage différente pour le noyau et pour le ou les modules codant les couches supplémentaires, on parle alors de différents étages de codage, chaque étage étant constitué d'un sous-codeur. Le sous-codeur de l'étage d'un niveau donné pourra soit coder des parties du signal non codées par les étages précédents, soit coder le résidu de codage de l'étage précédent, le résidu est obtenu en soustrayant le signal décodé au signal original.
L'avantage de telles structures est qu'elles permettent de descendre à des débits relativement bas avec une qualité suffisante, tout en produisant une bonne qualité à haut débit. En effet, les techniques utilisées pour les bas débits ne sont généralement pas efficaces aux hauts débits et inversement.
De telles structures permettant d'utiliser deux technologies différentes
(par exemple CELP et transformée temps-fréquence, ...) sont particulièrement efficaces pour balayer de grandes plages de débits.
Cependant, les structures de codage hiérarchiques proposées dans l'art antérieur définissent précisément le débit attribué à chacune des couches intermédiaires. Chaque couche correspond à l'encodage de certains paramètres, et la granularité du train binaire hiérarchique dépend du débit attribué à ces paramètres (typiquement une couche peut contenir de l'ordre de quelques dizaines de bits par trame, une trame de signal étant constituée d'un certain nombre d'échantillons du signal sur une durée donnée, l'exemple décrit plus loin considérant une trame de 960 échantillons correspondant à 60 ms de signal).
De plus, lorsque la bande passante des signaux décodés peut varier selon le niveau des couches d'éléments binaires, la modification du débit en ligne peut produire des artefacts gênants lors de l'écoute.
La présente invention a notamment pour but de proposer une solution de codage multidébit qui pallie les inconvénients cités dans le cas de l'utilisation des codages commutables et hiérarchiques existants.
L'invention propose ainsi un procédé de codage d'une trame de signal audio numérique en une séquence binaire de sortie, dans lequel un nombre maximum Nmax de bits de codage est défini pour un ensemble de paramètres calculables d'après la trame de signal, composé d'un premier et d'un second sous-ensembles. Le procédé proposé comprend les étapes suivantes:
- on calcule les paramètres du premier sous-ensemble, et on code ces paramètres sur un nombre N0 de bits de codage tel que N0 < Nmax;
- on détermine une allocation de Nmax - N0 bits de codage pour les paramètres du second sous-ensemble; et
- on classe les Nmax - N0 bits de codage alloués aux paramètres du second sous-ensemble dans un ordre déterminé.
L'allocation et/ou l'ordre de classement des Nmax - N0 bits de codage sont déterminés en fonction des paramètres codés du premier sous-ensemble. Le procédé de codage comprend en outre les étapes suivantes en réponse à l'indication d'un nombre N de bits de la séquence binaire de sortie disponibles pour le codage dudit ensemble de paramètres, avec N0 < N < Nmax:
- on sélectionne les paramètres du second sous-ensemble auxquels sont alloués les N - N0 bits de codage classés les premiers dans ledit ordre; - on calcule les paramètres sélectionnés du second sous-ensemble, et on code ces paramètres pour produire les N - N0 bits de codage classés les premiers; et
- on insère dans la séquence de sortie les N0 bits de codage du premier sous-ensemble ainsi que les N - N0 bits de codage des paramètres sélectionnés du second sous-ensemble.
Le procédé selon l'invention permet de définir un codage multidébit, qui fonctionnera au moins dans une plage correspondant pour chaque trame à un nombre de bits allant de N0 à Nmax.
On peut ainsi considérer que la notion de débits pré-établis qui est liée aux codages commutables et hiérarchiques existants est remplacée par une notion de "curseur", permettant de faire varier librement le débit entre une valeur minimale (pouvant éventuellement correspondre à un nombre de bits N inférieur à N0) et une valeur maximale (correspondant à Nmax). Ces valeurs extrêmes sont potentiellement éloignées. Le procédé offre de bonnes performances en terme d'efficacité de codage quel que soit le débit choisi.
Avantageusement, le nombre N de bits de la séquence binaire de sortie est strictement inférieur à Nmax. Le codeur à alors ceci de remarquable que l'allocation des bits employée ne fait pas référence au débit de sortie effectif du codeur, mais à un autre nombre Nmax convenu avec le décodeur.
Il est cependant possible de fixer Nmax = N en fonction du débit instantané disponible sur un canal de transmission. La séquence de sortie d'un tel codeur multidébit commutable pourra être traitée par un décodeur qui ne recevrait pas la totalité de la séquence, dès lors qu'il est capable de retrouver la structure des bits de codage du second sous-ensemble grâce à la connaissance de Nmax.
Un autre cas où on peut avoir N = Nmax est celui du stockage de données audio au débit de codage maximum. Lors d'une lecture de N' bits de ce contenu stocké à débit plus faible, le décodeur sera capable de retrouver la structure des bits de codage du second sous-ensemble dès lors que N' ≥ N0. L'ordre de classement des bits de codage alloués aux paramètres du second sous-ensemble peut être un ordre préétabli.
Dans un mode de réalisation préféré, l'ordre de classement des bits de codage alloués aux paramètres du second sous-ensemble est variable. Il peut notamment être un ordre d'importance décroissante déterminé en fonction d'au moins les paramètres codés du premier sous-ensemble. Ainsi le décodeur qui recevra une séquence binaire de N1 bits pour la trame, avec N0 < N' < N < Nmax, pourra déduire cet ordre des N0 bits reçus pour le codage du premier sous-ensemble.
L'allocation des Nmax - N0 bits au codage des paramètres du second sous-ensemble peut être réalisée de façon fixe (dans ce cas, l'ordre de classement de ces bits sera fonction au moins des paramètres codés du premier sous-ensemble).
Dans un mode de réalisation préféré, l'allocation des Nmax - N0 bits au codage des paramètres du second sous-ensemble est une fonction des paramètres codés du premier sous-ensemble.
Avantageusement, cet ordre de classement des bits de codage alloués aux paramètres du second sous-ensemble est déterminé à l'aide d'au moins un critère psychoacoustique en fonction des paramètres codés du premier sous- ensemble.
Les paramètres du second sous-ensemble peuvent se rapporter à des bandes spectrales du signal. Dans ce cas, le procédé comprend avantageusement une étape d'estimation d'une enveloppe spectrale du signal codé à partir des paramètres codés du premier sous-ensemble et une étape de calcul d'une courbe de masquage fréquentiel en appliquant un modèle de perception auditive à l'enveloppe spectrale estimée, et le critère psychoacoustique fait référence au niveau de l'enveloppe spectrale estimée par rapport à la courbe de masquage dans chaque bande spectrale.
Dans un mode de mise en œuvre, on ordonne les bits de codage dans la séquence de sortie de telle sorte que les N0 bits de codage du premier sous- ensemble précèdent les N - NO bits de codage des paramètres sélectionnés du second sous-ensemble et que les bits de codage respectifs des paramètres sélectionnés du second sous-ensemble y apparaissent dans l'ordre déterminé pour lesdits bits de codage. Cela permet, au cas où la séquence binaire serait tronquée, de recevoir la partie la plus importante.
Le nombre N peut varier d'une trame à une autre, notamment en fonction par exemple de la capacité disponible de la ressource de transmission.
Le codage audio à multidébits selon la présente invention pourra être utilisé selon un mode commutable ou hiérarchique très flexible, puisque un nombre quelconque de bits à transmettre choisi librement entre N0 et Nmax .peut être sélectionné à tout moment, c'est-à-dire trame par trame.
Le codage des paramètres du premier sous-ensemble peut être à débit variable, ce qui fait varier le nombre N0 d'une trame à une autre. Cela permet d'ajuster au mieux la répartition des bits en fonction des trames à coder.
Dans un mode de mise en œuvre, le premier sous-ensemble comprend des paramètres calculés par un noyau codeur. Avantageusement le noyau codeur a une bande de fréquences de fonctionnement inférieure à la bande passante du signal à coder, et le premier sous-ensemble comprend en outre des niveaux énergétiques du signal audio associés à des bandes de fréquences supérieures à la bande de fonctionnement du noyau codeur. Ce type de structure est celui d'un codeur hiérarchique à deux niveaux, qui délivre par exemple via le noyau codeur un signal codé d'une qualité jugé suffisante et qui en fonction du débit disponible, complète le codage effectué par le noyau codeur par des informations supplémentaires issues du procédé de codage selon l'invention.
De préférence, on ordonne alors les bits de codage du premier sous- ensemble dans la séquence de sortie de telle sorte que les bits de codage des paramètres calculés par le noyau codeur soient immédiatement suivis par les bits de codage des niveaux énergétiques associés aux bandes de fréquences supérieures. Ceci assure une même bande passante aux trames successivement codées dès lors que le décodeur reçoit suffisamment de bits pour disposer des informations du noyau codeur et des niveaux énergétiques codés associés aux bandes de fréquences supérieures.
Dans un mode de mise en œuvre, on estime un signal de différence entre le signal à coder et un signal de synthèse dérivé des paramètres codés produits par le noyau codeur, et le premier sous-ensemble comprend en outre des niveaux énergétiques du signal de différence associés à des bandes de fréquences incluses dans la bande de fonctionnement du noyau codeur.
Un deuxième aspect de l'invention se rapporte à un procédé de décodage d'une séquence binaire d'entrée pour synthétiser un signal audio numérique correspondant au décodage d'une trame codée selon le procédé de codage de l'invention. Selon ce procédé, un nombre maximum Nmax de bits de codage est défini pour un ensemble de paramètres de description d'une trame de signal, composé d'un premier et d'un second sous-ensembles. La séquence d'entrée comprend, pour une trame de signal, un nombre N' de bits de codage de l'ensemble de paramètres, avec N1 < Nmax. Le procédé de décodage selon l'invention comprend les étapes suivantes:
- on extrait, desdits N' bits de la séquence d'entrée, un nombre N0 de bits de codage des paramètres du premier sous-ensemble, si N0 < N1; - on récupère les paramètres du premier sous-ensemble sur la base desdits N0 bits de codage extraits;
- on détermine une allocation de Nmax - N0 bits de codage pour les paramètres du second sous-ensemble; et
- on classe les Nmax - N0 bits de codage alloués aux paramètres du second sous-ensemble dans un ordre déterminé.
L'allocation et/ou l'ordre de classement des Nmax - N0 bits de codage sont déterminés en fonction des paramètres récupérés du premier sous-ensemble. Le procédé de décodage comprend en outre les étapes suivantes:
- on sélectionne les paramètres du second sous-ensemble auxquels sont alloués les N' - N0 bits de codage classés les premiers dans ledit ordre; - on extrait, desdits N' bits de la séquence d'entrée, N' - NO bits de codage des paramètres sélectionnés du second sous-ensemble;
- on récupère les paramètres sélectionnés du second sous-ensemble sur la base desdits N' - NO bits de codage extraits; et - on synthétise la trame de signal en utilisant les paramètres récupérés des premier et second sous-ensembles.
Ce procédé de décodage est avantageusement associé à des méthodes de régénération des paramètres qui manquent du fait de la troncature de la séquence de Nmax bits produite, virtuellement ou non, par le codeur.
Un troisième aspect de l'invention se rapporte à un codeur audio, comprenant des moyens de traitement de signal numérique agencés pour mettre en œuvre un procédé de codage selon l'invention.
Un autre aspect de l'invention se rapporte à un décodeur audio, comprenant des moyens de traitement de signal numérique agencés pour mettre en œuvre un procédé de décodage selon l'invention.
D'autres particularités et avantages de la présente invention apparaîtront dans la description ci-après d'exemples de réalisation non limitatifs, en référence aux dessins annexés, dans lesquels : - la figure 1 est un schéma synoptique d'un exemple de codeur audio selon l'invention;
- la figure 2 représente une séquence binaire de sortie de N bits dans un mode de réalisation de l'invention; et
- la figure 3 est un schéma synoptique d'un décodeur audio selon l'invention.
Le codeur représenté sur la figure 1 a une structure hiérarchique à deux étages de codage. Un premier étage de codage 1 consiste par exemple en un noyau codeur en bande téléphonique (300-3400 Hz) de type CELP. Ce codeur est dans l'exemple considéré un codeur G.723.1 normalisé par l'ITU-T ("International Télécommunication Union") en mode fixe à 6,4 kbit/s. Il calcule des paramètres G.723.1 conformément à la norme et les quantifie au moyen de 192 bits de codage P1 par trame de 30 ms.
Le deuxième étage de codage 2, permettant d'augmenter la bande passante vers la bande élargie (50-7000 Hz), opère sur le résidu de codage E du premier étage, fourni par un soustracteur 3 dans le schéma de la figure 1. Un module de synchronisation de signaux 4 retarde la trame de signal audio S du temps pris par le traitement du noyau codeur 1. Sa sortie est adressée au soustracteur 3 qui lui soustrait le signal synthétique S' égal à la sortie du noyau décodeur opérant sur la base des paramètres quantifiés tels que représentés par les bits de sortie P1 du noyau codeur. Ainsi qu'il est usuel, le codeur 1 incorpore un décodeur local fournissant S'.
Le signal audio à coder S a par exemple une bande passante de
7 kHz, en étant échantillonné à 16 kHz. Une trame consiste par exemple en 960 échantillons, soit 60 ms de signal ou deux trames élémentaires du noyau codeur G.723.1. Comme ce dernier opère sur des signaux échantillonnés à
8 kHz, le signal S est sous-échantillonné dans un facteur 2 à l'entrée du noyau codeur 1. De même, le signal synthétique S' est sur-échantillonné à 16 kHz en sortie du noyau codeur 1.
Le débit du premier étage 1 est de 6,4 kbit/s (2 x N1 = 2 * 192 = 384 bits par trame). Si le codeur a un débit maximum de 32 kbit/s (Nmax = 1920 bits par trame), le débit maximum du deuxième étage est de 25,6 kbit/s (1920 - 384 = 1536 bits par trame). Le deuxième étage 2 fonctionne par exemple sur des trames élémentaires, ou sous-trames, de 20 ms (320 échantillons à 16 kHz).
Le deuxième étage 2 comprend un module 5 de transformation temps- fréquence, par exemple de type MDCT ("Modified Discrète Cosine Transform") auquel est adressé le résidu E obtenu par le soustracteur 3. En pratique, le fonctionnement des modules 3 et 5 représentés sur la figure 1 peut être réalisé en effectuant les opérations suivantes pour chaque sous-trame de 20 ms: - transformation MDCT du signal d'entrée S retardé par le module 4, qui fournit 320 coefficients MDCT. Le spectre étant limité à 7225 Hz, seuls les 289 premiers coefficients MDCT sont différents de 0;
- transformation MDCT du signal synthétique S'. Comme il s'agit du spectre d'un signal à bande téléphonique, seuls les 139 premiers coefficients MDCT sont différents de 0 Gusqu'à 3450 Hz); et
- calcul du spectre de différence entre les spectres précédents.
Le spectre résultant est distribué en plusieurs bandes de largeurs différentes par un module 6. A titre d'exemple, la bande passante du codée G.723.1 peut être subdivisée en 21 bandes tandis que les fréquences plus élevées sont réparties en 11 bandes supplémentaires. Dans ces 11 bandes supplémentaires, le résidu E est identique au signal d'entrée S.
Un module 7 effectue le codage de l'enveloppe spectrale du résidu E. Il commence par calculer l'énergie des coefficients MDCT de chaque bande du spectre de différence. Ces énergies sont ci-après appelées "facteurs d'échelle". Les 32 facteurs d'échelle constituent l'enveloppe spectrale du signal de différence. Le module 7 procède alors à leur quantification en deux parties. La première partie correspond à la bande téléphonique (21 premières bandes, de 0 à 3450 Hz), la deuxième aux bandes hautes (11 dernières bandes, de 3450 à 7225 Hz). Dans chaque partie, le premier facteur d'échelle est quantifié en absolu, et les suivants en différentiel, en utilisant un codage classique de Huffman à débit variable. Ces 32 facteurs d'échelle sont quantifiés sur un nombre variable N2(i) de bits P2 pour chaque sous-trame de rang i (i = 1 , 2, 3).
Les facteurs d'échelles quantifiés sont notés FQ sur la figure 1. Les bits de quantification P1 , P2 du premier sous-ensemble constitué des paramètres quantifiés du noyau codeur 1 et des facteurs d'échelles quantifiés FQ sont en un nombre variable N0 = (2 χ N1) + N2(1) + N2(2) + N2(3). La différence Nmax - N0 = 1536 - N2(1) - N2(2) - N2(3) est disponible pour quantifier plus finement les spectres des bandes.
Un module 8 normalise les coefficients MDCT répartis en bandes par le module 6, en les divisant par les facteurs d'échelle quantifiés FQ respectivement déterminés pour ces bandes. Les spectres ainsi normalisés sont fournis au module de quantification 9 qui utilise un schéma de quantification vectorielle de type connu. Les bits de quantification issus du module 9 sont notés P3 sur la figure 1.
Un multiplexeur de sortie 10 rassemble les bits P1 , P2 et P3 issus des modules 1 , 7 et 9 pour former la séquence binaire Φ de sortie du codeur.
Conformément à l'invention, le nombre total de bits N de la séquence de sortie représentant une trame courante n'est pas nécessairement égal à Nmax. Il peut lui être inférieur. Cependant, l'allocation des bits de quantification aux bandes est effectuée en se fondant sur le nombre Nmax.
Dans le schéma de la figure 1 , cette allocation est effectuée pour chaque sous-trame par le module 12 à partir du nombre Nmax - N0, des facteurs d'échelle quantifiés FQ et d'une courbe de masquage spectral calculée par un module 11.
Le fonctionnement de ce dernier module 11 est le suivant. Il détermine d'abord une valeur approchée de l'enveloppe spectrale originale du signal S à partir de celle du signal de différence, telle que quantifiée par le module 7, et de celle qu'il détermine avec la même résolution pour le signal synthétique S' résultant du noyau codeur. Ces deux dernières enveloppes sont également déterminables par un décodeur qui ne disposerait que des paramètres du premier sous-ensemble précité. Ainsi l'enveloppe spectrale estimée du signal S sera aussi disponible au décodeur. Ensuite, le module 11 calcule une courbe de masquage spectral en appliquant, de façon connue en soi, un modèle de perception auditive bande par bande à l'enveloppe spectrale originale estimée. Cette courbe 11 donne un niveau de masquage pour chaque bande considérée.
Le module 12 réalise une allocation dynamique des Nmax - N0 bits restants de la séquence Φ parmi les 3 * 32 bandes des trois transformations
MDCT du signal de différence. Dans la mise en œuvre de l'invention ici exposée, en fonction d'un critère d'importance perceptuelle psychacoustique faisant référence au niveau de l'enveloppe spectrale estimée par rapport à la courbe de masquage dans chaque bande, on alloue à chaque bande un débit proportionnel à ce niveau. D'autres critères de classement seraient utilisables.
A la suite de cette allocation de bits, le module 9 sait combien de bits sont à considérer pour la quantification de chaque bande dans chaque sous- trame.
Néanmoins, si N < Nmax, ces bits alloués ne seront pas nécessairement tous utilisés. Un ordonnancement des bits représentant les bandes est effectué par un module 13 en fonction d'un critère d'importance perceptuelle. Le module 13 classe les 3 x 32 bandes dans un ordre d'importance décroissante qui peut être l'ordre décroissant des rapports signal- à-masque (rapport entre l'enveloppe spectrale estimée et la courbe de masquage dans chaque bande). Cet ordre est utilisé pour la construction de la séquence binaire Φ conformément à l'invention.
En fonction du nombre N de bits voulu dans la séquence Φ pour le codage de la trame courante, on détermine les bandes qui sont à quantifier par le module 9 en sélectionnant les bandes classées les premières par le module 13 et en retenant pour chaque bande sélectionnée un nombre de bits tels que déterminé par le module 12.
Puis les coefficients MDCT de chaque bande sélectionnée sont quantifiés par le module 9, par exemple à l'aide d'un quantificateur vectoriel, conformément au nombre de bits alloué, pour produire un nombre de bits total égal à N - N0.
Le multiplexeur de sortie 10 constitue la séquence binaire Φ constitués des N premiers bits de la séquence ordonnée suivante représentée sur la figure 2 (cas N = Nmax): a/ d'abord les trains binaires correspondant aux deux trames G.723.1 (384 bits); b/ puis les bits
Figure imgf000016_0001
de quantification des facteurs d'échelle, pour les trois sous trames (i = 1 , 2, 3), de la 22ème bande spectrale (première bande au-delà la bande téléphonique) à la 32ème bande (codage de Huffman à débit variable);
c/ puis les bits F^ , ..., F } de quantification des facteurs d'échelle, pour les trois sous trames (1 = 1 , 2, 3), de la 1ère bande spectrale à la 21ème bande (codage de Huffman à débit variable); d/ et enfin les indices Mc , Mc2, ..., Mc96 de quantification vectorielle des
96 bandes par ordre d'importance perceptuelle, de la bande la plus importante à la bande la moins importante, en respectant l'ordre déterminé par le module 13.
Le fait de placer en premier (a et b) les paramètres G.723.1 et les facteurs d'échelle des bandes hautes permet de conserver la même bande passante pour le signal restituable par le décodeur quel que soit le débit effectif au delà d'une valeur minimale correspondant à la réception de ces groupes a et b. Cette valeur minimale, suffisante pour le codage de Huffman des 3 x 11 = 33 facteurs d'échelle des bandes hautes en plus du codage G.723.1 , est par exemple de 8 kbit/s.
Le procédé de codage ci-dessus permet un décodage de la trame si le décodeur reçoit N' bits avec N0 ≤ N' ≤ N. Ce nombre N' sera généralement variable d'une trame à une autre.
Un décodeur selon l'invention, correspondant à cet exemple, est illustré par la figure 3. Un démultiplexeur 20 sépare la séquence de bits reçus Φ' pour en extraire les bits de codage P1 et P2. Les 384 bits P1 sont fournis au noyau décodeur 21 de type G.723.1 pour que celui-ci synthétise deux trames du signal de base S1 en bande téléphonique. Les bits P2 sont décodés selon l'algorithme de Huffman par un module 22 qui récupère ainsi les facteurs d'échelles quantifiés FQ pour chacune des 3 sous-trames.
Un module 23 de calcul de la courbe de masquage, identique à celui 11 du codeur de la figure 1 , reçoit le signal de base S' et les facteurs d'échelles quantifiés FQ et produit les niveaux de masquage spectral pour chacune des 96 bandes. A partir de ces niveaux de masquage, des facteurs d'échelles quantifiés FQ et de la connaissance du nombre Nmax (ainsi que de celle du nombre N0 qui se déduit du décodage de Huffman des bits P2 par le module 22), un module 24 détermine une allocation de bits de la même manière que le module 12 de la figure 1. En outre, un module 25 procède à l'ordonnancement des bandes selon le même critère de classement que le module 13 décrit en référence à la figure 1.
D'après les informations fournies par les modules 24 et 25, le module
26 extrait les bits P3 de la séquence d'entrée Φ' et synthétise les coefficients MDCT normalisés relatifs aux bandes représentées dans la séquence Φ'. Le cas échéant (N' < Nmax), les coefficients MDCT normalisés relatifs aux bandes manquantes peuvent en outre être synthétisés par interpolation ou extrapolation comme décrit plus loin (module 27). Ces bandes manquantes peuvent avoir été éliminées par le codeur du fait d'une troncature à N < Nmax, ou elles peuvent avoir été éliminées en cours de transmission (N' < N)
Les coefficients MDCT normalisés, synthétisés par le module 26 et/ou le module 27, sont multipliés par leurs facteurs d'échelle quantifiés respectifs (multiplieur 28) avant d'être présentés au module 29 qui effectue la transformation fréquence-temps inverse de la transformation MDCT opérée par le module 5 du codeur. Le signal temporel de correction qui en résulte est additionné au signal synthétique S' délivré par le noyau décodeur 21
(additionneur 30) pour produire le signal audio de sortie S du décodeur.
II est à noter que le décodeur pourra synthétiser un signal S même dans des cas où il ne reçoit pas les N0 premiers bits de la séquence.
Il lui suffit de recevoir les 2 x N1 bits correspondant à la partie a de l'énumération ci-dessus, le décodage étant alors dans un mode "dégradé".
Seul ce mode dégradé n'utilise pas la synthèse MDCT pour obtenir le signal décodé. Pour assurer la commutation sans rupture entre ce mode et les autres modes, le décodeur effectue trois analyses MDCT suivies par trois synthèses MDCT, permettant la mise à jour des mémoires de la transformation MDCT. Le signal de sortie contient un signal de qualité bande téléphonique. Si les 2 x N1 premiers bits ne sont même pas reçus, le décodeur considère la trame correspondante comme effacée et peut utiliser un algorithme connu de dissimulation des trames effacées.
Si le décodeur reçoit les 2 N1 bits correspondant à la partie a plus des bits de la partie b (bandes hautes des trois enveloppes spectrales), il peut commencer à synthétiser un signal en bande élargie. Il peut notamment procéder comme suit.
1/ Le module 22 récupère les parties des trois enveloppes spectrales reçues.
2/ Les bandes non reçues ont leurs facteurs d'échelle temporairement mis à zéro. 3/ Les parties basses des enveloppes spectrales sont calculées à partir des analyses MDCT effectuées sur le signal obtenu après le décodage G.723.1 , et le module 23 calcule les trois courbes de masquage sur les enveloppes ainsi obtenues.
4/ L'enveloppe spectrale est corrigée pour la régulariser en évitant les trous dus aux bandes non reçues: les valeurs nulles dans la partie haute des enveloppes spectrales FQ sont par exemple remplacées par le centième de la valeur de la courbe de masquage calculée précédemment, de telle sorte qu'elles restent inaudibles. Le spectre complet des bandes basses et l'enveloppe spectrale des bandes hautes sont connus à ce stade.
5/ Le module 27 génère alors le spectre haut. La structure fine de ces bandes est générée par réflexion de la structure fine de son voisinage connu avant pondération par les facteurs d'échelle (multiplieurs 28). Dans le cas où aucun des bits P3 n'est reçu, le "voisinage connu" correspond au spectre du signal S' produit par le noyau décodeur
G.723.1. Sa "réflexion" peut consister à recopier la valeur du spectre MDCT normalisé, avec éventuellement une atténuation de ses variations proportionnelle à l'éloignement de ce "voisinage connu".
6/ Après transformation MDCT inverse (29) et addition (30) du signal de correction résultant au signal de sortie du noyau décodeur, on obtient le signal synthétisé en bande élargie.
Dans le cas où le décodeur reçoit également une partie au moins de l'enveloppe spectrale basse du signal de différence (partie c), il peut ou non tenir compte de cette information pour affiner l'enveloppe spectrale à l'étape 3.
Si le décodeur 10 reçoit suffisamment de bits P3 pour décoder au moins les coefficients MDCT de la bande la plus importante, classée la première dans la partie d de la séquence, alors le module 26 récupère certains des coefficients MDCT normalisés d'après l'allocation et l'ordonnancement indiqués par les modules 24 et 25. Ces coefficients MDCT n'ont donc pas besoin d'être interpolés comme dans l'étape 5 ci-dessus. Pour les autres bandes, le processus des étapes 1 à 6 est applicable par le module 27 de la même manière que précédemment, la connaissance des coefficients MDCT reçus pour certaines bandes permettant une interpolation plus fiable à l'étape 5.
Les bandes non reçues peuvent varier d'une sous-trame MDCT à la suivante. Le "voisinage connu" d'une bande manquante peut correspondre à la même bande dans une autre sous-trame où elle ne manque pas, et/ou à une ou plusieurs bandes les plus proches dans le domaine fréquentiel au cours de la même sous-trame. Il est également possible de regénérer un spectre MDCT manquant dans une bande pour une sous-trame en faisant une somme pondérée de contributions évaluées à partir de plusieurs bandes/sous-trames du "voisinage connu".
Dans la mesure où le débit effectif de N' bits par trame place arbitrairement le dernier bit d'une trame donnée, le dernier paramètre codé transmis peut, selon les cas, être transmis complètement ou partiellement. Deux cas peuvent alors se présenter: - ou bien la structure de codage adoptée permet d'exploiter l'information partielle reçue (cas de quantificateurs scalaires, ou de quantification vectorielle à dictionnaires partitionnés),
- ou bien elle ne le permet pas et on traite le paramètre non entièrement reçu comme les autres paramètres non reçus. On note que, pour ce dernier cas, si l'ordre des bits varie à chaque trame, le nombre de bits ainsi perdus est variable et la sélection de N' bits produira en moyenne, sur l'ensemble des trames décodées, une qualité meilleure que celle que l'on obtiendrait avec un nombre de bits plus petit.

Claims

REVENDICATIONS
1. Procédé de codage d'une trame de signal audio numérique (S) en une séquence binaire de sortie (Φ), dans lequel un nombre maximum Nmax de bits de codage est défini pour un ensemble de paramètres calculables d'après la trame de signal, composé d'un premier et d'un second sous-ensembles, le procédé comprenant les étapes suivantes:
- calculer les paramètres du premier sous-ensemble, et coder ces paramètres sur un nombre N0 de bits de codage tel que N0 < Nmax;
- déterminer une allocation de Nmax - N0 bits de codage pour les paramètres du second sous-ensemble; et
- classer les Nmax - N0 bits de codage alloués aux paramètres du second sous-ensemble dans un ordre déterminé, dans lequel l'allocation et/ou l'ordre de classement des Nmax - N0 bits de codage est déterminé en fonction des paramètres codés du premier sous- ensemble, le procédé comprenant en outre les étapes suivantes en réponse à l'indication d'un nombre N de bits de la séquence binaire de sortie disponibles pour le codage dudit ensemble de paramètres, avec N0 < N ≤ Nmax:
- sélectionner les paramètres du second sous-ensemble auxquels sont alloués les N - N0 bits de codage classés les premiers dans ledit ordre; - calculer les paramètres sélectionnés du second sous-ensemble, et coder ces paramètres pour produire lesdits N - N0 bits de codage classés les premiers; et
- insérer dans la séquence de sortie les N0 bits de codage du premier sous-ensemble ainsi que les N - N0 bits de codage des paramètres sélectionnés du second sous-ensemble.
2. Procédé selon la revendication 1 , dans lequel l'ordre de classement des bits de codage alloués aux paramètres du second sous-ensemble est variable d'une trame à une autre.
3. Procédé selon la revendication 1 ou 2, dans lequel N < Nmax.
4. Procédé selon l'une quelconque des revendications précédentes, dans lequel l'ordre de classement des bits de codage alloués aux paramètres du second sous-ensemble est un ordre d'importance décroissante déterminé en fonction d'au moins les paramètres codés du premier sous-ensemble.
5. Procédé selon la revendication 4, dans lequel l'ordre de classement des bits de codage alloués aux paramètres du second sous-ensemble est déterminé à l'aide d'au moins un critère psychoacoustique en fonction des paramètres codés du premier sous-ensemble.
6. Procédé selon la revendication 5, dans lequel les paramètres du second sous-ensemble se rapportent à des bandes spectrales du signal, dans lequel on -estime une enveloppe spectrale du signal codé à partir des paramètres codés du premier sous-ensemble, dans lequel on calcule une courbe de masquage fréquentiel en appliquant un modèle de perception auditive à l'enveloppe spectrale estimée, et dans lequel le critère psychoacoustique fait référence au niveau de l'enveloppe spectrale estimée par rapport à la courbe de masquage dans chaque bande spectrale.
7. Procédé selon l'une quelconque des revendications 4 à 6, dans lequel Nmax = N.
8. Procédé selon l'une quelconque des revendications précédentes, dans lequel on ordonne les bits de codage dans la séquence de sortie de telle sorte que les N0 bits de codage du premier sous-ensemble précèdent les N - N0 bits de codage des paramètres sélectionnés du second sous-ensemble et que les bits de codage respectifs des paramètres sélectionnés du second sous-ensemble y apparaissent dans l'ordre déterminé pour lesdits bits de codage.
9. Procédé selon l'une quelconque des revendications précédentes, dans lequel le nombre N varie d'une trame à une autre.
10. Procédé selon l'une quelconque des revendications précédentes, dans lequel le codage des paramètres du premier sous-ensemble est à débit variable, ce qui fait varier le nombre N0 d'une trame à une autre.
11. Procédé selon l'une quelconque des revendications précédentes, dans lequel le premier sous-ensemble comprend des paramètres calculés par un noyau codeur (1).
12. Procédé selon la revendication 11 , dans lequel le noyau codeur (1) a une bande de fréquences de fonctionnement inférieure à la bande passante du signal à coder, et dans lequel le premier sous-ensemble comprend en outre des niveaux énergétiques du signal audio associés à des bandes de fréquences supérieures à la bande de fonctionnement du noyau codeur.
13. Procédé selon chacune des revendications 8 et 12, dans lequel on ordonne les bits de codage du premier sous-ensemble dans la séquence de sortie de telle sorte que les bits de codage des paramètres calculés par le noyau codeur soient immédiatement suivis par les bits de codage des niveaux énergétiques associés aux bandes de fréquences supérieures.
14. Procédé selon l'une quelconque des revendications 11 à 13, dans lequel on estime un signal de différence entre le signal à coder et un signal de synthèse dérivé des paramètres codés produits par le noyau codeur, et dans lequel le premier sous-ensemble comprend en outre des niveaux énergétiques du signal de différence associés à des bandes de fréquences incluses dans la bande de fonctionnement du noyau codeur.
15. Procédé selon la revendication 8 et l'une quelconque des revendications 12 à 14, dans lequel on ordonne les bits de codage du premier sous-ensemble dans la séquence de sortie de telle sorte que les bits de codage des paramètres calculés par le noyau codeur (1) soient suivis par les bits de codage des niveaux énergétiques associés aux bandes de fréquences.
16. Procédé de décodage d'une séquence binaire d'entrée (Φ') pour synthétiser un signal audio numérique (S), dans lequel un nombre maximum Nmax de bits de codage est défini pour un ensemble de paramètres de description d'une trame de signal, composé d'un premier et d'un second sous- ensembles, la séquence d'entrée comprenant, pour une trame de signal, un nombre N' de bits de codage dudit ensemble de paramètres, avec N' < Nmax, le procédé comprenant les étapes suivantes:
- extraire, desdits N' bits de la séquence d'entrée, un nombre N0 de bits de codage des paramètres du premier sous-ensemble si N0 < N1;
- récupérer les paramètres du premier sous-ensemble sur la base desdits N0 bits de codage extraits; - déterminer une allocation de Nmax - N0 bits de codage pour les paramètres du second sous-ensemble; et
- classer les Nmax - N0 bits de codage alloués aux paramètres du second sous-ensemble dans un ordre déterminé, dans lequel l'allocation et/ou l'ordre de classement des Nmax -N0 bits de codage est déterminé en fonction des paramètres récupérés du premier sous- ensemble, le procédé comprenant en outre les étapes suivantes:
- sélectionner les paramètres du second sous-ensemble auxquels sont alloués les N' - N0 bits de codage classés les premiers dans ledit ordre;
- extraire, desdits N' bits de la séquence d'entrée, N' - N0 bits de codage des paramètres sélectionnés du second sous-ensemble;
- récupérer les paramètres sélectionnés du second sous-ensemble sur la base desdits N' - N0 bits de codage extraits; et
- synthétiser la trame de signal en utilisant les paramètres récupérés des premier et second sous-ensembles.
17. Procédé selon la revendication 16, dans lequel l'ordre de classement des bits de codage alloués aux paramètres du second sous- ensemble est variable d'une trame à une autre.
18. Procédé selon la revendication 16 ou 17, dans lequel N1 < Nmax.
19. Procédé selon l'une quelconque des revendications 16 à 18, dans lequel l'ordre de classement des bits de codage alloués aux paramètres du 004/070706
23
second sous-ensemble est un ordre d'importance décroissante déterminé en fonction d'au moins les paramètres récupérés du premier sous-ensemble.
20. Procédé selon la revendication 19, dans lequel l'ordre de classement des bits de codage alloués aux paramètres du second sous- ensemble est déterminé à l'aide d'au moins un critère psychoacoustique en fonction des paramètres récupérés du premier sous-ensemble.
21. Procédé selon la revendication 20, dans lequel les paramètres du second sous-ensemble se rapportent à des bandes spectrales du signal, dans lequel on estime une enveloppe spectrale du signal à partir des paramètres récupérés du premier sous-ensemble, dans lequel on calcule une courbe de masquage fréquentiel en appliquant un modèle de perception auditive à l'enveloppe spectrale estimée, et dans lequel le critère psychoacoustique fait référence au niveau de l'enveloppe spectrale estimée par rapport à la courbe de masquage dans chaque bande spectrale.
22. Procédé selon l'une quelconque des revendications 16 à 21 , dans lequel les N0 bits de codage des paramètres du premier sous-ensemble sont extraits des N' bits reçus en des positions de la séquence qui précèdent les positions d'où sont extraits les N' - N0 bits de codage des paramètres sélectionnés du second sous-ensemble.
23. Procédé selon l'une quelconque des revendications 16 à 22, dans lequel, pour synthétiser la trame de signal, on estime des paramètres non sélectionnés du second sous-ensemble par interpolation à partir d'au moins des paramètres sélectionnés récupérés sur la base desdits N' - N0 bits de codage extraits.
24. Procédé selon l'une quelconque des revendications 16 à 23, dans lequel le premier sous-ensemble comprend des paramètres d'entrée d'un noyau décodeur (21).
25. Procédé selon la revendication 24, dans lequel le noyau décodeur
(21) a une bande de fréquences de fonctionnement inférieure à la bande 04/070706
24
passante du signal à synthétiser, et dans lequel le premier sous-ensemble comprend en outre des niveaux énergétiques du signal audio associés à des bandes de fréquences supérieures à la bande de fonctionnement du noyau décodeur.
26. Procédé selon chacune des revendications 22 et 25, dans lequel les bits de codage du premier sous-ensemble dans la séquence d'entrée sont ordonnés de telle sorte que les bits de codage des paramètres d'entrée du noyau décodeur (21) soient immédiatement suivis par des bits de codage des niveaux énergétiques associés aux bandes de fréquences supérieures.
27. Procédé selon la revendication 26, comprenant les étapes suivantes si les N' bits de la séquence d'entrée (Φ1) se limitent aux bits de codage des paramètres d'entrée du noyau décodeur (21) et à une partie au moins des bits de codage des niveaux énergétiques associés aux bandes de fréquences supérieures: - extraire de la séquence d'entrée les bits de codage des paramètres d'entrée du noyau décodeur et ladite partie des bits de codage des niveaux énergétiques;
- synthétiser un signal de base (S') dans le noyau décodeur et récupérer des niveaux énergétiques associés aux bandes de fréquences supérieures sur la base des bits de codage extraits;
- calculer un spectre du signal de base;
- affecter un niveau énergétique à chaque bande supérieure à laquelle est associé un niveau énergétique non codé dans la séquence d'entrée;
- synthétiser des composantes spectrales pour chaque bande de fréquences supérieure à partir du niveau énergétique correspondant et du spectre du signal de base dans au moins une bande dudit spectre;
- appliquer une transformation vers le domaine temporel aux composantes spectrales synthétisées pour obtenir un signal de correction du signal de base; et - additionner le signal de base et le signal de correction pour synthétiser la trame de signal.
28. Procédé selon la revendication 27, dans lequel le niveau énergétique affecté à une bande supérieure à laquelle est associé un niveau énergétique non codé dans la séquence d'entrée est une fraction d'un niveau de masquage perceptuel calculé d'après le spectre du signal de base et les niveaux énergétiques récupérés sur la base des bits de codage extraits.
29. Procédé selon l'une quelconque des revendications 24 à 28, dans lequel on synthétise un signal de base (S') dans le noyau décodeur, et dans lequel le premier sous-ensemble comprend en outre des niveaux énergétiques d'un signal de différence entre le signal à synthétiser et le signal de base associés à des bandes de fréquences incluses dans la bande de fonctionnement du noyau codeur.
30. Procédé selon l'une quelconque des revendications 25, 26 et 29, dans lequel, pour N0 < N' < Nmax, on estime des paramètres non sélectionnés du second sous-ensemble relatifs à des composantes spectrales dans des bandes de fréquences à l'aide d'un spectre calculé du signal de base et/ou des paramètres sélectionnés récupérés sur la base desdits N' - N0 bits de codage extraits.
31. Procédé selon la revendication 30, dans lequel les paramètres non sélectionnés du second sous-ensemble dans une bande de fréquences sont estimés à l'aide d'un voisinage spectral de ladite bande, déterminé sur la base des N' bits de codage de la séquence d'entrée.
32. Procédé selon la revendication 22 et l'une quelconque des revendications 25 à 31, dans lequel les bits de codage des paramètres d'entrée du noyau décodeur (21) sont extraits des N' bits reçus en des positions de la séquence qui précèdent les positions d'où sont extraits les bits de codage des niveaux énergétiques associés aux bandes de fréquences.
33. Procédé selon l'une quelconque des revendications 16 à 32, dans lequel le nombre N' varie d'une trame à une autre.
34. Procédé selon l'une quelconque des revendications 16 à 33, dans lequel le nombre N0 varie d'une trame à une autre.
35. Codeur audio, comprenant des moyens de traitement de signal numérique agencés pour mettre en œuvre un procédé de codage selon l'une quelconque des revendications 1 à 15.
36. Décodeur audio, comprenant des moyens de traitement de signal numérique agencés pour mettre en œuvre un procédé de décodage selon l'une quelconque des revendications 16 à 34.
PCT/FR2003/003870 2003-01-08 2003-12-22 Procede de codage et de decodage audio a debit variable WO2004070706A1 (fr)

Priority Applications (10)

Application Number Priority Date Filing Date Title
KR1020057012791A KR101061404B1 (ko) 2003-01-08 2003-12-22 가변 레이트로 오디오를 인코딩 및 디코딩하는 방법
BR0317954-0A BR0317954A (pt) 2003-01-08 2003-12-22 Processo de codificação e decodificação áudio com taxa variável
CA2512179A CA2512179C (fr) 2003-01-08 2003-12-22 Procede de codage et de decodage audio a debit variable
US10/541,340 US7457742B2 (en) 2003-01-08 2003-12-22 Variable rate audio encoder via scalable coding and enhancement layers and appertaining method
CN2003801084396A CN1735928B (zh) 2003-01-08 2003-12-22 用于可变速率音频编解码的方法
DE60319590T DE60319590T2 (de) 2003-01-08 2003-12-22 Verfahren zur codierung und decodierung von audio mit variabler rate
EP03799688A EP1581930B1 (fr) 2003-01-08 2003-12-22 Procede de codage et de decodage audio a debit variable
AU2003299395A AU2003299395B2 (en) 2003-01-08 2003-12-22 Method for encoding and decoding audio at a variable rate
MXPA05007356A MXPA05007356A (es) 2003-01-08 2003-12-22 Metodo para codificar y descodificar audio a una velocidad variable.
JP2004567790A JP4390208B2 (ja) 2003-01-08 2003-12-22 音声を可変レートで符号化および復号する方法

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
FR03/00164 2003-01-08
FR0300164A FR2849727B1 (fr) 2003-01-08 2003-01-08 Procede de codage et de decodage audio a debit variable

Publications (1)

Publication Number Publication Date
WO2004070706A1 true WO2004070706A1 (fr) 2004-08-19

Family

ID=32524763

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/FR2003/003870 WO2004070706A1 (fr) 2003-01-08 2003-12-22 Procede de codage et de decodage audio a debit variable

Country Status (15)

Country Link
US (1) US7457742B2 (fr)
EP (1) EP1581930B1 (fr)
JP (1) JP4390208B2 (fr)
KR (1) KR101061404B1 (fr)
CN (1) CN1735928B (fr)
AT (1) ATE388466T1 (fr)
AU (1) AU2003299395B2 (fr)
BR (1) BR0317954A (fr)
CA (1) CA2512179C (fr)
DE (1) DE60319590T2 (fr)
ES (1) ES2302530T3 (fr)
FR (1) FR2849727B1 (fr)
MX (1) MXPA05007356A (fr)
WO (1) WO2004070706A1 (fr)
ZA (1) ZA200505257B (fr)

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2007055507A1 (fr) * 2005-11-08 2007-05-18 Samsung Electronics Co., Ltd. Dispositifs et procedes permettant de codage et de decodage audio adapte au temps et a la frequence
JP4859670B2 (ja) * 2004-10-27 2012-01-25 パナソニック株式会社 音声符号化装置および音声符号化方法
JP5173795B2 (ja) * 2006-03-17 2013-04-03 パナソニック株式会社 スケーラブル符号化装置およびスケーラブル符号化方法

Families Citing this family (24)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP1782419A1 (fr) * 2004-08-17 2007-05-09 Koninklijke Philips Electronics N.V. Codage audio echelonnable
US7930173B2 (en) 2006-06-19 2011-04-19 Sharp Kabushiki Kaisha Signal processing method, signal processing apparatus and recording medium
JP4827661B2 (ja) * 2006-08-30 2011-11-30 富士通株式会社 信号処理方法及び装置
US20080243518A1 (en) * 2006-11-16 2008-10-02 Alexey Oraevsky System And Method For Compressing And Reconstructing Audio Files
EP1927981B1 (fr) * 2006-12-01 2013-02-20 Nuance Communications, Inc. Affinement spectral de signaux audio
JP4871894B2 (ja) * 2007-03-02 2012-02-08 パナソニック株式会社 符号化装置、復号装置、符号化方法および復号方法
JP4708446B2 (ja) 2007-03-02 2011-06-22 パナソニック株式会社 符号化装置、復号装置およびそれらの方法
US7925783B2 (en) * 2007-05-23 2011-04-12 Microsoft Corporation Transparent envelope for XML messages
JP5547081B2 (ja) * 2007-11-02 2014-07-09 華為技術有限公司 音声復号化方法及び装置
CN103366755B (zh) * 2009-02-16 2016-05-18 韩国电子通信研究院 对音频信号进行编码和解码的方法和设备
EP2249333B1 (fr) * 2009-05-06 2014-08-27 Nuance Communications, Inc. Procédé et appareil d'évaluation d'une fréquence fondamentale d'un signal vocal
FR2947944A1 (fr) * 2009-07-07 2011-01-14 France Telecom Codage/decodage perfectionne de signaux audionumeriques
FR2947945A1 (fr) * 2009-07-07 2011-01-14 France Telecom Allocation de bits dans un codage/decodage d'amelioration d'un codage/decodage hierarchique de signaux audionumeriques
WO2011045926A1 (fr) * 2009-10-14 2011-04-21 パナソニック株式会社 Dispositif de codage, dispositif de décodage, et procédés correspondants
US20120029926A1 (en) 2010-07-30 2012-02-02 Qualcomm Incorporated Systems, methods, apparatus, and computer-readable media for dependent-mode coding of audio signals
US9208792B2 (en) 2010-08-17 2015-12-08 Qualcomm Incorporated Systems, methods, apparatus, and computer-readable media for noise injection
CN101950562A (zh) * 2010-11-03 2011-01-19 武汉大学 基于音频关注度的分级编码方法及系统
NO2669468T3 (fr) * 2011-05-11 2018-06-02
MX337772B (es) * 2011-05-13 2016-03-18 Samsung Electronics Co Ltd Asignacion de bits, codificacion y decodificacion de audio.
WO2013142650A1 (fr) 2012-03-23 2013-09-26 Dolby International Ab Diversité de taux d'échantillonnage dans un système de communication vocale
EP3751566B1 (fr) 2014-04-17 2024-02-28 VoiceAge EVS LLC Procédés, codeur et décodeur pour le codage et le décodage prédictifs linéaires de signaux sonores lors de la transition entre des trames possédant des taux d'échantillonnage différents
CN106992786B (zh) * 2017-03-21 2020-07-07 深圳三星通信技术研究有限公司 一种基带数据压缩方法、装置和系统
KR102258814B1 (ko) * 2018-10-04 2021-07-14 주식회사 엘지에너지솔루션 Bms 간 통신 시스템 및 방법
KR102352240B1 (ko) * 2020-02-14 2022-01-17 국방과학연구소 Amr 음성데이터의 압축포맷정보를 추정하는 방법 및 그 장치

Family Cites Families (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
GB8421498D0 (en) * 1984-08-24 1984-09-26 British Telecomm Frequency domain speech coding
DE19706516C1 (de) * 1997-02-19 1998-01-15 Fraunhofer Ges Forschung Verfahren und Vorricntungen zum Codieren von diskreten Signalen bzw. zum Decodieren von codierten diskreten Signalen
US6016111A (en) * 1997-07-31 2000-01-18 Samsung Electronics Co., Ltd. Digital data coding/decoding method and apparatus
FR2813722B1 (fr) 2000-09-05 2003-01-24 France Telecom Procede et dispositif de dissimulation d'erreurs et systeme de transmission comportant un tel dispositif
US7620545B2 (en) * 2003-07-08 2009-11-17 Industrial Technology Research Institute Scale factor based bit shifting in fine granularity scalability audio coding

Non-Patent Citations (2)

* Cited by examiner, † Cited by third party
Title
CHRISTOPH ERDMANN ET AL: "A candidate proposal for a 3GPP adaptive multi-rate wideband speech codec", INTERNATIONAL CONFERENCE ON ACOUSTICS, SPEECH AND SIGNAL PROCESSING, ICASSP '01, vol. 2, 7 May 2001 (2001-05-07) - 11 May 2001 (2001-05-11), SALT LAKE CITY, pages 757 - 760, XP002253623 *
YE SHEN ET AL: "A progressive algorithm for perceptual coding of digital audio signals", SIGNALS, SYSTEMS, AND COMPUTERS, 1999. CONFERENCE RECORD OF THE THIRTY-THIRD ASILOMAR CONFERENCE ON OCT. 24-27, 1999, PISCATAWAY, NJ, USA,IEEE, US, 24 October 1999 (1999-10-24), pages 1105 - 1109, XP010373807, ISBN: 0-7803-5700-0 *

Cited By (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP4859670B2 (ja) * 2004-10-27 2012-01-25 パナソニック株式会社 音声符号化装置および音声符号化方法
WO2007055507A1 (fr) * 2005-11-08 2007-05-18 Samsung Electronics Co., Ltd. Dispositifs et procedes permettant de codage et de decodage audio adapte au temps et a la frequence
US8548801B2 (en) 2005-11-08 2013-10-01 Samsung Electronics Co., Ltd Adaptive time/frequency-based audio encoding and decoding apparatuses and methods
US8862463B2 (en) 2005-11-08 2014-10-14 Samsung Electronics Co., Ltd Adaptive time/frequency-based audio encoding and decoding apparatuses and methods
JP5173795B2 (ja) * 2006-03-17 2013-04-03 パナソニック株式会社 スケーラブル符号化装置およびスケーラブル符号化方法

Also Published As

Publication number Publication date
EP1581930B1 (fr) 2008-03-05
CN1735928A (zh) 2006-02-15
MXPA05007356A (es) 2005-09-30
JP4390208B2 (ja) 2009-12-24
DE60319590D1 (de) 2008-04-17
FR2849727A1 (fr) 2004-07-09
KR101061404B1 (ko) 2011-09-01
AU2003299395B2 (en) 2010-03-04
ES2302530T3 (es) 2008-07-16
CA2512179A1 (fr) 2004-08-19
ATE388466T1 (de) 2008-03-15
ZA200505257B (en) 2006-09-27
US20060036435A1 (en) 2006-02-16
EP1581930A1 (fr) 2005-10-05
FR2849727B1 (fr) 2005-03-18
DE60319590T2 (de) 2009-03-26
CN1735928B (zh) 2010-05-12
JP2006513457A (ja) 2006-04-20
BR0317954A (pt) 2005-11-29
CA2512179C (fr) 2013-04-16
AU2003299395A1 (en) 2004-08-30
KR20050092107A (ko) 2005-09-20
US7457742B2 (en) 2008-11-25

Similar Documents

Publication Publication Date Title
EP1581930B1 (fr) Procede de codage et de decodage audio a debit variable
EP2277172B1 (fr) Dissimulation d&#39;erreur de transmission dans un signal audionumerique dans une structure de decodage hierarchique
EP1905010B1 (fr) Codage/décodage audio hiérarchique
EP1808684B1 (fr) Appareil de decodage modulable
CA2347735C (fr) Procede de recuperation du contenu a haute frequence et dispositif pour signal a large bande synthetise sur-echantillonne
EP1692689B1 (fr) Procede de codage multiple optimise
CA2766864C (fr) Codage/decodage perfectionne de signaux audionumeriques
EP1047045A2 (fr) Matériel sain etméthode de synthesisation
EP0111612A1 (fr) Procédé et dispositif de codage d&#39;un signal vocal
EP2452337A1 (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
JP2006126826A (ja) オーディオ信号符号化/復号化方法及びその装置
FR2875351A1 (fr) Procede de traitement de donnees par passage entre domaines differents de sous-bandes
EP3175443B1 (fr) Détermination d&#39;un budget de codage d&#39;une trame de transition lpd/fd
EP2652735B1 (fr) Codage perfectionne d&#39;un etage d&#39;amelioration dans un codeur hierarchique
EP2203915B1 (fr) Dissimulation d&#39;erreur de transmission dans un signal numerique avec repartition de la complexite
WO2005045808A1 (fr) Ponderation du bruit d&#39;une harmonique dans des codeurs vocaux numeriques
FR2737360A1 (fr) Procedes de codage et de decodage de signaux audiofrequence, codeur et decodeur pour la mise en oeuvre de tels procedes
EP1192619A1 (fr) Codage et decodage audio par interpolation
EP1192618A1 (fr) Codage audio avec liftrage adaptif

Legal Events

Date Code Title Description
AK Designated states

Kind code of ref document: A1

Designated state(s): AE AG AL AM AT AU AZ BA BB BG BR BY BZ CA CH CN CO CR CU CZ DE DK DM DZ EC EE EG ES FI GB GD GE GH GM HR HU ID IL IN IS JP KE KG KP KR KZ LC LK LR LS LT LU LV MA MD MG MK MN MW MX MZ NI NO NZ OM PG PH PL PT RO RU SC SD SE SG SK SL SY TJ TM TN TR TT TZ UA UG US UZ VC VN YU ZA ZM ZW

AL Designated countries for regional patents

Kind code of ref document: A1

Designated state(s): BW GH GM KE LS MW MZ SD SL SZ TZ UG ZM ZW AM AZ BY KG KZ MD RU TJ TM AT BE BG CH CY CZ DE DK EE ES FI FR GB GR HU IE IT LU MC NL PT RO SE SI SK TR BF BJ CF CG CI CM GA GN GQ GW ML MR NE SN TD TG

DFPE Request for preliminary examination filed prior to expiration of 19th month from priority date (pct application filed before 20040101)
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: 2003799688

Country of ref document: EP

WWE Wipo information: entry into national phase

Ref document number: 1174/KOLNP/2005

Country of ref document: IN

WWE Wipo information: entry into national phase

Ref document number: 2005/05257

Country of ref document: ZA

Ref document number: 2512179

Country of ref document: CA

Ref document number: 200505257

Country of ref document: ZA

WWE Wipo information: entry into national phase

Ref document number: 2003299395

Country of ref document: AU

ENP Entry into the national phase

Ref document number: 2006036435

Country of ref document: US

Kind code of ref document: A1

WWE Wipo information: entry into national phase

Ref document number: 10541340

Country of ref document: US

WWE Wipo information: entry into national phase

Ref document number: PA/A/2005/007356

Country of ref document: MX

WWE Wipo information: entry into national phase

Ref document number: 20038A84396

Country of ref document: CN

WWE Wipo information: entry into national phase

Ref document number: 2004567790

Country of ref document: JP

Ref document number: 1020057012791

Country of ref document: KR

WWP Wipo information: published in national office

Ref document number: 1020057012791

Country of ref document: KR

WWP Wipo information: published in national office

Ref document number: 2003799688

Country of ref document: EP

ENP Entry into the national phase

Ref document number: PI0317954

Country of ref document: BR

WWP Wipo information: published in national office

Ref document number: 10541340

Country of ref document: US

WWG Wipo information: grant in national office

Ref document number: 2003799688

Country of ref document: EP