[go: up one dir, main page]

EP0454552A2 - Method and apparatus for low bitrate speech coding - Google Patents

Method and apparatus for low bitrate speech coding Download PDF

Info

Publication number
EP0454552A2
EP0454552A2 EP91401051A EP91401051A EP0454552A2 EP 0454552 A2 EP0454552 A2 EP 0454552A2 EP 91401051 A EP91401051 A EP 91401051A EP 91401051 A EP91401051 A EP 91401051A EP 0454552 A2 EP0454552 A2 EP 0454552A2
Authority
EP
European Patent Office
Prior art keywords
coding
frame
frames
pitch
takes place
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.)
Withdrawn
Application number
EP91401051A
Other languages
German (de)
French (fr)
Other versions
EP0454552A3 (en
Inventor
Benoit Mouy
Pierre Laurent
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.)
Thales SA
Original Assignee
Thomson CSF SA
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Thomson CSF SA filed Critical Thomson CSF SA
Publication of EP0454552A2 publication Critical patent/EP0454552A2/en
Publication of EP0454552A3 publication Critical patent/EP0454552A3/en
Withdrawn legal-status Critical Current

Links

Images

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/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/06Determination or coding of the spectral characteristics, e.g. of the short-term prediction coefficients
    • G10L19/07Line spectrum pair [LSP] vocoders

Definitions

  • the present invention relates to a method and a device for low bit rate coding of speech.
  • the object of the invention is to overcome the aforementioned drawbacks.
  • the subject of the invention is a low bit rate coding process for speech, characterized in that it consists, after having cut the speech signal into frames of constant length, to calculate the characteristics of N modeling filters of the vocal tract as well as the fundamental period (pitch), voicing and energy characteristics of the voice signal by determined intervals of N successive frames by calculating the energy of the speech signal a determined number P of times per frame to code all of these characteristics.
  • Figure 1 a flowchart illustrating the speech coding method implemented by the invention.
  • FIG. 2 a mode of coding the LSP coefficients of the analysis filter used in FIG. 1 to model the voice path.
  • Figure 3 a table of LSP coefficients.
  • Figure 5 is a pitch coding table.
  • FIG. 6 is a flowchart illustrating the method for synthesizing the speech signal implemented by the invention.
  • FIG. 7 a graph to illustrate a mode of interpolation of the synthesis filters implemented by the invention.
  • Figure 8 an embodiment of a device for implementing the method according to the invention.
  • the coding method according to the invention consists, after having cut the speech signal into frames of constant length of approximately 20 to 25 ms, as this usually takes place in vocoders, determining and coding the characteristics of the speech signal over N successive frames by determining the energy of the signal P times per frame.
  • the synthesis of the speech signal on each frame then takes place by descrambling and decoding the values of the coded characteristics of the speech signal.
  • step 3 After sampling the speech signal on each frame and quantizing the samples over a determined number of bits, these are pre-emphasized in step 3.
  • the sampling operation makes the spectrum of the speech signal periodic
  • the number of samples taken into account for the determination of the coefficients of the vocal tract modeling filter is limited in a known manner by making the product of the pre-emphasized samples of step 3 by a HAMMING window of duration equal to that of a frame, this window also having the advantage of strengthening the resonances.
  • the coefficients k i of the vocal tract modeling filter are calculated in step 5 from autocorrelation coefficients R i defined by a relation of the form: where i is an integer varying from 0 to 10 for example, and S i represents a sample of pre-emphasized and windowed signal.
  • the calculation of the coefficients K i can be carried out in step 5 by applying the known algorithm of M. LEROUX-GUEGUEN, a description of which can be found in the article of the journal IEEE Transactions or Acoustics Speech, and Signal Processing June 1977 titled "A fixed point computation of partial correlation coefficients"'. This calculation amounts to inverting a square matrix whose elements are the coefficients R i of the relation (1).
  • F e represents the sampling frequency of the speech signal.
  • the calculation of the fundamental period of the signal and the voicing takes place in a known manner by performing steps 9 and 10.
  • the speech signal is classified into two categories of sounds, voiced sounds and unvoiced sounds.
  • Voiced sounds that are produced from the vocal cords are compared to a series of impulses whose fundamental period is called "Pitch" in English.
  • Unvoiced sounds produced by turbulence are assimilated to white noise.
  • the method recognizes in step 10 for each frame a voiced sound, and a non-voiced sound otherwise. Recognition takes place after a preprocessing of the signal to reinforce useful information and limit that which is not.
  • This preprocessing consists in carrying out a first low pass filtering of the signal, followed by bashing and a second filtering.
  • the first filtering is carried out for example by means of a simple "Butterworth" filter of order 3 whose cutoff frequency at 3dB can be fixed at 600 Hertz .
  • the trimming then places the signal samples whose level is below a certain predetermined threshold at zero amplitude, possibly variable depending on the amplitude of the voice signal. This raking makes it possible to accentuate the periodic aspect of the signal while reducing the details detrimental to subsequent processing.
  • the second filtering makes it possible to smooth the results of the bashing by eliminating the high frequencies.
  • a Butterworth filter identical to the first filter can be used.
  • the energy calculation which takes place in step 8 is executed on four subframes. This calculation takes place by taking the logarithm to base 2 of the sum of the energies of each pre-emphasized samples of a subframe.
  • the subframes in each frame are contiguous or overlap to have a length multiple of the "pitch".
  • the coding of frame 3 is of scalar type. It is carried out in application of the algorithm known under the name "Adaptive Backward Sequential" as described for example in the article of the journal IEEE on selected areas in communications, Vol. 6 feb. 88 of MM. Sugamara N and FAYARDIN N (1988) entitled "Quantizer design in LSP speech analysis”.
  • the coding algorithm is executed in descending order of the LSP coefficients, starting with the last of the ways shown in FIGS. 2 and 3.
  • the coding of the last LSP coefficient ( 10) takes place linearly between two frequency values F10MIN and F10MAX and takes place on N V10 values coded linearly on NB10 bits.
  • frames 1 and 2 are not coded directly, but it is the type of interpolation allowing them to be quantified as faithfully as possible which is coded.
  • the coder determines among 3 interpolations represented by the graph of FIG. 4 which one seems to him to give the best approximation of the values of frames 1 and 2.
  • the method then chooses from the 3 previous interpolations the one which minimizes the quantization error, estimated by means of a function D_INTER defined below by adopting the corresponding code value.
  • D_INTER (i) W1. (LSPQ (case i, frame 1) -LSP (Frame 1)) 2 + W2. (LSPQ (case i, Frame 2) -LSP (Frame 2)) 2 where LSPQ (case i, Frame j) is the value of the odd LSP coefficient of the frame j quantified by means of type i interpolation.
  • LSP (frame j) Actual value in frame j of the odd LSP coefficient to be quantified
  • W1 value of the energy of frame 1
  • This coding takes place on 8 bits.
  • the pitch and voicing coding take place in step 14 on three consecutive frames.
  • the current voicing type is determined from six possible cases from the voices of frames 1, 2 and 3 and the voicing of frame 0 which precedes each group of frames 1, 2 and 3.
  • a coding table represented in FIG. 5 makes it possible to associate with any pitch value a number from the table whose value subsequently designated by "N array" is the closest to the pitch.
  • the code 0 is assigned to type 1.
  • a code equal to the value "N. table” of the pitch of frame 3 is assigned to type 2.
  • a code equal to 64 to which is added the value "N. table” of the pitch of frame 3 is assigned to type 3.
  • a code equal to 128 to which is added the value "N. table” of the pitch of frame 1 is assigned to type 4.
  • a code equal to 192 to which is added the value "N. table of the pitch of frame 1 is assigned to type 5. Coding of type 6 takes place in a very particular way by projecting the vector composed of the three values of the pitches of the three frames on the 3 vectors (Vect 1, Vect 2, Vect 3) eigen to code the three projections obtained.
  • Vect 1, Vect 2, Vect 3 are an approximation of the first 3 eigen vectors of the intercorrelation matrix.
  • N.tableau which is the closest to the average (P1 + P2 + P3) / 3 of the pitches of frames 1, 2 and 3.
  • the corresponding code is then coded on the 63 values of the coding table.
  • the projection on the second eigenvector (Vect 2) is equal to the scalar product of the pitches of frames 1, 2 and 3 by the second eigenvector (Vect 2) and the projection on the third eigenvector (Vect 3) is equal to the product scalar pitch of frames 1, 2 and 3 by the third eigenvector (Vect 3).
  • the corresponding codes can be obtained respectively on only 4 and 3 values from the coding table.
  • the coding of the energy which is carried out on stage 15 takes place in a known manner and described in patent application FR 2 631 146 on three consecutive frames. Four energy values corresponding to the 4 sub-fields of each of the three fields are coded. However, in order to eliminate the redundant information in these 12 values, a Main Component Analysis of the type described has the title "Data analysis elements" in the book by MM. DIDAY, LEMAIRE, POUGET and TESTU published by Dunod, is performed. Coding takes place in two stages. A first step is to make a basic change. The energy vector of dimension 12, composed of the 12 energy values of the 3 frames is projected on the first 3 main axes determined during the analysis by principal components (more than 97% of the information is contained in these 3 projections) .
  • the second step consists in quantifying these 3 projections, the first projection is quantized on 4 bits, the second on 3 bits and the third on 2 bits.
  • the synthesis takes place according to steps 17 to 28 of the flow diagram of FIG. 6, on the one hand, steps 17 to 21 for descrambling and decoding the values of the coefficients LSP of the filter (step 18), of the pitch (step 19), of the voicing and of the energy (step 20) for three consecutive frames and on the other hand, according to steps 22 to 28 which carry out the synthesis of the speech signal successively for each of the three frames on the basis of the information obtained during the execution of steps 17 to 21.
  • Descreening and decoding follow procedures reverse to the screening and decoding procedures defined during the analysis illustrated by the flowchart of FIG. 1.
  • the shaping of the synthesis filter consists in performing in step 23 an interpolation calculation of the LSP coefficients on four subframes and a calculation to transform the LSP coefficients into coefficients A i . This last calculation is followed in step 24 by a gain calculation of the synthesis filter for the 4 subframes to which is added a calculation of the energy of the excitation signal of the filter. In order to avoid sudden transitions between dissimilar filters, these are done in step 23 in four steps every quarter of a frame.
  • LSP (SS Tr i , TrN) (LSP (TrN-1) * (4-i) + LSP (TrN) * i) / 4
  • LSP (SS Tri, Tr N) designates the value of the interpolated filter in subframe i of frame N.
  • the 12 decoded energies correspond to the energy of the speech signal after pre-emphasis, it is necessary to obtain the energy of the excitation signal divide the energy by the gain of the filter.
  • the gain of the filter of each subframe is calculated using the coefficients K i according to the relation
  • the last step consists in determining the value of the standard deviation of the energy of each subframe (value used during the calculation of the excitation).
  • the entire coding and decoding method according to the invention can be executed by means of a microprogrammed structure formed as shown by way of example in FIG. 8 by a signal processing microprocessor 29 such as that sold by the company Texas Instrument under the designation TMS 320C25.
  • a signal processing microprocessor 29 such as that sold by the company Texas Instrument under the designation TMS 320C25.
  • the speech signal is first sampled by an analog to digital converter 30 before being applied to a data bus 31 of the microprocessor 29.
  • An analog filter 32 coupled to an automatic gain control device 33 filters the signal speech before sampling.
  • the programs and the data implemented for the execution of the method according to the invention are recorded in a read-only memory 34 and in a random access memory 35 connected to the microprocessor 29.
  • An interface circuit 36 connects the microprocessor 29 via from a data line 37 to transmission devices external to the vocoder, not shown.

