FR2796191A1 - AUDIO CODING AND DECODING METHODS AND DEVICES - Google Patents

AUDIO CODING AND DECODING METHODS AND DEVICES Download PDF

Info

Publication number
FR2796191A1
FR2796191A1 FR9908635A FR9908635A FR2796191A1 FR 2796191 A1 FR2796191 A1 FR 2796191A1 FR 9908635 A FR9908635 A FR 9908635A FR 9908635 A FR9908635 A FR 9908635A FR 2796191 A1 FR2796191 A1 FR 2796191A1
Authority
FR
France
Prior art keywords
audio signal
frames
spectral
cepstral coefficients
module
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Granted
Application number
FR9908635A
Other languages
French (fr)
Other versions
FR2796191B1 (en
Inventor
Francois Capman
Carlo Murgia
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Nortel Networks France SAS
Original Assignee
Matra Nortel Communications SAS
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 Matra Nortel Communications SAS filed Critical Matra Nortel Communications SAS
Priority to FR9908635A priority Critical patent/FR2796191B1/en
Priority to DE60014085T priority patent/DE60014085D1/en
Priority to AT00949621T priority patent/ATE277403T1/en
Priority to EP00949621A priority patent/EP1192619B1/en
Priority to AU62920/00A priority patent/AU6292000A/en
Priority to PCT/FR2000/001906 priority patent/WO2001003118A1/en
Publication of FR2796191A1 publication Critical patent/FR2796191A1/en
Application granted granted Critical
Publication of FR2796191B1 publication Critical patent/FR2796191B1/en
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G10MUSICAL INSTRUMENTS; ACOUSTICS
    • G10LSPEECH ANALYSIS TECHNIQUES OR SPEECH SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING TECHNIQUES; SPEECH OR AUDIO CODING OR DECODING
    • G10L19/00Speech or audio signals analysis-synthesis techniques for redundancy reduction, e.g. in vocoders; Coding or decoding of speech or audio signals, using source filter models or psychoacoustic analysis
    • G10L19/02Speech or audio signals analysis-synthesis techniques for redundancy reduction, e.g. in vocoders; Coding or decoding of speech or audio signals, using source filter models or psychoacoustic analysis using spectral analysis, e.g. transform vocoders or subband vocoders
    • GPHYSICS
    • G10MUSICAL INSTRUMENTS; ACOUSTICS
    • G10LSPEECH ANALYSIS TECHNIQUES OR SPEECH SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING TECHNIQUES; SPEECH OR AUDIO CODING OR DECODING
    • G10L19/00Speech or audio signals analysis-synthesis techniques for redundancy reduction, e.g. in vocoders; Coding or decoding of speech or audio signals, using source filter models or psychoacoustic analysis
    • G10L19/04Speech or audio signals analysis-synthesis techniques for redundancy reduction, e.g. in vocoders; Coding or decoding of speech or audio signals, using source filter models or psychoacoustic analysis using predictive techniques
    • G10L19/08Determination or coding of the excitation function; Determination or coding of the long-term prediction parameters
    • G10L19/10Determination or coding of the excitation function; Determination or coding of the long-term prediction parameters the excitation function being a multipulse excitation

Landscapes

  • Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • Audiology, Speech & Language Pathology (AREA)
  • Computational Linguistics (AREA)
  • Signal Processing (AREA)
  • Health & Medical Sciences (AREA)
  • Spectroscopy & Molecular Physics (AREA)
  • Human Computer Interaction (AREA)
  • Acoustics & Sound (AREA)
  • Multimedia (AREA)
  • Compression, Expansion, Code Conversion, And Decoders (AREA)
  • Error Detection And Correction (AREA)
  • Reduction Or Emphasis Of Bandwidth Of Signals (AREA)

Abstract

The invention concerns a method wherein a decoder synthesises a set of successive frames of N samples of an audio signal from encoding data included in a digital flow received from the encoder and comprising, for only one subset of frames, data representing spectral amplitudes of the audio signal. The decoder determines for each of the frames of said subset, on the basis of the encoding data, the cepstral coefficients (cx_q[n]) representing some at least of said spectral amplitudes whereas for the frames not forming part of said subset, it interpolates said cepstral coefficients, and generates by means of said interpolated cepstral coefficients (cx[n-1/2] a spectral estimate of the audio signal which it transforms in the temporal domain to obtain the synthesised frame.

Description

PROCEDES ET DISPOSITIFS DE CODAGE ET DE DECODAGE AUDIOAUDIO CODING AND DECODING METHODS AND DEVICES

La présente invention concerne le domaine du codage des signaux audio. Elle s'applique en particulier, mais non exclusivement, au codage de la parole, en bande étroite ou en bande élargie, dans diverses gammes de débit de codage. La conception d'un codec audio vise principalement à fournir un bon compromis entre le débit du flux transmis par le codeur et la qualité du signal  The present invention relates to the field of coding audio signals. It applies in particular, but not exclusively, to speech coding, in narrowband or wideband, in various ranges of coding rate. The design of an audio codec is primarily aimed at providing a good compromise between the flow rate of the stream transmitted by the encoder and the quality of the signal.

audio que le décodeur est capable de reconstruire à partir de ce flux.  audio that the decoder is able to reconstruct from that stream.

Dans cette optique, il a notamment été développé des familles de codeurs reposant sur une analyse du signal audio dans le domaine spectral: le codeur estime une fréquence fondamentale du signal, représentant sa hauteur tonale (" pitch "), et l'analyse spectrale consiste à déterminer des paramètres représentant la structure harmonique du signal aux fréquences qui sont des multiples entiers de cette fréquence fondamentale. Une modélisation de la composante non-harmonique, ou non-voisée, peut également être effectuée dans le domaine spectral. Les paramètres transmis au décodeur représentent typiquement le module du spectre des composantes voisées et non-voisées. Il s'y ajoute des informations représentant soit des décisions voisé/non-voisé relatives à différentes portions de spectre, soit des informations sur la probabilité de voisement du signal, permettant au décodeur de déterminer dans quelles portions du spectre il doit utiliser la composante voisée ou la  In this respect, encoder families have been developed based on an analysis of the audio signal in the spectral domain: the encoder estimates a fundamental frequency of the signal, representing its pitch, and the spectral analysis consists of determining parameters representing the harmonic structure of the signal at frequencies which are integer multiples of this fundamental frequency. A modeling of the non-harmonic component, or voiceless, can also be performed in the spectral domain. The parameters transmitted to the decoder typically represent the spectrum module of the voiced and unvoiced components. There is added information representing either voiced / unvoiced decisions relating to different portions of the spectrum, or information on the probability of voicing of the signal, allowing the decoder to determine in which portions of the spectrum it must use the voiced component. or the

composante non-voisée.unvoiced component.

Ces familles de codeurs comprennent les codeurs du type MBE (" Multi-Band Excitation "), ou encore les codeurs de type STC (" Sinusoidal Transform Coder "). A titre de référence, on peut citer les brevets US  These families of encoders include encoders of the type MBE ("Multi-Band Excitation"), or the type of encoders STC ("Sinusoidal Transform Coder"). As a reference, mention may be made of US patents

4 856 068, 4 885 790, 4 937 873, 5 054 072, 5 081 681, 5 195 166, 5 216 747,  4,856,068, 4,885,790, 4,937,873, 5,054,072, 5,081,681, 5,195,166, 5,216,747,

226 084, 5 226 108, 5 247 579, 5 473 727, 5 517 511, 5 630 011, 5 630 012,  226,084, 5,226,108, 5,247,579, 5,473,727, 517,511, 5,630,011, 5,630,012,

649 050, 5 651 093, 5 664 051, 5 664 052, 5 684 926, 5 701 390, 5 715 365,  649,050, 5,651,093, 5,664,051, 5,664,052, 5,684,926, 5,701,390, 5,715,365,

749 065, 5 752 222, 5 765 127, 5 774 837 et 5 890 108. Un but de la présente invention est de permettre, dans un schéma de codage à analyse dans le domaine spectral, d'améliorer la modélisation des  749,065, 5,752,222, 5,765,127, 5,774,837 and 5,890,108. An object of the present invention is to allow, in an analysis scheme for analysis in the spectral domain, to improve the modeling of the

phases du spectre du signal par le décodeur.  phases of the signal spectrum by the decoder.

L'invention propose ainsi un procédé de décodage d'un flux numérique d'entrée représentant un signal audio codé, dans lequel on synthétise un ensemble de trames successives de N échantillons du signal audio à partir de -2- données de codage incluses dans le flux numérique d'entrée, dans lequel les données de codage comportent, pour seulement un sous-ensemble des trames, des données représentatives d'amplitudes spectrales associées à des fréquences du spectre du signal audio. Selon l'invention, on détermine pour chacune des trames'dudit sous-ensemble, sur la base des données de codage, des coefficients cepstraux représentatifs de certaines au moins desdites  The invention thus proposes a method for decoding an input digital stream representing an encoded audio signal, in which a set of successive frames of N audio signal samples is synthesized from coding data included in the digital input stream, wherein the encoding data comprises, for only a subset of the frames, data representative of spectral amplitudes associated with frequencies of the spectrum of the audio signal. According to the invention, for each of the frames said subset, on the basis of the encoding data, cepstral coefficients representative of at least some of said

amplitudes spectrales. Pour les trames ne faisant pas partie dudit sous-  spectral amplitudes. For frames not forming part of that sub-

ensemble, on interpole lesdits coefficients cepstraux, et on génère à l'aide des coefficients cepstraux interpolés une estimation spectrale du signal audio qu'on  together, these cepstral coefficients are interpolated, and a spectral estimate of the audio signal is generated using the interpolated cepstral coefficients.

transforme dans le domaine temporel pour obtenir la trame synthétisée.  transforms in the time domain to obtain the synthesized frame.

Le procédé s'applique avantageusement lorsque les données de codage comprennent directement des données de quantification des coefficients cepstraux. Mais si la modélisation du spectre emploie d'autres paramètres quantifiés dans le flux qui permettent, par une transformation connue. de récupérer les coefficients cepstraux, par exemple les LSP (" Line Spectrum Parameters "), le décodeur peut utiliser cette transformation pour procéder à l'interpolation de paramètres dans le domaine cepstral et bénéficier  The method is advantageously applied when the coding data directly comprise quantization data of the cepstral coefficients. But if spectrum modeling uses other quantized parameters in the stream that allow, by a known transformation. to recover the cepstral coefficients, for example the LSP ("Line Spectrum Parameters"), the decoder can use this transformation to proceed with the interpolation of parameters in the cepstral domain and to benefit from

ainsi des avantages de l'invention.thus advantages of the invention.

Dans un mode de réalisation avantageux du procédé, on corrige les coefficients cepstraux interpolés, pour les trames ne faisant pas partie dudit sous-ensemble, sur la base de données de quantification d'erreur d'interpolation incluses dans les données de codage. En variante, on peut interpoler les coefficients cepstraux par un filtre déterminé sur la base de  In an advantageous embodiment of the method, interpolated cepstral coefficients are corrected for frames not forming part of said subset based on interpolation error quantization data included in the encoding data. Alternatively, the cepstral coefficients can be interpolated by a filter determined on the basis of

données de quantification incluses dans les données de codage.  Quantization data included in the coding data.

Un autre aspect de la présente invention se rapporte à un procédé de codage d'un signal audio, dans lequel on détermine un spectre du signal audio par une transformée dans le domaine fréquentiel d'une trame du signal audio, et on inclut dans un flux numérique de sortie des données représentatives d'amplitudes spectrales associées à certaines au moins des fréquences du spectre, dans lequel le spectre du signal audio est déterminé pour un ensemble de trames successives de N échantillons du signal audio, et dans lequel on détermine pour chacune des trames dudit ensemble des coefficients cepstraux représentatifs de certaines au moins desdites amplitudes spectrales. Lesdites données représentatives des amplitudes spectrales sont incluses dans le flux numérique de sortie pour seulement un sous-ensemble des trames. Pour les trames ne faisant pas partie dudit sous-ensemble, on inclut dans le flux -3- numérique de sortie soit des données de quantification d'une erreur d'interpolation desdits coefficients cepstraux, soit des données représentant un  Another aspect of the present invention relates to a method of encoding an audio signal, wherein a spectrum of the audio signal is determined by a frequency domain transform of a frame of the audio signal, and included in a stream. digital output of data representative of spectral amplitudes associated with at least some of the frequencies of the spectrum, wherein the spectrum of the audio signal is determined for a set of successive frames of N samples of the audio signal, and in which for each of the frames of said set of cepstral coefficients representative of at least some of said spectral amplitudes. The data representative of the spectral amplitudes are included in the output digital stream for only a subset of the frames. For the frames not belonging to said subset, the output digital flow is included either with quantization data of an interpolation error of said cepstral coefficients, or data representing a

filtre interpolateur optimal déterminé pour lesdits coefficients cepstraux.  optimal interpolator filter determined for said cepstral coefficients.

L'invention propose également un codeur et un décodeur audio comprenant des moyens pour la mise en oeuvre des procédés ci-dessus. D'autres particularités et avantages de la présente invention  The invention also proposes an encoder and an audio decoder comprising means for implementing the above methods. Other features and advantages of the present invention

apparaîtront dans la description ci-après d'exemples de réalisation non  will appear in the following description of examples of non

limitatifs, en référence aux dessins annexés, dans lesquels: - la figure 1 est un schéma synoptique d'un codeur audio selon l'invention - les figures 2 et 3 sont des diagrammes illustrant la formation des trames de signal audio dans le codeur de la figure 1; - les figures 4 et 5 sont des graphiques montrant un exemple de spectre du signal audio et illustrant l'extraction des enveloppes supérieure et inférieure de ce spectre; - la figure 6 est un schéma synoptique d'un exemple de moyens de quantification utilisables dans le codeur de la figure 1; - la figure 7 est un schéma synoptique de moyens utilisables pour extraire  with reference to the accompanying drawings, in which: - Figure 1 is a block diagram of an audio encoder according to the invention - Figures 2 and 3 are diagrams illustrating the formation of audio signal frames in the encoder of the figure 1; FIGS. 4 and 5 are graphs showing an exemplary spectrum of the audio signal and illustrating the extraction of the upper and lower envelopes of this spectrum; FIG. 6 is a block diagram of an example of quantization means that can be used in the coder of FIG. 1; FIG. 7 is a block diagram of means that can be used to extract

des paramètres se rapportant à la phase de la composante non-  parameters relating to the phase of the non-

harmonique dans une variante du codeur de la figure 1; - la figure 8 est un schéma synoptique d'un décodeur audio correspondant au codeur de la figure 1; - la figure 9 est un organigramme d'un exemple de procédure de lissage de coefficients spectraux et d'extraction de phases minimales mise en oeuvre dans le décodeur de la figure 8; - la figure 10 est un schéma synoptique de modules d'analyse et de mixage spectral de composantes harmonique et non-harmonique du signal audio; - les figures 11 à 13 sont des graphiques montrant des exemples de fonctions non- linéaires utilisables dans le module d'analyse de la figure  harmonic in a variant of the encoder of Figure 1; FIG. 8 is a block diagram of an audio decoder corresponding to the coder of FIG. 1; FIG. 9 is a flowchart of an exemplary procedure for smoothing spectral coefficients and extracting minimum phases implemented in the decoder of FIG. 8; FIG. 10 is a block diagram of spectral analysis and mixing modules of harmonic and non-harmonic components of the audio signal; FIGS. 11 to 13 are graphs showing examples of nonlinear functions that can be used in the analysis module of FIG.

10;10;

- les figures 14 et 15 sont des diagrammes illustrant une façon de procéder à la synthèse temporelle des trames de signal dans le décodeur de la figure 8; - les figures 16 et 17 sont des graphiques montrant des fonctions de fenêtrage utilisables dans la synthèse des trames suivant les figures 14 et 15; 4 - - les figures 18 et 19 sont des schémas synoptiques de moyens d'interpolation utilisables dans une variante de réalisation du codeur et du décodeur; - la figure 20 est un schéma synoptique de moyens d'interpolation utilisables dans une autre variante de réalisation du codeur; et - les figures 21 et 22 sont des diagrammes illustrant une autre façon de procéder à la synthèse temporelle des trames de signal dans le décodeur  FIGS. 14 and 15 are diagrams illustrating one way of temporally synthesizing the signal frames in the decoder of FIG. 8; FIGS. 16 and 17 are graphs showing windowing functions that can be used in the synthesis of the frames according to FIGS. 14 and 15; FIGS. 18 and 19 are schematic diagrams of interpolation means that can be used in an alternative embodiment of the encoder and the decoder; FIG. 20 is a block diagram of interpolation means that can be used in another embodiment of the encoder; and FIGS. 21 and 22 are diagrams illustrating another way of temporally synthesizing the signal frames in the decoder

de la figure 8, à l'aide d'une interpolation de paramètres.  of Figure 8, using interpolation of parameters.

Le codeur et le décodeur décrits ci-après sont des circuits numériques qui peuvent, comme il est usuel dans le domaine du traitement des signaux audio, être réalisés par programmation d'un processeur de signal numérique  The encoder and decoder described below are digital circuits which, as is usual in the field of audio signal processing, can be implemented by programming a digital signal processor.

(DSP) ou d'un circuit intégré d'application spécifique (ASIC).  (DSP) or an application specific integrated circuit (ASIC).

Le codeur audio représenté sur la figure 1 traite un signal audio d'entrée x qui, dans l'exemple non-limitatif considéré ci-après, est un signal de parole. Le signal x est disponible sous forme numérique, par exemple à une fréquence d'échantillonnage Fe de 8 kHz. Il est par exemple délivré par un convertisseur analogique-numérique traitant le signal de sortie amplifié d'un microphone. Le signal d'entrée x peut également être formé à partir d'une autre  The audio coder shown in FIG. 1 processes an input audio signal x which, in the nonlimiting example considered hereinafter, is a speech signal. The signal x is available in digital form, for example at a sampling frequency Fe of 8 kHz. It is for example delivered by an analog-digital converter processing the amplified output signal of a microphone. The input signal x can also be formed from another

version, analogique ou numérique, codée ou non, du signal de parole.  version, analog or digital, coded or not, of the speech signal.

Le codeur comprend un module 1 qui forme des trames successives de signal audio pour les différents traitements effectués, et un multiplexeur de sortie 6 qui délivre un flux de sortie D contenant pour chaque trame des jeux de paramètres de quantification à partir desquels un décodeur sera capable de  The encoder comprises a module 1 which forms successive audio signal frames for the various processes performed, and an output multiplexer 6 which delivers an output stream D containing for each frame sets of quantization parameters from which a decoder will be able to of

synthétiser une version décodée du signal audio.  synthesize a decoded version of the audio signal.

La structure des trames est illustrée par les figures 2 et 3. Chaque trame 2 est composée d'un nombre N d'échantillons consécutifs du signal audio x. Les trames successives présentent des décalages temporels mutuels correspondant à M échantillons, de sorte que leur recouvrement est de L = N-M échantillons du signal. Dans l'exemple considéré, o N = 256, M =160 et L = 96, la durée des trames 2 est de N/Fe = 32 ms, et une trame est  The structure of the frames is illustrated in FIGS. 2 and 3. Each frame 2 is composed of a number N of consecutive samples of the audio signal x. The successive frames have mutual time offsets corresponding to M samples, so that their overlap is of L = N-M samples of the signal. In the example considered, where N = 256, M = 160 and L = 96, the duration of the frames 2 is N / Fe = 32 ms, and one frame is

formée toutes les M/Fe = 20 ms.formed all M / Fe = 20 ms.

De façon classique, le module 1 multiplie les échantillons de chaque trame 2 par une fonction de fenêtrage fA, de préférence choisie pour ses bonnes propriétés spectrales. Les échantillons x(i) de la trame étant numérotés de i = 0 à i = N-1, la fenêtre d'analyse fA(i) peut ainsi être une fenêtre de -5 - Hamming, d'expression: fA(i) = 0,54 + 0,46. cos2i - (N) 2 (1) ou une fenêtre de Hanning d'expression: = lr CS2i((N N), (2) ou encore une fenêtre de Kaiser, d'expression l ioH îi-(N-1)/2J20 fAffl) = o(c)(3) (o o a est un coefficient par exemple égal à 6, et lo(.) désigne la fonction de  Conventionally, the module 1 multiplies the samples of each frame 2 by a windowing function fA, preferably chosen for its good spectral properties. The samples x (i) of the frame being numbered from i = 0 to i = N-1, the analysis window fA (i) can thus be a Hamming window, of expression: fA (i) = 0.54 + 0.46. cos2i - (N) 2 (1) or a Hanning window of expression: = lr CS2i ((NN), (2) or a Kaiser window, of expression I ioH ii- (N-1) / 2J20 fAffl) = o (c) (3) (where o is a coefficient for example equal to 6, and lo (.) denotes the function of

Bessel d'indice 0.Bessel of index 0.

Le codeur de la figure 1 procède à une analyse du signal audio dans le domaine spectral. Il comporte un module 3 qui calcule la transformée de Fourier rapide (TFR) de chaque trame de signal. La trame de signal est mise en forme avant d'être soumise au module de TFR 3: le module 1 lui adjoint N = 256 échantillons à zéro afin d'obtenir la résolution maximale de la transformée de Fourier, et il effectue d'autre part une permutation circulaire des 2N = 512 échantillons afin de compenser les effets de phase résultant de la fenêtre d'analyse. Cette modification de la trame est illustrée par la figure 3. La trame dont on calcule la transformée de Fourier rapide sur 2N = 512 points commence par les N/2 = 128 derniers échantillons pondérés de la trame, suivis par les N = 256 échantillons à zéro, et se termine par les N12 = 128 premiers  The encoder of FIG. 1 carries out an analysis of the audio signal in the spectral domain. It comprises a module 3 which calculates the Fast Fourier Transform (TFR) of each signal frame. The signal frame is formatted before being submitted to the TFR module 3: the module 1 adjoins N = 256 samples to zero in order to obtain the maximum resolution of the Fourier transform, and it also performs a circular permutation of the 2N = 512 samples to compensate for the phase effects resulting from the analysis window. This modification of the frame is illustrated in FIG. 3. The frame whose fast Fourier transform is calculated on 2N = 512 points starts with the N / 2 = last 128 weighted samples of the frame, followed by the N = 256 samples at zero, and ends with the first N12 = 128

échantillons pondérés de la trame.  weighted samples of the frame.

Le module de TFR 3 obtient le spectre du signal pour chaque trame, dont le module et la phase sont respectivement notés IXl et cpx, ou IX(i)l et (px(i) pour les index de fréquence i = O à i = 2N-1 (grâce à la symétrie de la transformée de Fourier et des trames, on peut se limiter aux valeurs pour  The TFR 3 module obtains the spectrum of the signal for each frame whose modulus and phase are respectively denoted IX1 and cpx, or IX (i) 1 and (px (i) for the frequency indices i = 0 to i = 2N-1 (thanks to the symmetry of the Fourier transform and the frames, we can limit ourselves to the values for

0 < i < N).0 <i <N).

Un détecteur de fréquence fondamentale 4 estime pour chaque trame de signal une valeur de la fréquence fondamentale Fo. Le détecteur 4 peut appliquer toute méthode connue d'analyse du signal de parole de la trame pour estimer la fréquence fondamentale Fo, par exemple une méthode basée sur la -6- fonction d'autocorrélation ou la fonction AMDF, éventuellement précédée d'un module de blanchiment par prédiction linéaire. L'estimation peut également être effectuée dans le domaine spectral ou dans le domaine cepstral. Une autre possibilité est d'évaluer les intervalles de temps entre les ruptures consécutives du signal de parole attribuables à des fermetures de la glotte du locuteur intervenant pendant la durée de la trame. Des méthodes bien connues utilisables pour détecter de telles micro-ruptures sont décrites dans les articles suivants: M. Basseville et al., " Sequential detection of abrupt changes in spectral characteristics of digital signals " (IEEE Trans. on Information Theory, 1983, Vol. IT-29, n 5, pages 708-723); R. Andre-Obrecht, " A new statistical approach for the automatic segmentation of continuous speech signais " (IEEE Trans. on Acous., Speech and Sig. Proc., Vol. 36, N 1, janvier 1988); et C. MURGIA et al., " An algorithm for the estimation of glottal closure instants using the sequential detection of abrupt changes in speech signais " (Signal  A fundamental frequency detector 4 estimates for each signal frame a value of the fundamental frequency Fo. The detector 4 can apply any known method of analyzing the speech signal of the frame to estimate the fundamental frequency Fo, for example a method based on the autocorrelation function or the AMDF function, possibly preceded by a module bleaching by linear prediction. The estimation can also be carried out in the spectral domain or in the cepstral domain. Another possibility is to evaluate the time intervals between the consecutive breaks of the speech signal attributable to closures of the speaker's glottis occurring during the duration of the frame. Well known methods that can be used to detect such micro-breaks are described in the following articles: M. Basseville et al., "Sequential detection of abrupt changes in spectral characteristics of digital signals" (IEEE Trans. IT-29, No. 5, pages 708-723); R. Andre-Obrecht, "A new statistical approach for automatic segmentation of continuous speech" (IEEE Trans., Acous., Speech and Sig Proc., Vol 36, No. 1, January 1988); and C. MURGIA et al., "An algorithm for the estimation of glottal closure instants using the sequential detection of abrupt changes in speech signais" (Signal

Processing VII, 1994, pages 1685-1688).  Processing VII, 1994, pages 1685-1688).

La fréquence fondamentale estimée F0 fait l'objet d'une quantification, par exemple scalaire, par un module 5, qui fournit au multiplexeur de sortie 6 un index iF de quantification de la fréquence fondamentale pour chaque trame  The estimated fundamental frequency F0 is quantized, for example scalar, by a module 5, which supplies the output multiplexer 6 with an iF index for quantizing the fundamental frequency for each frame

du signal.of the signal.

Le codeur utilise des modélisations paramétriques cepstrales pour représenter une enveloppe supérieure et une enveloppe inférieure du spectre du signal audio. La première étape de la transformation cepstrale consiste à appliquer au module du spectre du signal une fonction de compression spectrale, qui peut être une fonction logarithmique ou en racine. Le module 8 du codeur opère ainsi, pour chaque valeur X(i) du spectre du signal (0 < i < N), la transformation suivante: LX(i)= bLogX(i) l) (4) dans le cas d'une compression logarithmique ou LX(i) = IX(i)l'/ (5) dans le cas d'une compression en racine, y étant un exposant compris entre 0 et 1. Le spectre comprimé LX du signal audio est traité par un module 9 qui extrait des amplitudes spectrales associées aux harmoniques du signal correspondant aux multiples de la fréquence fondamentale estimée F0. Ces -7 - amplitudes sont ensuite interpolées par un module 10 afin d'obtenir une  The encoder uses cepstral parametric modelings to represent an upper envelope and a lower envelope of the audio signal spectrum. The first step of the cepstral transformation consists in applying to the signal spectrum module a spectral compression function, which can be a logarithmic or root function. The module 8 of the encoder thus operates, for each value X (i) of the signal spectrum (0 <i <N), the following transformation: LX (i) = bLogX (i) l) (4) in the case of a logarithmic compression or LX (i) = IX (i) / (5) in the case of a root compression, y being an exponent between 0 and 1. The compressed spectrum LX of the audio signal is processed by a module 9 which extracts spectral amplitudes associated with the harmonics of the signal corresponding to the multiples of the estimated fundamental frequency F0. These amplitudes are then interpolated by a module 10 in order to obtain a

enveloppe supérieure comprimée notée LXsup.  compressed upper envelope denoted LXsup.

Il est à noter que la compression spectrale pourrait de façon équivalente être effectuée après la détermination des amplitudes associées aux harmoniques. Elle pourrait également être effectuée après l'interpolation,  It should be noted that the spectral compression could similarly be performed after the determination of the amplitudes associated with the harmonics. It could also be done after the interpolation,

ce qui ne ferait que modifier la forme des fonctions d'interpolation.  which would only change the shape of the interpolation functions.

Le module 9 d'extraction des maxima tient compte de l'éventuelle variation de la fréquence fondamentale sur la trame d'analyse, des erreurs que peut commettre le détecteur 4, ainsi que des imprécisions liées au caractère discret de l'échantillonnage en fréquence. Pour cela, la recherche des amplitudes des pics spectraux ne consiste pas simplement à prendre les valeurs LX(i) correspondant aux index i tels que i.Fe/2N soit la fréquence la plus proche d'une harmonique de fréquence k.F0 (k > 1). L'amplitude spectrale retenue pour une harmonique d'ordre k est un maximum local du module du spectre au voisinage de la fréquence k.Fo (cette amplitude est obtenue directement sous forme comprimée lorsque la compression spectrale 8 est  The module 9 for extracting the maxima takes into account the possible variation of the fundamental frequency on the analysis frame, errors that can be made by the detector 4, as well as inaccuracies related to the discrete nature of the frequency sampling. For this, the search for the amplitudes of the spectral peaks does not consist simply in taking the values LX (i) corresponding to the indices i such that i.Fe / 2N is the frequency closest to a harmonic of frequency k.F0 (k > 1). The spectral amplitude chosen for a harmonic of order k is a local maximum of the modulus of the spectrum in the vicinity of the frequency k.Fo (this amplitude is obtained directly in compressed form when the spectral compression 8 is

effectuée avant l'extraction des maxima 9).  performed before extraction of maxima 9).

Les figures 4 et 5 montrent un exemple de forme du spectre comprimé LX, o on voit que les amplitudes maximales des pics harmoniques ne coïncident pas nécessairement avec les amplitudes correspondant aux multiples entiers de la fréquence fondamentale estimée Fo. Les flancs des pics étant assez raides, une petite erreur de positionnement de la fréquence fondamentale Fo, amplifiée par l'indice d'harmonique k, peut distordre fortement l'enveloppe supérieure estimée du spectre et provoquer une mauvaise modélisation de la structure formantique du signal. Par exemple, prendre directement l'amplitude spectrale pour la fréquence 3.F0 dans le cas des figures 4 et 5 produirait une erreur importante dans l'extraction de l'enveloppe supérieure au voisinage de l'harmonique d'ordre k = 3, alors qu'il s'agit d'une zone énergétiquement importante dans l'exemple dessiné. En effectuant l'interpolation à partir du véritable maximum, on évite ce genre  FIGS. 4 and 5 show an example of the shape of the compressed spectrum LX, where it can be seen that the maximum amplitudes of the harmonic peaks do not necessarily coincide with the amplitudes corresponding to the integer multiples of the estimated fundamental frequency Fo. The flanks of the peaks being quite steep, a small positioning error of the fundamental frequency Fo, amplified by the harmonic index k, can strongly distort the estimated upper envelope of the spectrum and cause a poor modeling of the signal's signal structure. . For example, taking the spectral amplitude directly for the frequency 3.F0 in the case of FIGS. 4 and 5 would produce a significant error in the extraction of the upper envelope in the vicinity of the harmonic of order k = 3, then that it is an energetically important zone in the drawn example. By interpolating from the true maximum, we avoid this kind

d'erreur d'estimation de l'enveloppe supérieure.  estimation error of the upper envelope.

Dans l'exemple représenté sur la figure 4, I'interpolation est effectuée entre des points dont l'abscisse est la fréquence correspondant au maximum de l'amplitude d'un pic spectral, et dont l'ordonnée est ce maximum, avant ou -8 -  In the example shown in FIG. 4, the interpolation is performed between points whose abscissa is the frequency corresponding to the maximum of the amplitude of a spectral peak, and whose ordinate is this maximum, before or 8 -

après compression.after compression.

L'interpolation effectuée pour calculer l'enveloppe supérieure LXsup est une simple interpolation linéaire. Bien entendu une autre forme  The interpolation performed to calculate the upper envelope LXsup is a simple linear interpolation. Of course another form

d'interpolation pourrait être utilisée (par exemple polynomiale ou spline) .  interpolation could be used (eg polynomial or spline).

Dans la variante préférée représentée sur la figure 5, I'interpolation est effectuée entre des points dont l'abscisse est une fréquence k.Fo multiple de la fréquence fondamentale (en fait la fréquence la plus proche dans le spectre discret) et dont l'ordonnée est l'amplitude maximale, avant ou après  In the preferred variant shown in FIG. 5, the interpolation is performed between points whose abscissa is a frequency k.Fo which is a multiple of the fundamental frequency (in fact the closest frequency in the discrete spectrum) and whose ordinate is the maximum amplitude, before or after

compression, du spectre au voisinage de cette fréquence multiple.  compression, the spectrum in the vicinity of this multiple frequency.

En comparant les figures 4 et 5, on peut voir que le mode d'extraction selon la figure 5, qui repositionne les pics sur les fréquences harmoniques, conduit à une meilleure précision sur l'amplitude des pics que le décodeur attribuera aux fréquences multiples de la fréquence fondamentale. Il peut se produire un léger déplacement en fréquence de la position de ces pics, ce qui n'est pas perceptuellement très important et n'est d'ailleurs pas évité non plus dans le cas de la figure 4. Dans le cas de la figure 4, les points d'ancrage pour l'interpolation sont confondus avec les sommets des pics harmoniques. Dans le cas de la figure 5, on impose que ces points d'ancrage se trouvent précisément aux fréquences multiples de la fréquence fondamentale, leurs amplitudes  Comparing FIGS. 4 and 5, it can be seen that the extraction mode according to FIG. 5, which repositioned the peaks on the harmonic frequencies, led to a better accuracy on the amplitude of the peaks that the decoder will attribute to the multiple frequencies of the fundamental frequency. There may be a slight shift in frequency of the position of these peaks, which is not perceptually very important and is not avoided either in the case of Figure 4. In the case of the figure 4, the anchor points for the interpolation are confused with the vertices of the harmonic peaks. In the case of FIG. 5, it is required that these anchor points be precisely at the frequencies that are multiples of the fundamental frequency, their amplitudes

correspondant à celles des pics.corresponding to those of the peaks.

L'intervalle de recherche du maximum d'amplitude associé à une harmonique de rang k est centré sur l'index i de la fréquence de la TFR la plus proche de k.F0, c'est-à-dire i = 2NkF +I, o LaJ désigne l'entier égal ou L Fe 2j immédiatement inférieur au nombre a. La largeur de cet intervalle de recherche dépend de la fréquence d'échantillonnage Fe, de la taille 2N de la TFR et de la gamme de variation possible de la fréquence fondamentale. Cette largeur est typiquement de l'ordre d'une dizaine de fréquences avec les exemples de valeurs précédemment considérés. On peut la rendre réglable en fonction de la  The search interval of the amplitude maximum associated with a harmonic of rank k is centered on the index i of the frequency of the TFR closest to k.F0, that is to say i = 2NkF + I where LaJ denotes the equal integer or L Fe 2j immediately below the number a. The width of this search interval depends on the sampling frequency Fe, the size 2N of the TFR and the range of possible variation of the fundamental frequency. This width is typically of the order of ten frequencies with the examples of values previously considered. It can be made adjustable according to the

valeur F0 de la fréquence fondamentale et du numéro k de l'harmonique.  value F0 of the fundamental frequency and the number k of the harmonic.

Afin d'améliorer la résolution dans les basses fréquences et donc de représenter plus fidèlement les amplitudes des harmoniques dans cette zone, une distorsion non-linéaire de l'échelle des fréquences est opérée sur l'enveloppe supérieure comprimée par un module 12 avant que le module 13 effectue la transformée de Fourier rapide inverse (TFRI) fournissant les 9-  In order to improve the resolution in the low frequencies and thus to represent more accurately the amplitudes of the harmonics in this zone, a non-linear distortion of the frequency scale is operated on the upper envelope compressed by a module 12 before the The module 13 performs the inverse fast Fourier transform (TFRI) providing the 9-

coefficients cepstraux cxsup.Cepstral coefficients cxsup.

La distorsion non-linéaire permet de minimiser plus efficacement l'erreur de modélisation. Elle est par exemple effectuée selon une échelle de fréquences de type Mel ou Bark. Cette distorsion peut éventuellement dépendre de la fréquence fondamentale estimée F0. La figure 1 illustre le cas de l'échelle Mel. La relation entre les fréquences F du spectre linéaire, exprimées en hertz, et les fréquences F de l'échelle Mel est la suivante: Fo= (2)' x log10 o1 +F (6) Afin de limiter le débit de transmission, une troncature des coefficients cepstraux cx_sup est effectuée. Le module de TFRI 13 a besoin de calculer seulement un vecteur cepstral de NCS coefficients cepstraux d'ordres 0 à  Nonlinear distortion can more effectively minimize the modeling error. It is for example carried out according to a frequency scale of Mel or Bark type. This distortion may possibly depend on the estimated fundamental frequency F0. Figure 1 illustrates the case of the Mel scale. The relation between the frequencies F of the linear spectrum, expressed in hertz, and the frequencies F of the scale Mel is the following: Fo = (2) 'x log10 o1 + F (6) In order to limit the transmission rate, a truncation of the cepstral coefficients cx_sup is performed. The TFRI 13 module needs to calculate only a cepstral vector of NCS cepstral coefficients of orders 0 to

NCS-1. A titre d'exemple, NCS peut être égal à 16.  NCS-1. For example, NCS can be equal to 16.

Un post-filtrage dans le domaine cepstral, appelé post-liftrage, est appliqué par un module 15 à l'enveloppe supérieure comprimée LXsup. Ce post-liftrage correspond à une manipulation des coefficients cepstraux cx_sup délivrés par le module de TRFI 13, qui correspond approximativement à un post-filtrage de la partie harmonique du signal par une fonction de transfert ayant la forme classique: /A(z/y 21(7 H(z) = (1 - l.z-1 A(z /, y) (7) o A(z) est la fonction de transfert d'un filtre de prédiction linéaire du signal audio, y1 et y2 sont des coefficients compris entre 0 et 1, et p est un coefficient de préaccentuation éventuellement nul. La relation entre le coefficient post- liftré d'ordre i, noté cp(i), et le coefficient cepstral correspondant c(i) = cx_sup(i) délivré par le module 13 est alors: cp(O) = c(O)  A post-filtering in the cepstral domain, called post-liftrage, is applied by a module 15 to the compressed upper envelope LXsup. This post-scaling corresponds to a manipulation of the cepstral coefficients cx_sup delivered by the TRFI module 13, which corresponds approximately to a post-filtering of the harmonic part of the signal by a transfer function having the classical form: / A (z / y) 21 (7 H (z) = (1 - lz-1 A (z /, y) (7) where A (z) is the transfer function of a linear prediction filter of the audio signal, y1 and y2 are coefficients between 0 and 1, and p is a possibly zero pre-emphasis coefficient The relation between the post-lifted coefficient of order i, noted cp (i), and the corresponding cepstral coefficient c (i) = cx_sup (i) delivered by the module 13 is then: cp (O) = c (O)

(8)(8)

cp(i)11 -Y1)c(i) p pour i>0 (8) Le coefficient de préaccentuation optionnel [t peut être contrôlé en posant comme contrainte de préserver la valeur du coefficient cepstral cxsup(1) relatif à la pente. En effet, la valeur c(1) = cxsup(1) d'un bruit blanc filtré par le filtre de préaccentuation correspond au coefficient de préaccentuation. On peut ainsi choisir ce dernier de la façon suivante:  cp (i) 11 -Y1) c (i) p for i> 0 (8) The optional pre-emphasis coefficient [t can be controlled by the constraint of preserving the value of the cepstral coefficient cxsup (1) relative to the slope. Indeed, the value c (1) = cxsup (1) of a white noise filtered by the pre-emphasis filter corresponds to the pre-emphasis coefficient. We can choose the latter as follows:

= (,y2-1)c(1).= (, y2-1) c (1).

- 10 -- 10 -

Après le post-liftre 15, un module de normalisation 16 modifie encore les coefficients cepstraux en imposant la contrainte de modélisation exacte d'un point du spectre initial, qui est de préférence le point le plus énergétique parmi les maxima spectraux extraits par le module 9. En pratique, cette  After the post-lifter 15, a normalization module 16 further modifies the cepstral coefficients by imposing the exact modeling constraint of a point of the initial spectrum, which is preferably the most energetic point among the spectral maxima extracted by the module 9 In practice, this

s normalisation modifie seulement la valeur du coefficient cp(0).  This normalization only changes the value of the coefficient cp (0).

Le module de normalisation 16 fonctionne de la façon suivante: il recalcule une valeur du spectre synthétisé à la fréquence du maximum indiqué par le module 9, par transformée de Fourier des coefficients cepstraux tronqués et post-liftrés, en tenant compte de la distorsion nonlinéaire de l'axe des fréquences; il détermine un gain de normalisation gN par la différence logarithmique entre la valeur du maximum fournie par le module 9 et cette  The normalization module 16 operates in the following way: it recalculates a value of the spectrum synthesized at the frequency of the maximum indicated by the module 9, by Fourier transform of the truncated and post-lifted cepstral coefficients, taking into account the nonlinear distortion of the frequency axis; it determines a gain of normalization gN by the logarithmic difference between the value of the maximum provided by the module 9 and this

valeur recalculée; et il ajoute le gain gN au coefficient cepstral postliftré cp(0).  recalculated value; and he adds the gain gN to the post-filtered cephalal coefficient cp (0).

Cette normalisation peut être vue comme faisant partie du post-liftrage.  This standardization can be seen as part of post-layering.

Les coefficients cepstraux post-liftrés et normalisés font l'objet d'une quantification par un module 18 qui transmet des index de quantification  The post-lifted and normalized cepstral coefficients are quantified by a module 18 which transmits quantization indices

correspondants icxs au multiplexeur de sortie 6 du codeur.  corresponding icxs to the output multiplexer 6 of the encoder.

Le module 18 peut fonctionner par quantification vectorielle à partir de vecteurs cepstraux formés de coefficients post-liftrés et normalisés, notés ici cx[n] pour la trame de signal de rang n. A titre d'exemple, le vecteur cepstral cx[n] de NCS = 16 coefficients cepstraux cx[n,0], cx[n,1] ,..., cx[n,NCS-1] est distribué en quatre sous-vecteurs cepstraux contenant chacun quatre coefficients d'ordres consécutifs. Le vecteur cepstral cx[n] peut être traité par les moyens représentés sur la figure 6, faisant partie du module de quantification 18. Ces moyens mettent en oeuvre, pour chaque composante cx[n,i], un prédicteur de la forme: cx p [n, i]= (1 - c(i)). rcx[n, i] + c(i). rcx[n-1, i] (9) o rcx[n] désigne un vecteur résiduel de prédiction pour la trame de rang n  The module 18 can operate by vector quantization from cepstral vectors formed of post-lifted and normalized coefficients, denoted here cx [n] for the n-rank signal frame. By way of example, the cepstral vector cx [n] of NCS = 16 cepstral coefficients cx [n, 0], cx [n, 1], ..., cx [n, NCS-1] is distributed in four sub-groups. cepstral vectors each containing four consecutive order coefficients. The cepstral vector cx [n] can be processed by the means represented in FIG. 6, forming part of the quantization module 18. These means implement, for each component cx [n, i], a predictor of the form: cx p [n, i] = (1 - c (i)). rcx [n, i] + c (i). rcx [n-1, i] (9) where rcx [n] designates a residual prediction vector for the n-rank frame

dont les composantes sont respectivement notées rcx[n,0], rcx[n,1],...  whose components are respectively denoted rcx [n, 0], rcx [n, 1], ...

rcx[n,NCS-1], et cu(i) désigne un coefficient de prédiction choisi pour être représentatif d'une corrélation inter-trame supposée. Après quantification des résidus, ce vecteur résiduel est défini par: rcx[n,i]= cx[n, i] - c(i). rcx-q[n-1, i] (10) 2 - ea(i) o rcxq[n-1] désigne le vecteur résiduel quantifié pour la trame de rang n-i,  rcx [n, NCS-1], and cu (i) denotes a prediction coefficient chosen to be representative of a supposed inter-frame correlation. After quantization of the residues, this residual vector is defined by: rcx [n, i] = cx [n, i] - c (i). rcx-q [n-1, i] (10) 2 - ea (i) where rcxq [n-1] denotes the quantized residual vector for the frame of rank n-i,

- 11 -- 11 -

dont les composantes sont respectivement notées rcxq[n,0], rcxq[n,1],...  whose components are respectively denoted rcxq [n, 0], rcxq [n, 1], ...

rcxq[n, NCS-1].rcxq [n, NCS-1].

Le numérateur de la relation (10) est obtenu par un soustracteur 20, dont les composantes du vecteur de sortie sont divisées par les quantités 2c(i) en 21. Aux fins de la quantification, le vecteur résiduel rcx[n] est subdivisé en quatre sous-vecteurs, correspondant à la subdivision en quatre sous-vecteurs cepstraux. Sur la base d'un dictionnaire obtenu par apprentissage préalable, I'unité 22 procède à la quantification vectorielle de chaque sous-vecteur du vecteur résiduel rcx[n]. Cette quantification peut consister, pour chaque sous-vecteur srcx[n], à sélectionner dans le dictionnaire le sous-vecteur quantifié srcxq[n] qui minimise l'erreur quadratique lsrcx[n] - srcx_q[n]l2. L'ensemble icxs des index de quantification icx, correspondant aux adresses dans le ou les dictionnaires des sous-vecteurs  The numerator of the relation (10) is obtained by a subtractor 20, whose components of the output vector are divided by the quantities 2c (i) into 21. For the purposes of the quantification, the residual vector rcx [n] is subdivided into four subvectors, corresponding to the subdivision into four cepstral subvectors. On the basis of a dictionary obtained by prior learning, the unit 22 proceeds to the vector quantization of each sub-vector of the residual vector rcx [n]. This quantization can consist, for each sub-vector srcx [n], of selecting in the dictionary the quantized sub-vector srcxq [n] which minimizes the quadratic error lsrcx [n] - srcx_q [n] l2. The set icxs of the quantification index icx, corresponding to the addresses in the dictionaries of the sub-vectors

résiduels quantifiés srcxq[n], est fourni au multiplexeur de sortie 6.  quantized residuals srcxq [n], is supplied to the output multiplexer 6.

L'unité 22 délivre également les valeurs des sous-vecteurs résiduels quantifiés, qui forment le vecteur rcxq[n]. Celui-ci est retardé d'une trame en 23, et ses composantes sont multipliées par les coefficients oa(i) en 24 pour fournir le vecteur à l'entrée négative du soustracteur 20. Ce dernier vecteur est d'autre part fourni à un additionneur 25, dont l'autre entrée reçoit un vecteur formé par les composantes du résidu quantifié rcxq[n] respectivement multipliées par les quantités 1-cc(i) en 26. L'additionneur 25 délivre ainsi le  The unit 22 also delivers the values of the quantized residual sub-vectors, which form the vector rcxq [n]. This latter is delayed by one frame at 23, and its components are multiplied by the coefficients oa (i) at 24 to supply the vector at the negative input of the subtractor 20. This latter vector is, on the other hand, supplied to a adder 25, whose other input receives a vector formed by the components of the quantized residual rcxq [n] respectively multiplied by the quantities 1-cc (i) in 26. The adder 25 thus delivers the

vecteur cepstral quantifié cxq[n] que récupérera le décodeur.  cepstral vector quantized cxq [n] that will recover the decoder.

Le coefficient de prédiction co(i) peut être optimisé séparément pour chacun des coefficients cepstraux. Les dictionnaires de quantification peuvent  The coefficient of prediction co (i) can be optimized separately for each of the cepstral coefficients. Quantization dictionaries can

aussi être optimisés séparément pour chacun quatre sous-vecteurs cepstraux.  also be optimized separately for each four cepstral subvectors.

D'autre part, il est possible, de façon connue en soi, de normaliser les vecteurs cepstraux avant d'appliquer le schéma de prédiction/quantification, à partir de  On the other hand, it is possible, in a manner known per se, to normalize the cepstral vectors before applying the prediction / quantization scheme, starting from

la variance des cepstres.the variance of the cepstres.

Il est à noter que le schéma ci-dessus de quantification des coefficients cepstraux peut n'être appliqué que pour certaines seulement des trames. Par exemple, on peut prévoir un second mode de quantification ainsi qu'un processus de sélection de celui des deux modes qui minimise un critère de moindres carrés avec les coefficients cepstraux à quantifier, et transmettre avec les index de quantification de la trame un bit indiquant lequel des deux  It should be noted that the above scheme of quantization of cepstral coefficients may be applied only for some frames only. For example, a second quantization mode can be provided, as well as a selection process for the one of the two modes, which minimizes a least squares criterion with the cepstral coefficients to be quantized, and transmits with the quantization indices of the frame a bit indicating which one

modes a été sélectionné.modes has been selected.

-12 - Les coefficients cepstraux quantifiés cxsup_q = cxq[n] fournis par l'additionneur 25 sont adressés à un module 28 qui recalcule les amplitudes spectrales associées à une ou plusieurs des harmoniques de la fréquence fondamentale F0 (figure 1). Ces amplitudes spectrales sont par exemple calculées sous forme comprimée, en appliquant la transformée de Fourier aux coefficients cepstraux quantifiés en tenant compte de la distorsion non-linéaire de l'échelle des fréquences utilisée dans la transformation cepstrale. Les amplitudes ainsi recalculées sont fournies à un module d'adaptation 29 qui les compare à des amplitudes de maxima déterminées par le module d'extraction 9. Le module d'adaptation 29 contrôle le post-liftre 15 de façon à minimiser un écart de module entre le spectre du signal audio et les valeurs de module correspondantes calculées en 28. Cet écart de module peut être exprimé par une somme de valeurs absolues de différences d'amplitudes, comprimées ou non, correspondant à une ou plusieurs des fréquences harmoniques. Cette somme peut être pondérée en fonction des amplitudes  The quantified cepstral coefficients cxsup_q = cxq [n] provided by the adder 25 are addressed to a module 28 which recalculates the spectral amplitudes associated with one or more of the harmonics of the fundamental frequency F0 (FIG. 1). These spectral amplitudes are for example calculated in compressed form, by applying the Fourier transform to the quasispersed coefficients, taking into account the non-linear distortion of the frequency scale used in the cepstral transformation. The amplitudes thus recalculated are supplied to an adaptation module 29 which compares them with amplitudes of maxima determined by the extraction module 9. The adaptation module 29 controls the post-lifter 15 so as to minimize a module gap. between the spectrum of the audio signal and the corresponding module values calculated at 28. This module difference can be expressed as a sum of absolute values of amplitude differences, compressed or not, corresponding to one or more of the harmonic frequencies. This sum can be weighted according to the amplitudes

spectrales associées à ces fréquences.  spectrum associated with these frequencies.

De façon optimale, I'écart de module pris en compte dans l'adaptation  Optimally, the module gap taken into account in the adaptation

du post-liftrage tiendrait compte de toutes les harmoniques du spectre.  Post-Lifting would take into account all the harmonics of the spectrum.

Cependant, afin de réduire la complexité de l'optimisation, le module 28 peut ne resynthétiser les amplitudes spectrales que pour une ou plusieurs fréquences multiples de la fréquence fondamentale Fo, sélectionnées sur la base de l'importance du module du spectre en valeur absolue. Le module d'adaptation 29 peut par exemple considérer les trois pics spectraux les plus  However, in order to reduce the complexity of the optimization, the module 28 can resynthesize the spectral amplitudes only for one or more multiple frequencies of the fundamental frequency Fo, selected on the basis of the importance of the modulus of the spectrum in absolute value. The adaptation module 29 can for example consider the three most spectral peaks

intenses dans le calcul de l'écart de module à minimiser.  intense in calculating the module deviation to be minimized.

Dans une autre réalisation, le module d'adaptation 29 estime une courbe de masquage spectral du signal audio au moyen d'un modèle psychoacoustique, et les fréquences prises en compte dans le calcul de l'écart de module à minimiser sont sélectionnées sur la base de l'importance du module duspectre relativement à la courbe de masquage (on peut par exemple prendre les trois fréquences pour lesquelles le module du spectre dépasse le plus de la courbe de masquage). Différentes méthodes classiques  In another embodiment, the adaptation module 29 estimates a spectral masking curve of the audio signal by means of a psychoacoustic model, and the frequencies taken into account in the calculation of the module deviation to be minimized are selected on the basis of the importance of the spectrum module relative to the masking curve (it is possible, for example, to take the three frequencies for which the spectrum modulus exceeds the maximum of the masking curve). Different classical methods

sont utilisables pour calculer la courbe de masquage à partir du signal audio.  can be used to calculate the masking curve from the audio signal.

On peut par exemple utiliser celle développée par J.D. Johnston (" Transform Coding of Audio Signals Using Perceptual Noise Criteria ", IEEE Journal on  One can for example use the one developed by J.D. Johnston ("Transform Coding of Audio Signals Using Perceptual Noise Criteria", IEEE Journal on

- 13 -- 13 -

Selected Area in Communications, Vol. 6, No. 2, février 1988).  Selected Area in Communications, Vol. 6, No. 2, February 1988).

Pour réaliser l'adaptation du post-liftrage, le module 29 peut utiliser un modèle d'identification de filtre. Une méthode plus simple consiste à prédéfinir un ensemble de jeux de paramètres de post-liftrage, c'est-àdire un ensemble de couples y1, Y2 dans le cas d'un post-liftrage selon les relations (8), à effectuer les opérations incombant aux modules 15, 16, 18 et 28 pour chacun de ces jeux de paramètres, et à retenir celui des jeux de paramètres qui conduit à l'écart de module minimal entre le spectre du signal et les valeurs recalculées. Les index de quantification fournis par le module 18 sont alors  To carry out post-scaling adaptation, the module 29 can use a filter identification model. A simpler method is to predefine a set of post-scaling parameter sets, i.e., a set of pairs y1, Y2 in the case of post-scaling according to the relationships (8), to perform the operations the modules 15, 16, 18 and 28 for each of these sets of parameters, and retain that of the sets of parameters which leads to the minimum module gap between the signal spectrum and the recalculated values. The quantization indices provided by the module 18 are then

ceux qui se rapportent au meilleur jeu de paramètres.  those that relate to the best set of parameters.

Par un processus analogue à celui de l'extraction des coefficients cx_sup représentant l'enveloppe supérieure comprimée LXsup du spectre du signal, le codeur détermine des coefficients cx_inf représentant une enveloppe inférieure comprimée LX_inf. Un module 30 extrait du spectre comprimé LX des amplitudes spectrales associées à des fréquences situées dans des zones du spectre intermédiaires par rapport aux fréquences multiples de la fréquence  By a process analogous to that of extracting the coefficients cx_sup representing the compressed upper envelope LXsup of the signal spectrum, the coder determines coefficients cx_inf representing a compressed lower envelope LX_inf. A module 30 extracts from the compressed spectrum LX spectral amplitudes associated with frequencies located in areas of the intermediate spectrum with respect to the frequency multiples of the frequency

fondamentale estimée F0.fundamental estimated F0.

Dans l'exemple illustré par les figures 4 et 5, chaque amplitude associée à une fréquence située dans une zone intermédiaire entre deux harmoniques successives k.F0 et (k+1).F0 correspond simplement au module du spectre pour la fréquence (k+1/2).F0 située au milieu de l'intervalle séparant les deux harmoniques. Dans une autre réalisation, cette amplitude pourrait être une moyenne du module du spectre sur une petite plage entourant cette  In the example illustrated in FIGS. 4 and 5, each amplitude associated with a frequency located in an intermediate zone between two successive harmonics k.F0 and (k + 1) .F0 simply corresponds to the frequency modulus for the frequency (k + 1/2) .F0 located in the middle of the interval separating the two harmonics. In another embodiment, this amplitude could be an average of the spectrum modulus on a small beach surrounding this

fréquence (k+1/2).Fo.frequency (k + 1/2) .Fo.

Un module 31 procède à une interpolation, par exemple linéaire, des amplitudes spectrales associées aux fréquences situées dans les zones  A module 31 interpolates, for example linearly, the spectral amplitudes associated with the frequencies located in the zones

intermédiaires pour obtenir l'enveloppe inférieure comprimée LX_inf.  intermediates to obtain the compressed lower envelope LX_inf.

La transformation cepstrale appliquée à cette enveloppe inférieure comprimée LX_inf est effectuée suivant une échelle de fréquences résultant d'une distorsion non-linéaire appliquée par un module 32. Le module de TFRI 33 calcule un vecteur cepstral de NCI coefficients cepstraux cx_inf d'ordres O à NCI-1 représentant l'enveloppe inférieure. NCI est un nombre qui peut être  The cepstral transformation applied to this compressed lower envelope LX_inf is performed according to a frequency scale resulting from a non-linear distortion applied by a module 32. The TFRI module 33 calculates a cepstral vector of NCI cepstral coefficients cx_inf of orders O to NCI-1 representing the lower envelope. NCI is a number that can be

sensiblement plus petit que NCS, par exemple NCI = 4.  significantly smaller than NCS, for example NCI = 4.

La transformation non-linéaire de l'échelle des fréquences pour la transformation cepstrale de l'enveloppe inférieure peut être réalisée vers une -14- échelle plus fine aux hautes fréquences qu'aux basses fréquences, ce qui permet avantageusement de bien modéliser les composantes non-voisées du signal aux hautes fréquences. Toutefois, pour assurer une homogénéité de représentation entre l'enveloppe supérieure et l'enveloppe inférieure, on pourra préférer adopter dans le module 32 la même échelle que dans le module 12  The non-linear transformation of the frequency scale for the cepstral transformation of the lower envelope can be performed to a finer scale at the high frequencies than at the low frequencies, which advantageously makes it possible to model well the non-linear components. -voisées signal at high frequencies. However, to ensure homogeneity of representation between the upper envelope and the lower envelope, it may be preferable to adopt in module 32 the same scale as in module 12

(Mel dans l'exemple considéré).(Mel in the example considered).

Les coefficients cepstraux cx_inf représentant l'enveloppe inférieure comprimée sont quantifiés par un module 34, qui peut fonctionner de la même manière que le module 18 de quantification des coefficients cepstraux représentant l'enveloppe supérieure comprimée. Dans le cas considéré, o on se limite à NCI = 4 coefficients cepstraux pour l'enveloppe inférieure, le vecteur ainsi formé est soumis à une quantification vectorielle de résidu de prédiction, effectuée par des moyens identiques à ceux représentés sur la figure 6 mais sans subdivision en sous-vecteurs. L'index de quantification icx = icxi déterminé par le quantificateur vectoriel 22 pour chaque trame relativement aux  The cepstral coefficients cx_inf representing the compressed lower envelope are quantized by a module 34, which can operate in the same way as the module 18 for quantizing the cepstral coefficients representing the compressed upper envelope. In the case considered, where we limit ourselves to NCI = 4 cepstral coefficients for the lower envelope, the vector thus formed is subjected to vector quantization of prediction residue, performed by means identical to those shown in FIG. subdivision into sub-vectors. The quantization index icx = icxi determined by the vector quantizer 22 for each frame relative to the

coefficients cx_inf est fourni au multiplexeur de sortie 6 du codeur.  coefficients cx_inf is supplied to the output multiplexer 6 of the encoder.

Le codeur représenté sur la figure 1 ne comporte aucun dispositif  The encoder shown in FIG. 1 does not include any device

particulier pour coder les phases du spectre aux harmoniques du signal audio.  particular for coding the phases of the spectrum to the harmonics of the audio signal.

En revanche, il comporte des moyens 36-40 pour coder une information temporelle liée à la phase de la composante non-harmonique  On the other hand, it comprises means 36-40 for encoding a temporal information related to the phase of the non-harmonic component.

représentée par l'enveloppe inférieure.  represented by the lower envelope.

Un module 36 de décompression spectrale et un module 37 de TFRI  A spectral decompression module 36 and a TFRI module 37

forment une estimation temporelle de la trame de la composante non-  form a temporal estimate of the non-component

harmonique. Le module 36 applique une fonction de décompression réciproque de la fonction de compression appliquée par le module 8 (c'est- à-dire une exponentielle ou une fonction puissance 1/y) à l'enveloppe inférieure comprimée LXinf produite par le module d'interpolation 31. Ceci fournit le module de la trame estimée de la composante non- harmonique, dont la phase est prise égale à celle px du spectre du signal X sur la trame. La transformée de Fourier inverse effectuée par le module 37 fournit la trame estimée de la  harmonic. The module 36 applies a reciprocal decompression function of the compression function applied by the module 8 (that is, an exponential or a power function 1 / y) to the compressed lower envelope LXinf produced by the module. interpolation 31. This provides the modulus of the estimated frame of the non-harmonic component, the phase of which is taken equal to that of the spectrum of the signal X on the frame. The inverse Fourier transform performed by the module 37 provides the estimated frame of the

composante non-harmonique.non-harmonic component.

Le module 38 subdivise cette trame estimée de la composante non-  The module 38 subdivides this estimated frame of the non-component

harmonique en plusieurs segments temporels. La trame délivrée par le module 37 se composant de 2N = 512 échantillons pondérés comme illustré par la figure 3, le module 38 considère seulement les N/2 = 128 premiers échantillons -15 - et les N/2 = 128 derniers échantillons, et les subdivise par exemple en huit segments de 32 échantillons consécutifs représentant chacun 4 ms de signal. Pour chaque segment, le module 38 calcule l'énergie égale à la somme des carrés des échantillons, et forme un vecteur E1 formé de huit composantes réelles positives égales aux huit énergies calculées. La plus grande de ces huit énergies, notée EM, est également déterminée pour être fournie, avec le vecteur El, à un module de normalisation 39. Celui-ci divise chaque composante du vecteur E1 par EM, de sorte que le vecteur normalisé Emix est formé de huit composantes comprises entre 0 et 1. C'est ce vecteur normalisé Emix, ou vecteur de pondération, qui est soumis à la quantification par le module 40. Celuici peut opérer une quantification vectorielle avec un dictionnaire déterminé lors d'un apprentissage préalable. L'index de quantification iEm est fourni par le module 40 au multiplexeur de sortie 6 du  harmonic in several time segments. The frame delivered by the module 37 consisting of 2N = 512 weighted samples as illustrated by FIG. 3, the module 38 considers only the N / 2 = 128 first samples -15 - and the N / 2 = 128 last samples, and the subdivide for example into eight segments of 32 consecutive samples each representing 4 ms of signal. For each segment, the module 38 calculates the energy equal to the sum of the squares of the samples, and forms a vector E1 formed of eight positive real components equal to the eight calculated energies. The largest of these eight energies, denoted EM, is also determined to be provided, with the vector E1, to a normalization module 39. This module divides each component of the vector E1 by EM, so that the standardized vector Emix is composed of eight components between 0 and 1. It is this standardized vector Emix, or weighting vector, which is subjected to the quantization by the module 40. It can operate a vector quantization with a dictionary determined during a prior learning . The quantization index iEm is provided by the module 40 to the output multiplexer 6 of the

codeur.encoder.

La figure 7 montre une variante de réalisation des moyens employés par le codeur de la figure 1 pour déterminer le vecteur Emix de pondération énergétique de la trame de la composante non-harmonique. Les modules 36, 37 de décompression spectrale et de TFRI fonctionnent comme ceux qui portent les mêmes références sur la figure 1. Un module de sélection 42 est ajouté pour déterminer la valeur du module du spectre soumis à la transformée de Fourier inverse 37. Sur la base de la fréquence fondamentale estimée FO, le module 42 identifie des régions harmoniques et des régions non-harmoniques du spectre du signal audio. Par exemple, une fréquence sera considérée comme appartenant à une région harmonique si elle se trouve dans un intervalle de fréquences centré sur une harmonique k.F0 et de largeur  FIG. 7 shows an alternative embodiment of the means employed by the coder of FIG. 1 for determining the energy-weighting Emix vector of the frame of the non-harmonic component. The spectral decompression modules 36, 37 and TFRI operate as those having the same references in FIG. 1. A selection module 42 is added to determine the value of the spectrum module subjected to the inverse Fourier transform 37. Based on the estimated fundamental frequency FO, the module 42 identifies harmonic regions and non-harmonic regions of the audio signal spectrum. For example, a frequency will be considered as belonging to a harmonic region if it is in a frequency interval centered on a harmonic k.F0 and width

correspondant à une largeur de raie spectrale synthétisée, et à une région non-  corresponding to a synthesized spectral line width, and a non-region

harmonique sinon. Dans les régions non-harmoniques, le signal complexe soumis à la TFRI 37 est égal à la valeur du spectre, c'est-à-dire que son module et sa phase correspondent aux valeurs IXI et (px fournies par le module de TFR 3. Dans les régions harmoniques, ce signal complexe a la même phase (Px que le spectre et un module donné par l'enveloppe inférieure après décompression spectrale 36. Cette façon de procéder selon la figure 7 procure  harmonic otherwise. In the non-harmonic regions, the complex signal subjected to the TFRI 37 is equal to the value of the spectrum, that is to say that its modulus and its phase correspond to the values IXI and (px provided by the module of TFR 3 In the harmonic regions, this complex signal has the same phase (Px as the spectrum and a modulus given by the lower envelope after spectral decompression 36. This procedure according to FIG.

une modélisation plus précise des régions non-harmoniques.  more accurate modeling of non-harmonic regions.

Le décodeur représenté sur la figure 8 comprend un démultiplexeur -16 d'entrée 45 qui extrait du flux binaire (, issu d'un codeur selon la figure 1, les index iF, icxs, icxi, iEm de quantification de la fréquence fondamentale FO, des coefficients cepstraux représentant l'enveloppe supérieure comprimée, des coefficients représentants l'enveloppe inférieure comprimée, et du vecteur de pondération Emix, et les distribue respectivement à des modules 46, 47, 48 et 49. Ces modules 46-49 comportent des dictionnaires de quantification semblables à ceux des modules 5, 18, 34 et 40 de la figure 1, afin de restituer les valeurs des paramètres quantifiés. Les modules 47 et 48 ont des dictionnaires pour former les résidus de prédiction quantifiés rcxq[n], et ils en déduisent les vecteurs cepstraux quantifiés cxq[n] avec des éléments identiques aux éléments 23-26 de la figure 6. Ces vecteurs cepstraux quantifiés cx_q[n] fournissent les coefficients cepstraux cxsup_q et cx_infLq  The decoder shown in FIG. 8 comprises an input demultiplexer 45 which extracts from the bit stream (from an encoder according to FIG. 1) the indices iF, icxs, icxi, iEm of quantization of the fundamental frequency FO, cepstral coefficients representing the compressed upper envelope, coefficients representative of the compressed lower envelope, and the Emix weighting vector, and distributes them respectively to modules 46, 47, 48 and 49. These modules 46-49 comprise dictionaries of similar to those of the modules 5, 18, 34 and 40 of Figure 1, in order to restore the values of the quantized parameters, the modules 47 and 48 have dictionaries for forming the quantized prediction residuals rcxq [n], and deduce the quantified cepstral vectors cxq [n] with elements identical to the elements 23-26 of FIG. 6. These quasified cepstral vectors cx_q [n] provide the cepstral coefficients cxsup_q and cx_ infLq

traités par le décodeur.processed by the decoder.

Un module 51 calcule la transformée de Fourier rapide des coefficients cepstraux cx_sup pour chaque trame de signal. L'échelle des fréquences du spectre comprimé qui en résulte est modifiée non-linéairement par un module 52 appliquant la transformation non-linéaire réciproque de celle du module 12 de la figure 1, et qui fournit l'estimation LX_sup de l'enveloppe supérieure comprimée. Une décompression spectrale de LXsup, opérée par un module 53, fournit l'enveloppe supérieure Xsup comportant les valeurs estimées du  A module 51 calculates the fast Fourier transform of the cepstral coefficients cx_sup for each signal frame. The frequency scale of the resulting compressed spectrum is modified non-linearly by a module 52 applying the reciprocal non-linear transformation of that of the module 12 of FIG. 1, and which provides the LX_sup estimate of the compressed upper envelope. . A spectral decompression of LXsup, operated by a module 53, provides the upper envelope Xsup containing the estimated values of the

module du spectre aux fréquences multiples de la fréquence fondamentale Fo.  multi-frequency spectrum module of the fundamental frequency Fo.

Le module 54 synthétise l'estimation spectrale Xv de la composante harmonique du signal audio, par une somme de raies spectrales centrées sur les fréquences multiples de la fréquence fondamentale F0 et dont les  The module 54 synthesizes the spectral estimation Xv of the harmonic component of the audio signal, by a sum of spectral lines centered on the multiple frequencies of the fundamental frequency F0 and whose

amplitudes (en module) sont celles données par l'enveloppe supérieure X_sup.  Amplitudes (in modulus) are those given by the upper envelope X_sup.

Bien que le flux numérique d'entrée O ne comporte pas d'informations spécifiques sur la phase du spectre du signal aux harmoniques de la fréquence fondamentale, le décodeur de la figure 8 est capable d'extraire de l'information sur cette phase à partir des coefficients cepstraux cx_sup_q représentant I'enveloppe supérieure comprimée. Cette information de phase est utilisée pour affecter une phase p(k) à chacune des raies spectrales déterminées par le  Although the digital input stream O does not have specific information on the phase of the signal spectrum at the harmonics of the fundamental frequency, the decoder of FIG. 8 is able to extract information on this phase from cepstral coefficients cx_sup_q representing the compressed upper envelope. This phase information is used to assign a phase p (k) to each of the spectral lines determined by the

module 54 dans l'estimation de la composante harmonique du signal.  module 54 in the estimation of the harmonic component of the signal.

En première approximation, le signal de parole peut être considéré comme étant à phase minimale. D'autre part, il est connu que l'information de phase minimale peut se déduire facilement d'une modélisation cepstrale. Cette -17 - information de phase minimale est donc calculée pour chaque fréquence harmonique. L'hypothèse de phase minimale signifie que l'énergie du signal synthétisé est localisée au début de chaque période de la fréquence  As a first approximation, the speech signal can be considered to be at minimum phase. On the other hand, it is known that minimal phase information can easily be deduced from cepstral modeling. This minimum phase information is therefore calculated for each harmonic frequency. The minimum phase hypothesis means that the energy of the synthesized signal is located at the beginning of each period of the frequency

fondamentale Fo.fundamental Fo.

Pour être plus proche d'un signal de parole réel, on introduit un peu de dispersion au moyen d'un post-liftrage spécifique des cepstres lors de la synthèse de la phase. Avec ce post-liftrage, effectué par le module 55 de la figure 8, il est possible d'accentuer les résonances formantiques de l'enveloppe et donc de contrôler la dispersion des phases. Ce postliftrage est par exemple  To be closer to a real speech signal, a little dispersion is introduced by means of a specific post-ligation of the cepstres during the synthesis of the phase. With this post-stretching, carried out by the module 55 of FIG. 8, it is possible to accentuate the formanic resonances of the envelope and thus to control the dispersion of the phases. This postlifter is for example

de la forme (8).of the form (8).

Pour limiter les ruptures de phase, il est préférable de lisser les coefficients cepstraux post-liftrés, ce qui est effectué par le module 56. Le module 57 déduit des coefficients cepstraux post-liftrés et lissés la phase minimale affectée à chaque raie spectrale représentant un pic harmonique du  To limit the phase breaks, it is preferable to smooth the post-lifted cepstral coefficients, which is done by the module 56. The module 57 deduces from the post-lifted cepstral coefficients and smoothed the minimum phase assigned to each spectral line representing a harmonic peak of

spectre.spectrum.

Les opérations effectuées par les modules 56, 57 de lissage et d'extraction de la phase minimale sont illustrées par l'organigramme de la figure 9. Le module 56 examine les variations des coefficients cepstraux pour appliquer un lissage moins important en présence de variations brusques qu'en présence de variations lentes. Pour cela, il effectue le lissage des coefficients cepstraux au moyen d'un facteur d'oubli Xc choisi en fonction d'une comparaison entre un seuil dth et une distance d entre deux jeux successifs de coefficients cepstraux post- liftrés. Le seuil dth est lui-même adapté en fonction  The operations carried out by the minimum phase smoothing and extraction modules 56, 57 are illustrated by the flowchart of FIG. 9. The module 56 examines the variations of the cepstral coefficients to apply a smaller smoothing in the presence of sudden variations. only in the presence of slow variations. For this, he performs the smoothing of the cepstral coefficients by means of a forgetting factor Xc chosen as a function of a comparison between a threshold dth and a distance d between two successive sets of post-lifted cepstral coefficients. The threshold dth is itself adapted according to

des variations des coefficients cepstraux.  variations of the cepstral coefficients.

La première étape 60 consiste à calculer la distance d entre les deux vecteurs successifs relatifs aux trames n-1 et n. Ces vecteurs, notés ici cxp[n-1] et cxp[n], correspondent pour chaque trame à l'ensemble des NCS coefficients cepstraux post-liftrés représentant l'enveloppe supérieure comprimée. La distance utilisée peut notamment être la distance euclidienne  The first step 60 consists in calculating the distance d between the two successive vectors relative to the n-1 and n frames. These vectors, noted here cxp [n-1] and cxp [n], correspond for each frame to the set of NCS post-lifted cepstral coefficients representing the compressed upper envelope. The distance used may notably be the Euclidean distance

entre les deux vecteurs ou encore une distance quadratique.  between the two vectors or a quadratic distance.

Deux lissages sont d'abord effectués, respectivement au moyen de facteurs d'oubli Xmin et Xmax, pour déterminer une distance minimale dmin et une distance maximale dmax. Le seuil dth est ensuite déterminé à l'étape 70 comme étant situé entre les distances minimale et maximale dmin, dmax: 18-  Two smoothings are first performed, respectively by means of forgetting factors Xmin and Xmax, to determine a minimum distance dmin and a maximum distance dmax. The threshold dth is then determined in step 70 as being situated between the minimum and maximum distances dmin, dmax:

dth = 3.dmax + (1-m).dmin, le coefficient 3 étant par exemple égal à 0,5.  dth = 3.dmax + (1-m) .dmin, the coefficient 3 being for example equal to 0.5.

Dans l'exemple représenté, les facteurs d'oubli Xmin et Xmax sont eux-  In the example shown, the forgetting factors Xmin and Xmax are themselves

mêmes sélectionnés parmi deux valeurs distinctes, respectivement Xminl, Xmin2 et Xmaxl, Xmax2 comprises entre 0 et 1, les indices Xminl, X'maxI étant chacun sensiblement plus près de 0 que les indices Xmin2, Xmax2' Si d > dmin (test 61), le facteur d'oubli Xmin est égal à Xminl (étape 62); sinon il est pris égal à kmin2 (étape 63). A l'étape 64, la distance minimale dmin est prise égale à min.dmin + (1-min).d. Si d > dmax (test 65), le facteur d'oubli Xmax est égal à Xmaxl (étape 66); sinon il est pris égal à Xmax2 (étape 67). A l'étape 68, la distance minimale dmax est prise égale à Xmax dmax + (1-Xmax).d Si la distance d entre les deux vecteurs cepstraux consécutifs est plus grande que le seuil dth (test 71), on adopte pour le facteur d'oubli Xc une valeur Xcl relativement proche de 0 (étape 72). On considère dans ce cas que le signal correspondant est de type non stationnaire, de sorte qu'il n'y a pas lieu de conserver une grande mémoire des coefficients cepstraux antérieurs. Si d < dth, on adopte à l'étape 73 pour le facteur d'oubli Xc une valeur Xc2 moins proche de 0 afin de lisser davantage les coefficients cepstraux. Le lissage est effectué à l'étape 74, o le vecteur cxl[n] de coefficients lissés pour la trame courante n est déterminé par: cxl[n] = Xc.cxl[n-1] + (1 - Xc)Cxp[n] (11) Le module 57 calcule ensuite les phases minimales p(k) associées aux harmoniques k.F0. De façon connue, la phase minimale pour une harmonique d'ordre k est donnée par: NCS-1 qp(k)=-2. ' cxl[n,m]. sin(27mkF0o/Fe) (12) m=1  the same ones selected from two distinct values, Xmin1, Xmin2 and Xmax1 respectively, Xmax2 lying between 0 and 1, the indices Xmin1, X'max1 each being substantially closer to 0 than the indices Xmin2, Xmax2 'Si d> dmin (test 61) the forgetting factor Xmin is equal to Xmin1 (step 62); otherwise it is taken equal to kmin2 (step 63). In step 64, the minimum distance dmin is taken equal to min.dmin + (1-min) .d. If d> dmax (test 65), the forgetting factor Xmax is equal to Xmaxl (step 66); otherwise it is taken equal to Xmax2 (step 67). In step 68, the minimum distance dmax is taken equal to Xmax dmax + (1-Xmax) .d If the distance d between the two consecutive cepstral vectors is greater than the threshold dth (test 71), then for the forget factor Xc a value Xcl relatively close to 0 (step 72). It is considered in this case that the corresponding signal is of the non-stationary type, so that it is not necessary to keep a large memory of the previous cepstral coefficients. If d <dth, we adopt in step 73 for the forgetting factor Xc a value Xc2 less close to 0 in order to further smooth the cepstral coefficients. The smoothing is performed in step 74, where the vector cx1 [n] of smoothed coefficients for the current frame n is determined by: cxl [n] = Xc.cxl [n-1] + (1-Xc) Cxp [ n] (11) The module 57 then calculates the minimal phases p (k) associated with the harmonics k.F0. In a known way, the minimum phase for a harmonic of order k is given by: NCS-1 qp (k) = - 2. 'cxl [n, m]. sin (27mkF0o / Fe) (12) m = 1

o cxl[n,m] désigne le coefficient cepstral lissé d'ordre m pour la trame n.  o cxl [n, m] denotes the smoothed cepstral coefficient of order m for the n-frame.

A l'étape 75, l'index d'harmonique k est initialisé à 1. Pour initialiser le calcul de la phase minimale affectée à l'harmonique k, la phase (p(k) et l'index cepstral m sont initialisés respectivement à 0 et 1 à l'étape 76. A l'étape 77, le  In step 75, the harmonic index k is initialized to 1. To initialize the calculation of the minimum phase assigned to the harmonic k, the phase (p (k) and the cepstral index m are initialized respectively at 0 and 1 at step 76. At step 77, the

module 57 ajoute à la phase qp(k) la quantité -2.cxl[n,m].sin(2nmk.F0/Fe).  module 57 adds to the phase qp (k) the quantity -2.cxl [n, m] .sin (2nmk.F0 / Fe).

L'index cepstral m est incrémenté à l'étape 78 et comparé à NCS à l'étape 79.  The cepstral index m is incremented in step 78 and compared to NCS in step 79.

-19 - Les étapes 77 et 78 sont répétées tant que m < NCS. Quand m = NCS, le calcul de la phase minimale est terminé pour l'harmonique k, et l'index k est incrémenté à l'étape 80. Le calcul de phases minimales 76- 79 est renouvelé  Steps 77 and 78 are repeated as long as m <NCS. When m = NCS, the calculation of the minimum phase is completed for the harmonic k, and the index k is incremented in step 80. The calculation of minimum phases 76-79 is repeated

pour l'harmonique suivante tant que k.F0 < Fe/2 (test 81).  for the next harmonic as k.F0 <Fe / 2 (test 81).

Dans l'exemple de réalisation selon la figure 8, le module 54 tient compte d'une phase constante sur la largeur de chaque raie spectrale, égale à la phase minimale (p(k) fournie pour l'harmonique correspondante k par le  In the exemplary embodiment according to FIG. 8, the module 54 takes into account a constant phase over the width of each spectral line, equal to the minimum phase (p (k) supplied for the corresponding harmonic k by the

module 57.module 57.

L'estimation Xv de la composante harmonique est synthétisée par sommation de raies spectrales positionnées aux fréquences harmoniques de la fréquence fondamentale F0. Lors de cette synthèse, on peut positionner les raies spectrales sur l'axe des fréquences avec une résolution supérieure à la résolution de la transformée de Fourier. Pour cela, on précalcule une fois pour toutes une raie spectrale de référence selon la résolution supérieure. Ce calcul peut consister en une transformée de Fourier de la fenêtre d'analyse fA avec une taille de transformée de 16384 points, procurant une résolution de 0,5 Hz par point. La synthèse de chaque raie harmonique est alors effectuée par le module 54 en positionnant sur l'axe des fréquences la raie de référence à haute résolution, et en sous-échantillonnant cette raie spectrale de référence pour se ramener à la résolution de 16,625 Hz de la transformée de Fourier sur  The estimate Xv of the harmonic component is synthesized by summation of spectral lines positioned at the harmonic frequencies of the fundamental frequency F0. During this synthesis, it is possible to position the spectral lines on the frequency axis with a resolution greater than the resolution of the Fourier transform. For this, a reference spectral line is precalculated once and for all according to the higher resolution. This calculation can consist of a Fourier transform of the analysis window fA with a transform size of 16384 points, providing a resolution of 0.5 Hz per point. The synthesis of each harmonic line is then performed by the module 54 by positioning the high resolution reference line on the frequency axis, and by sub-sampling this reference spectral line to reduce to the 16.625 Hz resolution of the Fourier transform on

512 points. Ceci permet de positionner avec précision la raie spectrale.  512 points. This makes it possible to accurately position the spectral line.

Pour la détermination de l'enveloppe inférieure, le module de TFR 85 du décodeur de la figure 8 reçoit les NCI coefficients cepstraux quantifiés cx_inf q d'ordres 0 à NCI - 1, et il les complète avantageusement par les NCS - NCI coefficients cepstraux cxsup_q d'ordre NCI à NCS- 1 représentant l'enveloppe supérieure. En effet, on peut estimer en première approximation que les variations rapides de l'enveloppe inférieure comprimée sont bien reproduites par celles de l'enveloppe supérieure comprimée. Dans une autre réalisation, le module de TFR 85 pourrait ne considérer que les NCI  For the determination of the lower envelope, the TFR module 85 of the decoder of FIG. 8 receives the NCI quantized cepstral coefficients cx_inf q from orders 0 to NCI-1, and it advantageously completes them by the NCS-NCI cepstral coefficients cxsup_q from NCI to NCS-1 representing the upper envelope. In fact, it can be estimated as a first approximation that the rapid variations of the compressed lower envelope are well reproduced by those of the compressed upper envelope. In another embodiment, the TFR 85 module could consider only the NCIs

paramètres cepstraux cxinfq.cepstral parameters cxinfq.

Le module 86 convertit l'échelle de fréquences de manière réciproque de la conversion opérée par le module 32 du codeur, afin de restituer l'estimation LXinf de l'enveloppe inférieure comprimée, soumise au module de décompression spectrale 87. En sortie du module 87, le décodeur dispose -20 - d'une enveloppe inférieure X_inf comportant les valeurs du module du spectre  The module 86 converts the frequency scale reciprocally from the conversion operated by the module 32 of the encoder, in order to restore the estimate LXinf of the compressed lower envelope, submitted to the spectral decompression module 87. At the output of the module 87 , the decoder has a lower envelope X_inf comprising the values of the spectrum module

dans les vallées situées entre les pics harmoniques.  in the valleys between the harmonic peaks.

Cette enveloppe X_inf va moduler le spectre d'une trame de bruit dont la phase est traitée en fonction du vecteur de pondération quantifié Emix extrait par le module 49. Un générateur 88 délivre une trame de bruit normalisé dont les segments de 4 ms sont pondérés dans un module 89 conformément aux composantes normalisées du vecteur Emix fourni par le module 49 pour la trame courante. Ce bruit est un bruit blanc filtré passe-haut pour tenir compte du faible niveau qu'a en principe la composante non-voisée aux basses fréquences. A partir du bruit pondéré en énergie, le module 90 forme des trames de 2N = 512 échantillons en appliquant la fenêtre d'analyse fA, l'insertion de 256 échantillons à zéro et la permutation circulaire pour la compensation de phase conformément à ce qui a été expliqué en référence à la figure 3. La transformée de Fourier de la trame résultante est calculée par le module TFR 91. L'estimation spectrale Xuv de la composante non-harmonique est déterminée par le module de synthèse spectrale 92 qui effectue une pondération fréquence par fréquence. Cette pondération consiste à multiplier chaque valeur spectrale complexe fournie par le module de TFR 91 par la valeur de l'enveloppe inférieure X_inf obtenue pour la même fréquence par le  This envelope X_inf will modulate the spectrum of a noise frame whose phase is processed according to the quantified weighting vector Emix extracted by the module 49. A generator 88 delivers a normalized noise frame whose segments of 4 ms are weighted in a module 89 according to the standardized components of the Emix vector provided by the module 49 for the current frame. This noise is a high-pass filtered white noise to account for the low level that normally has the unvoiced component at low frequencies. From the energy-weighted noise, the module 90 forms frames of 2N = 512 samples by applying the analysis window fA, the insertion of 256 samples at zero and the circular permutation for the phase compensation according to what has been done. The Fourier transform of the resulting frame is computed by the TFR module 91. The spectral estimation Xuv of the non-harmonic component is determined by the spectral synthesis module 92 which performs a frequency weighting. by frequency. This weighting consists of multiplying each complex spectral value provided by the TFR module 91 by the value of the lower envelope X_inf obtained for the same frequency by the

module de décompression spectrale 87.  spectral decompression module 87.

Les estimations spectrales Xv, Xuv des composantes harmonique (voisée dans le cas d'un signal de parole) et non-harmonique (ou non-voisée) sont combinées par un module de mixage 95 contrôlé par un module 96  The spectral estimates Xv, Xuv of the harmonic (voiced in the case of a speech signal) and non-harmonic (or non-voiced) components are combined by a mixing module 95 controlled by a module 96

d'analyse du degré d'harmonicité (ou de voisement) du signal.  analyzing the degree of harmonicity (or voicing) of the signal.

L'organisation de ces modules 95, 96 est illustrée par la figure 10. Le module d'analyse 96 comporte une unité 97 d'estimation d'un degré de voisement W dépendant de la fréquence, à partir duquel sont calculés quatre gains dépendant de la fréquence, à savoir deux gains gv, guv contrôlant I'importance relative des composantes harmonique et nonharmonique dans le signal synthétisé, et deux gains gv_, gLuv _p utilisés pour bruiter la phase de la  The organization of these modules 95, 96 is illustrated in FIG. 10. The analysis module 96 comprises a unit 97 for estimating a degree of voicing W depending on the frequency, from which four gains depending on the frequency are calculated. the frequency, namely two gains gv, guv controlling the relative importance of the harmonic and nonharmonic components in the synthesized signal, and two gains gv_, gLuv _p used to noise the phase of the

composante harmonique.harmonic component.

Le degré de voisement W(i) est une valeur à variation continue comprise entre 0 et 1 déterminée pour chaque index de fréquence i (0 < i < N) en fonction de l'enveloppe supérieure Xsup(i) et de l'enveloppe inférieure 21 - Xinf(i) obtenues pour cette fréquence i par les modules de décompression 53, 87. Le degré de voisement W(i) est estimé par l'unité 97 pour chaque index de fréquence i correspondant à une harmonique de la fréquence fondamentale Fo, à savoir i= 2NkF +i pour k= 1,2,..., par une fonction croissante du Fe2 rapport entre l'enveloppe supérieure X_sup et l'enveloppe inférieure Xinf à cette fréquence, par exemple selon la formule W(i) -min, 1{10. log0 [X_suP(i)/Xinf(i)] (13) W(i)-- min 1, Vt__(F0 1 3 Le seuil Vth(F0) correspond à la dynamique moyenne calculée sur un spectre synthétique purement voisé à la fréquence fondamentale. Il est  The degree of voicing W (i) is a continuously varying value between 0 and 1 determined for each frequency index i (0 <i <N) as a function of the upper envelope Xsup (i) and the lower envelope 21 - Xinf (i) obtained for this frequency i by the decompression modules 53, 87. The degree of voicing W (i) is estimated by the unit 97 for each index of frequency i corresponding to a harmonic of the fundamental frequency Fo i = 2NkF + i for k = 1,2, ..., by an increasing function of the Fe2 ratio between the upper envelope X_sup and the lower envelope Xinf at this frequency, for example according to the formula W (i ) -min, 1 {10. log0 [X_suP (i) / Xinf (i)] (13) W (i) - min 1, Vt __ (F0 1 3 The threshold Vth (F0) corresponds to the average dynamic calculated on a synthetic spectrum purely voiced at the frequency It is essential

avantageusement choisi dépendant de la fréquence fondamentale F0.  advantageously chosen depending on the fundamental frequency F0.

Le degré de voisement W(i) pour une fréquence autre que les fréquences harmoniques est obtenu simplement comme étant égal à celui  The degree of voicing W (i) for a frequency other than the harmonic frequencies is obtained simply as being equal to that

estimé pour l'harmonique la plus proche.  estimated for the nearest harmonic.

Le gain gv(i), qui dépend de la fréquence, est obtenu en appliquant une  The gain gv (i), which depends on the frequency, is obtained by applying a

i5 fonction non-linéaire au degré de voisement W(i) (bloc 98). Cette fonction non-  i5 non-linear function at the degree of voicing W (i) (block 98). This non-function

linéaire a par exemple la forme représentée sur la figure 11i gv(i) = 0 si 0 W(i) W1 gV(i) - ()W1 siW1 <W(i) <W2 (14)  For example, the linear form has the form shown in FIG. 11i gv (i) = 0 if 0 W (i) W1 gV (i) - () W1 siW1 <W (i) <W2 (14)

W2- W1(W2- W1 (

gv(i) = 1 si W2 < W(i) < 1 les seuils Wl, W2 étant tels que O <Wl <W2 < 1. Le gain guv peut être calculé de manière semblable au gain gv (la somme des deux gains gv, guv étant constante, par exemple égale à 1), ou déduit simplement de celui-ci par la relation guv(i) = 1 - gv(i), comme schématisé par le soustracteur 99 sur la  gv (i) = 1 if W2 <W (i) <1 the thresholds Wl, W2 being such that O <Wl <W2 <1. The guv gain can be calculated in a similar way to the gain gv (the sum of the two gains gv , guv being constant, for example equal to 1), or simply deduced from it by the relation guv (i) = 1 - gv (i), as schematized by the subtractor 99 on the

figure 10.figure 10.

Il est intéressant de pouvoir bruiter la phase de la composante harmonique du signal à une fréquence donnée si l'analyse du degré de voisement montre que le signal est plutôt de type non-harmonique à cette fréquence. Pour cela, la phase (Pv de la composante harmonique mixée est le résultat d'une combinaison linéaire des phases (pv, (Puv des composantes  It is interesting to be able to noise the phase of the harmonic component of the signal at a given frequency if the analysis of the degree of voicing shows that the signal is rather non-harmonic type at this frequency. For this, the phase (Pv of the mixed harmonic component is the result of a linear combination of the phases (pv, (Puv of the components

harmonique et non-harmonique Xv, Xuv synthétisées par les modules 54, 92.  harmonic and non-harmonic Xv, Xuv synthesized by the modules 54, 92.

-22 - Les gains gv_(p guv_ p respectivement appliqués à ces phases sont calculés à partir du degré de voisement W et pondérés également en fonction de l'index de fréquence i, étant donné que le bruitage de la phase n'est véritablement  The gains gv_ (p guv_p respectively applied to these phases are calculated from the degree of voicing W and weighted also according to the frequency index i, since the sounding of the phase is not really true.

utile qu'au-delà d'une certaine fréquence.  useful only beyond a certain frequency.

Un premier gain gv1 _ est calculé en appliquant une fonction non- linéaire au degré de voisement W(i), comme schématisé par le bloc 100 sur la figure 10. Cette fonction non-linéaire peut avoir la forme représentée sur la figure 12: gvlq(i) = G1 si 0 < W(i) < W3 gv1 (i) = Gl+(l- G1) W(i) - W3 si W3 < W(i) < W4 (15) W4-W3 gv1 (i) = 1 si W4 < W(i) < 1 les seuils W3 et W4 étant tels que 0 < W3 < W4 < 1, et le gain minimal G1  A first gain gv1 _ is calculated by applying a non-linear function to the degree of voicing W (i), as shown schematically by block 100 in FIG. 10. This non-linear function can have the form shown in FIG. 12: gvlq (i) = G1 if 0 <W (i) <W3 gv1 (i) = Gl + (l-G1) W (i) - W3 if W3 <W (i) <W4 (15) W4-W3 gv1 (i) = 1 if W4 <W (i) <1 the thresholds W3 and W4 being such that 0 <W3 <W4 <1, and the minimum gain G1

étant compris entre 0 et 1.being between 0 and 1.

Un multiplieur 101 multiplie pour chaque fréquence d'index i le gain gv1_ par un autre gain gv2_,p dépendant seulement de l'index de fréquence i, pour former le gain gv_ (i). Le gain gv2,p(i) dépend non-linéairement de l'index de fréquence i, par exemple comme indiqué sur la figure 13 gv2_e(i) = 1 si 0 < i < il gv2_,(i) = 1-(1-G2) il si il < i < i2 (16) gv2_(p i2 -il gv2_p(i) = G2 si i2 < i < 1 les index il et i2 étant tels que 0 < il <i2 <N, et le gain minimal G2 étant compris entre 0 et 1. Le gain guv p(i) peut être calculé simplement comme étant égal à 1 - gv p(i) = 1 - gvl (i).gv2_e(i) (soustracteur 102 de la figure ). Le spectre complexe Y du signal synthétisé est produit par le module de mixage 95, qui réalise la relation de mixage suivante, pour 0 < i < N: Y(i) = gv(i) Xv (i)l. expuj (Pv(i)] + guv(i). Xuv(i) (17) avec (Pv(i) = gv _(i). (PV(i) + guv_(i). (Puv(i) (18) o (pv(i) désigne l'argument du nombre complexe Xv(i) fourni par le module 54 pour la fréquence d'index i (bloc 104 de la figure 10), et (puv(i) désigne  A multiplier 101 multiplies for each index frequency i the gain gv1_ by another gain gv2_, p depending only on the frequency index i, to form the gain gv_ (i). The gain gv2, p (i) depends non-linearly on the frequency index i, for example as shown in FIG. 13 gv2_e (i) = 1 if 0 <i <il gv2 _, (i) = 1- (1) -G2) it if it <i <i2 (16) gv2_ (p i2 -it gv2_p (i) = G2 if i2 <i <1 the indexes il and i2 being such that 0 <il <i2 <N, and the gain with G2 being between 0 and 1. The gain guv p (i) can be calculated simply as being equal to 1 - gv p (i) = 1 - gv1 (i) .gv2_e (i) (subtracter 102 of the figure) The complex spectrum Y of the synthesized signal is produced by the mixing module 95, which carries out the following mixing relation, for 0 <i <N: Y (i) = gv (i) Xv (i) I. expuj (Pv (i)] + guv (i) Xuv (i) (17) with (Pv (i) = gv _ (i). (PV (i) + guv (i). (Puv (i) (18)) (pv (i) designates the argument of the complex number Xv (i) supplied by the module 54 for the index frequency i (block 104 of FIG. 10), and (puv (i) designates

- 23 -- 23 -

I'argument du nombre complexe Xuv(i) fourni par le module 92 (bloc 105 de la figure 10). Cette combinaison est réalisée par les multiplieurs 106110 et les  The argument of the complex number Xuv (i) provided by the module 92 (block 105 of FIG. 10). This combination is achieved by the multipliers 106110 and the

additionneurs 111-112 représentés sur la figure 10.  adders 111-112 shown in FIG.

Le spectre mixé Y(i) pour 0 _ i < 2N (avec Y(2N-1-i) =Y(i)) est ensuite transformé dans le domaine temporel par le module de TFRI 115 (figure 8). On ne retient que les N/2 = 128 premiers et les N/2 = 128 derniers échantillons de la trame de 2N = 512 échantillons produite par le module 115, et on applique la permutation circulaire inverse de celle illustrée par la figure 3 pour obtenir la trame synthétisée de N = 256 échantillons pondérés par la fenêtre d'analyse fA' Les trames successivement obtenues de cette manière sont finalement traitées par le module de synthèse temporelle 116 qui forme le signal audio  The mixed spectrum Y (i) for 0 - i <2N (with Y (2N-1-i) = Y (i)) is then transformed in the time domain by the TFRI module 115 (FIG. 8). Only the first N / 2 = 128 and the N / 2 = last 128 samples of the frame of 2N = 512 samples produced by the module 115 are retained, and the inverse circular permutation of that illustrated in FIG. the synthesized frame of N = 256 samples weighted by the analysis window fA 'The frames successively obtained in this manner are finally processed by the temporal synthesis module 116 which forms the audio signal

décodé k.decoded k.

Le module de synthèse temporelle 116 effectue une somme à recouvrement de trames modifiées par rapport à celles successivement évaluées en sortie du module 115. La modification peut être vue en deux  The time synthesis module 116 performs an overlapping sum of frames modified with respect to those successively evaluated at the output of the module 115. The modification can be seen in two

étapes illustrées respectivement par les figures 14 et 15.  steps illustrated respectively in Figures 14 and 15.

La première étape (figure 14) consiste à multiplier chaque trame 2' délivrée par le module de TFRI 115 par une fenêtre 1/fA inverse de la fenêtre d'analyse fA employée par le module 1 du codeur. Les échantillons de la trame  The first step (FIG. 14) consists in multiplying each frame 2 'delivered by the TFRI module 115 by a window 1 / fA inverse to the analysis window fA used by the module 1 of the encoder. The samples of the frame

2" qui en résultent sont donc pondérés uniformément.  2 "that result are therefore weighted uniformly.

La seconde étape (figure 15) consiste à multiplier les échantillons de cette trame 2" par une fenêtre de synthèse fs vérifiant les propriétés suivantes: fs(N-L+i) + fs(i) = A pour O < i < L (19) fs(i) = A pour L i < N-L (20) o A désigne une constante positive arbitraire, par exemple A = 1. La fenêtre de synthèse fs(i) croît progressivement de 0 à A pour i allant de 0 à L. C'est par exemple une demi-sinusoïde surélevée: fs(i) = A.(1-cos[(i+112)7/LD pour 0 <i<L (21) Après avoir repondéré chaque trame 2" par la fenêtre de synthèse fs, le module 116 positionne les trames successives avec leurs décalages temporels de M = 160 échantillons et leurs recouvrements temporels de L = 96 échantillons, puis il effectue la somme des trames ainsi positionnées dans le temps. Du fait des propriétés (19) et (20) de la fenêtre de synthèse fs, chaque -24 - échantillon du signal audio décodé k ainsi obtenu est affecté d'un poids global uniforme, égal à A. Ce poids global provient de la contribution d'une trame unique si l'échantillon a dans cette trame un rang i tel que L < i < N - L, et comporte les contributions sommées de deux trames successives si 0 < i < L o N - L < i < N. On peut ainsi effectuer la synthèse temporelle de façon simple même si, comme dans le cas considéré, le recouvrement L entre deux trames  The second step (FIG. 15) consists in multiplying the samples of this frame 2 "by a synthesis window fs satisfying the following properties: fs (N-L + i) + fs (i) = A for O <i <L ( 19) fs (i) = A for L i <NL (20) where A denotes an arbitrary positive constant, for example A = 1. The synthesis window fs (i) progressively increases from 0 to A for i ranging from 0 to L. For example, a raised half-sinusoid: fs (i) = A. (1-cos [(i + 112) 7 / LD for 0 <i <L (21) After reweighting each 2 "frame by the synthesis window fs, the module 116 positions the successive frames with their time offsets of M = 160 samples and their temporal overlaps of L = 96 samples, then it performs the sum of the frames thus positioned in time. 19) and (20) of the synthesis window fs, each sample of the decoded audio signal k thus obtained is assigned a uniform overall weight, equal to A. This overall weight l comes from the contribution of a single frame if the sample has in this frame a rank i such that L <i <N - L, and comprises the summed contributions of two successive frames if 0 <i <L o N - L <i <N. It is thus possible to perform the temporal synthesis in a simple manner even if, as in the case considered, the overlap L between two frames

successives est plus petit que la moitié de la taille N de ces trames.  successive is smaller than half the size N of these frames.

Les deux étapes exposées ci-dessus pour la modification des trames de signal peuvent être fusionnées en une seule étape. Il suffit de précalculer une fenêtre composée fc(i) = fs(i)/fA(i), et de multiplier simplement les trames 2' de N = 256 échantillons délivrées par le module 115 par la fenêtre composée  The two steps outlined above for modifying the signal frames can be merged in one step. It suffices to precompute a composite window fc (i) = fs (i) / fA (i), and to simply multiply the frames 2 'of N = 256 samples delivered by the module 115 by the composite window

fc avant d'effectuer la sommation à recouvrement.  fc before performing the overlay summation.

La figure 16 montre l'allure de la fenêtre composée fc dans le cas o la fenêtre d'analyse fA est une fenêtre de Hamming et la fenêtre de synthèse fs a  FIG. 16 shows the appearance of the composite window fc in the case where the analysis window fA is a Hamming window and the synthesis window fs

la forme donnée par les relations (19) à (21).  the form given by relations (19) to (21).

D'autre formes de la fenêtre de synthèse fs vérifiant les relations (19) et (20) peuvent être employées. Dans la variante de la figure 17, c'est une fonction affine par morceaux définie par: fs(i) = A.i/L pour 0 < i < L (22) Afin d'améliorer la qualité de codage du signal audio, le codeur de la figure 1 peut augmenter la cadence de formation et d'analyse des trames, afin de transmettre davantage de paramètres de quantification au décodeur. Dans la structure de trame représentée sur la figure 2, unetrame de N = 256 échantillons (32 ms) est formée toutes les 20 ms. Ces trames de 256 échantillons pourraient être formées à une cadence supérieure, par exemple de 10 ms, deux trames successives ayant alors un décalage de M/2 = 80  Other forms of the synthesis window fs satisfying relationships (19) and (20) can be employed. In the variant of FIG. 17, it is a piecewise affine function defined by: fs (i) = Ai / L for 0 <i <L (22) In order to improve the coding quality of the audio signal, the coder of FIG. 1 can increase the rate of frame formation and analysis, in order to transmit more quantization parameters to the decoder. In the frame structure shown in Fig. 2, a frame of N = 256 samples (32 ms) is formed every 20 ms. These frames of 256 samples could be formed at a higher rate, for example 10 ms, two successive frames then having an offset of M / 2 = 80

échantillons et un recouvrement de 176 échantillons.  samples and an overlay of 176 samples.

Dans ces conditions, on peut transmettre les jeux complets de  In these conditions, it is possible to transmit the complete sets of

paramètres de quantification iF, icxs, icxi, iEm pour seulement un sous-  quantization parameters iF, icxs, icxi, iEm for only one sub-

ensemble des trames, et transmettre pour les autres trames des paramètres permettant d'effectuer une interpolation adéquate au niveau du décodeur. Dans l'exemple envisagé ci-dessus, le sous-ensemble pour lequel des jeux de paramètres complets sont transmis peut être constitué par les trames de rang -25 - entier n, dont la périodicité est de M/Fe = 20 ms, et les trames pour lesquelles une interpolation est effectuée peuvent être celles de rang demi-entier n + 1/2  set of frames, and transmit for the other frames parameters to perform adequate interpolation at the decoder. In the example envisaged above, the subset for which complete sets of parameters are transmitted can be constituted by the frames of rank -25 - integer n, whose periodicity is M / Fe = 20 ms, and the frames for which interpolation is performed can be half-integer n + 1/2

qui sont décalées de 10 ms par rapport aux trames du sous-ensemble.  which are shifted by 10 ms from the frames of the subassembly.

Dans la réalisation illustrée par la figure 18, les notations cxq [n-1] et cxq[n] désignent des vecteurs cepstraux quantifiés déterminés, pour deux trames successives de rang entier, par le module de quantification 18 et/ou par le module de quantification 34. Ces vecteurs comprennent par exemple quatre coefficients cepstraux consécutifs chacun. Ils pourraient également  In the embodiment illustrated in FIG. 18, the notations cxq [n-1] and cxq [n] denote determined quasified cepstral vectors, for two successive frames of entire rank, by the quantization module 18 and / or by the module of Quantization 34. These vectors comprise for example four consecutive cepstral coefficients each. They could also

comprendre davantage de coefficients cepstraux.  understand more cepstral coefficients.

Un module 120 effectue une interpolation de ces deux vecteurs cepstraux cxq[n-1] et cxq[n], afin d'estimer une valeur intermédiaire cxi[n-1/2]. L'interpolation effectuée par le module 120 peut être une simple moyenne arithmétique des vecteurs cxq[n-1] et cxq[n]. En variante, le module 120 pourrait appliquer une formule d'interpolation plus sophistiquée, par exemple polynomiale, en se fondant également sur les vecteurs cepstraux obtenus pour des trames antérieures à la trame n-1. D'autre part, si plus d'une trame interpolée est intercalée entre deux trames consécutives de rang entier,  A module 120 interpolates these two cepstral vectors cxq [n-1] and cxq [n], in order to estimate an intermediate value cxi [n-1/2]. The interpolation performed by the module 120 can be a simple arithmetic mean of the vectors cxq [n-1] and cxq [n]. As a variant, the module 120 could apply a more sophisticated interpolation formula, for example polynomial, also based on the cepstral vectors obtained for frames prior to the n-1 frame. On the other hand, if more than one interpolated frame is interposed between two consecutive frames of full rank,

l'interpolation tient compte de la position relative de chaque trame interpolée.  the interpolation takes into account the relative position of each interpolated frame.

A l'aide des moyens précédemment décrits, le codeur calcule  Using the means previously described, the coder calculates

également les coefficients cepstraux cx[n-1/2] relatifs à la trame de rang demi-  also the cepstral coefficients cx [n-1/2] relating to the half-rank weft

entier. Dans le cas de l'enveloppe supérieure, ces coefficients cepstraux sont ceux fournis par le module de TFRI 13 après post-liftrage 15 (par exemple avec les mêmes coefficients de post-liftrage que pour la trame précédente n-1) et normalisation 16. Dans le cas de l'enveloppe inférieure, les coefficients  whole. In the case of the upper envelope, these cepstral coefficients are those provided by the TFRI module 13 after post-scaling (for example with the same post-scaling coefficients as for the previous frame n-1) and normalization 16. In the case of the lower envelope, the coefficients

cepstraux cx[n-1/2] sont ceux délivrés par le module de TFRI 33.  cepstral cx [n-1/2] are those delivered by the TFRI 33 module.

Un soustracteur 121 forme la différence ecx[n-1/2] entre les coefficients cepstraux cx[n-1/2] calculés pour la trame de rang demi-entier et les coefficients cxi[n-1/2] estimés par interpolation. Cette différence est fournie à un module de quantification 122 qui adresse des index de quantification icx[n-1/2] au multiplexeur de sortie 6 du codeur. Le module 122 fonctionne par exemple par quantification vectorielle des erreurs d'interpolation  A subtractor 121 forms the difference ecx [n-1/2] between the cepstral coefficients cx [n-1/2] calculated for the half-integer field and the coefficients cxi [n-1/2] estimated by interpolation. This difference is provided to a quantization module 122 which addresses quantization indices icx [n-1/2] to the output multiplexer 6 of the encoder. The module 122 operates for example by vector quantization interpolation errors

ecx[n-1/2] successivement déterminées pour les trames de rang demi-entier.  ecx [n-1/2] successively determined for frames of half-integer rank.

Cette quantification de l'erreur d'interpolation peut être effectuée par le codeur pour chacun des NCS + NCI coefficients cepstraux utilisés par le décodeur, ou seulement pour certains d'entre eux, typiquement ceux d'ordres  This quantization of the interpolation error can be carried out by the coder for each of the NCS + NCI coefficients used by the decoder, or only for some of them, typically those of orders

- 26 -- 26 -

les plus petits.the little ones.

Les moyens correspondants du décodeur sont illustrés par la figure 19.  The corresponding means of the decoder are illustrated in FIG. 19.

Le décodeur fonctionne essentiellement comme celui décrit en référence à la figure 8 pour déterminer les trames de signal de rang entier. Un module d'interpolation 124 identique au module 120 du codeur estime les coefficients intermédiaires cxi[n-112] à partir des coefficients quantifiés cxq[n-1] et cxq[n] fournis par le module 47 et/ou le module 48 à partir des index icxs, icxi extraits du flux t. Un module d'extraction de paramètres 125 reçoit l'index de quantification icx[n-1/2] depuis le démultiplexeur d'entrée 45 du décodeur, et en déduit l'erreur d'interpolation quantifiée ecx_q[n-1/2] à partir du même dictionnaire de quantification que celui utilisé par le module 122 du codeur. Un additionneur 126 fait la somme des vecteurs cepstraux cx_i[n-1/2] et ecxq[n-1/2] afin de fournir les coefficients cepstraux cx[n-1/2] qui seront utilisés par le décodeur (modules 51-57, 95, 96, 115 et/ou modules 85-87, 92,  The decoder operates essentially as described with reference to FIG. 8 to determine the full rank signal frames. An interpolation module 124 identical to the encoder module 120 estimates the intermediate coefficients cxi [n-112] from the quantized coefficients cxq [n-1] and cxq [n] provided by the module 47 and / or the module 48 to from the indexes icxs, icxi extracted from the stream t. A parameter extraction module 125 receives the quantization index icx [n-1/2] from the input demultiplexer 45 of the decoder, and deduces therefrom the quantized interpolation error ecx_q [n-1/2] from the same quantization dictionary as used by the encoder module 122. An adder 126 sums the cepstral vectors cx_i [n-1/2] and ecxq [n-1/2] in order to provide the cepstral coefficients cx [n-1/2] which will be used by the decoder (modules 51- 57, 95, 96, 115 and / or modules 85-87, 92,

* 95, 96, 115) pour former la trame interpolée de rang n-1/2.* 95, 96, 115) to form the interpolated frame of rank n-1/2.

Si certains seulement des coefficients cepstraux ont fait l'objet d'une quantification d'erreur d'interpolation, les autres sont déterminés par le  If only some of the cepstral coefficients have been quantized for interpolation error, the others are determined by the

décodeur par une interpolation simple, sans correction.  decoder by simple interpolation, without correction.

Le décodeur peut également interpoler les autres paramètres F0, Emix utilisés pour synthétiser les trames de signal. La fréquence fondamentale F0 peut être interpolée linéairement, soit dans le domaine temporel, soit (de préférence) directement dans le domaine fréquentiel. Pour I'interpolation éventuelle du vecteur de pondération énergétique Emix, il convient d'effectuer I'interpolation après dénormalisation et en tenant compte bien entendu des  The decoder can also interpolate the other parameters F0, Emix used to synthesize the signal frames. The fundamental frequency F0 can be interpolated linearly, either in the time domain or (preferably) directly in the frequency domain. For the possible interpolation of the Emix energy weighting vector, the interpolation after denormalization should be carried out, taking into account, of course, the

décalages temporels entre trames.time delays between frames.

Il est à noter qu'il est particulièrement avantageux, pour interpoler la représentation des enveloppes spectrales, d'effectuer cette interpolation dans le domaine cepstral. Contrairement à une interpolation effectuée sur d'autres paramètres, tels que les coefficients LSP (" Line Spectrum Pairs "), I'interpolation linéaire des coefficients cepstraux correspond à l'interpolation  It should be noted that it is particularly advantageous, to interpolate the representation of the spectral envelopes, to perform this interpolation in the cepstral domain. Unlike interpolation performed on other parameters, such as LSP ("Line Spectrum Pairs") coefficients, the linear interpolation of the cepstral coefficients corresponds to the interpolation

linéaire des amplitudes spectrales comprimées.  linear spectral amplitudes compressed.

Dans la variante représentée sur la figure 20, le codeur utilise les vecteurs cepstraux cx_q[n], cxq[n-1],..., cx_q[n-r] et cxq[n-1/2] calculés pour les dernières trames passées (r > 1) pour identifier un filtre interpolateur optimal qui, lorsqu'on lui soumet les vecteurs cepstraux quantifiés cxq[n-r], -27 - cx_q[n] relatifs aux trames de rang entier, délivre un vecteur cepstral interpolé cxi[n-1/2] qui présente une distance minimale avec le vecteur  In the variant shown in FIG. 20, the coder uses the cepstral vectors cx_q [n], cxq [n-1], ..., cx_q [nr] and cxq [n-1/2] calculated for the last past frames. (r> 1) to identify an optimal interpolator filter which, when subjected to quantized cepstral vectors cxq [nr], -27 - cx_q [n] relative to the whole rank frames, delivers an interpolated cepstral vector cxi [n- 1/2] which has a minimal distance with the vector

cx[n-1/2] calculé pour la dernière trame de rang demi-entier.  cx [n-1/2] calculated for the last frame of half-integer rank.

Dans l'exemple représenté sur la figure 20, ce filtre interpolateur 128 est présent dans le codeur, et un soustracteur 129 retranche sa sortie cx_i[n-112] du vecteur cepstral calculé cx[n-112]. Un module de minimisation détermine le jeu de parametres {P} du filtre interpolateur 128, pour lequel l'erreur d'interpolation ecx[n-1/2] délivrée par le soustracteur 129 présente une norme minimale. Ce jeu de paramètres {P} est adressé à un module de quantification 131 qui fournit un index de quantification correspondant iP au  In the example shown in FIG. 20, this interpolator filter 128 is present in the encoder, and a subtractor 129 subtracts its output cx_i [n-112] from the calculated cepstral vector cx [n-112]. A minimization module determines the set of parameters {P} of the interpolator filter 128, for which the ecx interpolation error [n-1/2] delivered by the subtractor 129 has a minimum standard. This parameter set {P} is addressed to a quantization module 131 which provides a quantization index corresponding to iP to

multiplexeur de sortie 6 du codeur.output multiplexer 6 of the encoder.

En fonction du débit alloué dans le flux c aux index de quantification des paramètres {P} définissant le filtre interpolateur optimal 128, on pourra adopter une quantification plus ou moins fine de ces paramètres, ou une forme plus ou moins élaborée du filtre interpolateur, ou encore prévoir plusieurs filtres interpolateurs quantifiés de manière distincte pour différents vecteurs de  As a function of the flow rate allocated in the stream c to the quantization indexes of the parameters {P} defining the optimal interpolator filter 128, it will be possible to adopt a more or less fine quantization of these parameters, or a more or less elaborate form of the interpolator filter, or still provide several interpolator filters quantized separately for different vectors of

coefficients cepstraux.cepstral coefficients.

Dans une réalisation simple, le filtre interpolateur 128 est linéaire, avec r= 1: cxi[n-1/12] = p.cx_q[n-1] + (1-p).cx_q[n] (23)  In a simple embodiment, the interpolator filter 128 is linear, with r = 1: cxi [n-1/12] = p.cx_q [n-1] + (1-p) .cx_q [n] (23)

et le jeu de paramètres {P} se limite au coefficient p compris entre 0 et 1.  and the parameter set {P} is limited to the coefficient p between 0 and 1.

A partir des index iP de quantification des paramètres {P} obtenus dans le flux binaire (p, le décodeur reconstruit le filtre interpolateur 128 (aux erreurs de quantification près), et traite les vecteurs spectraux cx _q[n-r],..., cxq[n] afin d'estimer les coefficients cepstraux cx[n-1/2] utilisés pour synthétiser les  From the quantization iP indexes of the parameters {P} obtained in the bit stream (p, the decoder reconstructs the interpolator filter 128 (with quantization errors close), and processes the spectral vectors cx _q [nr], ..., cxq [n] to estimate the cepstral coefficients cx [n-1/2] used to synthesize the

trames de rang demi-entier.frames of half-whole rank.

De façon générale, le décodeur peut utiliser une méthode d'interpolation simple (sans transmission de paramètres de la part du codeur pour les trames de rang demi-entier), une méthode d'interpolation avec prise en compte d'une erreur d'interpolation quantifiée (selon les figures 17 et 18), ou une méthode d'interpolation avec un filtre interpolateur optimal (selon la figure 19) pour évaluer les trames de rang demi-entier en plus des trames de rang  In general, the decoder can use a simple interpolation method (without transmission of parameters by the coder for half-integer frames), an interpolation method taking into account an interpolation error. quantized (according to FIGS. 17 and 18), or an interpolation method with an optimal interpolator filter (according to FIG. 19) for evaluating the half-integer rank frames in addition to the rank frames

entier évaluées directement comme expliqué en référence aux figures 8 à 13.  integer evaluated directly as explained with reference to FIGS. 8-13.

Le module 116 de synthèse temporelle peut alors combiner l'ensemble de ces  The temporal synthesis module 116 can then combine all of these

trames évaluées pour former le signal synthétisé x de la manière expliquée ci-  frames evaluated to form the synthesized signal x in the manner explained above.

-28 --28 -

après en référence aux figures 14, 21 et 22.  after referring to Figures 14, 21 and 22.

Comme dans la méthode de synthèse temporelle précédemment décrite, le module 116 effectue une somme à recouvrement de trames modifiées par rapport à celles successivement évaluées en sortie du module 115, et cette modification peut être vue en deux étapes dont la première est identique à celle précédemment décrite en référence à la figure 14 (diviser les  As in the temporal synthesis method previously described, the module 116 performs an overlap sum of frames modified with respect to those successively evaluated at the output of the module 115, and this modification can be seen in two steps, the first of which is identical to that previously described with reference to Figure 14 (divide

échantillons de la trame 2' par la fenêtre d'analyse fA).  samples of the 2 'frame by the analysis window fA).

La seconde étape (figure 21) consiste à multiplier les échantillons de la trame renormalisée 2" par une fenêtre de synthèse fs vérifiant les propriétés suivantes: fs(i) =0 pour 0 < i < N/2-M/p et N/2 + M/p < i <N (24) fs (i) + fs (i + M/p) = A pour N/2 - M/p < i < N/2 (25) o A désigne une constante positive arbitraire, par exemple A = 1, et p est l'entier tel que le décalage temporel entre les trames successives (calculées directement et interpolées) soit de M/p échantillons, soit p = 2 dans l'exemple décrit. La fenêtre de synthèse fs(i) croît progressivement pour i allant de N/2 - M/p à N/2. C'est par exemple une sinusoïde surélevée sur l'intervalle N/2 - M/p < i < N/2 + M/p. En particulier, la fenêtre de synthèse fs peut être, sur cet intervalle, une fenêtre de Hamming (comme représenté sur la figure 21)  The second step (FIG. 21) consists in multiplying the samples of the renormalized frame 2 "by a synthesis window fs satisfying the following properties: fs (i) = 0 for 0 <i <N / 2-M / p and N / 2 + M / p <i <N (24) fs (i) + fs (i + M / p) = A for N / 2 - M / p <i <N / 2 (25) where A denotes a positive constant arbitrary, for example A = 1, and p is the integer such that the time offset between the successive frames (calculated directly and interpolated) is M / p samples, or p = 2 in the example described. fs (i) increases gradually for i ranging from N / 2 - M / p to N / 2, for example a raised sinusoid over the N / 2 - M / p <i <N / 2 + M / interval p In particular, the synthesis window fs may be, over this interval, a Hamming window (as shown in FIG.

ou une fenêtre de Hanning.or a Hanning window.

La figure 21 montre les trames successives 2" repositionnées dans le temps par le module 116. Les hachures indiquent les portions éliminées des trames (fenêtre de synthèse à 0). On voit qu'en effectuant la somme à recouvrement des échantillons des trames successives, la propriété (25)  FIG. 21 shows the successive frames 2 "repositioned in time by the module 116. The hatches indicate the portions removed from the frames (synthesis window at 0. It can be seen that by performing the overlap sum of the samples of the successive frames, the property (25)

assure une pondération homogène des échantillons du signal synthétisé.  ensures a homogeneous weighting of the samples of the synthesized signal.

Comme dans la méthode de synthèse illustrée par les figures 14 et 15, la procédure de pondération des trames obtenues par transformée de Fourier inverse des spectres Y peut être effectuée en une seule étape, avec une fenêtre composée fc(i)= fs(i)/fA(i). La figure 22 montre la forme de la fenêtre  As in the synthesis method illustrated in FIGS. 14 and 15, the weighting procedure of the Fourier transform inverse fields of the Y spectra can be carried out in a single step, with a composite window fc (i) = fs (i) / fA (i). Figure 22 shows the shape of the window

composée fc dans le cas o les fenêtres fA et fs sont de type Hamming.  composed fc in the case where the windows fA and fs are of type Hamming.

Comme la méthode de synthèse temporelle illustrée par les figures 14 à 17, celle illustrée par les figures 14, 21 et 22 permet de prendre en compte -29 - un recouvrement L entre deux trames d'analyse (pour lesquelles l'analyse est effectuée de façon complète) plus petit que la moitié que la taille N de ces trames. De façon générale, cette dernière méthode est applicable lorsque les trames d'analyse successives présentent des décalages temporels mutuels M de plus de N/2 échantillons (même éventuellement de plus de N échantillons si un très bas débit est requis), I'interpolation conduisant à un ensemble de trames dont les décalages temporels mutuels sont de moins de N/2 échantillons. Les trames interpolées peuvent faire l'objet d'une transmission réduite de paramètres de codage, comme décrit précédemment, mais cela n'est pas obligatoire. Ce mode de réalisation permet de conserver un intervalle M relativement grand entre deux trames d'analyse, et donc de limiter le débit de transmission requis, tout en limitant les discontinuités susceptibles d'apparaître en raison de la taille de cet intervalle par rapport aux échelles de temps typiques des variations des paramètres du signal audio, notamment les  As the temporal synthesis method illustrated in FIGS. 14 to 17, that illustrated by FIGS. 14, 21 and 22 makes it possible to take into account an overlap L between two analysis frames (for which the analysis is carried out of complete way) smaller than half than the size N of these frames. In general, the latter method is applicable when the successive analysis frames have mutual time offsets M of more than N / 2 samples (even possibly more than N samples if a very low flow rate is required), the interpolation leading to to a set of frames whose mutual time offsets are less than N / 2 samples. Interpolated frames may be subject to reduced transmission of coding parameters, as previously described, but this is not required. This embodiment makes it possible to maintain a relatively large interval M between two analysis frames, and thus to limit the required transmission rate, while limiting the discontinuities that may appear due to the size of this interval relative to the scales. typical times of variations in the parameters of the audio signal, including

coefficients cepstraux et la fréquence fondamentale.  cepstral coefficients and the fundamental frequency.

-30 --30 -

Claims (17)

REVENDICATIONS 1. Procédé de décodage d'un flux numérique d'entrée (1) représentant un signal audio codé, dans lequel on synthétise un ensemble de trames successives de N échantillons du signal audio à partir de données de codage incluses dans le flux numérique d'entrée, dans lequel les données de codage comportent, pour seulement un sous-ensemble des trames, des données représentatives d'amplitudes spectrales associées à des fréquences du spectre du signal audio, caractérisé en ce qu'on détermine pour chacune des trames dudit sous-ensemble, sur la base des données de codage, des coefficients cepstraux représentatifs de certaines au moins desdites amplitudes spectrales, et en ce que pour les trames ne faisant pas partie dudit sous-ensemble, on interpole lesdits coefficients cepstraux, et on génère à l'aide des coefficients cepstraux interpolés une estimation spectrale (Y) du signal audio qu'on  A method of decoding an input digital stream (1) representing an encoded audio signal, in which a set of successive frames of N audio signal samples is synthesized from encoding data included in the digital stream of input, in which the coding data comprise, for only a subset of the frames, data representative of spectral amplitudes associated with frequencies of the spectrum of the audio signal, characterized in that for each of the frames of said sub-frame are determined together, on the basis of the encoding data, cepstral coefficients representative of at least some of said spectral amplitudes, and in that for frames not forming part of said subset, said cepstral coefficients are interpolated, and generated at the same time; using interpolated cepstral coefficients a spectral estimate (Y) of the audio signal transforme dans le domaine temporel pour obtenir la trame synthétisée.  transforms in the time domain to obtain the synthesized frame. 2. Procédé selon la revendication 1, dans lequel les données de codage comprennent des données de quantification desdits coefficients cepstraux.  The method of claim 1, wherein the encoding data comprises quantization data of said cepstral coefficients. 3. Procédé selon la revendication 1 ou 2, dans lequel on détermine une fréquence fondamentale (F0) du signal audio à partir de données de quantification incluses dans le flux binaire d'entrée (ó), dans lequel pour chaque trame dudit sous-ensemble, on détermine, à partir des données de codage, une enveloppe spectrale supérieure (Xsup) du signal audio correspondant à des amplitudes spectrales associées à des fréquences multiples de la fréquence fondamentale, et dans lequel pour chaque trame ne faisant pas partie dudit sous-ensemble, on détermine l'enveloppe spectraleThe method according to claim 1 or 2, wherein a fundamental frequency (F0) of the audio signal is determined from quantization data included in the input bit stream (ó), wherein for each frame of said subset from the encoding data, an upper spectral envelope (Xsup) of the audio signal corresponding to spectral amplitudes associated with multiple frequencies of the fundamental frequency, and in which for each frame not belonging to said subset, is determined from the encoding data. the spectral envelope is determined supérieure du signal audio à partir des coefficients cepstraux interpolés.  of the audio signal from the interpolated cepstral coefficients. 4. Procédé selon l'une quelconque des revendications 1 à 3, dans  4. Method according to any one of claims 1 to 3, in lequel on détermine une fréquence fondamentale (F0) du signal audio à partir de données de quantification incluses dans le flux binaire d'entrée (X), dans lequel pour chaque trame dudit sous-ensemble, on détermine, à partir des données de codage, une enveloppe spectrale inférieure (X_inf) du signal audio correspondant à des amplitudes spectrales associées à des fréquences situées -31 - dans des zones du spectre intermédiaires par rapport aux fréquences multiples de la fréquence fondamentale, et dans lequel pour chaque trame ne faisant pas partie dudit sous-ensemble, on détermine l'enveloppe spectrale inférieure du  wherein a fundamental frequency (F0) of the audio signal is determined from quantization data included in the input bit stream (X), wherein for each frame of said subset, from the encoding data is determined, a lower spectral envelope (X_inf) of the audio signal corresponding to spectral amplitudes associated with frequencies located in areas of the intermediate spectrum with respect to the multiple frequencies of the fundamental frequency, and wherein for each frame not forming part of said subassembly, the lower spectral envelope of the signal audio à partir des coefficients cepstraux interpolés.  audio signal from the interpolated cepstral coefficients. 5. Procédé selon l'une quelconque des revendications 1 à 4, dans  The method according to any one of claims 1 to 4, lequel les trames successives dudit ensemble sont recouvrantes et composées de N échantillons du signal audio pondérés par une fenêtre d'analyse (fA), dans lequel les trames successives dudit sous-ensemble présentent des décalages temporels mutuels de M échantillons, le nombre M étant plus grand que N/2, tandis que les trames successives dudit ensemble présentent des décalages temporels mutuels de M/p échantillons, p étant un entier plus grand que 1, dans lequel on modifie chaque trame synthétisée de l'ensemble en lui appliquant un traitement correspondant à une division par ladite fenêtre d'analyse (fA) et à une multiplication par une fenêtre de synthèse (fs), et on forme le signal audio décodé (x) comme une somme à recouvrement des trames modifiées, et dans lequel, les échantillons d'une trame ayant des rangs i numérotés de 0 à N-1, la fenêtre de synthèse fs(i) a un support limité aux rangs i allant de N/2 - M/p à N/2 + M/p et vérifie fs(i) + fs(i+M/p) =A pour  wherein the successive frames of said set are overlapping and composed of N samples of the audio signal weighted by an analysis window (fA), in which the successive frames of said subset have mutual time offsets of M samples, the number M being more large than N / 2, while the successive frames of said set have mutual time offsets of M / p samples, p being an integer greater than 1, in which each synthesized frame of the set is modified by applying to it a corresponding processing division by said analysis window (fA) and multiplication by a synthesis window (fs), and forming the decoded audio signal (x) as an overlap sum of the modified frames, and wherein, the samples of a frame having ranks i numbered from 0 to N-1, the synthesis window fs (i) has a support limited to ranks i ranging from N / 2 - M / p to N / 2 + M / p and verifies fs (i) + fs (i + M / p ) = A for N/2 - M/p < i < N/2, A étant une constante positive.  N / 2 - M / p <i <N / 2, where A is a positive constant. 6. Procédé selon l'une quelconque des revendications 1 à 5, dans  6. Process according to any one of claims 1 to 5, in lequel, pour les trames ne faisant pas partie dudit sous-ensemble, on corrige les coefficients cepstraux interpolés (cxi[n-1/2]) sur la base de données (icx[n-1/2]) de quantification d'erreur d'interpolation (ecxq[n1/2]) incluses  which, for frames not belonging to said subset, corrects the interpolated cepstral coefficients (cxi [n-1/2]) on the basis of error quantization data (icx [n-1/2]) Interpolation (ecxq [n1 / 2]) included dans les données de codage.in the coding data. 7. Procédé selon l'une quelconque des revendications 1 à 5, dans  The process according to any one of claims 1 to 5, wherein lequel, pour les trames ne faisant pas partie dudit sous-ensemble, on interpole les coefficients cepstraux (cx_q[n]) par un filtre (128) déterminé sur la base de données (iP) de quantification de filtre interpolateur incluses dans les données  which, for frames not belonging to said subset, interpolates the cepstral coefficients (cx_q [n]) by a filter (128) determined on interpolator filter quantization data (iP) included in the data de codage.coding. 8. Décodeur audio, comprenant des moyens pour exécuter un procédé  Audio decoder, comprising means for executing a method selon l'une quelconque des revendications 1 à 7.  according to any one of claims 1 to 7. -32 -  -32 - 9. Procédé de codage d'un signal audio (x), dans lequel on détermine un spectre du signal audio par une transformée dans le domaine fréquentiel d'une trame du signal audio, et on inclut dans un flux numérique de sortie (c) des données représentatives d'amplitudes spectrales associées à certaines au moins des fréquences du spectre, dans lequel le spectre du signal audio est déterminé pour un ensemble de trames successives de N échantillons du signal audio, et dans lequel on détermine pour chacune des trames dudit ensemble des coefficients cepstraux représentatifs de certaines au moins desdites amplitudes spectrales, caractérisé en ce que lesdites données représentatives des amplitudes spectrales sont incluses dans le flux numérique de sortie pour seulement un sous-ensemble des trames, et en ce que pour les trames ne faisant pas partie dudit sous-ensemble, on inclut dans le flux numérique de sortie (O) des données (icx[n-1/2]) de quantification d'une erreurA method of coding an audio signal (x), wherein a spectrum of the audio signal is determined by a frequency domain transform of a frame of the audio signal, and included in a digital output stream (c) data representative of spectral amplitudes associated with at least some of the frequencies of the spectrum, in which the spectrum of the audio signal is determined for a set of successive frames of N samples of the audio signal, and in which for each frame of said set is determined cepstral coefficients representative of at least some of said spectral amplitudes, characterized in that said data representative of the spectral amplitudes are included in the output digital stream for only a subset of the frames, and in that for the frames which are not part of of said subset, data (icx [n-1/2]) for quantizing an error is included in the output digital flow (O). d'interpolation (ecx[n-112]) desdits coefficients cepstraux.  interpolation (ecx [n-112]) of said cepstral coefficients. 10. Procédé de codage d'un signal audio (x), dans lequel on détermine un spectre du signal audio par une transformée dans le domaine fréquentiel d'une trame du signal audio, et on inclut dans un flux numérique de sortie (O) des données représentatives d'amplitudes spectrales associées à certaines au moins des fréquences du spectre, dans lequel le spectre du signal audio est déterminé pour un ensemble de trames successives de N échantillons du signal audio, et dans lequel on détermine pour chacune des trames dudit ensemble des coefficients cepstraux représentatifs de certaines au moins desdites amplitudes spectrales, caractérisé en ce que lesdites données représentatives des amplitudes spectrales sont incluses dans le flux numérique de sortie pour seulement un sous-ensemble des trames, et en ce que pour les trames ne faisant pas partie dudit sousensemble, on détermine un filtre interpolateur optimal (128) pour lesdits coefficients cepstraux, et on inclut dans le flux numérique de sortie (O) des données (iP) représentant ledit filtre  A method of encoding an audio signal (x), wherein a spectrum of the audio signal is determined by a frequency domain transform of a frame of the audio signal, and included in a digital output stream (O) data representative of spectral amplitudes associated with at least some of the frequencies of the spectrum, in which the spectrum of the audio signal is determined for a set of successive frames of N samples of the audio signal, and in which for each frame of said set is determined cepstral coefficients representative of at least some of said spectral amplitudes, characterized in that said data representative of the spectral amplitudes are included in the output digital stream for only a subset of the frames, and in that for the frames which are not part of of said subassembly, an optimum interpolator (128) is determined for said cepstral coefficients, and included in the digital output (O) data (iP) representing said filter interpolateur optimal.optimal interpolator. 11. Procédé selon la revendication 9 ou 10, dans lequel lesdites données représentatives des amplitudes spectrales comprennent des données  The method of claim 9 or 10, wherein said data representative of the spectral amplitudes comprise data de quantification des coefficients cepstraux.  of quantification of cepstral coefficients. -33 --33 - 12. Procédé selon l'une quelconque des revendications 9 à 11, dans  The method of any one of claims 9 to 11, wherein lequel on estime une fréquence fondamentale (Fo) du signal audio, et dans lequel les coefficients cepstraux interpolés comprennent des coefficients cepstraux calculés en transformant dans le domaine cepstral une enveloppe supérieure comprimée (LXsup) du spectre du signal audio.  which estimates a fundamental frequency (Fo) of the audio signal, and wherein the interpolated cepstral coefficients comprise cepstral coefficients calculated by transforming in the cepstral domain a compressed upper envelope (LXsup) of the audio signal spectrum. 13. Procédé selon la revendication 12, dans lequel l'enveloppe supérieure comprimée (LXsup) est déterminée par interpolation d'amplitudes spectrales associées à des fréquences multiples de la fréquence fondamentaleThe method of claim 12, wherein the compressed upper envelope (LXsup) is determined by interpolation of spectral amplitudes associated with multiple frequencies of the fundamental frequency. (Fo), avec application d'une fonction de compression spectrale.  (Fo), with application of a spectral compression function. 14. Procédé selon l'une quelconque des revendications 9 à 13, dans  14. Process according to any one of Claims 9 to 13, in lequel on estime une fréquence fondamentale (F0) du signal audio, et dans lequel les coefficients cepstraux interpolés comprennent des coefficients cepstraux calculés en transformant dans le domaine cepstral une enveloppe  which estimates a fundamental frequency (F0) of the audio signal, and wherein the interpolated cepstral coefficients comprise cepstral coefficients calculated by transforming in the cepstral domain an envelope inférieure comprimée (LXinf) du spectre du signal audio.  lower compressed (LXinf) of the audio signal spectrum. 15. Procédé selon la revendication 14, dans lequel l'enveloppe inférieure comprimée (LXinf) est déterminée par interpolation d'amplitudes spectrales associées à des fréquences situées dans des zones du spectre intermédiaires par rapport aux fréquences multiples de la fréquence  The method of claim 14, wherein the compressed lower envelope (LXinf) is determined by interpolating spectral amplitudes associated with frequencies in intermediate spectrum areas with respect to the frequency multiples of the frequency. fondamentale (F0), avec application d'une fonction de compression spectrale.  fundamental (F0), with application of a spectral compression function. 16. Procédé selon l'une quelconque des revendications 9 à 15, dans  16. The method according to any one of claims 9 to 15, in lequel les trames successives dudit sous-ensemble présentent des décalages temporels mutuels de plus de N/2 échantillons, et les trames successives dudit ensemble présentent des décalages temporels mutuels de moins de N/2 échantillons.  wherein the successive frames of said subset have mutual time offsets of more than N / 2 samples, and the successive frames of said set have mutual time offsets of less than N / 2 samples. 17. Codeur audio, comprenant des moyens pour exécuter un procédé17. Audio coder, comprising means for executing a method selon l'une quelconque des revendications 9 à 16.  according to any one of claims 9 to 16.
FR9908635A 1999-07-05 1999-07-05 AUDIO ENCODING AND DECODING METHODS AND DEVICES Expired - Fee Related FR2796191B1 (en)

Priority Applications (6)

Application Number Priority Date Filing Date Title
FR9908635A FR2796191B1 (en) 1999-07-05 1999-07-05 AUDIO ENCODING AND DECODING METHODS AND DEVICES
DE60014085T DE60014085D1 (en) 1999-07-05 2000-07-04 AUDIO CODING, DECODING FOR INTERPOLATION
AT00949621T ATE277403T1 (en) 1999-07-05 2000-07-04 AUDIO ENCODING, DECODING FOR INTERPOLATION
EP00949621A EP1192619B1 (en) 1999-07-05 2000-07-04 Audio coding and decoding by interpolation
AU62920/00A AU6292000A (en) 1999-07-05 2000-07-04 Audio coding and decoding by interpolation
PCT/FR2000/001906 WO2001003118A1 (en) 1999-07-05 2000-07-04 Audio coding and decoding by interpolation

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
FR9908635A FR2796191B1 (en) 1999-07-05 1999-07-05 AUDIO ENCODING AND DECODING METHODS AND DEVICES

Publications (2)

Publication Number Publication Date
FR2796191A1 true FR2796191A1 (en) 2001-01-12
FR2796191B1 FR2796191B1 (en) 2001-10-05

Family

ID=9547704

Family Applications (1)

Application Number Title Priority Date Filing Date
FR9908635A Expired - Fee Related FR2796191B1 (en) 1999-07-05 1999-07-05 AUDIO ENCODING AND DECODING METHODS AND DEVICES

Country Status (6)

Country Link
EP (1) EP1192619B1 (en)
AT (1) ATE277403T1 (en)
AU (1) AU6292000A (en)
DE (1) DE60014085D1 (en)
FR (1) FR2796191B1 (en)
WO (1) WO2001003118A1 (en)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
FR2910996A1 (en) * 2006-12-29 2008-07-04 France Telecom Acoustic unit coding method for use in e.g. speech synthesis, involves determining interpolation function of spectral envelope model of frame from models of reference frames, and coding unit from modelisation of frames and function

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
AT500235B1 (en) * 2002-06-21 2007-05-15 Joanneum Res Forschungsgesells SYSTEM AND METHOD FOR AUTOMATIC MONITORING OF A ROADWAY

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP0751493A2 (en) * 1995-06-20 1997-01-02 Sony Corporation Method and apparatus for reproducing speech signals and method for transmitting same
US5630011A (en) * 1990-12-05 1997-05-13 Digital Voice Systems, Inc. Quantization of harmonic amplitudes representing speech
US5774837A (en) * 1995-09-13 1998-06-30 Voxware, Inc. Speech coding system and method using voicing probability determination

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5630011A (en) * 1990-12-05 1997-05-13 Digital Voice Systems, Inc. Quantization of harmonic amplitudes representing speech
EP0751493A2 (en) * 1995-06-20 1997-01-02 Sony Corporation Method and apparatus for reproducing speech signals and method for transmitting same
US5774837A (en) * 1995-09-13 1998-06-30 Voxware, Inc. Speech coding system and method using voicing probability determination

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
LUPINI P ET AL: "VECTOR QUANTIZATION OF HARMONIC MAGNITUDES FOR LOW-RATE SPEECH CODERS", PROCEEDINGS OF THE GLOBAL TELECOMMUNICATIONS CONFERENCE (GLOBECOM),US,NEW YORK, IEEE, 1994, pages 858 - 862, XP000488662, ISBN: 0-7803-1821-8 *

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
FR2910996A1 (en) * 2006-12-29 2008-07-04 France Telecom Acoustic unit coding method for use in e.g. speech synthesis, involves determining interpolation function of spectral envelope model of frame from models of reference frames, and coding unit from modelisation of frames and function
WO2008081141A2 (en) * 2006-12-29 2008-07-10 France Telecom Acoustic unit coding by interpolation
WO2008081141A3 (en) * 2006-12-29 2008-10-16 France Telecom Acoustic unit coding by interpolation

Also Published As

Publication number Publication date
DE60014085D1 (en) 2004-10-28
AU6292000A (en) 2001-01-22
ATE277403T1 (en) 2004-10-15
EP1192619A1 (en) 2002-04-03
WO2001003118A1 (en) 2001-01-11
EP1192619B1 (en) 2004-09-22
FR2796191B1 (en) 2001-10-05

Similar Documents

Publication Publication Date Title
EP0782128B1 (en) Method of analysing by linear prediction an audio frequency signal, and its application to a method of coding and decoding an audio frequency signal
US10381020B2 (en) Speech model-based neural network-assisted signal enhancement
EP3244407B1 (en) Apparatus and method for modifying a parameterized representation
EP1692689B1 (en) Optimized multiple coding method
CA2512179C (en) Method for encoding and decoding audio at a variable rate
FR2734389A1 (en) METHOD FOR ADAPTING THE NOISE MASKING LEVEL IN A SYNTHETIC ANALYSIS ANALYTICAL ENCODER USING A SHORT-TERM PERCEPTUAL WEIGHING FILTER
EP3175443B1 (en) Determining a budget for lpd/fd transition frame encoding
FR2784218A1 (en) LOW-SPEED SPEECH CODING METHOD
WO2004088633A1 (en) Method for analyzing fundamental frequency information and voice conversion method and system implementing said analysis method
EP1192619B1 (en) Audio coding and decoding by interpolation
WO2023165946A1 (en) Optimised encoding and decoding of an audio signal using a neural network-based autoencoder
FR2796189A1 (en) AUDIO CODING AND DECODING METHODS AND DEVICES
FR2702590A1 (en) Digital speech coding and decoding device, method of exploring a pseudo-logarithmic dictionary of LTP delays, and LTP analysis method.
EP1194923B1 (en) Methods and device for audio analysis and synthesis
EP1192621B1 (en) Audio encoding with harmonic components
EP1192618B1 (en) Audio coding with adaptive liftering
FR2796192A1 (en) AUDIO CODING AND DECODING METHODS AND DEVICES
WO2002029786A1 (en) Method and device for segmental coding of an audio signal
FR2773653A1 (en) Input sound digital word decoding/coding device, especially for analyzing and compressing inputs for recording
FR2737360A1 (en) Audio digital signal coding method of successive sample blocks - using spectral analysis to select vector dictionary for each sample block and allocating vector and scalar quantisation bits
WO2013135997A1 (en) Modifying the spectral characteristics of a linear prediction filter of a digital audio signal represented by the lsf or isf coefficients thereof
FR2980620A1 (en) Method for processing decoded audio frequency signal, e.g. coded voice signal including music, involves performing spectral attenuation of residue, and combining residue and attenuated signal from spectrum of tonal components
FR2739482A1 (en) Speech signal analysis method e.g. for low rate vocoder

Legal Events

Date Code Title Description
CA Change of address
CD Change of name or company name
ST Notification of lapse

Effective date: 20060331