Brevet FR2898443A1 — publié le 20070914

Procédé de codage d'un signal audio source, dispositif de codage, procédé et dispositif de décodage, signal, produits programme d'ordinateur correspondants. 1. Domaine de l'invention Le domaine de l'invention est celui du codage et du décodage de signaux audionumériques, tels que des signaux de musique ou de parole numérisée. Plus particulièrement, l'invention concerne la quantification des coefficients spectraux de signaux audio, en mettant en oeuvre un codage perceptif. L'invention s'applique notamment, mais non exclusivement, aux systèmes mettant en oeuvre un codage hiérarchique de données audionumériques, du type du système de codage/décodage scalable (ou échelonnable ) de données proposé dans le cadre du standard MPEG Audio (ISO/IEC 14496-3). Plus généralement, l'invention trouve des applications dans le domaine de la quantification des sons et de la musique de façon efficace, pour leur stockage, leur compression ainsi que leur transmission à travers des canaux de transmission,par exemple hertzien ou câblé. 2. Solution de l'art antérieur 2.1 Codage perceptif avec transmission d'une courbe de masquage 2 .1.1 compression audio et quantification La compression audio est souvent basée sur les propriétés de l'oreille humaine. On parle de codage perceptuel, ou de codage selon un modèle psycho-acoustique de l'oreille humaine. L'oreille est notamment incapable de séparer deux composantes d'un signal émises à des fréquences proches, ainsi que dans un intervalle de temps réduit. Cette propriété est appelée masquage auditif. De plus, l'oreille présente un seuil d'audition, en ambiance calme, en dessous duquel aucun son émis ne sera perçu. Le niveau de ce seuil varie en fonction de la fréquence de l'onde sonore. Dans le cadre de la compression et/ou de la transmission de signaux audionumériques, on cherche à déterminer un nombre de bits de quantification à utiliser pour quantifier des coefficients spectraux composant le signal, sans introduire un bruit de quantification trop important, et ainsi nuire à la qualité du signal codé. L'objectif étant généralement de réduire le nombre de bits de quantification, de façon à obtenir une compression du signal efficace, il s'agit donc de trouver un compromis entre la qualité sonore et le niveau de compression du signal. Dans les techniques classiques de l'état de l'art, les principes de quantification utilisent alors la propriété de masquage pour déterminer la quantité de bruit de quantification maximum qu'il est acceptable d'injecter dans le signal sans que celui-ci ne soit perçu par l'oreille lors de la restitution du signal audio, c'est-à-dire sans introduire une distorsion trop importante. 2.1.2 Codage audio perceptif par transformée Pour une description exhaustive du codage audio par transformée, on peut notamment se référer au document Jayant, Johnson and Safranek, Signal Compression Based on Method of Human Perception , Proc. Of IEEE, Vol. 81, No. 10, PP. 1385-1422, October 1993. Cette technique exploite le modèle de masquage fréquentiel de l'oreille illustré par la figure 1, qui présente un exemple de représentation fréquentielle d'un signal audio et le seuil de masquage de l'oreille. L'axe des abscisses 10 représente les fréquences f, en Hz, l'axe des ordonnées 11 celui de l'intensité sonore I, en dB. L'oreille décompose le spectre d'un signal x(t) en bandes critiques 120, 121, 122, 123 dans le domaine fréquentiel selon l'échelle des Barks. La bande critique 120 d'indice n du signal x(t) et d'énergie En engendre alors un masque 13 à l'intérieur de la bande d'indice n et dans les bandes critiques voisines 122 et 123. Le seuil de masquage 13 associé est proportionnel à l'énergie En de la composante 120 masquante et décroissant pour les bandes critiques d'indices inférieurs et supérieurs à n . Les composantes 122 et 123 sont masquées dans l'exemple de la figure 1. De plus, la composante 121 est elle aussi masquée puisqu'elle se situe en dessous de seuil d'audition absolu 14. On obtient alors une courbe de masquage globale, par combinaison du seuil d'audition absolu 14 et des seuils de masquage associés à chacune des composantes du signal audio x(t) analysé en bandes critiques. Cette courbe de masquage représente la densité spectrale de bruit de quantification maximum qu'il est possible de superposer au signal, lors de son codage, sans que celui-ci soit perceptible par l'oreille humaine. On met alors en forme un profil de pas de quantification, appelé aussi, par abus de langage, profil de bruit injecté, lors de la quantification des coefficients spectraux issus de la transformée en fréquence du signal audio source. La figure 2 est un organigramme illustrant le principe d'un codeur perceptif classique. Un signal audio source x(t) temporel est transformé dans le domaine des fréquence par un bloc 20 de transformée temps-fréquence. Un spectre du signal source, composé de coefficients spectraux Xn est alors obtenu, qui est analysé par un modèle 21 psycho-acoustique, lequel a pour rôle de déterminer la courbe de masquage C globale du signal, en fonction du seuil d'audition absolu ainsi que des seuils de masquage de chaque composante spectrale du signal. La courbe de masquage obtenue permet de connaître la quantité de bruit de quantification qu'il est possible d'injecter et donc de déterminer le nombre de bits à utiliser pour quantifier les coefficients spectraux, ou échantillons. Cette étape de détermination du nombre de bits est réalisée par un bloc 22 d'allocation binaire, qui délivre un profil de pas de quantification An pour chaque coefficient Xn. L'allocation binaire cherche à atteindre le débit cible en réglant les pas de quantification sous la contrainte de mise en forme donnée par la courbe de masquage C. Les pas de quantification An sont codés, sous forme de facteurs d'échelle F notamment, par ce bloc 22 d'allocation binaire, pour être transmis comme information annexe dans le train binaire T. Un bloc 23 de quantification reçoit les coefficients spectraux Xn ainsi que les pas de quantification An déterminés, et délivre alors des coefficients quantifiés Xn. Enfin, un bloc 24 de codage et de formation de train binaire centralise les coefficients spectraux quantifiés Xn et les facteurs d'échelle F, pour les coder et former ainsi un train binaire contenant les donnés utiles relatives au signal audio source codé ainsi que les données représentatives des facteurs d'échelle. 2.2 Construction hiérarchique des courbes de masquage On présente ci-après les inconvénients de l'art antérieur dans le cadre d'un codage hiérarchique de données audionumériques. Cependant, l'invention s'applique à tous les types de codeurs de signaux audionumériques, mettant un oeuvre une quantification basée sur le modèle psycho-acoustique de l'oreille. Ces derniers ne sont pas nécessairement hiérarchiques. Le codage hiérarchique consiste à mettre en cascade plusieurs étages de codeurs, le premier étage générant la version codée au plus bas débit à laquelle les étages suivants apportent des améliorations successives pour des débits graduellement croissants. Dans le cas particulier du codage de signaux audio, les étages d'amélioration sont classiquement basés sur un codage perceptif par transformée tel que décrit dans la section précédente. Cependant, un inconvénient du codage perceptif par transformée dans une telle approche hiérarchique réside dans le fait que les facteurs d'échelle obtenus doivent être transmis dès le premier niveau, ou niveau de base. Ils représentent alors une part importante du débit alloué au niveau bas débit, par rapport aux données utiles. Pour pallier cet inconvénient, et donc économiser la transmission du profil de bruit de quantification injecté, c'est-à-dire les facteurs d'échelle, une technique de masquage dite implicite a été proposée par J.Li dans le document "Embedded Audio Coding (EAC) With Implicit Auditory Masking", ACM Multimedia 2002. Une telle technique s'appuie sur la structure hiérarchique du système de codage-décodage pour estimer récursivement la courbe de masquage à chaque niveau de raffinement, en exploitant une approximation de cette courbe, s'affinant de niveau en niveau. La mise à jour de la courbe de masquage est ainsi réitérée à chaque niveau hiérarchique, à partir des coefficients de la transformée quantifiés au niveau précédent. Du fait que l'estimation de la courbe de masquage est basée sur les valeurs quantifiées des coefficients de la transformée temps-fréquence, elle peut être effectuée de façon identique au niveau du codeur et du décodeur : ceci présente l'avantage d'éviter de transmettre le profil du pas de quantification, ou bruit de quantification, au décodeur. 2.3 Inconvénients de la technique antérieure Même si la technique de masquage implicite, basée sur un codage hiérarchique, permet d'éviter de transmettre la courbe de masquage, et ainsi de gagner en terme de débit par rapport au codage perceptuel classique selon lequel le profil du pas de quantification est transmis, les inventeurs ont constaté qu'elle présentait néanmoins plusieurs inconvénients. En effet, le modèle de masquage mis en oeuvre simultanément au codeur et au décodeur est nécessairement figé, et ne peut donc pas être adapté précisément à la nature du signal. Par exemple, un facteur de masquage unique est utilisé, indépendamment du caractère tonal ou non des composantes du spectre à coder. De plus, les courbes de masquage sont calculées sous une hypothèse de stationnarité du signal, et s'appliquent mal aux portions transitoires et aux attaques sonores. Par ailleurs, les courbes de masquage étant obtenues à chaque niveau à partir des coefficients ou des résidus de coefficients quantifiés aux niveaux précédents, la courbe de masquage des premiers niveaux est incomplète, du fait que certaines portions du spectre ne sont pas encore codées. Cette courbe incomplète ne représente pas nécessairement une forme optimale du profil du pas de quantification pour le niveau hiérarchique considéré. 3. Exposé de l'invention L'invention concerne un procédé de codage d'un signal audio source, comprenant les étapes suivantes : - codage d'un profil de quantification de coefficients représentatifs d'au moins une transformée du signal audio source, selon au moins deux techniques de codage distinctes, délivrant au moins deux ensembles de données représentatives d'un profil de quantification ; sélection d'un des ensembles de données représentatives d'un profil de quantification, en fonction d'un critère de sélection prédéterminé ; transmission et/ou stockage de l'ensemble de données représentatives d'un profil de quantification sélectionné et d'un indicateur représentatif de la technique de codage correspondante. L'invention repose ainsi sur une approche nouvelle et inventive du codage des coefficients d'un signal audio source, permettant de réduire le débit alloué à la transmission des pas de quantification tout en gardant un profil de bruit de quantification injecté le plus proche possible de celui donné par une courbe de masquage calculée à partir de la connaissance complète du signal. L'invention propose une sélection entre différents modes possibles de calcul du profil de pas de quantification. Il peut ainsi effectuer une sélection entre plusieurs gabarits de profil de pas de quantification, ou profils de bruit injectés. Ce choix est signalé par un indicateur, par exemple une signalisation contenue dans le train binaire formé par le codeur et transmise au système de restitution du signal audio, le décodeur. Il résulte de la technique de l'invention une meilleure efficacité de compression par rapport aux techniques antérieures, et donc une qualité perçue augmentée. Pour au moins une première des techniques de codage, l'ensemble de données peut correspondre à une représentation paramétrique du profil de quantification. En d'autres termes, parmi les techniques proposées pour quantifier les coefficients d'un signal audio transformé, il est possible de représenter le profil de quantification de façon paramétrique. Dans un mode de réalisation particulier, la représentation paramétrique est formée d'au moins un segment de droite, caractérisé par une pente et une valeur à l'origine. Une deuxième des techniques de codage peut délivrer un profil de quantification constant. Ce mode de codage correspond donc à une quantification minimisant un rapport signal à bruit (SNR). On note que dans le cas de cette technique de 5 codage, l'ensemble de données représentatives transmis est vide. Selon une troisième technique avantageuse de codage, le profil de quantification correspond à un seuil d'audition absolue. En d'autres termes, l'ensemble de données représentatives d'un profil de quantification peut être vide et aucune donnée relative au profil de quantification 10 n'est transmise du codeur vers le décodeur. Le seuil d'audition absolue est connu du décodeur. Selon une quatrième technique de codage, l'ensemble de données représentatives d'un profil de quantification peut comprendre l'ensemble des pas de quantification mis en oeuvre. 15 Cette quatrième technique de codage correspond au cas où le profil de pas de quantification est déterminé en fonction de la courbe de masquage du signal, connue uniquement au codeur, et entièrement transmise au décodeur. Le débit demandé est important, mais la qualité de restitution du signal est optimale. Selon un mode de réalisation particulier, le codage met en oeuvre un 20 traitement hiérarchique délivrant au moins deux niveaux de codage hiérarchiques, comprenant un niveau de base et au moins un niveau de raffinement comprenant des informations de raffinement par rapport au niveau de base ou à un niveau de raffinement précédent. Dans ce cas, une cinquième technique de codage prévoit que l'ensemble de 25 données représentatives d'un profil de quantification s'obtient, à un niveau de raffinement donné, en tenant compte de données construites au niveau hiérarchique précédent. L'invention s'applique ainsi efficacement au codage hiérarchique, et propose de coder le profil de pas de quantification selon une technique consistant 30 à affiner celui-ci à chaque niveau hiérarchique. L'étape de sélection peut être mise en oeuvre à chaque niveau de codage hiérarchique. Dans le cas où le procédé de codage délivre des trames de coefficients, l'étape de sélection peut être mise en oeuvre pour chacune des trames. La signalisation peut ainsi être effectuée non seulement pour chaque trame de traitement, mais, dans l'application particulière d'un codage hiérarchique des données, pour chaque niveau de raffinement. Dans d'autres cas, le codage peut être mis en oeuvre sur des groupes de trames, de tailles prédéfinies ou variables. On peut également prévoir que le profil courant reste inchangé tant qu'un nouvel indicateur n'a pas été transmis. Le critère prédéterminé peut prendre en compte notamment l'efficacité de chaque profil de quantification et le débit nécessaire pour coder l'ensemble de données correspondant. On réalise ainsi un compromis entre le débit nécessaire pour transporter les données représentatives du signal, et la distorsion affectant le signal. La quantification est donc optimisée, tout en minimisant le débit nécessaire à la transmission de données représentatives du profil du pas de quantification, et n'apportant pas une information directe sur le signal audio en lui-même. En d'autres termes, au codeur, le choix d'un mode de quantification s'effectue par comparaison d'une courbe de masquage de référence, estimée à partir du signal audio à coder, avec les profils de bruit associés à chacun des modes de quantification. L'invention concerne par ailleurs un dispositif de codage d'un signal audio source, comprenant des moyens de mise en oeuvre d'un tel procédé. L'invention concerne encore un produit programme d'ordinateur pour la mise en oeuvre du procédé de codage tel que décrit précédemment. L'invention concerne également un signal codé représentatif d'un signal audio source, comprenant des données représentatives d'un profil de quantification. Un tel signal comprend notamment : un indicateur représentatif d'une technique de codage d'un profil de quantification mise en oeuvre, choisie au codage parmi au moins deux techniques disponibles ; - un ensemble de données représentatives du profil de quantification correspondant. Un tel signal peut notamment comprendre des données relatives à au moins deux niveaux hiérarchiques obtenus par un traitement hiérarchique, comprenant un niveau de base et au moins un niveau de raffinement comprenant des informations de raffinement par rapport au niveau de base ou à un niveau de raffinement précédent, et comprend un indicateur représentatif d'une technique de codage pour chacun des niveaux. Lorsque le signal selon l'invention est organisé en trames de coefficients successives, il peut comprendre un indicateur représentatif de la technique de codage utilisée pour chacune des trames. L'invention concerne par ailleurs un procédé de décodage d'un tel signal. Ce procédé comprend notamment les étapes suivantes : - extraction du signal codé : d'un indicateur représentatif d'une technique de codage d'un profil de quantification mise en oeuvre, choisie au codage parmi au moins deux techniques disponibles ; - d'un ensemble de données représentatives du profil de quantification correspondant ; - reconstruction du profil de quantification reconstruit, en fonction de l'ensemble de données et de la technique de codage désignée par ledit indicateur. Un tel procédé de décodage comprend également une étape de construction d'un signal audio reconstruit, représentatif du signal audio source, en tenant compte du profil de quantification reconstruit. Pour au moins une première des techniques de codage, l'ensemble de données peut correspondre à une représentation paramétrique du profil de quantification, et l'étape de reconstruction délivre un profil de quantification reconstruit sous la forme d'au moins un segment de droite. Pour au moins une seconde des techniques de codage, l'ensemble de données peut être vide et l'étape de reconstruction délivre un profil de 5 quantification constant. Pour au moins une troisième des techniques de codage, l'ensemble de données peut être vide, et l'étape de reconstruction délivre un profil de quantification correspondant à un seuil d'audition absolue. Pour au moins une quatrième des techniques de codage, l'ensemble de 10 données peut comprendre l'ensemble des pas de quantification mis en oeuvre lors du procédé de codage décrit précédemment, et l'étape de construction délivre un profil de quantification sous la forme d'un ensemble des pas de quantification mis en oeuvre lors du procédé de codage. Dans un mode de réalisation particulier, le procédé de décodage peut 15 mettre en oeuvre un traitement hiérarchique délivrant deux niveaux de décodage hiérarchiques, comprenant un niveau de base et au moins un niveau de raffinement comprenant des informations de raffinement par rapport au niveau de base ou à un niveau de raffinement précédent. Pour au moins une cinquième des techniques de codage, l'étape de 20 reconstruction délivre un profil de quantification obtenu, à un niveau de raffinement donné, en tenant compte de données construites au niveau hiérarchique précédent. L'invention concerne également un dispositif de décodage d'un signal codé représentatif d'un signal audio source, comprenant des moyens de mise en 25 oeuvre du procédé de décodage décrit ci-dessus. L'invention concerne aussi un produit programme d'ordinateur pour la mise en oeuvre du procédé de décodage tel que décrit précédemment. 4. Liste des figures D'autres caractéristiques et avantages de l'invention apparaîtront plus 30 clairement à la lecture de la description suivante d'un mode de réalisation particulier, donné à titre de simple exemple illustratif et non limitatif, et des dessins annexés, parmi lesquels la figure 1 illustre le seuil de masquage fréquentiel ; la figure 2 est un organigramme simplifié du codage perceptif par transformée selon l'état de la technique ; - la figure 3 illustre un exemple de signal selon l'invention ; la figure 4 est un organigramme simplifié du procédé de codage selon l'invention la figure 5 est un organigramme simplifié du procédé de décodage selon l'invention les figures 6A et 6B illustrent schématiquement un dispositif de codage et un dispositif de décodage mettant en oeuvre l'invention. 5. Description d'un mode de réalisation de l'invention 5.1 Structure du codeur 15 On décrit ci-après un mode de réalisation de l'invention dans l'application particulière d'un codage hiérarchique. On rappelle que, dans ce schéma, le codage hiérarchique met en cascade des étapes de quantifications perceptives en sortie d'une transformée temps-fréquence (par exemple une MDCT pour Modified Discrete Cosine Transform en anglais, ou transformée en cosinus discret 20 modifiée) du signal audio source à coder. Un codeur selon ce mode de réalisation de l'invention est décrit en relation avec la figure 4. Un signal x(t) audio source est destiné à être transformé dans le domaine des fréquences, directement ou indirectement. En effet, optionnellement, le signal x(t) peut tout d'abord être codé dans une étape de codage 40. Une telle 25 étape est mise en oeuvre par un codeur coeur . Dans ce cas, cette première étape de codage correspond à un premier niveau hiérarchique de codage, c'est-à-dire le niveau de base. Un tel codeur coeur peut mettre en oeuvre une étape 401 de codage, et une étape 402 de décodage local. Elle délivre alors un premier train binaire 46 représentatif des données du signal audio codé au niveau de 30 raffinement le plus faible. Différentes techniques de codage peuvent être 10 envisagées pour obtenir le niveau bas débit, comme des codages paramétriques tels que le codage sinusoïdal décrit dans le document B. den Brinker, E.Schuijers and W.Oomen,"Parametric coding for high-quality audio", in Proc. 112nd AES Convention, Munich, Germany, 2002 ou le codage par analyse-synthèse de type CELP (pour Code-Excited Linear Prediction en anglais) décit dans le document M. Schroeder and B. Atal, "Code-excited linear prediction (CELP) : high quality speech at very low bit rates", in Proc. IEEE Int. Conf. Acoust., Speech, Signal Processing, Tampa, pp. 937-940, 1985. Une soustraction 403 est effectuée entre les échantillons décodés par le 10 décodeur local 402 et les valeurs réelles de x(t), de façon à obtenir un signal de résidu r(t) dans le domaine temporel. C'est alors ce signal de résidu en sortie du codeur bas-débit 40 (ou codeur coeur ) qui est transformé de l'espace temps vers l'espace des fréquences à l'étape 41. On obtient des coefficients spectraux R(kl), dans le domaine 15 fréquentiel, représentatifs des résidus délivrés par le codeur coeur 40, pour chaque bande critique d'indice k et pour le premier niveau hiérarchique. L'étage 42 de niveau de codage suivant contient une étape 421 de codage des résidus Rkl>, associée à une mise en oeuvre 422 d'un modèle psycho-acoustique, chargé de déterminer une première courbe de masquage pour le 20 premier niveau de raffinement. On obtient alors en sortie de l'étape 421 de codage des coefficients de résidus quantifiés R(kl) , lesquels sont soustraits (423) aux coefficients R(k1) d'origine issus de l'étape 40 de codage coeur . De nouveaux coefficients RF) sont obtenus, qui sont eux-mêmes quantifiés et codés à l'étape 431 de codage du niveau 43 suivant. Là encore, un modèle 432 psycho-acoustique 25 est mis en oeuvre et met à jour le seuil de masquage en fonction des coefficients Rkl) de résidus quantifiés précédemment. En résumé, l'étape 40 de codage de base (codeur coeur ) permet la transmission et le décodage, dans un terminal, d'une version bas débit du signal audio. Les étages successifs 42, 43 de quantification des résidus dans le domaine 30 transformé constituent des couches d'amélioration, permettant de construire un train binaire hiérarchique depuis le niveau bas débit jusqu'à un débit maximum souhaité. Selon l'invention, comme illustré par la figure 4, un indicateur Ili (1), Ip(') est associé à chaque modèle psycho-acoustique 422, 432 de chaque niveau de codage, pour chacun des étages de quantification. La valeur de cet indicateur est spécifique à chaque étage et contrôle le mode de calcul du profil du pas de quantification. Elle est placée en en-tête 441 et 451 des trames de coefficients spectraux quantifiés 442, 452 dans les trains binaires 44, 45 associés et formés à chaque niveau de codage 42, 43 amélioré. Un exemple de structure d'un signal obtenu selon cette technique de codage est illustré par la figure 3. Le signal est organisé en blocs ou en trames de données 31 comprenant chacun un en-tête 32 et un champ de données 33. Un bloc correspond par exemple aux données (contenues dans le champ 33) d'un niveau hiérarchique pour un intervalle de temps prédéterminé. L'en-tête 32 peut comprendre plusieurs informations de signalisation, d'aide au décodage... Elle comprend au moins, selon l'invention, l'information W. 5.2 Structure du décodeur En relation avec la figure 5, on décrit le procédé de décodage mis en oeuvre selon l'invention, dans le cas d'un décodage hiérarchique du signal de la figure 3. De façon similaire au procédé de codage présenté en relation avec la figure 4, le décodage comprend plusieurs niveaux 50, 51, 52 de raffinement de décodage. Une première étape 501 de décodage reçoit un train binaire 53 contenant les données 530 représentatives de l'indicateur (1) du premier niveau, déterminé lors de la première étape de codage et transmis au décodeur. Le train binaire contient de plus les données 531 représentatives des coefficients spectraux du signal audio. Selon les coefficients quantifiés, ou les résidus de coefficients quantifiés, et la valeur de pile reçu, un modèle psycho-acoustique est mis en oeuvre dans une première étape 502, pour déterminer une première estimation de la courbe de masquage, et ainsi un profil de pas de quantification qui est utilisé pour traiter les résidus des coefficients spectraux dont dispose le décodeur à ce stade du procédé de décodage. Les résidus de coefficients spectraux obtenus R(kl) pour chaque bande critique d'indice k permettent une mise à jour du modèle psycho-acoustique au niveau 51 suivant, dans une étape 512, qui affine alors la courbe de masquage et donc le profil des pas de quantification. Ce raffinement prend donc en compte la valeur de l'indicateur 1p(2) pour le niveau 2, contenu en en-tête 540 du train binaire 54 transmis par le codeur correspondant, les résidus quantifiés au niveau précédent ainsi que des données 541 quantifiées relatives aux résidus de niveau 2, comprises dans le train binaire 54. Les résidus R12) quantifiés sont obtenus en sortie du second niveau 51 de décodage. Ils sont additionnés (56) aux résidus Rkl) du niveau précédent, mais aussi injectés au niveau 52 suivant, qui, de façon similaire, affinera la précision sur les coefficients spectraux ainsi que sur le profil des pas de quantification, à partir d'une étape 521 de décodage, et de la mise en oeuvre d'un modèle psycho- acoustique dans une étape 522. Ce niveau reçoit de plus un train binaire 55 envoyé par le codeur contenant la valeur de l'indicateur 55 ,(3) et le spectre quantifié 551. Les résidus R13) quantifiés obtenus sont additionnés aux résidus R(k2) , et ainsi de suite. En résumé, le modèle psycho-acoustique est mis à jour au fur et à mesure du décodage des coefficients par les niveaux de raffinement successifs. La lecture de l'indicateur y' transmis par le codeur permet alors de reconstruire le profil de bruit (ou dequantification) par chaque étage de quantification. On décrit ci-après en détail les étapes de mise à jour du modèle psycho-acoustique, et de quantification des coefficients spectraux, communes au procédé de codage et au procédé de décodage, selon un mode de réalisation particulier. L'étape de détermination de la valeur de l'indicateur 4' , réalisée au codage est ensuite détaillée, suivie de l'étape de reconstruction des pas de quantification au niveau du décodeur. 5.3 Mise à jour du modèle psycho-acoustique On rappelle qu'un modèle psycho-acoustique prend en compte les sous- bandes dans lesquelles l'oreille décompose un signal audio et détermine ainsi des seuils de masquage en utilisant les informations psycho-acoustiques. Ces seuils sont utilisés pour déterminer le pas de quantification des coefficients spectraux. Dans le cadre de la présente invention, l'étape (mise en oeuvre dans les étapes 422, 432 du procédé de codage et dans les étapes 502, 512, 522 du procédé de décodage) de mise à jour de la courbe de masquage par le modèle psycho-acoustique demeure inchangée quelle que soit la valeur de l'indicateur 1p sur le choix du profil du pas de quantification. En revanche, c'est la façon dont est employée cette courbe de masquage mise à jour par le modèle psycho-acoustique qui est conditionnée par la valeur de l'indication p pour définir le profil du pas de quantification mis en oeuvre pour quantifier les coefficients spectraux (ou les coefficients résiduels déterminés à un niveau de raffinement précédent). Le modèle psycho-acoustique utilise à chaque niveau de quantification (dans l'application particulière d'un système de codage-décodage hiérarchique) d'indice 1, le spectre estimé Xkl> d'un signal audio x(t), où k représente l'indice fréquentiel de la transformée tremps-fréquence. Ce spectre est initialisé au premier niveau de raffinement de quantification, par les données disponibles en sortie de l'étape de codage mise en oeuvre par le codeur coeur. Aux niveaux de quantification suivants, le spectre Xkl) est actualisé à partir des coefficients résiduels R(kl-1) quantifiés en sortie du niveau de raffinement précédent selon la formule suivante : Xkl> = X(k1-1) + R(kl-l), avec k = 0,...,N û 1, où N est la taille de la transformée dans le domaine fréquentiel. Par convolution du spectre Xkl> avec le motif de masquage obtenu par le modèle psycho-acoustique, on peut construire un seuil de masquage associé au signal x(t). 16 La courbe de masquage M'' Il) estimée à l'étage de quantification d'indice l s'obtient alors comme le maximum entre le seuil de masquage associé au signal x(t) et la courbe d'audition absolue. Par ailleurs, les procédés de codage et de décodage comprennent chacun une étape d'initialisation Irait du modèle psycho-acoustique lors de sa première mise en oeuvre (étape 422 du procédé de codage et étape 502 du procédé de décodage), à partir des données transmises par le codeur coeur. Plusieurs scénarios sont envisageables selon le type de codeur coeur mis en oeuvre, dont quelques exemples sont décrits en annexe. 5.4 Quantification des coefficients spectraux Avant de décrire précisément une technique de détermination de la meilleure valeur de l'indicateur W qui conditionne le choix du profil de quantification, on détaille en premier lieu la façon dont est calculé le nombre de bits à allouer pour quantifier chaque coefficient spectral du signal audio, c'est-à- dire une fois que le profil du pas de quantification est connu. 5.4.1 Allocation binaire On se place ici dans le cas général d'une loi de quantification Q, qui peut par exemple correspondre à l'arrondi à l'entier le plus proche. Les valeurs quantifiées R(kl) des coefficients résiduels Rkl) en entrée de l'étage de quantification d'indice l s'obtiennent à partir du profil de pas de quantification, noté Aral) selon les équations suivantes : R(l) \ rgkl) = Q gl il)) pour kOffset(n) s k s kOffset(n + 1) et ~(l) Rkl) = gl Q-1 (rq) pour kOffset(n) s k s kOffset(n + 1) où rgkl) sont des coefficients à valeurs entières et kOffset(n) désigne l'indice fréquentiel initial de la bande critique d'indice n . Le coefficient gi correspond quant à lui à un gain constant permettant d'ajuster le niveau du bruit de quantification injecté parallèlement au profil donné par A(,!) . 17 Selon une première approche, ce gain g1 est déterminé par une boucle d'allocation afin d'atteindre un débit cible assigné à chaque niveau de quantification d'indice 1. Il est alors transmis au décodeur dans le train binaire en sortie de l'étage de quantification. Selon une seconde approche, le gain gt est fonction du seul niveau de raffinement d'indice 1 et cette fonction est connue du décodeur. 5.4.2 Profils de pas de quantification Les procédés de codage et de décodage selon l'invention proposent alors de déterminer un profil 4nl) de pas de quantification à partir d'un choix entre plusieurs techniques de codage, ou modes de calculs de ce profil. La sélection est indiquée par la valeur de l'indicateur p , transmis dans le train binaire. Selon la valeur de cet indicateur, le profil du pas de quantification est soit totalement transmis, soit partiellement, soit pas du tout. Dans ce dernier cas, le profil du pas de quantification est estimé au niveau du décodeur. Le profil 4(n1) de pas de quantification utilisé par l'étage de quantification d'indice 1 est calculé à partir de la courbe de masquage disponible à cet étage et de l'indicateur tii(l) en entrée. Dans un mode de réalisation particulier, l'indicateur 4(1) est codé sur 3 bits, pour indiquer cinq techniques de codage différentes du profil du pas de quantification. Pour une valeur de l'indicateur 2,(t) = 0, la courbe de masquage estimée par le modèle psycho-acoustique n'est pas utilisée et le profil des pas de quantification est uniforme selon la formule 4nl) = cte. On dit qu'on quantifie au sens du rapport signal sur bruit (SNR). Pour une valeur de l'indicateur lp(l) = 1, le profil de pas de quantification est défini uniquement à partir du seuil d'audition absolue selon l'équation kOffset(n+l)ù1 Qk , où Qk désigne le seuil d'audition absolu. k=kOffset(n) Dans ce cas de figure, le codeur ne transmet au décodeur aucune information relative au pas de quantification. O(,t) = Pour une valeur de l'indicateur tp(l) = 2, c'est la courbe de masquage Mkl) estimée par le modèle psycho-acoustique à l'étage d'indice l qui est utilisée pour définir le profil des pas de quantification selon l'équation kOffset(n+l)ù1 A( _ Mkl) . On note que ce mode n'est possible que dans k=kOffset(n) l'application particulière où une construction hiérarchique de la courbe de masquage est mise en oeuvre dans le système de codage-décodage du signal audio. Pour une valeur de l'indicateur 1p(I) = 3, le profil des pas de quantification est alors défini à partir d'un prototype de courbe paramétrable et connu au décodeur. Selon une application particulière, mais non exclusive, ce protoype est une droite affine, en dB pour chaque bande critique d'indice n, de pente a. On note Dn (a) , avec : loge (Dn (a )) = an + K , où K est une constante. La valeur de la pente a est choisie par corrélation avec la courbe de masquage de référence, calculée au codeur à partir d'une analyse spectrale du signal à coder. Sa valeur quantifiée â est alors transmise au décodeur et utilisée pour définir le profil des pas de quantification selon la formule : Onl) = Dn(â). Enfin, pour une valeur de l'indicateur 1p(l) = 4, le profil des pas de quantification 0(,,1) déterminé à l'étape de codage est entièrement transmis au décodeur. Les pas de quantification sont par exemple définis à partir de la courbe de masquage de référence Mk calculée au codeur à partir du signal audio source à kOffset(n+1)ù1 coder. On a alors : O(nl) _ Mk . k=kOffset(n) 5.5 Détermination de la valeur de l'indicateur p L'invention propose une technique particulière pour choisir judicieusement la valeur de l'indicateur p , et donc le profil de pas de quantification à appliquer pour coder et décoder un signal audio. Ce choix s'effectue à l'étape de codage, pour chaque niveau de quantification (dans le cas d'un codage hiérarchique) d'indice 1. En effet, on sait qu'à un étage de quantification donné, le profil de pas de quantification optimal vis-à-vis de la distorsion perçue entre le signal à coder et le signal reconstruit est obtenu à partir du calcul de la courbe de masquage de référence, basée sur le modèle psycho-acoustique et donné par la formule : kOffset(n+1)ù1 Ani) = Mk`) . Le choix d'une valeur de l'indicateur p consiste à k=kOffset(n) trouver le meilleur compromis entre l'optimalité du profil de pas de quantification, vis-à-vis de la distorsion perçue, et la minimisation du débit alloué à la transmission du profil des pas de quantification. Une fonction de coût est introduite, pour obtenir un tel compromis : C(zp)= d(g)(ip),g)( = 4))+0(p) avec lp = 0,1,2,3,4. Cette fonction permet de prendre en compte l'efficacité de chacune des techniques de codage du profil du pas de quantification. Le premier terme d(4 1)(ip),O(r,l)(4 = 4)) est une mesure de distance entre le profil de pas de quantification associé à chacune des valeurs de l'indicateur (p = 0,1,2,3,4) considérées et le profil optimal (associé à la valeur de l'indicateur 2p = 4, correspondant à la transmission de la courbe de masquage de référence). Cette distance peut se mesurer comme le surcoût, en bits, associé à l'utilisation d'un profil de masquage sous optimal . Cette fonction coût est calculée selon la formule : d(O(ni)(1p),O(ni)(1V = 4)) = nlog2 (one) OP )) û log2 (A(nl) (1P = 4)) û log2 r Gl 2 avec : G1 = A(ni) (ip) et G2 = E A() (2V = 4). n n Le rapport des gains G1 et G2 permet de normaliser les profils de pas de quantification l'un par rapport à l'autre. Le second terme 0('p) représente le surcoût en bits associé à la transmission du profil 4nl)('tp) des pas de quantification. En d'autres termes, il représente le nombre de bits additionnels (hormis ceux codant l'indicateur p ) devant être transmis au décodeur pour permettre la reconstruction des pas de quantification. Soit : 0(ip) est nul pour p = 0,1,2 (correspondant respectivement aux techniques de codage de quantification constante, de seuil d'audition absolu et de courbe de masquage ré estimée lors de l'étape de décodage) ; - 0(%) représente le nombre de bits codant â lorsque p = 3 (correspondant à la technique de codage paramétrique du profil de pas de quantification) ; 0(p) est le nombre de bits codant les pas de quantification g) définis à partir de la courbe de référence, lorsque p = 4 (correspondant à la transmission complète des pas de quantification du codeur vers le décodeur). 5.6 Reconstruction des pas de quantification lors du procédé de décodage La reconstruction du profil des pas de quantification à un étage de 15 quantification d'indice l est effectuée en fonction des données transmises par le décodeur. Tout d'abord, quelle que soit la technique de codage du pas de quantification choisie, c'est-à-dire la valeur de l'indicateur zp(l), le décodeur décode la valeur de cet indicateur présent en en-tête du train binaire reçu pour 20 chaque trame, puis lis la valeur du gain d'ajustement gi . On distingue ensuite les cas selon la valeur de l'indicateur : si i(l) = 4, le décodeur lit l'ensemble des pas de quantification n si ip(l) = 3, le paramètre â est lu et le profil du pas de 25 quantification est calculé au décodeur selon la formule précédemment introduite : Onk) = Dn(â) ; si ip(l) = 2, le décodeur calcule le profil du pas de quantification selon la formule précédemment introduite : kOffset(n+ 1)ù1 nl) _ el!) à partir de la courbe de masquage Mkl) k=kOffset(n) reconstruite à l'étage d'indice l (construction récursive) ; si y)(/) = 1, le décodeur calcule le profil du pas de quantification kOffset(n+1)ù1 selon la formule précédemment introduite : 4(1) = Qk k=kOffset(n) basée sur le seuil d'audition absolu ; si ils (l) = 0 , le décodeur calcule le profil du pas de quantification selon la formule précédemment introduite : Onk) = cte . Une fois que les pas de quantification sont calculés à l'étape de décodage, et que les coefficients précédemment introduits rqkl) transmis dans le train binaire sont décodés (relatifs aux données utiles des coefficients spectraux ou de leurs résiduels), les valeurs quantifiées Rkl) des coefficients résiduels à l'étage d'indice l s'obtiennent selon les formules introduites au paragraphe 5.5.1 de la présente description, relatif à l'allocation binaire. 5.7 Dispositifs de mise en oeuvre Le procédé de l'invention peut être mis en oeuvre un dispositif de codage, dont la structure est présentée en relation avec la figure 6A. Un tel dispositif comprend une mémoire M 600, une unité de traitement 601, équipée par exemple d'un microprocesseur, et pilotée par le programme d'ordinateur Pg 602. A l'initialisation, les instructions de code du programme d'ordinateur 602 sont par exemple chargées dans une mémoire RAM avant d'être exécutées par le processeur de l'unité de traitement 601. L'unité de traitement 601 reçoit en entrée un signal audio source à coder 603. Le microprocesseur tP de l'unité de traitement 601 met en oeuvre le procédé de codage décrit ci-dessus, selon les instructions du programme Pg 602. L'unité de traitement 601 délivre en sortie un train binaire 604 comprenant notamment des données quantifiées représentatives du signal audio source codé, des données représentatives d'un profil de pas de quantification, et enfin des données représentatives de l'indicateur V. L'invention concerne également un dispositif de décodage d'un signal codé représentatif d'un signal audio source selon l'invention, dont la structure générale simplifiée est illustrée schématiquement par la figure 6B. Il comprend une mémoire M 610, une unité de traitement 611, équipée par exemple d'un microprocesseur, et pilotée par le programme d'ordinateur Pg 612. A l'initialisation, les instructions de code du programme d'ordinateur 612 sont par exemple chargées dans une mémoire RAM avant d'être exécutées par le processeur de l'unité de traitement 611. L'unité de traitement 611 reçoit en entrée un train binaire 613, comprenant des données représentatives d'un signal audio source codé, des données représentatives d'un profil de pas de quantification et des données représentatives de l'indicateur V. Le microprocesseur P de l'unité de traitement 611 met en oeuvre le procédé de décodage selon les instructions du programme Pg 612, pour délivrer un signal audio reconstruit 612. 23 ANNEXE Le modèle psycho-acoustique peut être initialisé de plusieurs façons, selon le type de codeur coeur mis en oeuvre à l'étape de codage du niveau de base. 1 Initialisation à partir des paramètres transmis par un codeur sinusoïdal Un codeur sinusoïdal modélise le signal audio par une somme de sinusoïdes de fréquences et d'amplitudes variables dans le temps. Les valeurs quantifiées des fréquences et amplitudes sont transmises au décodeur. A partir de ces valeurs, on peut construire le spectre k k(0) des composantes sinusoïdales du signal. 2 Initialisation à partir des paramètres transmis par un codeur CELP A partir des coefficients LPC (pour linear prediction coding en anglais) am quantifiés et transmis par un codeur CELP (pour Code-excited linear prediction en anglais), on peut déduire un spectre d'enveloppe selon l'équation suivante : X (0) = 1 2 où N est la taille de la transformée et P est P / 2armk 1 E amexp û j m=1 N le nombre de coefficients LPC transmis par le codeur CELP. 3 Initialisation à partir du signal décodé en sortie du codeur coeur Le spectre initial X10) peut être simplement estimé à partir d'une analyse spectrale court-terme du signal décodé en sortie du codeur coeur. Une combinaison de ces méthodes d'initialisation est également envisageable. Par exemple, le spectre initial X10) peut être obtenu par addition du spectre d'enveloppe LPC défini selon l'équation précédente, et du spectre à court terme estimé à partir du résidu codé par un codeur CELP. REVENDICATIONS 1. Procédé de codage d'un signal audio source, caractérisé en ce qu'il comprend les étapes suivantes : - codage d'un profil de quantification de coefficients représentatifs d'au moins une transformée dudit signal audio source, selon au moins deux techniques de codage distinctes, délivrant au moins deux ensembles de données représentatives d'un profil de quantification ; - sélection d'un desdits ensembles de données représentatives d'un profil de quantification, en fonction d'un critère de sélection prédéterminé ; - transmission et/ou stockage dudit ensemble de données représentatives d'un profil de quantification sélectionné et d'un indicateur représentatif de la technique de codage correspondante. 2. Procédé de codage selon la revendication 1, caractérisé en ce que, pour au moins une première desdites techniques de codage, ledit ensemble de données correspond à une représentation paramétrique dudit profil de quantification. 3. Procédé de codage selon la revendication 2, caractérisé en ce que ladite représentation paramétrique est formée d'au moins un segment de droite, caractérisé par une pente et une valeur à l'origine. 4. Procédé de codage selon l'une quelconque des revendications 1 à 3, caractérisé en ce qu'une deuxième desdites techniques de codage délivre un profil de quantification constant. 5. Procédé de codage selon l'une quelconque des revendications 1 à 4, caractérisé en ce que, selon une troisième technique de codage, ledit profil de quantification correspond à un seuil d'audition absolue. 6. Procédé de codage selon l'une quelconque des revendications 1 à 5, caractérisé en ce que, selon une quatrième technique de codage, ledit ensemble de données représentatives d'un profil de quantification comprend l'ensemble des pas de quantification mis en oeuvre. 7. Procédé de codage selon l'une quelconque des revendications 1 à 6, caractérisé en ce que ledit codage met en oeuvre un traitement hiérarchique délivrant au moins deux niveaux de codage hiérarchiques, comprenant un niveau de base et au moins un niveau de raffinement comprenant des informations de raffinement par rapport audit niveau de base ou à un niveau de raffinement précédent. 8. Procédé de codage selon la revendication 7, caractérisé en ce que, selon une cinquième technique de codage, ledit ensemble de données représentatives d'un profil de quantification s'obtient, à un niveau de raffinement donné, en tenant compte de données construites au niveau hiérarchique précédent. 9. Procédé de codage selon l'une quelconque des revendications 7 et 8, caractérisé en ce que l'étape de sélection est mise en oeuvre à chaque niveau de codage hiérarchique. 10. Procédé de codage selon l'une quelconque des revendications 1 à 9, caractérisé en ce qu'il délivre des trames de coefficients, l'étape de sélection est mise en oeuvre pour chacune desdites trames. 11. Procédé de codage selon l'une quelconque des revendications 1 à 10, caractérisé en ce que ledit critère prédéterminé prend en compte l'efficacité de chaque profil de quantification et le débit nécessaire pour coder ledit ensemble de données correspondant. 12. Dispositif de codage d'un signal audio source, caractérisé en ce qu'il comprend : des moyens de codage d'un profil de quantification de coefficients représentatifs d'au moins une transformée dudit signal audio source,, délivrant au moins deux ensembles de données représentatives d'un profil de quantification ; - des moyens de sélection d'un desdits ensembles de données représentatives d'un profil de quantification, en fonction d'un critère de sélection prédéterminé ;- des moyens de transmission et/ou stockage dudit ensemble de données représentative d'un profil de quantification sélectionné et d'un indicateur représentatif de la technique de codage correspondante. 13. Produit programme d'ordinateur téléchargeable depuis un réseau de communication et/ou stocké sur un support lisible par ordinateur et/ou exécutable par un microprocesseur, caractérisé en ce qu'il comprend des instructions de code de programme pour la mise en oeuvre du procédé de codage selon au moins une des revendications 1 à 11. 14. Signal codé représentatif d'un signal audio source, comprenant des données représentatives d'un profil de quantification, caractérisé en ce qu'il comprend : un indicateur représentatif d'une technique de codage d'un profil de quantification mise en oeuvre, choisie au codage parmi au moins deux techniques disponibles ; - un ensemble de données représentatives dudit profil de quantification correspondant. 15. Signal selon la revendication 14, caractérisé en ce qu'il comprend des données relatives à au moins deux niveaux hiérarchiques obtenus par un traitement hiérarchique, comprenant un niveau de base et au moins un niveau de raffinement comprenant des informations de raffinement par rapport audit niveau de base ou à un niveau de raffinement précédent, et en ce qu'il comprend un indicateur représentatif d'une technique de codage pour chacun desdits niveaux. 16. Signal selon l'une quelconque des revendications 14 et 15, caractérisé en ce qu'il est organisé en trames de coefficients successives, et en ce qu'il comprend un indicateur représentatif d'une technique de codage pour chacune desdites trames. 17. Procédé de décodage d'un signal codé représentatif d'un signal audio source, comprenant des données représentatives d'un profil de quantification, 30 caractérisé en ce qu'il comprend les étapes suivantes :extraction dudit signal codé : - d'un indicateur représentatif d'une technique de codage d'un profil de quantification mise en oeuvre, choisie au codage parmi au moins deux techniques disponibles ; d'un ensemble de données représentatives dudit profil de quantification correspondant ; reconstruction dudit profil de quantification reconstruit, en fonction dudit ensemble de données et de la technique de codage désignée par ledit indicateur. 18. Procédé de décodage selon la revendication 17, caractérisé en ce qu'il comprend une étape de construction d'un signal audio reconstruit, représentatif dudit signal audio source, en tenant compte dudit profil de quantification reconstruit. 19. Procédé de décodage selon l'une quelconque des revendications 17 et 18, caractérisé en ce que, pour au moins une première desdites techniques de codage, ledit ensemble de données correspond à une représentation paramétrique dudit profil de quantification, et en ce que ladite étape de reconstruction délivre un profil de quantification reconstruit sous la forme d'au moins un segment de droite. 20. Dispositif de décodage d'un signal codé représentatif d'un signal audio source, comprenant des données représentatives d'un profil de quantification, caractérisé en ce qu'il comprend : des moyens d'extraction dudit signal codé : d'un indicateur représentatif d'une technique de codage d'un profil de quantification mise en oeuvre, choisie au codage parmi au moins deux techniques disponibles ; d'un ensemble de données représentatives dudit profil de quantification correspondant ;- des moyens de reconstruction dudit profil de quantification reconstruit, en fonction dudit ensemble de données et de la technique de codage désignée par ledit indicateur. 21. Produit programme d'ordinateur téléchargeable depuis un réseau de communication et/ou stocké sur un support lisible par ordinateur et/ou exécutable par un microprocesseur, caractérisé en ce qu'il comprend des instructions de code de programme pour la mise en oeuvre du procédé de décodage selon au moins une des revendications 17 à 19.