Landscapes

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

Abstract

The method involves dividing up the speech signal into frames of a constant length, calculating (4...10) the characteristics of N vocal duct modeling filters and the pitch, voicing and energy characteristics of the speech signal. Block coding is performed both for the filters and for the pitch and voicing. The speech signal energy is determined P times per frame for N frames and coded in a single block. Applications: low-speed 800 bits/sec vocoders.

Description

La présente invention concerne un procédé et un dispositif de codage bas débit de la parole.The present invention relates to a method and a device for low bit rate coding of speech.

Elle s'applique notamment à la réalisation de vocodeurs pour les liaisons radio HF, ou de ceux utilisés pour la messagerie vocale.It applies in particular to the production of vocoders for HF radio links, or of those used for voice messaging.

Dans ces domaines, le volume d'informations à transmettre se heurte de plus en plus aux limites technologiques des équipements susceptibles de véhiculer la parole. Ainsi pour des transmissions dont le débit est inférieur à 2400 bits par seconde, les techniques de codage connues (MIC, DELTA, RELP etc... ) ne sont plus adaptées, le signal de parole ne pouvant plus être transmis par sa forme d'onde. Pour assurer ces transmissions il devient nécessaire d'utiliser les techniques de codage beaucoup plus sophistiquées des vocodeurs. Ainsi, la plupart des vocodeurs très bas débit utilisent une technique de codage vectoriel de leur filtre numérique pour modéliser le conduit vocal. Cette modélisation a lieu par recherche d'une référence dans un dictionnaire. Cependant cette technique qui est à la fois très compliquée et coûteuse à mettre en oeuvre ne permet pas d'obtenir une quantification fine du signal de parole. Les difficultés viennent en outre du fait que l'énergie du signal est souvent mal représentée et donc mal codée, de la sorte les brusques variations d'amplitude du signal vocal ne peuvent plus être restituées correctement.In these areas, the volume of information to be transmitted is increasingly coming up against the technological limits of equipment capable of carrying speech. Thus for transmissions whose bit rate is less than 2400 bits per second, the known coding techniques (MIC, DELTA, RELP, etc.) are no longer suitable, the speech signal no longer being able to be transmitted by its form of wave. To ensure these transmissions it becomes necessary to use the much more sophisticated coding techniques of vocoders. Thus, most very low speed vocoders use a vector coding technique of their digital filter to model the voice path. This modeling takes place by searching for a reference in a dictionary. However, this technique which is both very complicated and costly to implement does not make it possible to obtain a fine quantization of the speech signal. The difficulties also come from the fact that the energy of the signal is often poorly represented and therefore poorly coded, so that sudden variations in amplitude of the voice signal can no longer be restored correctly.

Le but de l'invention est de pallier les inconvénients précités.The object of the invention is to overcome the aforementioned drawbacks.

A cet effet, l'invention a pour objet un procédé de codage à bas débit de la parole, caractérisé en ce qu'il consiste après avoir découpé le signal de parole en trames de longueur constante, à calculer les caractéristiques de N filtres de modélisation du conduit vocal ainsi que les caractéristiques de période fondamentale (pitch), de voisement et d'énergie du signal vocal par intervalles déterminés de N trames successives en calculant l'énergie du signal de parole un nombre P déterminé de fois par trame pour coder l'ensemble de ces caractéristiques. D'autres caractéristiques et avantages de l'invention apparaîtront à l'aide de la description faite en regard des dessins annexés qui représentent :To this end, the subject of the invention is a low bit rate coding process for speech, characterized in that it consists, after having cut the speech signal into frames of constant length, to calculate the characteristics of N modeling filters of the vocal tract as well as the fundamental period (pitch), voicing and energy characteristics of the voice signal by determined intervals of N successive frames by calculating the energy of the speech signal a determined number P of times per frame to code all of these characteristics. Other characteristics and advantages of the invention will become apparent from the description given with reference to the appended drawings which represent:

