Brevet FR2665567A1 — publié le 19920207

PROCEDE DE CODAGE ET CODEUR DE PAROLE A ANALYSE PAR PREDICTION LINEAIRE La présente invention concerne les procédés de co- dage et les codeurs de parole à analyse par synthèse, à prédiction linéaire, qui utilisent un modèle de production de la parole par passage d'un signal d'excitation, repré- sentant la source vocale, à travers un filtre prédicteur à long terme de fonction de transfert I/B(z) o B(z) = 1-bz-T, o T est la période du fondamental de la parole et à travers un filtre prédicteur à court terme de fonction de transfert 1/A(z) représentant la contribution du conduit vocal et dont les caractéristiques spectrales varient lentement. On connaît déjà de nombreux procédés et codeurs de ce type. Un procédé qui s'est montré particulièrement satis- faisant consiste à générer le signal d'excitation à partir d'une séquence d'impulsions multiples (procédé dit MPLPC) ou d'un code choisi dans un dictionnaire (procédé dit CELP) et à utiliser un prédicteur à long terme qui prend en comp- te l'autocorrélation à long terme du signal de parole et qui est particulièrement efficace sur les sons voisés, car le signal est alors presque périodique On peut ainsi obte- nir un signal synthétique dont la forme d'onde se rapproche de celle de la parole à coder. On trouvera une description de procédés de codage à prédiction linéaire CELP dans de nombreux documents aux- quels on pourra se reporter, notamment dans -"An efficient stochastically excited linear predictive coding algorithm for high quality low bit rates transmission of speech", W.B KLEIJN et autres, Proceedings ICASSP, avril 1988, speech communication 7 ( 1988) 305-316, North Holland et dans "Synthesis filter optimisation and coding applications to CELP", P KABAL et autres, CH 2561 9880000-0147, 1988, IEEE On connait également (EP-A-0 347 307) un procédé de codage de parole, à prédiction linéaire et excitation par séquence extraite d'un dictionnaire et constituée par un vecteur d'excitation choisi dans le dictionnaire, permet- tant de coder des signaux de parole mis sous forme d'échan- tillons numérisés répartis en trames, procédé suivant le- quel on représente chaque trame de signal de parole d'une part par des paramètres de prédiction, d'autre part par des séquences d'excitation contenues dans un dictionnaire et par des gains d'amplification de ces séquences, les séquences retenues étant déterminées par recherche du minimum de l'énergie d'un signal d'erreur obtenu par comparaison entre la trame de signal de parole d'origine et la trame synthétique reconstituée par synthèse à partir des paramètres. Les procédés de codage ci-dessus permettent une bonne reproduction de la parole avec un débit relativement faible, de l'ordre de 8 kbits par seconde Les paramètres sont généralement transmis à intervalles correspondant chacun à une fenêtre pendant laquelle on conserve les mêmes caractéristiques de prédiction à court terme et à plusieurs trames La durée des trames doit être suffisamment courte pour que les caractéristiques spectrales du signal de paro- le évoluent peu pendant leur durée Le nombre d'échantil- lons par trame constitue un compromis Il est souhaitable que la durée d'une trame soit inférieure à la période mini- mum du fondamental de la parole (désignée par pitch lag dans les articles en anglais) Mais une trame longue a l'avantage de se traduire par de moindres variations de l'énergie moyenne du signal d'une trame à l'autre Dans la pratique, on choisit généralement une trame d'une quaran- taine d'échantillons. Si les procédés ci-dessus permettent de réduire très considérablement le débit requis pour une reproduction satisfaisante de la parole, ils exigent en contrepartie un volume de calcul en temps réel qui, dans les premières mi- ses en oeuvre du procédé, était inacceptable Le procédé décrit dans le document EP-A-0 347 307 permet de réduire notablement ce volume de calcul La présente invention vise notamment à le réduire encore de façon significative, per- mettant ainsi une simplification des moyens mis en oeuvre, sans dégrader la restitution de la parole. Dans ce but, l'invention propose notamment un pro- cédé du type ci-dessus défini, caractérisé en ce qu'un si- gnal d'erreur est obtenu en soustrayant, de la trame du signal de parole d'origine, deux termes, en ce que ladite trame de signal de parole est, avant soustraction, soumise à un filtrage d'analyse à court terme r prédéterminé et à un filtrage de synthèse pondéré perceptuel H, le premier terme étant représentatif de la sortie du prédicteur à long terme avec un décalage temporel T égal à la période du fon- damental, soumis au filtrage de synthèse avec un coeffi- cient de proportionnalité tandis que le second terme est représentatif de chacune des séquences d'excitation à son tour, chaque séquence étant préalablement soumise à une20 amplification G d'un même filtrage de synthèse pondéré que la trame du signal de parole, et en ce que, au cours d'une même séquence et pour chaque trame, on détermine un optimum du décalage T par recherche d'un minimum d'erreur percep- tuelle (par exemple d'erreur perceptuelle quadratique) et25 on en déduit le coefficient k, puis on calcule simultané- ment les valeurs optimales de b et de G pour les valeurs retenues de T et de k. L'invention sera mieux comprise à la lecture de la description qui suit d'un mode particulier de réalisation donné à titre d'exemple non limitatif, correspondant au cas d'un codage à excitation vectorielle, et de la comparaison qui en est faite avec des procédés antérieurs. La description se réfère aux dessins qui l'accom- pagnent dans lesquels: la figure 1 est un schéma de principe montrant les opérations qui fournissent la parole synthétique à par- tir des paramètres qui la représentent, dans les procédés de codage à analyse par prédiction linéaire; la figure 2 est un schéma synoptique de principe montrant une constitution possible d'un codeur suivant l'invention. En transmission et synthèse de parole, la parole synthétique est obtenue par la séquence d'opérations sché- matisées en figure 1 Un signal d'excitation, cn pour la trame d'ordre N (signal constitué par un vecteur d'excita- tion dans le cas du procédé CELP), est soumis à un filtrage prédicteur à long terme 10 et un filtrage prédicteur à court terme 12, ayant respectivement des fonctions de transfert 1/B(z) et 1/A(z), en utilisant la notation clas- sique en z La sortie Sn représente une synthèse d'estima- tion du signal de parole, c'est-à-dire une parole synthéti- que. Le filtre A(z) est généralement un filtre "tous zéros" de la forme: A(z) = Eaiz-i, i = 0,,M avec ao = 1 ( 1) et le filtre B(z) est généralement à un seul coefficient, donc a une fonction de transfert de la forme: B(z) = 1 bz T. Pour permettre de reconstituer, dans un décodeur, la parole synthétique il est nécessaire de transmettre: les paramètres du signal d'excitation cn, c'est- à-dire l'identification du vecteur d'excitation et un coef- ficient d'amplification G; les paramètres caractéristiques du prédicteur à long terme, qui prend en compte la corrélation à long terme du signal de parole, donc tient compte de la "mélodie" (ou "pitch" suivant la terminologie anglo-saxonne), constitués par le décalage temporel T et par le coefficient unique b; les coefficients ai de la fonction de transfert du filtre à court terme, qui assurent la synthèse des for- mants, liés aux résonances du conduit vocal. Dans certaines réalisations, les coefficients du filtre à court terme sont mis à jour à une cadence plus faible que celle du vecteur d'excitation et du filtre à long terme c'est-à-dire à intervalles de plusieurs trames, correspondant à des "fenêtres": l'invention est applicable aussi bien à ce cas qu'à celui o le rafraîchissement est effectué pour tous les paramètres à la cadence de répéti- tion des trames. Les paramètres ci-dessus définis sont déterminés dans le codeur pour chaque trame Le signal d'excitation est déterminé de façon à minimiser l'écart entre le signal de parole original sn et le signal synthétique sn, recons- titué dans le codeur lui-même à partir des paramètres, c'est-à-dire qu'on met en oeuvre une analyse par synthèse. Pour cela, on calcule, pour chaque signal d'excitation dis- poniblej l'énergie du signal d'erreur En règle générale, l'erreur prise en compte n'est pas obtenue par comparaison directe entre le signal original sn et le signal synthéti- que snr mais une erreur dite perceptuelle, tenant compte de ce que l'incidence du bruit est plus faible dans les zones du spectre de fréquence o le niveau du signal est élevé. On adopte en général un signal d' erreur (généralement un signal d'erreur quadratique) fourni par un filtre dit de pondération perceptuelle (frequency weighted en terminolo- gie anglo-saxonne) de la forme: W(z) = A(z) / A(z/y) ( 3) o y est un coefficient fixegénéralement d'environ 0,8. Dans la pratique, la pondération peut être effec- tuée non pas sur le signal d'erreur, mais sur le signal de parole et le signal synthétique avant de former la diffé- rence entre ces signaux Le signal d'origine est alors fil- tré par A(z), puis 1/A(z/y) avant d'être comparé au signal d'excitation lui-même filtré par 1/B(z) puis l/A(z/y). Les valeurs optimales bo et To du prédicteur à long terme peuvent être calculées avec le même critère d'erreur que les paramètres de l'excitation (constitués par exemple par l'indice k d'un vecteur d'excitation dans un diction- naire et un coefficient d'amplification G) Cette méthode de prédiction à long terme est dite "en boucle fermée", car les paramètres sont calculés dans la boucle d'analyse du codeur Ce processus d'analyse a l'inconvénient, même lorsqu'on met en oeuvre des procédés simplifiés tels que celui décrit dans l'article de KLEIJN mentionnée ci-dessus, d'une grande complexité. Comme on l'a indiqué plus haut, le procédé selon l'invention vise à obtenir une restitution satisfaisante de la parole avec une charge de calcul réduite Le premier ré- sultat est obtenu par un calcul qu'on peut qualifier de simultané de tous les paramètres du fait qu'on ne fait pas d'hypothèse a priori sur le signal d'excitation pour calcu- ler les paramètres de filtrage à long terme Le second ré- sultat est atteint en effectuant successivement le calcul de la valeur optimale To du retard T, par une méthode de calcul rapide, mais en boucle fermée pour avoir une bonne restitution, le calcul simultané du coefficient unique b du prédicteur à long terme (qui constitue un gain) et des pa- ramètres de l'excitation, par un calcul d'optimisation uti- lisant des hypothèses simplificatrices que l'expérience a montré justifiées. Il ne sera plus question du prédicteur à court ter- me, de fonction de transfert A(z) dont les coefficients peuvent être calculés par l'un quelconque des procédés ha- bituels. Avant de décrire l'invention proprement dite, il est nécessaire de rappeler des modes connus de calcul des valeurs optimales bo et To des paramètres b et T en mini- misant l'erreur E de prédiction du prédicteur à long terme sur le signal résiduel r provenant du prédicteur à court terme, qui constitue un codeur à prédiction linéaire, sou- vent désigné par l'abréviation LPC. Un procédé en boucle ouverte utilise le fait que l'erreur de prédiction E 1 du prédicteur à long terme (PLT) peut s'écrire, pour la trame d'ordre N: E 1 = Z (rn b rn-T)2, ( 4) o l'indice n-T désigne rn retardé de T. Une première approche, dite "en boucle ouverte" utilise le fait que le minimum est atteint lorsque la déri- vée partielle de E 1 par rapport à b est nulle En consé- quence, la recherche du minimum de E 1 revient à trouver le retard To (retard de recopie du signal passé) pour laquelle on obtient un maximum de Q(T) défini par: Q (T) = (rt r T)2 / Ijr T|i| ( 5) Le procédé en boucle ouverte est rapide mais dégra- de la qualité, surtout dans le cas o les trames sont cour- tes c'est-à-dire o les paramètres sont renouvelés souvent. Comme on l'a indiqué plus haut, il est préférable de calculer les paramètres du prédicteur à long terme en boucle fermée et pour cela de rechercher les valeurs bo et To qui minimisent l'énergie E du signal d'erreur percep- tuelle; jusqu'ici ce calcul était fait en supposant que le signal d'excitation est nul (ou a une énergie donnée) Cela revient à déterminer séquentiellement les paramètres du prédicteur à long terme et les paramètres d'excitation. Mais la procédure est très complexe. Elle sera rapidement exposée afin de donner les notations qui sont utilisées plus loin pour décrire l'invention. En supposant le signal d'excitation nul, c'est-à- dire dans le cas d'une détermination séquentielle, le signal en sortie du prédicteur à long terme s'écrit: en = b en-T ( 6) ou e = b e T ( 7) en notation vectorielle. Le signal d'erreur perceptuelle est alors obtenu en comparant le signal original filtré par A(z) (ce qui donne le signal résiduel r) puis par 1/A(z/y), au signal e T en sortie du PLT filtré par 1/A(z/y) En supposant que le si- gnal résiduel r prend en compte la mémoire des deux filtra- ges par l/A(z/y), ces filtrages peuvent s'exprimer simple- ment par un produit matriciel de la matrice H de la réponse impulsionnelle de l/A(z/y). L'énergie du signal d'erreur est donc: E = (H r b H e T)2 ( 8) Les paramètres optimaux sont alors déterminés en deux étapes: 1 ) On recherche TO qui maximalise: Q(T) =(rt Ht H e T)2 / t IH e T|l 2 ( 9) 2 ) On calcule le gain correspondant: b O = (rt Ht H e TO) / |IH e T 0112 ( 10) Cette procédure est très complexe. Toutes les séquences e T possibles doivent être filtrées par 1/A(z/y) pour calculer H e T qui intervient dans l'équation ( 8) et déterminer Q(T) pour chacune des valeurs possibles de T (une centaine en général) dans un intervalle prédéterminé dont les limites inférieure et supérieure sont généralement entre 25 et 40 et entre 100 et , respectivement, pour un signal de parole échantillonné à 8 k Hz. Le calcul du numérateur de Q(T) dans la formule ( 9) ne présente pas de difficulté et peut être effectué de façon bien connue: en effet ce numérateur N(T) s'écrit: N(T) = (rt Ht He T)2 = (lHt H r 1 t e T)2 ( 11) Le facteur y = Ht H r peut être calculé une seule fois par trame, par multiplication matricielle de la matri- ce Ht H et du vecteur r (signal résiduel du filtrage par A(z)) Le calcul du numérateur N(T) n'exige alors plus qu'un produit scalaire yt e T pour chacune des valeurs possible de T. Mais il subsiste le problème du calcul du dénomina- teur de Q(T) de la formule ( 9) On a déjà proposé de consi- dérer que ce dénominateur est constant, ce qui revient à supposer que l'énergie du signal est constante; cette hy- pothèse est inacceptable pour des trames courtes car elle conduit à une dégradation significative de la prédiction à long terme. On pourrait penser qu'un compromis satisfaisant consiste à déterminer la valeur optimale To du retard T en "boucle ouverte" et à déterminer ensuite la valeur optimale bo de b en "boucle fermée" conformément à l'équation ( 10 , en partant de l'hypothèse que le prédicteur à long terme est essentiellement efficace pour les sons voisés et sur ces zones de dignal le retard du PLT est fortement lié à la période du fondamental, si bien que la méthode "boucle ouverte" conduira le plus souvent au même T O que la méthode "boucle fermée" En fait, cette procédure "mixte" donne des résultats intermédiaires entre les performances obtenues en boucle ouverte et en boucle fermée. L'invention prend en considération cette constata- tion et écarte le calcul du To en boucle ouverte au profit d'un calcul en boucle fermée Elle propose donc: ( 1) d'utiliser, pour le calcul de TO, une fonction d'autocorrélation semblable à Q(T) de l'équation ( 9), nor- malisée pour tenir compte des variations de l'énergie de e T avec T, et, ( 2) pour simplifier les calculs, de faire l'hypothèse que f H e Tl 2 dans l'équation ( 9) varie sensiblement de la même façon que R e T 2 c'est-à-dire que les variations des caractéristiques spectrales de la voix (répartition de l'énergie dans le spectre) sont négligeales d'une séquence e T à la suivante. Maximiser Q(T) pour déterminer To revient alors à maximiser Q'(T): Q'(T) = N(T) / lle T 112 ( 9 bis) Une fois To déterminé, b O peut être calculé par la formule ( 10). Ce mode de calcul élimine la nécessité de faire le calcul de filtrage de toutes les séquences e T par 1/A (z/y) et donne des performances pratiquement équivalentes à celle de la méthode rigoureuse. Pour simplifier le calcul, on peut utiliser la mé- thode d'autocorrélation, déjà envisagée dans l'article de Kleijn mentionné plus haut Dans ce cas la matrice R = Ht H est une matrice de Toeplitz symétrique dont la iième diago- nale contient le coefficient d'autocorrélation Ri_, de la réponse impulsionnelle h (de la matrice H) de 1/A(z/y). Alors y = R r peut être calculé efficacement sous forme du résultat d'une opération de filtrage particulière, tout comme pour la détermination de la séquence d'innovation dans la technique RPCELP décrite dans le docuent EP-A-0 347 307 déjà mentionné En utilisant une pondération percep- tuelle appropriée, R peut même devenir indépendant du temps il sans perte de qualité subjective. Le procédé suivant l'invention permet d'obtenir une qualité de parole synthétique meilleure que celle résultant: du calcul des paramètre T 0, b O du prédicteur à long terme, puis de la sélection de la séquence d'innovation et du gain G, c'est-à-dire des paramètres de l'excitation, en optimisant conjointement tous les paramètres, TO étant seul calculé préalablement, et ce sans la charge excessive de calcul à laquelle on pourrait s'attendre Le terme "conjointement" doit être compris comme indiquant qu'on ne fait pas d'hypothèse a priori sur la valeur de b.e T pour calculer G et K. On supposera dans ce qui suit que la séquence d'innovation à multiplier par le gain G est un vecteur Ck choisi dans un dictionnaire et identifié par l'indice k. Mais le procédé est également applicable à une excitation multiimpulsionnelle car dans ce cas chaque impulsion peut être calculée à partir d'un dictionnaire dont toutes les séquences sont constituées de mono-impulsions dans toutes les positions possibles. L'énergie E du signal d'erreur perceptuelle à minimiser est, puisque l'on tient compte de l'excitation, donnée par la formule ( 12) qui se substitue à ( 8): E = (H r b H e T G H Ck)2 ( 12) En annulant les dérivées partielles de E par rapport à b et à G on obtient alors deux équations: b = (R 1-E 2-R 2-R 3) / (E 1 E 2-R 32) ( 13) et G = (R 2-E 1-R 1-R 3) / (E 1 E 2-R 32) ( 14) avec R 1 = rt R e T, R 2 = rt R Ck, R 3 = e Tt R ck -et Re ( 15) E 1 = e T t R e T, E 2 = Ck R ck La valeur optimale To du retard T et l'indice k de la séquence optimale sont alors déterminées en cherchant à maximiser C (T,k): C(T,k) = (R 22 E 1 + R 12 2 R 1 R 2 R 3) / (E 1 E 2-R 32) ( 16) Pour réduire la complexité du calcul sans dégrader les résultats, on détermine d'abord TO, puis on cherche l'indice k qui maximise C(T 0,k) ce qui revient à faire le calcul de ( 15) pour toutes les indices k possibles, et, simultanément, on calcule les valeurs à retenir pour b et G. Le retard T O est avantageusement r Alculé en boucle fermée, par l'algorithme rapide de la formule ( 9 bis). Les algorithmes ci-dessus peuvent encore être sim- plifiés dans de nombreux cas Par exemple on peut éviter la division dans le calcul de Q'(T) en utilisant des produits croisés pour comparer les valeurs successives De plus, chaque terme d'énergie l(e T 2 peut être calculé efficacement à partir de la valeur précédente (Ie T_ 112 en utilisant le fait que deux séquences successives e T et e T_ 1 ne diffèrent que par deux échantillons (le premier et le dernier) Le calcul a alors une complexité très faible. Une fois To déterminé, Rl et El sont connus Le calcul de R 2 ne nécessite pas de filtrage supplémentaire car rt R a déjà été calculé pour déterminer To et bo: il suffit de le mémoriser à l'issue de son calcul. Le calcul de R 3 = e Tt R Ck nécessite uniquement un seul filtrage, puisque la valeur TO de T est connue E 2 n'est calculé qu'une seule fois par trame, ou plus précisé- ment chaque fois que H et la matrice R changent. Si par ailleurs on utilise des séquences d'excita- tion ck binaires régulières (procédé RPCELP), telles que celles décrites dans le document EP-A-0 347 307, le calcul de tous les produits scalaires de Ck des formules ( 15) est très simple De plus E 2 devient constant et il n'est plus nécessaire de le calculer. Il est souvent justifié de faire une hypothèse sup- plémentaire conduisant à simplifier encore le calcul: si on néglige la corrélation entre les paramètres T et b du prédicteur à long terme et l'excitation, c'est-à-dire si on admet que To et bo sont indépendants de G et k, R 3 est nul. La formule ( 16) se simplifie et devient: 2 2 C(T,k) = R /E 2 + R /E 1 ( 16 bis) 2 1 Il n'y a plus à proprement parler d'optimisation conjointe de T et de k; mais l'utilisation du mode de calcul représenté par la formule ( 9 bis) conduit à un allè- gement de la charge de calcul. La figure 2 montre la constitution de principe d'un codeur permettant de mettre en oeuvre le procédé qui vient d'être décrit Le signal de parole échantillonné sn est appliqué à l'entrée du module d'analyse 10 qui calcule, pour chaque trame, les coefficients ai de la fonction de filtrage A(z) de prédiction à court terme et les envoie au codeur 12 Le module 10 pouvant avoir une constitution classique, il n'est pas nécessaire de le décrire Le module est également prévu pour fournir le résidu r de la prédiction à court terme, constitué par sn filtré par A(z) quantifié Ce résidu est soumis à un filtrage par R = Ht H en ( 14) ce qui fournit en sortie le signal y = R r. Le calcul des coefficients du filtrage à long terme est assuré par un bloc 16 qui reçoit y et l'erreur de pré- diction à long terme, mémorisée à partir de la trame précé- dente et donc retardée de T, fournie par une mémoire 18 constituant un dictionnaire évolutif. Les paramètres y et e T sont appliqués à un multi- plieur 20 qui fournit une sortie, portée au carré en 22 pour former N(T) donnée par la formule ( 11) Un second cir- cuit 24, identique à 22, forme (le T 112 Un diviseur 26 permet alors d'obtenir la grandeur Q' à maximiser. Le bloc 28 est constitué par un processeur permet- tant de calculer le retard To pour lequel Q' est maximum, par comparaison entre les valeurs de Q' pour les différen- tes valeurs possibles de T Le calcul peut s'effectuer soit par une logique câblée, soit par programmation L'optimum T O obtenu, sans hypothèse en ce qui concerne la séquence d'excitation, est transmis à un processeur 30 de sélection de Ck parmi les séquences C fournies par un dictionnaire 32 et de calcul de b et G. Le processeur 30 fournit les valeurs de k, b et G retenues, d'une part au codeur 12, pour transmission d'un jeu de paramètres ai, T 0,b, k, et G pour chaque trame, d'autre part au générateur 34 de e T, qui ralcule les sé- quences e T, les fournit en sortie et les transmet à la mé- moire 18 Les ai peuvent cependant n'être renouvelés qu'à intervalles correspondant à des fenêtres de durée supérieu- re à la durée d'une trame et la transmission s'effectue alors à la cadence des fenêtres. Pour des raisons de simplicité, le filtre de pondération perceptuelle n'a pas été représenté en détail sur la figure 2. REVENDICATIONS 1 Procédé de codage à analyse par synthèse, à pré- diction linéaire, utilisant un modèle de production de la parole par passage d'un signal d'excitation Ck, représen- tant la source vocale et soumis à amplification G, à tra- vers un filtre prédicteur à long terme de fonction de transfert l/B(z) o B(z) = 1 bz- T, o T est la période du fondamental de la paroleet à travers un filtre prédicteur à court terme de fonction de transfert 1/A(z) = Zaizi re- présentant la contribution du conduit vocal et dont les ca- ractéristiques spectrales varient lentement, suivant lequel on représente chaque trame par des valeurs des paramètres Ck, G ai, T et b, caractérisé en ce qu'on génère un signal d'erreur en soustrayant, de la trame du signal de parole d'origine, deux termes, en ce que ladite trame de signal de parole est, avant soustraction, soumise au filtrage d'ana- lyse à court terme et à un filtrage de synthèse pondéré perceptuel H, le premier terme étant représentatif de la sortie du prédicteur à long terme avec le décalage temporel T, soumis au filtrage de synthèse, tandis que le second terme est représentatif de chacun des signaux d'excitation à son tour, chaque signal étant préalablement soumis à une amplification G et au même filtrage de synthèse pondéré que la trame du signal de parole, et en ce que, au cours d'une même séquence et pour chaque trame, on détermine un optimum du décalage T par recherche d'un minimum d'erreur per- ceptuelle et on en déduit le coefficient k, puis on calcule simultanément les valeurs optimales de b et de G pour les valeurs retenues de T et de k. 2 Procédé selon la revendication 1, caractérisé en ce que l'erreur minimisée est l'erreur perceptuelle quadra- tique. 3 Procédé selon la revendication 1 ou 2, caracté- risé en ce que la valeur optimale To du décalage T est cal- culée en boucle fermée par recherche de la valeur pour la- quelle: (rt Ht H e T)2 / I e Tj 2 est maximum, l'exposant t désignant l'opération de transpo- sition, H étant la matrice de la réponse impulsionnelle de 1/A(z/y) o y est un coefficient fixe, et e T la sortie de la prédiction à long terme. 4 Procédé selon la revendication 3, caractérisé en ce que le coefficient b O optimum de filtrage à long terme est calculé à partir de To par la formule b O = (rt Ht H e TO) / DIH e T O QL 2 Procédé selon la revendication 3 ou 4, caracté- risé en ce que le signal d'excitation optimal est sélec- tionné par minimisation de C(T 0,k): C(T,k) = (R 22 E 1 + R 12 2 R 1 R 2 R 3) / (E 1 E 2-R 32) o: R 1 = rt R e T, R 2 = rt R ck, R 3 = e Tt R ck E 1 = e Tt R e T, E 2 = Ck R ck, R = Ht H 6 Procédé selon la revendication 5, caractérisé en ce qu'on calcule Ht H r par filtrage en assimilant Ht H à une matrice de Toeplitz symétrique. 7 Procédé selon la revendication 6, caractérisé en qu'on détermine le gain par la formule: G = (R 2 E 1-R-1 R 3) / (E 1 E 2-R 32 8 Procédé selon la revendication 5, caractérisé en ce qu'on néglige la corrélation enre To et b 0, G et k pour annuler le terme R 3 et sélectionner k par minimisation de 2 2 C(T Ok) = R 2/E 2 + R 1/E 1 9 Codeur permettant de mettre en oeuvre le procédé selon la revendication 1, caractérisé en ce qu'il comprend un module d'analyse ( 10) destiné à recevoir le signal de parole échantillonné et à calculer, pour chaque trame, les coefficients ai de la fonction de filtrage A(z) de prédic- tion à court terme et le résidu r de la prédiction à court terme, un filtre recevant le résidu r et fournissant en sortie un signal y = R r, et un bloc ( 16) de calcul des coefficients du filtrage à long terme qui reçoit y et l'erreur de prédiction à long terme, mémorisée à partir de la trame précédente, fournie par une mémoire ( 18) consti- tuant un dictionnaire évolutif, un ensemble multiplieur ( 20) un circuit de mise au carré ( 22) destiné à fournir le numérateur d'un terme à maximiser, un second ensemble formant Ie T 1 l 2, et un diviseur ( 26) permettant d'obtenir le terme à maximiser, appliqué à un processeur ( 28) de calcul du retard To optimum par comparaison entre les valeurs du terme pour les différentes valeurs possibles de T.