La figure 1 un organigramme illustrant le procédé de codage de la parole mis en oeuvre par l'invention.Figure 1 a flowchart illustrating the speech coding method implemented by the invention.

La figure 2 un mode de codage des coefficients LSP du filtre d'analyse mis en oeuvre à la figure 1 pour modéliser le conduit vocal.FIG. 2 a mode of coding the LSP coefficients of the analysis filter used in FIG. 1 to model the voice path.

La figure 3 un tableau de coefficients LSP.Figure 3 a table of LSP coefficients.

La figure 4 des chemins de codage de trames par interpolation.Figure 4 of frame coding paths by interpolation.

La figure 5 une table de codage de "pitch".Figure 5 is a pitch coding table.

La figure 6 un organigramme illustrant le procédé de synthèse du signal de parole mis en oeuvre par l'invention.FIG. 6 is a flowchart illustrating the method for synthesizing the speech signal implemented by the invention.

La figure 7 un graphe pour illustrer un mode d'interpolation des filtres de synthèse mis en oeuvre par l'invention.FIG. 7 a graph to illustrate a mode of interpolation of the synthesis filters implemented by the invention.

La figure 8 un mode de réalisation d'un dispositif pour la mise en oeuvre du procédé selon l'invention.Figure 8 an embodiment of a device for implementing the method according to the invention.

Le procédé de codage selon l'invention consiste après avoir découpé le signal de parole en trames de longueur constante d'environ 20 à 25 ms, comme ceci a lieu habituellement dans les vocodeurs, à déterminer et coder les caractéristiques du signal de parole sur N trames successives en déterminant l'énergie du signal P fois par trame.The coding method according to the invention consists, after having cut the speech signal into frames of constant length of approximately 20 to 25 ms, as this usually takes place in vocoders, determining and coding the characteristics of the speech signal over N successive frames by determining the energy of the signal P times per frame.

La synthèse du signal de parole sur chaque trame a lieu ensuite en procédant au détramage et au décodage des valeurs des caractéristiques codées du signal de parole.The synthesis of the speech signal on each frame then takes place by descrambling and decoding the values of the coded characteristics of the speech signal.

Les étapes représentatives d'un procédé de codage selon l'invention appliquées à un cas où N = 3 trames successives sont analysées sont représentées sur l'organigramme de la figure 1. Sur cet organigramme le procédé commence aux étapes 1 à 6, par le calcul sur la première trame analysée des coefficients "LSP" où "LSP" est l'abréviation anglaise de "Line Spectrum Pair", d'un filtre d'analyse modélisant le conduit vocal : ce calcul peut être effectué par exemple en suivant la méthode connue décrite dans l'article de MM. Peter KABAL et Ravi PRAKASA RAMACHANDRAN ayant pour titre "The computation of line spectral Frequencies using Chebyshev polynomials" publié dans IEE Transactions on Acoustics, Speech and Signal Processing ASSP-34 Dec. 86.The representative steps of a coding method according to the invention applied to a case where N = 3 successive frames are analyzed are represented on the flow diagram of FIG. 1. On this flow diagram the method begins in steps 1 to 6, with the calculation on the first analyzed frame of the "LSP" coefficients where "LSP" is the English abbreviation for "Line Spectrum Pair", an analysis filter modeling the vocal tract: this calculation can be carried out for example by following the known method described in the article by MM. Peter KABAL and Ravi PRAKASA RAMACHANDRAN entitled "The computation of line spectral Frequencies using Chebyshev polynomials" published in IEE Transactions on Acoustics, Speech and Signal Processing ASSP-34 Dec. 86.

Après échantillonnage du signal de parole sur chaque trame et quantification des échantillons sur un nombre déterminé de bits ceux-ci sont préaccentués à l'étape 3. Comme l'opération d'échantillonnage rend périodique le spectre du signal de parole, le nombre d'échantillons pris en compte pour la détermination des coefficients du filtre de modélisation du conduit vocal est limité de façon connue en faisant le produit des échantillons préaccentués de l'étape 3 par une fenêtre de HAMMING de durée égale à celle d'une trame, cette fenêtre présentant aussi l'avantage de renforcer les résonances.After sampling the speech signal on each frame and quantizing the samples over a determined number of bits, these are pre-emphasized in step 3. As the sampling operation makes the spectrum of the speech signal periodic, the number of samples taken into account for the determination of the coefficients of the vocal tract modeling filter is limited in a known manner by making the product of the pre-emphasized samples of step 3 by a HAMMING window of duration equal to that of a frame, this window also having the advantage of strengthening the resonances.

Les coefficients ki du filtre de modélisation du conduit vocal sont calculés à l'étape 5 à partir de coefficients d'autocorrélation Ri définis par une relation de la forme :

Figure imgb0001

où i est un nombre entier variant de 0 à 10 par exemple, et Si représente un échantillon de signal préaccentué et fenêtré.The coefficients k i of the vocal tract modeling filter are calculated in step 5 from autocorrelation coefficients R i defined by a relation of the form:
Figure imgb0001

where i is an integer varying from 0 to 10 for example, and S i represents a sample of pre-emphasized and windowed signal.

Le calcul des coefficients Ki peut être effectué à l'étape 5 en appliquant l'algorithme connu de M. LEROUX-GUEGUEN dont une description peut être trouvée dans l'article de la revue IEEE Transactions ou Acoustics Speech, and Signal Processing June 1977 ayant pour titre "A fixed point computation of partial correlation coefficients"'. Ce calcul revient à inverser une matrice carrée dont les éléments sont les coefficients Ride la relation (1).The calculation of the coefficients K i can be carried out in step 5 by applying the known algorithm of M. LEROUX-GUEGUEN, a description of which can be found in the article of the journal IEEE Transactions or Acoustics Speech, and Signal Processing June 1977 titled "A fixed point computation of partial correlation coefficients"'. This calculation amounts to inverting a square matrix whose elements are the coefficients R i of the relation (1).

Le passage des coefficients de réflexions à des coefficients de prédiction Ai a lieu à l'étape 8. Ce passage utilise aussi un algorithme connu sous le nom d'algorithme de M. Levison dont une description peut être trouvée dans l'article intitulé :
"The Wiener RM5 error croterion in filter design and prediction J Math Phys, 25 pp 614-617 (1947)"
The passage from the reflection coefficients to the prediction coefficients A i takes place in step 8. This passage also uses an algorithm known by the name of M. Levison's algorithm, a description of which can be found in the article entitled:
"The Wiener RM5 error croterion in filter design and prediction J Math Phys, 25 pp 614-617 (1947)"

Enfin les coefficients LSP du filtre sont calculés à partir de deux polynômes P et Q décrits comme suit dans le plan des transformées en Z, où Z est la variable complexe de ces polynômes, P(Z⁻¹)=A(Z⁻¹)-Z⁻¹¹.A(Z)

Figure imgb0002
et Q(Z⁻¹)=A(Z⁻¹)+Z⁻¹¹.A(Z)
Figure imgb0003
avec
Figure imgb0004
Finally the LSP coefficients of the filter are calculated from two polynomials P and Q described as follows in the plane of transforms in Z, where Z is the complex variable of these polynomials, P (Z⁻¹) = A (Z⁻¹) -Z⁻¹¹.A (Z)
Figure imgb0002
and Q (Z⁻¹) = A (Z⁻¹) + Z⁻¹¹.A (Z)
Figure imgb0003
with
Figure imgb0004

Si ejαi et ej βi désignent les racines des polynômes P et Q les coefficients LSP sont par définition les fréquences fi et gi des arguments de ces racines
soit : f i = x i Fe/2¶

Figure imgb0005
et g i = β i Fe/2¶
Figure imgb0006
If e jαi and e j βi denote the roots of polynomials P and Q the coefficients LSP are by definition the frequencies f i and g i of the arguments of these roots
is : f i = x i Fe / 2¶
Figure imgb0005
and g i = β i Fe / 2¶
Figure imgb0006

Dans ce calcul Fe représente la fréquence d'échantillonnage du signal de parole.In this calculation F e represents the sampling frequency of the speech signal.

Les fréquences fi et gi sont conservées dans une mémoire, non représentée et les calculs précédents sont recommencés sur les échantillons des deux trames qui suivent. Lorsque les paramètres de trois trames consécutives sont calculés et que trois jeux de coefficients ont été stockés le procédé passe à leur codage à l'étape 13.The frequencies f i and g i are kept in a memory, not shown and the preceding calculations are repeated on the samples of the two frames which follow. When the parameters of three consecutive frames are calculated and three sets of coefficients have been stored, the method goes to their coding in step 13.

Le calcul de la période fondamentale du signal et du voisement a lieu de façon connue par exécution des étapes 9 et 10. Au cours de ces étapes le signal de parole est classé en deux catégories de sons, les sons voisés et les sons non voisés. Les sons voisés qui sont produits à partir des cordes vocales sont assimilés à une suite d'impulsions dont la période du fondamental porte le nom de "Pitch" en anglais. Les sons non voisés qui sont produits par des turbulences sont assimilés à du bruit blanc. Ainsi lorsque le signal de parole présente des périodicités marqués le procédé reconnaît à l'étape 10 pour chaque trame un son voisé, et un son non voisé dans le cas contraire. La reconnaissance a lieu après un prétraitement du signal pour renforcer les informations utiles et limiter celles quine le sont pas. Ce prétraitement consiste à effectuer un premier filtrage passe bas du signal, suivi d'un ébasage et d'un deuxième filtrage. Comme la fréquence fondamentale du signal de parole varie entre 50 et 400 Hertz le premier filtrage est effectué par exemple au moyen, d'un simple filtre de "Butterworth" d'ordre 3 dont la fréquence de coupure à 3dB peut être fixée à 600 Hertz. L'ébasage place ensuite à une amplitude nulle les échantillons du signal dont le niveau est inférieur à un certain seuil prédéterminé variable éventuellement suivant l'amplitude du signal vocal. Cet ébasage permet d'accentuer l'aspect périodique du signal tout en diminuant les détails nuisibles aux traitements ultérieurs.The calculation of the fundamental period of the signal and the voicing takes place in a known manner by performing steps 9 and 10. During these steps the speech signal is classified into two categories of sounds, voiced sounds and unvoiced sounds. Voiced sounds that are produced from the vocal cords are compared to a series of impulses whose fundamental period is called "Pitch" in English. Unvoiced sounds produced by turbulence are assimilated to white noise. Thus when the speech signal has marked periodicities, the method recognizes in step 10 for each frame a voiced sound, and a non-voiced sound otherwise. Recognition takes place after a preprocessing of the signal to reinforce useful information and limit that which is not. This preprocessing consists in carrying out a first low pass filtering of the signal, followed by bashing and a second filtering. As the fundamental frequency of the speech signal varies between 50 and 400 Hertz the first filtering is carried out for example by means of a simple "Butterworth" filter of order 3 whose cutoff frequency at 3dB can be fixed at 600 Hertz . The trimming then places the signal samples whose level is below a certain predetermined threshold at zero amplitude, possibly variable depending on the amplitude of the voice signal. This raking makes it possible to accentuate the periodic aspect of the signal while reducing the details detrimental to subsequent processing.

Enfin, le deuxième filtrage permet de lisser les résultats de l'ébasage en éliminant les hautes fréquences. A cette fin, un filtre de Butterworth identique au pemier filtre peut être utilisé.Finally, the second filtering makes it possible to smooth the results of the bashing by eliminating the high frequencies. To this end, a Butterworth filter identical to the first filter can be used.

Les calculs du pitch et du voisement ont lieu de façon connue par utilisation de la fonction AMDF (Average Magnitude Difference Function). Ils se déroulent suivant cinq étapes qui consistent :

  • 1. A calculer une décision préliminaire de voisement à partir des valeurs de l'énergie, du filtre de modélisation et du nombre de passages par l'amplitude nulle du signal.
  • 2. A calculer un seuil de voisement à partir de la décision du voisement préliminaire, de l'énergie basse fréquence et de constantes internes.
  • 3. A calculer pour chaque valeur de R une fonction AMDF(k) =SOMME| (S(n) - S(n-k)| (8) où s(n) représente le signal prétraité, et à calculer les valeurs maximales de cette fonction.
  • 4. A comparer et étudier les valeurs maximales obtenues pour en déduire le voisement et le pitch de la trame.
  • 5. Et à corriger le voisement et le pitch de la trame précédente en fonction des résultats de la trame courante pour conserver une certaine stationnarité au voisement.
The pitch and voicing calculations take place in a known manner by using the AMDF (Average Magnitude Difference Function) function. They take place according to five stages which consist:
  • 1. To calculate a preliminary decision of voicing from the values of the energy, the modeling filter and the number of passages by the zero amplitude of the signal.
  • 2. To calculate a voicing threshold from the decision of the preliminary voicing, low frequency energy and internal constants.
  • 3. To calculate for each value of R a function AMDF (k) = SUM | (S (n) - S (nk) | (8) where s (n) represents the preprocessed signal, and calculating the maximum values of this function.
  • 4. To compare and study the maximum values obtained to deduce the voicing and the pitch of the frame.
  • 5. And to correct the voicing and the pitch of the previous frame according to the results of the current frame to maintain a certain stationarity at the voicing.

Le calcul d'énergie qui a lieu à l'étape 8 est exécuté sur quatre sous trames. Ce calcul a lieu en prenant le logarithme à base 2 de la somme des énergies de chaque échantillons préaccentué d'une sous trame.The energy calculation which takes place in step 8 is executed on four subframes. This calculation takes place by taking the logarithm to base 2 of the sum of the energies of each pre-emphasized samples of a subframe.

Les sous trames dans chaque trame sont jointives ou se chevauchent pour avoir une longueur multiple du "pitch".The subframes in each frame are contiguous or overlap to have a length multiple of the "pitch".

Une fois que les caractéristiques, de modélisation du filtre, d'énergie, de voisement et de pitch sont obtenues pour trois trames successives le procédé passe à leur codage selon les étapes 13 à 16. Le codage du filtre des trois trames désignées ci-après par trame 1, trame 2 et trame 3 s'effectue en deux temps en commençant par la trame 3.Once the characteristics, modeling of the filter, energy, voicing and pitch are obtained for three successive frames the method proceeds to their coding according to steps 13 to 16. The coding of the filter of the three frames designated below by weft 1, weft 2 and weft 3 is done in two stages starting with weft 3.

Le codage de la trame 3 est de type scalaire. Il s'effectue en application de l'algorithme connue sous l'appellation "Backward Sequential adaptative" tel que décrit par exemple dans l'article de la revue IEEE on selected areas in communications, Vol. 6 feb. 88 de MM. Sugamara N et FAYARDIN N (1988) ayant pour titre "Quantizer design in LSP speech analysis".The coding of frame 3 is of scalar type. It is carried out in application of the algorithm known under the name "Adaptive Backward Sequential" as described for example in the article of the journal IEEE on selected areas in communications, Vol. 6 feb. 88 of MM. Sugamara N and FAYARDIN N (1988) entitled "Quantizer design in LSP speech analysis".

L'algorithme de codage est exécuté dans l'ordre décroissant des coefficients LSP en commençant par le dernier des manières représentées aux figures 2 et 3. Pour un filtre de modélisation du conduit vocal à 10 coefficients LSP par exemple le codage du dernier coefficient LSP(10) a lieu de façon linéaire entre deux valeurs de fréquences F₁₀MIN et F₁₀MAX et a lieu sur NV10 valeurs codées linéairement sur NB₁₀ bits.The coding algorithm is executed in descending order of the LSP coefficients, starting with the last of the ways shown in FIGS. 2 and 3. For a voice path modeling filter with 10 LSP coefficients, for example the coding of the last LSP coefficient ( 10) takes place linearly between two frequency values F₁₀MIN and F₁₀MAX and takes place on N V10 values coded linearly on NB₁₀ bits.

Les codages des LSP(i) autres coefficients pour i = 9, 8...1 a lieu par comparaison du coefficient LSPQ(i+1) à une valeur de fréquence maximum FiMAXThe coding of the LSP (i) other coefficients for i = 9, 8 ... 1 takes place by comparison of the coefficient LSPQ (i + 1) with a maximum frequency value F i MAX

Si LSPQ(i + 1)>FiMAX alors le codage du coefficient est effectué linéairement entre deux valeurs FiMIN et FiMAX sur NVi valeurs et donc sur NBi bits.If LSPQ (i + 1)> F i MAX then the coding of the coefficient is performed linearly between two values F i MIN and F i MAX on NV i values and therefore on NB i bits.

Si LSP(i+1)<FiMAX alors le codage du coefficient est effectué linéairement entre FiMIN et LSPQ(i+1) sur NVi valeurs et donc sur NBibits.If LSP (i + 1) <F i MAX then the coding of the coefficient is carried out linearly between F i MIN and LSPQ (i + 1) on NV i values and therefore on NB i bits.

Au cours du codage des trames 1 et 2 une bonne approximation des valeurs de coefficients LSP correspondant aux trames 1 et 2 est obtenue à partir de l'interpolation entre les trames 0 (trame 0 = trame 3 du groupe de 3 trames précédentes) et 3. Dans ce processus les trames 1 et 2 ne sont pas codées directement mais c'est le type d'interpolation permettant de les quantifier le plus fidèlement possible qui est codé.During the coding of frames 1 and 2 a good approximation of the values of LSP coefficients corresponding to frames 1 and 2 is obtained from the interpolation between frames 0 (frame 0 = frame 3 of the group of 3 previous frames) and 3 In this process, frames 1 and 2 are not coded directly, but it is the type of interpolation allowing them to be quantified as faithfully as possible which is coded.

Pour chacune des valeurs de coefficients LSP d'ordre impairs des trames 1 ou 2, le codeur détermine parmi 3 interpolations représentées par le graphe de la figure 4 celle qui lui semble donner la meilleure approximation des valeurs des trames 1 et 2.For each of the values of LSP coefficients of odd order of frames 1 or 2, the coder determines among 3 interpolations represented by the graph of FIG. 4 which one seems to him to give the best approximation of the values of frames 1 and 2.

Les trois cas d'interpolations possibles cas 0, cas1 et cas 2 donnent pour les trames 1 et 2 des coefficients LSPQ définis en liaison avec la figure 4 comme suit. (LSPQ (trame i) = Valeur Quantifiée du LSP de la trame i

Figure imgb0007
Figure imgb0008
Figure imgb0009
The three possible cases of interpolation cases 0, case1 and case 2 give for frames 1 and 2 LSPQ coefficients defined in connection with FIG. 4 as follows. (LSPQ (frame i) = Quantized value of the LSP of frame i
Figure imgb0007
Figure imgb0008
Figure imgb0009

Le procédé choisit ensuite parmi les 3 interpolations précédentes celle qui minimise l'erreur de quantification, estimée au moyen d'une fonction D_INTER définie ci-dessous en adoptant la valeur de code correspondante.The method then chooses from the 3 previous interpolations the one which minimizes the quantization error, estimated by means of a function D_INTER defined below by adopting the corresponding code value.

La fonction D_INTER est définie comme suit. D_INTER(i) = W1.(LSPQ(cas i, trame 1)-LSP(Trame 1))2 + W2.(LSPQ(cas i, Trame 2)-LSP(Trame 2))²

Figure imgb0010
où LSPQ(cas i, Trame j) est la valeur du coefficient LSP impair de la trame j quantifié au moyen del'interpolation du type i.The D_INTER function is defined as follows. D_INTER (i) = W1. (LSPQ (case i, frame 1) -LSP (Frame 1)) 2 + W2. (LSPQ (case i, Frame 2) -LSP (Frame 2)) ²
Figure imgb0010
where LSPQ (case i, Frame j) is the value of the odd LSP coefficient of the frame j quantified by means of type i interpolation.

LSP(trame j) = Valeur réelle dans la trame j du coefficient LSP impair à quantifierLSP (frame j) = Actual value in frame j of the odd LSP coefficient to be quantified

W1 = valeur de l'énergie de la trame 1W1 = value of the energy of frame 1

W2 = valeur de l'énergie de la trame 2W2 = value of the energy of frame 2

On obtient ainsi 5 codes de 3 cas chacun, soit 3⁵=243 cas possibles. Le code obtenu est égal à
Code LSP1 + 3.Code LSP3 + 9.Code LSP5 + 27.Code LSP7 + 81.Code LSP9
We thus obtain 5 codes of 3 cases each, that is 3⁵ = 243 possible cases. The code obtained is equal to
Code LSP1 + 3.Code LSP3 + 9.Code LSP5 + 27.Code LSP7 + 81.Code LSP9

Ce codage tient sur 8 bits.This coding takes place on 8 bits.

Le codage du pitch et du voisement ont lieu à l'étape 14 sur trois trames consécutives.The pitch and voicing coding take place in step 14 on three consecutive frames.

Le type de voisement courant est déterminé parmi six cas possibles à partir des voisements des trames 1, 2 et 3 et du voisement de la trame 0 qui précède chaque groupe de trames 1, 2 et 3.The current voicing type is determined from six possible cases from the voices of frames 1, 2 and 3 and the voicing of frame 0 which precedes each group of frames 1, 2 and 3.

Les types de cas possibles considérés sont les suivants.

Figure imgb0011
The possible types of cases considered are as follows.
Figure imgb0011

Une table de codage représenté à la figure 5 permet d'associer à toute valeur du pitch un nombre de la table dont la valeur désignée par la suite par "N tableau" est la plus proche du pitch.A coding table represented in FIG. 5 makes it possible to associate with any pitch value a number from the table whose value subsequently designated by "N array" is the closest to the pitch.

Le codage des six types de cas possibles précédents a lieu alors de la manière suivante:The coding of the six types of previous possible cases then takes place as follows:

Le code 0 est attribué au type 1. Un code égal à la valeur "N.tableau" du pitch de la trame 3 est attribué au type 2. Un code égal à 64 auquel est ajouté la valeur "N.tableau" du pitch de la trame 3 est attribué au type 3. Un code égal à 128 auquel est ajouté la valeur "N. tableau " du pitch de la trame 1 est attribué au type 4. Un code égal à 192 auquel est ajouté la valeur "N.tableau du pitch de la trame 1 est attribué au type 5. Le codage du type 6 a lieu de façon toute particulière en projetant le vecteur composé des trois valeurs des pitchs des trois trames sur les 3 vecteurs (Vect 1, Vect 2, Vect 3) propres pour coder les trois projections obtenues. Ces trois vecteurs Vect 1, Vect 2, Vect 3 sont une approximation des 3 premiers vecteurs propres de la matrice d'intercorrélation. Comme la projection sur le premier vecteur propre donne la moyenne des pitchs il est plus simple de prendre directement comme code pour la première projection la valeur "N.tableau" qui est la plus proche de la moyenne (P₁ + P₂ + P₃)/3 des pitchs des trames 1, 2 et 3. Le code correspondant est alors codé sur les 63 valeurs de la table de codage.The code 0 is assigned to type 1. A code equal to the value "N. table" of the pitch of frame 3 is assigned to type 2. A code equal to 64 to which is added the value "N. table" of the pitch of frame 3 is assigned to type 3. A code equal to 128 to which is added the value "N. table" of the pitch of frame 1 is assigned to type 4. A code equal to 192 to which is added the value "N. table of the pitch of frame 1 is assigned to type 5. Coding of type 6 takes place in a very particular way by projecting the vector composed of the three values of the pitches of the three frames on the 3 vectors (Vect 1, Vect 2, Vect 3) eigen to code the three projections obtained. These three vectors Vect 1, Vect 2, Vect 3 are an approximation of the first 3 eigen vectors of the intercorrelation matrix. As the projection on the first eigen vector gives the average of the pitches it is more simple to take directly as code for the first projection the value "N.tableau" which is the closest to the average (P₁ + P₂ + P₃) / 3 of the pitches of frames 1, 2 and 3. The corresponding code is then coded on the 63 values of the coding table.

La projection sur le deuxième vecteur propre (Vect 2) est égale au produit scalaire des pitchs des trames 1, 2 et 3 par le deuxième vecteur propre (Vect 2) et la projection sur le troisième vecteur propre (Vect 3) est égale au produit scalaire des pitchs des trames 1, 2 et 3 par le troisième vecteur propre (Vect 3).The projection on the second eigenvector (Vect 2) is equal to the scalar product of the pitches of frames 1, 2 and 3 by the second eigenvector (Vect 2) and the projection on the third eigenvector (Vect 3) is equal to the product scalar pitch of frames 1, 2 and 3 by the third eigenvector (Vect 3).

Les codes correspondants peuvent être obtenus respectivement sur seulement 4 et 3 valeurs de la table de codage.The corresponding codes can be obtained respectively on only 4 and 3 values from the coding table.

Le codage de l'énergie qui est effectué à l'étage 15 a lieu de façon connue et décrite dans la demande de brevet FR 2 631 146 sur trois trames consécutives. Quatre valeur de l'énergie correspondant aux 4 sous trames de chacune des trois trames sont codées. Cependant pour éliminer l'information redondante dans ces 12 valeurs une Analyse par Composantes Principales du type de celle décrite ayant pour titre "Eléments d'analyse des données" dans le livre de MM. DIDAY, LEMAIRE, POUGET et TESTU publié par Dunod, est effectuée. Le codage a lieu selon deux étapes. Une première étape consiste à effectuer un changement de base. Le vecteur énergie de dimension 12, composé des 12 valeurs d'énergie des 3 trames est projeté sur les 3 premiers axes principaux déterminés lors de l'analyse par composantes principales (plus de 97% de l'information est contenue dans ces 3 projections ).The coding of the energy which is carried out on stage 15 takes place in a known manner and described in patent application FR 2 631 146 on three consecutive frames. Four energy values corresponding to the 4 sub-fields of each of the three fields are coded. However, in order to eliminate the redundant information in these 12 values, a Main Component Analysis of the type described has the title "Data analysis elements" in the book by MM. DIDAY, LEMAIRE, POUGET and TESTU published by Dunod, is performed. Coding takes place in two stages. A first step is to make a basic change. The energy vector of dimension 12, composed of the 12 energy values of the 3 frames is projected on the first 3 main axes determined during the analysis by principal components (more than 97% of the information is contained in these 3 projections) .

La deuxième étape consiste à quantifier ces 3 projections, la première projection est quantifiée sur 4 bits, la deuxième sur 3 bits et la troisième sur 2 bits.The second step consists in quantifying these 3 projections, the first projection is quantized on 4 bits, the second on 3 bits and the third on 2 bits.

Le codage de l'énergie ainsi obtenu est alors défini sur 4 + 3 +2 = 9 bits.The energy coding thus obtained is then defined on 4 + 3 + 2 = 9 bits.

Le tramage qui est effectué à l'étape 16 consiste à effectuer un regroupement de tous les codes pour former un mot continu de 54 bits décomposés comme suite :

  • 1) Code énergie 3 trames sur 9 bits.
  • 2) Code pitch 3 trames sur 10 bits.
  • 3) Code filtre trame 3 sur 27 bits.
  • 4) Code filtres trames 1 et 2 sur 8 bits.
    soit au total 9 + 10+27 + 8 = 54 bits.
The framing which is carried out in step 16 consists in carrying out a grouping of all the codes to form a continuous word of 54 bits broken down as follows:
  • 1) Energy code 3 frames on 9 bits.
  • 2) Pitch code 3 frames on 10 bits.
  • 3) Frame filter code 3 on 27 bits.
  • 4) Frame filter code 1 and 2 on 8 bits.
    or in total 9 + 10 + 27 + 8 = 54 bits.

A titre d'exemple pour le cas d'une durée de trame de 22.5 ms, le procédé permet d'obtenir dans ces conditions un débit binaire par seconde de 54/(3*0.0225) = 800 bits par seconde.By way of example for the case of a frame duration of 22.5 ms, the method makes it possible under these conditions to obtain a bit rate per second of 54 / (3 * 0.0225) = 800 bits per second.

La synthèse c'est-à-dire le décodage du signal de parole se déroule selon les étapes 17 à 28 de l'organigramme de la figure 6 suivant d'une part, les étapes 17 à 21 pour détramer et décoder les valeurs des coefficients LSP du filtre (étape 18), du pitch (étape 19), du voisement et de l'énergie (étape 20) pour trois trames consécutives et d'autre part, suivant les étapes 22 à 28 qui réalisent la synthèse du signal de parole successivement pour chacune des trois trames à partir des informations obtenues lors de l'exécution des étapes 17 à 21. Le détramage et le décodage suivent des procédures inverses aux procédures de tramage et de décodage définie lors de l'analyse illustrée par l'organigramme de la figure 1. La mise en forme du filtre de synthèse consiste à effectuer à l'étape 23 un calcul d'interpolation des coefficients LSP sur quatre sous trames et un calcul pour transformer les coefficients LSP en coefficients Ai. Ce dernier calcul est suivi à l'étape 24 par un calcul de gain du filtre de synthèse pour les 4 sous trames auquel est ajouté un calcul de l'énergie du signal d'excitation du filtre. Afin d'éviter des transitions brutales entre filtres dissemblables celles-ci se font à l'étape 23 en quatre étapes tous les quarts de trame. Les quatre filtres interpolés doivent alors vérifier une relation de la forme :
LSP(SS Tri, TrN)=(LSP(TrN-1)*(4-i)+LSP(TrN)*i)/4
où LSP(SS Tri, Tr N) désigne la valeur du filtre interpôlé dans la sous trame i de la trame N.
The synthesis, that is to say the decoding of the speech signal, takes place according to steps 17 to 28 of the flow diagram of FIG. 6, on the one hand, steps 17 to 21 for descrambling and decoding the values of the coefficients LSP of the filter (step 18), of the pitch (step 19), of the voicing and of the energy (step 20) for three consecutive frames and on the other hand, according to steps 22 to 28 which carry out the synthesis of the speech signal successively for each of the three frames on the basis of the information obtained during the execution of steps 17 to 21. Descreening and decoding follow procedures reverse to the screening and decoding procedures defined during the analysis illustrated by the flowchart of FIG. 1. The shaping of the synthesis filter consists in performing in step 23 an interpolation calculation of the LSP coefficients on four subframes and a calculation to transform the LSP coefficients into coefficients A i . This last calculation is followed in step 24 by a gain calculation of the synthesis filter for the 4 subframes to which is added a calculation of the energy of the excitation signal of the filter. In order to avoid sudden transitions between dissimilar filters, these are done in step 23 in four steps every quarter of a frame. The four interpolated filters must then verify a relation of the form:
LSP (SS Tr i , TrN) = (LSP (TrN-1) * (4-i) + LSP (TrN) * i) / 4
where LSP (SS Tri, Tr N) designates the value of the interpolated filter in subframe i of frame N.

L'interpolation a lieu suivant le schéma de la figure 7.The interpolation takes place according to the diagram in Figure 7.

Comme les 12 énergies décodées correspondent à l'énergie du signal de parole après préaccentuation, il faut pour obtenir l'énergie du signal d'excitation diviser l'énergie par le gain du filtre.As the 12 decoded energies correspond to the energy of the speech signal after pre-emphasis, it is necessary to obtain the energy of the excitation signal divide the energy by the gain of the filter.

Le gain du filtre de chaque sous trame est calculé en utilisant les coefficients Ki suivant la relationThe gain of the filter of each subframe is calculated using the coefficients K i according to the relation

Gain du filtre

Figure imgb0012
Filter gain
Figure imgb0012

Enfin la dernière étape consiste à déterminer la valeur de l'écart type de l'énergie de chaque sous trame (valeur utilisée lors du calcul de l'excitation).Finally the last step consists in determining the value of the standard deviation of the energy of each subframe (value used during the calculation of the excitation).

L'ensemble du procédé de codage et de décodage selon l'invention sont exécutables au moyen d'une structure microprogrammée formée de la façon représentée à titre d'exemple sur la figure 8 par un microprocesseur de traitement du signal 29 tel que celui commercialisé par la société Texas Instrument sous la désignation TMS 320C25. Suivant cette structure le signal de parole est d'abord échantillonné par un convertisseur analogique numérique 30 avant d'être appliqué sur un bus de donnée 31 du microprocesseur 29. Un filtre analogique 32 couplé à un dispositif de contrôle automatique de gain 33 filtre le signal de parole avant son échantillonnage. Les programmes et les données mis en oeuvre pour l'exécution du procédé selon l'invention sont inscrits dans une mémoire morte 34 et dans une mémoire vive 35 reliées au microprocesseur 29. Un circuit d'interface 36 relie le microprocesseur 29 par l'intermédiaire d'une ligne de donnée 37 à des dispositifs de transmission extérieurs au vocodeur non représentés.The entire coding and decoding method according to the invention can be executed by means of a microprogrammed structure formed as shown by way of example in FIG. 8 by a signal processing microprocessor 29 such as that sold by the company Texas Instrument under the designation TMS 320C25. According to this structure, the speech signal is first sampled by an analog to digital converter 30 before being applied to a data bus 31 of the microprocessor 29. An analog filter 32 coupled to an automatic gain control device 33 filters the signal speech before sampling. The programs and the data implemented for the execution of the method according to the invention are recorded in a read-only memory 34 and in a random access memory 35 connected to the microprocessor 29. An interface circuit 36 connects the microprocessor 29 via from a data line 37 to transmission devices external to the vocoder, not shown.

Un dispositif de réception de la parole formé d'un haut parleur 38, d'un amplificateur de puissance 39, un filtre analogique 40, est relié au microprocesseur par l'intermédiaire d'un convertisseur numérique analogique 41.A speech reception device formed by a loudspeaker 38, a power amplifier 39, an analog filter 40, is connected to the microprocessor by means of a digital analog converter 41.

Claims (9)

Procédé de codage à bas débit de la parole, caractérisé en ce qu'il consiste après avoir découpé le signal de parole en trames de longueur constante, à calculer (4...10) les caractéristiques de N filtres de modélisation du conduit vocal ainsi que les caractéristiques de période fondamentale (pitch), de voisement et d'énergie du signal vocal par intervalles déterminés de N trames successives en calculant l'énergie du signal de parole en nombre P déterminé de fois par trame pour coder l'ensemble de ces caractéristiques.Low bit rate coding method for speech, characterized in that after having cut the speech signal into frames of constant length, to calculate (4 ... 10) the characteristics of N modeling filters for the voice path as well that the fundamental period (pitch), voicing and energy characteristics of the voice signal by determined intervals of N successive frames by calculating the energy of the speech signal in number P determined times by frame to code all of these characteristics. Procédé selon la revendication 1, caractérisé en ce que les caractéristiques des filtres de modélisation du conduit vocal sont formés de coefficients LSP.Method according to claim 1, characterized in that the characteristics of the voice path modeling filters are formed by LSP coefficients. Procédé selon l'une quelconque des revendications 1 et 2, caractérisé en ce que le nombre N est égal à trois.Method according to either of Claims 1 and 2, characterized in that the number N is equal to three. Procédé selon la revendication 3, caractérisé en ce que le codage des coefficients LSP a lieu scalairement sur une première trame et par interpolation sur les deux autres.Method according to claim 3, characterized in that the coding of the LSP coefficients takes place scalarly on a first frame and by interpolation on the other two. Procédé selon la revendication 4, caractérisé en ce que le codage scalaire des coefficients de la troisième trame a lieu par application de l'algorithme "Backward Sequential Adaptative".Method according to claim 4, characterized in that the scalar coding of the coefficients of the third frame takes place by application of the "Backward Sequential Adaptive" algorithm. Procédé selon l'une quelconque des revendications 4 et 5, caractérisé en ce que le codage par interpolation sur les deux autres trames a lieu par recherche parmi trois interpolations possibles celle qui présente l'erreur de quantification minimum.Method according to either of Claims 4 and 5, characterized in that the coding by interpolation on the two other frames takes place by searching among three possible interpolations for the one which exhibits the minimum quantization error. Procédé selon l'une quelconque des revendications 1 à 6, caractérisé en ce que le codage de la période fondamentale (pitch) et du voisement ont lieu sur trois trames consécutives et a lieu par adressage direct d'une table de codage par la valeur du (pitch) lorsqu'il existe au moins un son non voisé dans une trame et par codage d'une valeur de pitch obtenue par transformation vectorielle des valeurs de "pitch" existant sur les trois trames lorsque le son est voisé sur les trois trames, dans cette transformation le vecteur composé des trois valeurs des pitchs des trois trames est projeté sur les trois premiers vecteurs propres d'une matrice d'intercorrélation et les trois valeurs des trois projections sont codés.Method according to any one of Claims 1 to 6, characterized in that the coding of the fundamental period (pitch) and of the voicing takes place over three consecutive frames and takes place by direct addressing of a coding table by the value of the (pitch) when there is at least one unvoiced sound in a frame and by coding a pitch value obtained by vector transformation of the existing "pitch" values on the three fields when the sound is seen on the three fields, in this transformation the vector composed of the three values of the pitches of the three fields is projected on the first three eigenvectors of an intercorrelation matrix and the three values of the three projections are coded. Procédé selon l'une quelconque des revendications 1 à 7, caractérisé en ce que le codage de l'énergie est effectué sur 4 sous trames dans chaque trame.Method according to any one of Claims 1 to 7, characterized in that the energy coding is carried out on 4 sub-frames in each frame. Dispositif pour la mise en oeuvre du procédé selon l'une quelconque des revendications 1 à 8, caractérisé en ce qu'il comprend une structure microprogrammée composé d'une mémoire morte 34 et d'une mémoire vive 35 reliées a un microprocesseur de traitement du signal 29, le microprocesseur 29 étant relié d'une part, à un convertisseur analogique numérique 31 pour convertir le signal de parole en échantillons numériques et d'autre part à un convertisseur numérique analogique pour convertir les échantillons de parole formés par le microprocesseur en signaux analogiques pour exciter un dispositif 38 de restitution du son ainsi qu'à ligne de donnée extérieure 37 pour un circuit d'interface 36.Device for implementing the method according to any one of claims 1 to 8, characterized in that it comprises a microprogrammed structure composed of a read-only memory 34 and a random access memory 35 connected to a microprocessor for processing the signal 29, the microprocessor 29 being connected on the one hand, to an analog digital converter 31 to convert the speech signal to digital samples and on the other hand to a digital analog converter to convert the speech samples formed by the microprocessor into signals analog to excite a device 38 for sound reproduction as well as an external data line 37 for an interface circuit 36.
EP19910401051 1990-04-27 1991-04-19 Method and apparatus for low bitrate speech coding Withdrawn EP0454552A3 (en)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
FR9005400 1990-04-27
FR9005400A FR2661541A1 (en) 1990-04-27 1990-04-27 METHOD AND DEVICE FOR CODING LOW SPEECH FLOW

Publications (2)

Publication Number Publication Date
EP0454552A2 true EP0454552A2 (en) 1991-10-30
EP0454552A3 EP0454552A3 (en) 1992-01-02

Family

ID=9396170

Family Applications (1)

Application Number Title Priority Date Filing Date
EP19910401051 Withdrawn EP0454552A3 (en) 1990-04-27 1991-04-19 Method and apparatus for low bitrate speech coding

Country Status (5)

Country Link
EP (1) EP0454552A3 (en)
JP (1) JPH05507796A (en)
CA (1) CA2079884A1 (en)
FR (1) FR2661541A1 (en)
WO (1) WO1991017541A1 (en)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP0543700A2 (en) * 1991-11-22 1993-05-26 Thomson-Csf Method for quantification of speed signal energy in a low bit rate vocoder
EP0573398A2 (en) * 1992-06-01 1993-12-08 Hughes Aircraft Company C.E.L.P. Vocoder

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US4701955A (en) * 1982-10-21 1987-10-20 Nec Corporation Variable frame length vocoder
US4852179A (en) * 1987-10-05 1989-07-25 Motorola, Inc. Variable frame rate, fixed bit rate vocoding method
EP0428445A1 (en) * 1989-11-14 1991-05-22 Thomson-Csf Method and apparatus for coding of predictive filters in very low bitrate vocoders

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US4701955A (en) * 1982-10-21 1987-10-20 Nec Corporation Variable frame length vocoder
US4852179A (en) * 1987-10-05 1989-07-25 Motorola, Inc. Variable frame rate, fixed bit rate vocoding method
EP0428445A1 (en) * 1989-11-14 1991-05-22 Thomson-Csf Method and apparatus for coding of predictive filters in very low bitrate vocoders

Non-Patent Citations (3)

* Cited by examiner, † Cited by third party
Title
1977 IEEE INTERNATIONAL CONFERENCE ON ACOUSTICS, SPEECH & SIGNAL PROCESSING, Hartford, Connecticut, 9-11 mai 1977, pages 219-222, IEEE, New York, US; R. VISWANATHAN et al.: "The application of a functional perceptual model of speech to variable-rate LPC systems" *
1978 IEEE INTERNATIONAL CONFERENCE ON ACOUSTICS, SPEECH & SIGNAL PROCESSING, Tulsa, Oklahoma, 10-12 avril 1978, pages 458-461, IEEE, New York, US; E. McLARNON: "A method for reducing the transmission rate of a channel vocoder by using frame interpolation" *
ICASSP '83 - IEEE INTERNATIONAL CONFERENCE ON ACOUSTICS, SPEECH AND SIGNAL PROCESSING, Boston, 14-16 avril 1983, vol. 1, pages 69-72, IEEE, New York, US; R.M. SCHWARTZ et al.: "A comparison of methods for 300-400 B/S vocoders" *

Cited By (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP0543700A2 (en) * 1991-11-22 1993-05-26 Thomson-Csf Method for quantification of speed signal energy in a low bit rate vocoder
FR2684225A1 (en) * 1991-11-22 1993-05-28 Thomson Csf METHOD FOR QUANTIFYING SPEECH SIGNAL ENERGY IN A VOCODER AT VERY LOW SPEED.
EP0543700A3 (en) * 1991-11-22 1993-09-29 Thomson-Csf Method for quantification of speed signal energy in a low bit rate vocoder
EP0573398A2 (en) * 1992-06-01 1993-12-08 Hughes Aircraft Company C.E.L.P. Vocoder
EP0573398A3 (en) * 1992-06-01 1994-02-16 Hughes Aircraft Co
US5495555A (en) * 1992-06-01 1996-02-27 Hughes Aircraft Company High quality low bit rate celp-based speech codec

Also Published As

Publication number Publication date
WO1991017541A1 (en) 1991-11-14
CA2079884A1 (en) 1991-10-28
EP0454552A3 (en) 1992-01-02
JPH05507796A (en) 1993-11-04
FR2661541A1 (en) 1991-10-31

Similar Documents

Publication Publication Date Title
JP3241959B2 (en) Audio signal encoding method
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
RU2257556C2 (en) Method for quantizing amplification coefficients for linear prognosis speech encoder with code excitation
US5067158A (en) Linear predictive residual representation via non-iterative spectral reconstruction
EP1320087B1 (en) Synthesis of an excitation signal for use in a comfort noise generator
EP0698877B1 (en) Postfilter and method of postfiltering
EP0700032B1 (en) Methods and apparatus with bit allocation for quantizing and de-quantizing of transformed voice signals
EP0865028A1 (en) Waveform interpolation speech coding using splines functions
JP2004504637A (en) Voice communication system and method for handling lost frames
US5991725A (en) System and method for enhanced speech quality in voice storage and retrieval systems
EP0865029B1 (en) Efficient decomposition in noise and periodic signal waveforms in waveform interpolation
US5884251A (en) Voice coding and decoding method and device therefor
EP0428445B1 (en) Method and apparatus for coding of predictive filters in very low bitrate vocoders
EP2080194B1 (en) Attenuation of overvoicing, in particular for generating an excitation at a decoder, in the absence of information
FR2784218A1 (en) LOW-SPEED SPEECH CODING METHOD
SE470577B (en) Method and apparatus for encoding and / or decoding background noise
JPH08254994A (en) Reconfiguration of arrangement of sound coded parameter by list (inventory) of sorting and outline
FR2653557A1 (en) APPARATUS AND METHOD FOR SPEECH PROCESSING.
US6535847B1 (en) Audio signal processing
US5812966A (en) Pitch searching time reducing method for code excited linear prediction vocoder using line spectral pair
EP0454552A2 (en) Method and apparatus for low bitrate speech coding
JPH09508479A (en) Burst excitation linear prediction
US7603271B2 (en) Speech coding apparatus with perceptual weighting and method therefor
JP3163206B2 (en) Acoustic signal coding device
EP1192619B1 (en) Audio coding and decoding by interpolation

Legal Events

Date Code Title Description
PUAI Public reference made under article 153(3) epc to a published international application that has entered the european phase

Free format text: ORIGINAL CODE: 0009012

AK Designated contracting states

Kind code of ref document: A2

Designated state(s): DE ES GB IT

PUAL Search report despatched

Free format text: ORIGINAL CODE: 0009013

AK Designated contracting states

Kind code of ref document: A3

Designated state(s): DE ES GB IT

17P Request for examination filed

Effective date: 19920624

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

Owner name: THOMSON-CSF

17Q First examination report despatched

Effective date: 19940803

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

Free format text: STATUS: THE APPLICATION IS DEEMED TO BE WITHDRAWN

18D Application deemed to be withdrawn

Effective date: 19941214