CA2766777C - Allocation de bits dans un codage/decodage d'amelioration d'un codage/decodage hierarchique de signaux audionumeriques - Google Patents

Allocation de bits dans un codage/decodage d'amelioration d'un codage/decodage hierarchique de signaux audionumeriques Download PDF

Info

Publication number
CA2766777C
CA2766777C CA2766777A CA2766777A CA2766777C CA 2766777 C CA2766777 C CA 2766777C CA 2766777 A CA2766777 A CA 2766777A CA 2766777 A CA2766777 A CA 2766777A CA 2766777 C CA2766777 C CA 2766777C
Authority
CA
Canada
Prior art keywords
decoding
coding
bits
module
band
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.)
Expired - Fee Related
Application number
CA2766777A
Other languages
English (en)
Other versions
CA2766777A1 (fr
Inventor
David Virette
Pierre Berthet
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.)
Orange SA
Original Assignee
France Telecom 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 France Telecom SA filed Critical France Telecom SA
Publication of CA2766777A1 publication Critical patent/CA2766777A1/fr
Application granted granted Critical
Publication of CA2766777C publication Critical patent/CA2766777C/fr
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • GPHYSICS
    • G10MUSICAL INSTRUMENTS; ACOUSTICS
    • G10LSPEECH ANALYSIS TECHNIQUES OR SPEECH SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING TECHNIQUES; SPEECH OR AUDIO CODING OR DECODING
    • G10L19/00Speech or audio signals analysis-synthesis techniques for redundancy reduction, e.g. in vocoders; Coding or decoding of speech or audio signals, using source filter models or psychoacoustic analysis
    • G10L19/04Speech or audio signals analysis-synthesis techniques for redundancy reduction, e.g. in vocoders; Coding or decoding of speech or audio signals, using source filter models or psychoacoustic analysis using predictive techniques
    • G10L19/16Vocoder architecture
    • G10L19/18Vocoders using multiple modes
    • G10L19/24Variable rate codecs, e.g. for generating different qualities using a scalable representation such as hierarchical encoding or layered encoding
    • GPHYSICS
    • G10MUSICAL INSTRUMENTS; ACOUSTICS
    • G10LSPEECH ANALYSIS 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/002Dynamic bit allocation
    • GPHYSICS
    • G10MUSICAL INSTRUMENTS; ACOUSTICS
    • G10LSPEECH ANALYSIS TECHNIQUES OR SPEECH SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING TECHNIQUES; SPEECH OR AUDIO CODING OR DECODING
    • G10L19/00Speech or audio signals analysis-synthesis techniques for redundancy reduction, e.g. in vocoders; Coding or decoding of speech or audio signals, using source filter models or psychoacoustic analysis
    • G10L19/02Speech or audio signals analysis-synthesis techniques for redundancy reduction, e.g. in vocoders; Coding or decoding of speech or audio signals, using source filter models or psychoacoustic analysis using spectral analysis, e.g. transform vocoders or subband vocoders
    • G10L19/0212Speech or audio signals analysis-synthesis techniques for redundancy reduction, e.g. in vocoders; Coding or decoding of speech or audio signals, using source filter models or psychoacoustic analysis using spectral analysis, e.g. transform vocoders or subband vocoders using orthogonal transformation
    • GPHYSICS
    • G10MUSICAL INSTRUMENTS; ACOUSTICS
    • G10LSPEECH ANALYSIS TECHNIQUES OR SPEECH SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING TECHNIQUES; SPEECH OR AUDIO CODING OR DECODING
    • G10L19/00Speech or audio signals analysis-synthesis techniques for redundancy reduction, e.g. in vocoders; Coding or decoding of speech or audio signals, using source filter models or psychoacoustic analysis
    • G10L19/02Speech or audio signals analysis-synthesis techniques for redundancy reduction, e.g. in vocoders; Coding or decoding of speech or audio signals, using source filter models or psychoacoustic analysis using spectral analysis, e.g. transform vocoders or subband vocoders
    • G10L19/032Quantisation or dequantisation of spectral components
    • G10L19/038Vector quantisation, e.g. TwinVQ audio

Landscapes

  • Engineering & Computer Science (AREA)
  • Physics & Mathematics (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)
  • Quality & Reliability (AREA)
  • Compression, Expansion, Code Conversion, And Decoders (AREA)
  • Spectroscopy & Molecular Physics (AREA)

Abstract

L'invention se rapporte à un procédé d'allocation binaire dans un codage/décodage d'amélioration d'un codage/décodage hiérarchique de signaux audionumériques comprenant un codage/décodage cur dans une première bande de fréquence et un codage/décodage d'extension de bande dans une deuxième bande de fréquence. Le procédé selon l'invention est tel que, pour un nombre prédéterminé de bits à allouer pour le codage/décodage d'amélioration, un premier nombre de bits (nbit_enhanced(j)) est alloué à un codage/décodage de correction du codage/décodage cur dans la première bande de fréquence et selon un premier mode de codage/décodage et un deuxième nombre de bits (nb_sin) est alloué à un codage/décodage d'amélioration du codage/décodage d'extension dans la deuxième bande de fréquence et selon un deuxième mode de codage/décodage. L'invention se rapporte également à un module d'allocation mettant en uvre le procédé, à un codeur, décodeur comprenant ce module.

Description

Allocation de bits dans un codage/décodage d'amélioration d'un codage/décodage hiérarchique de signaux audionumériques La présente invention concerne un procédé d'allocation binaire pour un traitement de données sonores.

Ce traitement est adapté notamment à la transmission et/ou au stockage de signaux numériques tels que des signaux audiofréquences (parole, musique, ou autres).

L'invention s'applique plus particulièrement au codage hiérarchique (ou codage "scalable") qui génère un flux binaire dit hiérarchique car il comprend un débit coeur et une ou plusieurs couche(s) d'amélioration (le codage normalisé
selon G.722 à 48, 56 et 64 kbit/s étant typiquement scalable en débit, tandis que les codecs UIT-T G.729.1 et MPEG-4 CELP sont scalables à la fois en débit et en largeur de bande).

On détaille ci-après le codage hiérarchique, ayant la capacité de fournir des débits variés, en répartissant les informations relatives à un signal audio à
coder dans des sous-ensembles hiérarchisés, de telle sorte que ces informations puissent être utilisées par ordre d'importance sur le plan de la qualité de rendu audio. Le critère pris en compte pour déterminer l'ordre est un critère d'optimisation (ou plutôt de moindre dégradation) de la qualité du signal audio codé. Le codage hiérarchique est particulièrement adapté à la transmission sur des réseaux hétérogènes ou présentant des débits disponibles variables au cours du temps, ou encore à la transmission à
destination de terminaux présentant des capacités variables.

Le concept de base du codage audio hiérarchique (ou "scalable") peut être décrit comme suit.
-2-Le flux binaire comprend une couche de base et une ou plusieurs couches d'amélioration. La couche de base est générée par un codec à débit fixe, qualifié de codec coeur , garantissant la qualité minimale du codage. Cette couche doit être reçue par le décodeur pour maintenir un niveau de qualité acceptable. Les couches d'amélioration servent à améliorer la qualité. Il peut arriver toutefois qu'elles ne soient pas toutes reçues par le décodeur.

L'intérêt principal du codage hiérarchique est qu'il permet alors une adaptation du débit par simple troncature du flux binaire . Le nombre de couches (c'est-à-dire le nombre de troncatures possibles du flux binaire) définit la granularité

du codage. On parle de codage à granularité forte si le flux binaire comprend peu de couches (de l'ordre de 2 à 4) et de codage à granularité fine permet par exemple un pas de l'ordre de 1 à 2 kbitls.

On décrit plus particulièrement ci-après les techniques de codage scalable en débit et en largeur de bande, avec un codeur coeur de type CELP, en bande téléphonique et une ou plusieurs couche(s) d'amélioration en bande élargie. Un exemple de tels systèmes est donné dans la norme UIT-T G.729.1 de 8 à 32 kbit/s à
granularité fine. L'algorithme de codage/décodage G.729.1 est résumé ci-après.
Rappels sur le codeur G.729.1 Le codeur G.729.1 est une extension du codeur UIT-T G.729. Il s'agit d'un codeur hiérarchique à coeur G.729, modifié, produisant un signal dont la bande va de la bande étroite (50-4000 Hz) à la bande élargie (50-7000 Hz) à un débit de 8 à 32 kbit/s pour les services conversationnels. Ce codec est compatible avec les équipements de voix sur IP existants qui utilisent le codec G.729.
-3-Le codeur G.729.1 est schématisé sur la figure 1. Le signal d'entrée en bande élargies,, , échantillonné à 16 kHz, est d'abord décomposé en deux sous-bandes par filtrage QMF (pour "Quadrature Mirror Filter"). La bande basse (0-4000 Hz) est obtenue par le filtrage passe-bas LP (bloc 100) et décimation (bloc 101), et la bande haute (4000-8000 Hz) par filtrage passe-haut HP (bloc 102) et décimation (bloc 103).
Les filtres LP et HP sont de longueur 64.

La bande basse est prétraitée par un filtre passe-haut éliminant les composantes en dessous de 50 Hz (bloc 104), pour obtenir le signal sLB , avant codage CELP en bande étroite (bloc 105) à 8 et 12 kbit/s. Ce filtrage passe-haut tient compte du fait que la bande utile est définie comme couvrant l'intervalle 50-7000 Hz.
Le codage CELP en bande étroite est un codage CELP en cascade comprenant comme premier étage un codage G.729 modifié sans filtre de prétraitement et comme deuxième étage un dictionnaire CELP fixe supplémentaire.

La bande haute est d'abord prétraitée (bloc 106) pour compenser le repliement dû au filtre passe-haut (bloc 102) combiné avec la décimation (bloc 103). La bande haute est ensuite filtrée par un filtre passe-bas (bloc 107) éliminant les composantes entre 3000 et 4000 Hz de la bande haute (c'est-à-dire les composantes entre 7000 et 8000 Hz dans le signal original) pour obtenir le signal sHB . Une extension de bande paramétrique (bloc 108) est ensuite réalisée.

Une particularité importante de l'encodeur G.729.1 selon la figure 1 est la suivante. Le signal d'erreur d., de la bande basse est calculé (bloc 109) à
partir de la sortie du codeur CELP (bloc 105) et un codage prédictif par transformée (de type TDAC pour Time Domain Aliasing Cancellation dans la norme G.729.1) est réalisé au bloc 110. En référence à la figure 1, on voit en particulier que l'encodage
-4-TDAC est appliqué à la fois au signal d'erreur sur la bande basse et au signal filtré
sur la bande haute.

Des paramètres supplémentaires peuvent être transmis par le bloc 111 à un décodeur homologue, ce bloc 111 réalisant un traitement dit FEC pour Frame Erasure Concealment , en vue de reconstituer d'éventuelles trames effacées.

Les différents flux binaires générés par les blocs de codage 105, 108, 110 et 111 sont enfin multiplexés et structurés en un train binaire hiérarchique dans le bloc de multiplexage 112. Le codage est réalisé par blocs d'échantillons (ou trames) de 20 ms, soit 320 échantillons par trame.

Le codec G.729.1 a donc une architecture en trois étapes de codage comprenant :
- le codage CELP en cascade, - l'extension de bande paramétrique par le module 108, de type TDBWE (pour Time Domain Bandwidth Extension ), et - un codage prédictif par transformée TDAC, appliqué après une transformation de type MDCT (pour Modified Discrete Cosine Transform ou transformation en cosinus discrète modifiée ).

* Rappels sur le décodeur G.729.1 Le décodeur G.729.1 est illustré sur la figure 2. Les bits décrivant chaque trame de 20 ms sont démultiplexés dans le bloc 200.

Le flux binaire des couches à 8 et 12 kbit/s est utilisé par le décodeur CELP
(bloc 201) pour générer la synthèse en bande étroite (0-4000 Hz). La portion du flux binaire associée à la couche à 14 kbit/s est décodée par le module d'extension de bande (bloc 202). La portion du flux binaire associée aux débits supérieurs à

kbit/s est décodée par le module TDAC (bloc 203). Un traitement des pré-échos et
-5-post-échos est réalisé par les blocs 204 et 207 ainsi qu'un enrichissement (bloc 205) et un post-traitement de la bande basse (bloc 206).

Le signal de sortie en bande élargies,,,,, échantillonné à 16 kHz, est obtenu par l'intermédiaire du banc de filtres QMF de synthèse (blocs 209, 210, 211, 212 et 213) intégrant le repliement inverse (bloc 208).

La description de la couche de codage par transformée est détaillée ci-après.
Rappels sur le codeur par transformée TDAC dans le codeur G.729.1 Le codage par transformée de type TDAC dans le codeur G.729.1 est illustré
sur la figure 3.

Le filtre WLB (z) (bloc 300) est un filtre de pondération perceptuelle, avec compensation de gain, appliqué au signal d'erreur en bande basse d LB . Des transformées MDCT sont ensuite calculées (bloc 301 et 302) pour obtenir :

- le spectre MDCT DLB du signal de différence, filtré perceptuellement, et - le spectre MDCT SHB du signal original de la bande haute.

Ces transformées MDCT (blocs 301 et 302) s'appliquent à 20 ms de signal échantillonné à 8 kHz (160 coefficients). Le spectre Y(k) issu du bloc 303 de fusion comprend ainsi 2 x 160, soit 320 coefficients. Il est défini comme suit :

[Y(0) Y(1)... Y(319)] _ tDB (0) Dis (1) ... D;B (159) SHB (0) SHB (1) ... SHB
(159)]

Ce spectre est divisé en dix-huit sous-bandes, une sous-bande j étant affectée d'un nombre de coefficients noté nb _ coef (j) . Le découpage en sous-bandes est spécifié dans le tableau 1 ci-après.
-6-Ainsi, une sous-bande j comprend les coefficients Y(k) avec sb - bound (j) <_ k < sb _ bound (j + 1).

A noter que les coefficients 280-319 correspondants à la bande de fréquence 7000 Hz - 8000 Hz ne sont pas codés; ils sont mis à zéro au décodeur, car la bande passante du codec est de 50-7000 Hz.

J sb_bound(j) nb_coef(j)
7 112 16
8 128 16
9 144 16 Tableau 1 : Limites et taille des sous-bandes en codage TDAC

L'enveloppe spectrale {log _ rms(j)}j=o 17 est calculée dans le bloc 304 suivant la formule :

sb _ bound (j+1)-I
log_ rms(j) = 1 loge 1 Y(k)2 + Er,,,, j = 0,...,17 2 nb_coef (j) k=sb_bound(j) oùErras=224 L'enveloppe spectrale est codée à débit variable dans le bloc 305. Ce bloc 305 produit des valeurs quantifiées, entières, notées rms _ index(j) (avec j=0,...,17), obtenues par simple quantification scalaire :

rms - index(j) = round (2 = log_ rms(j) ) où la notation round désigne l'arrondi à l'entier le plus proche, et avec la contrainte :

-11 < rms - index(j) 5 +20 Cette valeur quantifiée rms _ index(j) est transmise au bloc d'allocation de bits 306.

Le codage de l'enveloppe spectrale, lui-même, est effectué encore par le bloc 305, séparément pour la bande basse (rms _ index(j) , avec j=0,...,9) et pour la bande haute (rms - index(j) , avec j=10,...,17). Dans chaque bande, deux types de codage peuvent être choisis selon un critère donné, et, plus précisément, les valeurs rms _ index(j) :

- peuvent être codées par codage dit de Huffman différentiel , - ou peuvent être codées par codage binaire naturel.

Un bit (0 ou 1) est transmis au décodeur pour indiquer le mode de codage qui a été choisi.

Le nombre de bits alloués à chaque sous-bande pour sa quantification est déterminé au bloc 306 à partir de l'enveloppe spectrale quantifiée issue du bloc 305.

L'allocation des bits effectuée minimise l'erreur quadratique tout en respectant la contrainte d'un nombre de bits entier alloué par sous-bande et d'un nombre de bits maximum à ne pas dépasser. Le contenu spectral des sous-bandes est ensuite codé
par quantification vectorielle sphérique (bloc 307).

Les différents flux binaires générés par les blocs 305 et 307 sont ensuite multiplexés et structurés en un train binaire hiérarchique au bloc de multiplexage 308.

Rappel sur le décodeur par transformée dans le décodeur G.729.1 L'étape de décodage par transformée de type TDAC dans le décodeur G.729.1 est illustrée sur la figure 4.

De façon symétrique à l'encodeur (figure 3), l'enveloppe spectrale décodée (bloc 401) permet de retrouver l'allocation des bits (bloc 402). Le décodage d'enveloppe (bloc 401) reconstruit les valeurs quantifiées de l'enveloppe spectrale (rms - index(j) , pour j=0,...,17), à partir du train binaire généré par le bloc 305 (multiplexé) et en déduit l'enveloppe décodée rms - q(j) = 2%z rms_inde. j) Le contenu spectral de chacune des sous-bandes est retrouvé par quantification vectorielle sphérique inverse (bloc 403). Les sous-bandes non transmises, faute de budget de bits suffisant, sont extrapolées (bloc 404) à partir de la transformée MDCT du signal en sortie du bloc d'extension de bande (bloc de la figure 2).

Après mise à niveau de ce spectre (bloc 405) en fonction de l'enveloppe spectrale et post-traitement (bloc 406), le spectre MDCT est séparé en deux (bloc 407) :

- avec 160 premiers coefficients correspondant au spectre D7B du signal de différence décodé en bande basse, filtré perceptuellement, - et 160 coefficients suivants correspondant au spectre SõB du signal original décodé en bande haute.

Ces deux spectres sont transformés en des signaux temporels par transformée MDCT inverse, notée IMDCT (blocs 408 et 410), et la pondération perceptuelle inverse (filtre noté WLB (z)-`) est appliquée au signal 2 (bloc 409) résultant de la transformée inverse.

On décrit plus particulièrement ci-après l'allocation de bits aux sous-bandes (bloc 306 de la figure 3 ou bloc 402 de la figure 4).

Les blocs 306 et 402 réalisent une opération identique à partir des valeurs rms _ index(j) , j=0,...,17. On se contente donc par la suite de décrire uniquement le fonctionnement du bloc 306.

Le but de l'allocation binaire est de répartir entre chacune des sous-bandes un certain budget de bits (variable) noté nbits - VQ, avec :

nbits - VQ = 351 - nbits - rms , où nbits _ uns est le nombre de bits utilisés par le codage de l'enveloppe spectrale.

Le résultat de l'allocation est le nombre entier de bits, noté nbit(j) (avec j=0,...,17), alloués à chacune des sous-bande avec comme contrainte globale :

,7 1 nbit(j) <_ nbits _VQ
i=o Dans la norme G.729.1, les valeurs nbit(j) (j=0,...,17), sont de plus contraintes par le fait que nbit(j) doit être choisi parmi un jeu de valeurs réduit spécifié au tableau 2 ci-après.
-10-Taille de la Ensemble des valeurs autorisées nbit(j) (en nombre de bits) sous-bande j nb _ coef (j) 8 R 8 = {0, 7,10,12,13,14,15,161 16 R ,6 = 10, 9,14,16,17,18,19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 32}
Tableau 2: Valeurs possibles de nombre de bits alloués dans les sous-bandes TDAC.

L'allocation dans la norme G.729.1 repose sur une "importance perceptuelle"
par sous-bande liée à l'énergie de la sous-bande, notée ip(j) (j=0..17), définie comme suit :

ip(j) loge(rms_q(j)2xnb_coef(j))+offset où offset = -2.

Puisque les valeurs rms _q(j) = 2~ cette formule se simplifie sous la forme :

1 rms_index(j) pour j=0,...,16 ip(j) _ (rms _ index(j) -1) pour j=17 A partir de l'importance perceptuelle de chaque sous-bande, l'allocation nbit(j) est calculée comme suit :

nbit(j) = arg min jnb _ coef (j) x (ip(j) - 2~,j - r) ~R õr,-'f(j) où ~~~~ est un paramètre optimisé par dichotomie pour satisfaire la contrainte globale
-11-1 nbit(j) <_ nbits _VQ

en se rapprochant au mieux du seuil nbits_VQ.

De nouvelles perspectives d'extension en bande super élargie, (SWB pour "Super Wide Band" en anglais), d'un codeur coeur de type G.729.1 tel que décrit ci-dessus ou de type G.718 sont actuellement en cours de discussion.

Une solution possible d'extension est décrite par exemple dans le document des auteurs M. Tammi, L. Laaksonen, A. Ràmd, H. Toukomaa, intitulé "Scalable Superwideband Extension for Wideband Coding", ICASSP, 2009.

Ce document décrit un système de codage/décodage en bande super-élargie comportant un étage de codage coeur de type G.729.1 ou G.718 et un étage d'extension de bande.

Le codage coeur effectue le codage de la bande de fréquence allant de 0 à 7 kHz alors que la bande d'extension effectue un codage dans la bande de fréquence allant de 7 à 14 kHz.

Une première couche de codage d'extension est basée sur un modèle paramétrique s'appuyant sur deux modes de codage: un mode générique et un mode sinusoïdal.

Le mode générique utilise une méthode de transposition dans le domaine MDCT pour la génération artificielle des coefficients MDCT hautes fréquences (7-14 kHz) à partir des fréquences basses (0-7 kHz). La bande de fréquence basse permettant de coder une bande de fréquence haute est sélectionnée sur un critère de maximisation de la corrélation normalisée.
- 12-Le mode sinusoïdal est normalement utilisé pour les signaux particulièrement harmoniques ou tonaux. Dans ce mode, les composantes les plus énergétiques sont sélectionnées. On transmet alors leurs positions, leurs amplitudes et leurs signes.

Cette première couche est transmise avec un débit de 4 kbitls. Dans cet article, une seconde couche d'amélioration de la bande 7-14 kHz est proposée, elle est basée sur le codage de sinusoïdes additionnelles permettant de s'approcher au plus du spectre MDCT du signal d'entrée. L'allocation de bits pour cette deuxième couche d'extension est fixée une fois pour toute.

Ainsi, le codage d'extension présentée dans ce document, n'améliore le signal que dans la bande de fréquence d'extension allant de 7 à 14 kHz. La bande de fréquence de 0 à 7 kHz du codage coeur n'est pas modifiée.

Il peut arriver cependant que certaines sous-bandes de fréquence de la bande de fréquence coeur ne reçoivent pas suffisamment de débit.

Dans le cas où 0 bit est alloué à une sous-bande de codage coeur, le décodeur utilise alors directement le signal synthétisé issu de la première couche de codage d'extension de bande TDBWE pour la bande 4-7kHz, pour combler les bandes non allouées.

Il s'avère cependant que ces bandes peuvent parfois pénaliser la qualité
perçue lorsque le codeur est combiné à un module d'extension de bande 7-14kHz.

En effet, l'ajout des hautes fréquences augmente parfois la perception de défauts issus des basses fréquences.

Ainsi, une extension de bande peut accentuer les défauts de codage de la couche coeur.

Il existe donc un besoin d'amélioration globale de la qualité du signal codé
sur toute la bande de fréquence et pas seulement sur la bande de fréquence d'extension.
- 13-La présente invention vient améliorer la situation.

Elle propose à cet effet, un procédé d'allocation binaire dans un codage/décodage d'amélioration d'un codage/décodage hiérarchique de signaux audionumériques comprenant un codage/décodage coeur dans une première bande de fréquence et un codage/décodage d'extension de bande dans une deuxième bande de fréquence. Le procédé est tel que, pour un nombre prédéterminé de bits à allouer pour le codage/décodage d'amélioration, un premier nombre de bits (nbit enhanced(j)) est alloué à un codage/décodage de correction du codage/décodage coeur dans la première bande de fréquence et selon un premier mode de codage/décodage et un deuxième nombre de bits (nb_sin) est alloué à un codage/décodage d'amélioration du codage/décodage d'extension dans la deuxième bande de fréquence et selon un deuxième mode de codage/décodage.

Ainsi, le procédé d'allocation selon un mode de réalisation de l'invention permet tout en effectuant une amélioration du codage d'extension en bande de fréquence d'un codage coeur, d'allouer des bits supplémentaires pour corriger également le codage coeur dans la première bande de fréquence.

Ceci permet d'obtenir un bon compromis entre le codage d'amélioration du codage coeur et celui de la bande d'extension. Ce compromis est obtenu de manière adaptative de façon à s'adapter au mieux au signal à coder et au format de codage mis en oeuvre.

La qualité globale du signal codé est ainsi améliorée.

Les différents modes particuliers de réalisation mentionnés ci-après peuvent être ajoutés indépendamment ou en combinaison les uns avec les autres, aux étapes du procédé d'allocation défini ci-dessus.
-14-Dans un mode de réalisation particulier, le procédé comporte les étapes suivantes:

- obtention du nombre de bits alloué (nbit(j)) pour le codage/décodage coeur, par sous-bande de fréquence de la première bande de fréquence;

- dans les sous-bandes de fréquence où le nombre de bits alloué pour le codage/décodage coeur ne dépasse pas un seuil prédéterminé, allocation d'un nombre de bits par sous-bande, constituant le premier nombre de bits pour le codage/décodage de correction du codage/décodage coeur;

- allocation du second nombre de bits alloué pour le codage/décodage d'amélioration du codage/décodage d'extension, en fonction du premier nombre de bits alloué et du nombre prédéterminé de bits à allouer.

Ainsi, pour les sous-bandes de fréquence du codage coeur qui n'ont reçus que très peu d'allocation de bits, l'allocation selon un mode de réalisation de l'invention permet d'allouer des bits supplémentaires pour ces sous-bandes de fréquence de façon à améliorer le codage coeur dans ces sous-bandes et ceci tout en garantissant aussi une amélioration pour le codage d'extension.

Dans un mode particulier de réalisation, un nombre minimal de bits est fixé
par sous-bande de fréquence pour l'allocation du premier nombre de bits.

Ainsi, chaque sous-bande de fréquence a un débit associé garanti et donc un codage garanti.

De façon simple, le seuil prédéterminé est fixé à 0.

Dans une variante de réalisation, le seuil prédéterminé est supérieur à 0 et si le premier nombre de bits alloué est supérieur au nombre de bits prédéterminé, la valeur du seuil est réduite.
- 15-L'allocation est plus adaptée au signal, une correction maximale du codage coeur étant alors effectuée pour optimiser au mieux le débit alloué. Cette optimisation est faite au fur et à mesure en adaptant le seuil.

Dans un mode particulier de réalisation, le procédé comporte une étape de réception d'information de tonalité d'un signal résiduel résultant d'une différence entre un signal issu d'une première couche d'extension de bande et le signal original et en cas de signal résiduel tonal, le second nombre de bits alloué pour le codage/décodage d'amélioration de l'extension de bande est plus important que le premier nombre. Dans une variante, cette information de tonalité est calculée directement sur le signal original, par exemple par une détection de pic d'énergie dans le spectre.

Ainsi la couche d'amélioration de l'extension de bande est adaptée au type de signal qu'elle a à coder. Le codage selon le mode de codage d'extension étant particulièrement adapté au signal de type tonal, la priorité est ainsi donnée à ce mode de codage.

Dans une application particulièrement adaptée de l'invention, le codage/décodage coeur est de type codage/décodage normalisé G.729.1, le premier mode de codage/décodage étant un codage/décodage par transformée et le second mode de codage/décodage étant un codage/décodage paramétrique.

La présente invention se rapporte également un module d'allocation binaire dans un codeur/décodeur d'amélioration d'un codeur/décodeur hiérarchique de signaux audionumériques comprenant un module de codage/décodage coeur dans une première bande de fréquence et un module de codage/décodage d'extension de bande dans une deuxième bande de fréquence. Ce module d'allocation comporte:

- des moyens d'allocation d'un premier nombre de bits (nbit enhanced(j)) à
un module de codage/décodage de correction du codeur/décodeur coeur dans la
-16-première bande de fréquence et selon un premier mode de codage/décodage, pour un nombre prédéterminé de bits à allouer pour le codeur/décodeur d'amélioration, et - des moyens d'allocation d'un deuxième nombre de bits (nb_sin) à un module de codage/décodage d'amélioration du codeur/décodeur d'extension dans la deuxième bande de fréquence et selon un deuxième mode de codage/décodage.

L'invention se rapporte à un codeur hiérarchique comprenant un module d'allocation selon l'invention.

L'invention se rapporte également à un décodeur hiérarchique comprenant un module d'allocation selon l'invention.

Enfin, l'invention se rapporte à un programme informatique comportant des instructions de code pour la mise en oeuvre des étapes d'un procédé
d'allocation selon l'invention, lorsqu'elles sont exécutées par un processeur.

D'autres caractéristiques et avantages de l'invention apparaîtront plus clairement à la lecture de la description suivante, donnée uniquement à titre d'exemple non limitatif, et faite en référence aux dessins annexés, sur lesquels:

- la figure 1 illustre la structure d'un codeur de type G.729.1 décrit précédemment;

- la figure 2 illustre la structure d'un décodeur de type G.729.1 décrit précédemment;

- la figure 3 illustre la structure d'un codeur TDAC inclus dans le codeur de type G.729.1 et décrit précédemment:

- la figure 4 illustre la structure d'un décodeur TDAC inclus dans un décodeur de type G.729.1 et tel que décrit précédemment;
- 17-- la figure 5 illustre la structure d'un codeur G.729.1 étendu en bande de fréquence dans lequel l'invention peut être mis en oeuvre;

- la figure 6 illustre la structure d'un décodeur G.729.1 étendu en bande de fréquence dans lequel l'invention peut être mis en oeuvre;

- la figure 7 illustre un codeur d'amélioration comportant un module d'allocation de bits selon l'invention mettant en oeuvre un procédé
d'allocation selon un mode de réalisation de l'invention;

- la figure 8 illustre un exemple de réalisation matérielle d'un module d'allocation selon l'invention;

On décrit maintenant une application possible de l'invention à une extension de l'encodeur G.729.1, en particulier en bande super-élargie.

En référence à la figure 5, une extension en bande super-élargie d'un codeur coeur de type G.729.1 incluant l'invention selon un mode de réalisation, est maintenant décrit.

Un tel codeur tel que représenté consiste en une extension des fréquences codées par le module 515, la bande de fréquence utilisée passant de [50Hz-7KHz] à
[50Hz-14kHz] et en une amélioration de la couche de base du G.729.1 par le module de codage TDAC (bloc 510) et tel que décrit ultérieurement en référence à la figure 7.

Le codeur tel que représenté en figure 5, comporte les mêmes modules que le codage coeur G.729.1 représenté en figure 1 et un module supplémentaire d'extension de bande 515 qui fournit un signal d'extension au module de multiplexage 512.

Ce module de codage d'extension 515 fonctionne dans la bande de fréquence allant de 7 à 14 kHz, dite deuxième bande de fréquence par rapport à la première bande de fréquence allant de 0 à 7 kHz du codage coeur.
- 18-Cette extension de bande de fréquence est calculée sur le signal original pleine bande SswB alors que le signal d'entrée du codeur coeur est obtenu par décimation (bloc 516) et filtrage passe-bas (bloc 517). A la sortie de ces blocs, le signal d'entrée en bande élargie SwB est obtenu.

Le module 515 comporte une première couche de codage d'extension basée sur un modèle paramétrique s'appuyant sur deux modes de codage, un mode générique et un mode sinusoïdal, selon que le signal original SWB est tonal ou non tonal comme décrit dans le document de M. Tammi, L. Laaksonen, A. Ràmd, H.
Toukomaa, intitulé "Scalable Superwideband Extension for Wideband Coding", ICASSP, 2009.

Il comporte également une couche de codage d'amélioration de cette première couche de codage par un codage en mode sinusoïdal et dont l'allocation de bits s'effectue selon un procédé d'allocation de bits tel que décrit en référence à
la figure 7.

Pour cela, le module d'extension 515 reçoit des informations du codeur TDAC 510, notamment, le nombre de bits alloués dans les sous-bandes de fréquence du codage coeur.

Dans un mode de réalisation possible, le module d'allocation tel que décrit ultérieurement en référence à la figure 7, est intégré au module d'extension 515.

Dans un autre mode de réalisation, ce module est intégré au module TDAC
510. Dans encore un autre mode de réalisation, ce module est indépendant des deux modules 510 et 515 et communique les résultats d'allocation de bits aux deux modules respectifs.

Ainsi selon l'invention, un module d'allocation de bits alloue un premier nombre de bits à un codage de correction du codage coeur dans la première bande de fréquence et selon un premier mode de codage, dans le cas présent, un codage par
-19-transformée. Cette allocation s'effectue selon un nombre prédéterminé de bits à
allouer pour le codage d'amélioration.

Le module alloue un deuxième nombre de bits à un codage d'amélioration du codage d'extension dans la deuxième bande de fréquence et selon un deuxième mode de codage, ici le mode paramétrique sinusoïdal.

Lorsque les modèles du codage coeur et de l'extension de bande sont différents, l'allocation de débit entre ces deux modèles peut s'avérer difficile. En effet, on aura généralement un modèle de codage de forme d'onde pour le coeur, par exemple un codeur par transformée qui tente de coder au mieux le signal original.

Pour l'extension de bande, on utilise plus généralement des modèles paramétriques qui ont pour but de représenter perceptuellement les fréquences hautes sans pour autant s'attacher à coder fidèlement la forme d'onde.

L'allocation de débit entre les deux modèles peut dans ce cas être difficile.
Les critères d'amélioration du codeur coeur et de l'extension de bande sont différents et peuvent difficilement être comparés l'un à l'autre.

Cette allocation sera détaillée ultérieurement en référence à la figure 7.
Ainsi, le module 510 de codage TDAC reçoit une allocation supplémentaire de bits pour effectuer une correction de codage coeur dans un certain nombre de sous-bandes. Il fournit au module de multiplexage en plus du signal codé coeur, des bits supplémentaires de codage de correction du codage coeur.

De la même façon, un décodeur G.729.1 en mode super-élargi est décrit en référence à la figure 6. Il comporte les mêmes modules que le décodeur G.729.1 décrit en référence à la figure 2.

Il comporte cependant un module supplémentaire d'extension de bande 614 qui reçoit du module de démultiplexage 600, le signal d'extension de bande ainsi que le signal d'amélioration du codage d'extension selon l'allocation définie par le module
-20-d'allocation décrit en référence à la figure 7. Le décodeur comporte également le banc de filtres de synthèse (blocs 616, 615) permettant d'obtenir le signal de sortie en bande super-élargie Ss%, .

Le module 603 de décodage TDAC reçoit du module de multiplexage, en plus du signal coeur codé, des bits supplémentaires de correction du codage coeur selon l'allocation de bits définie par le module d'allocation décrit en référence à
la figure 7.

Le décodeur ainsi décrit bénéficie donc du codage d'amélioration mis en oeuvre par le codeur d'amélioration tel que maintenant décrit en référence à
la figure 7.

Dans un mode de réalisation, l'allocation binaire ne peut pas être recalculée au décodeur, cette information est alors transmise dans la couche d'amélioration correspondante.

Dans un autre mode de réalisation, le décodeur peut effectuer le même calcul d'allocation binaire qu'au codeur en répartissant le débit entre la correction du codeur coeur et l'extension de bande. Le module d'allocation s'appuie sur l'allocation binaire du codeur coeur et éventuellement sur une information venant de la première couche d'extension de bande, à savoir l'indication de tonalité.

Un module d'allocation comme décrit en référence à la figure 7, met en oeuvre le procédé d'allocation selon l'invention.

Ce module peut de la même façon que pour le codeur, s'intégrer dans le module décodeur TDAC 603, dans le module d'extension 614 ou être indépendant.
La figure 7 représente un module d'allocation de bits 701 selon l'invention et reprend les principales étapes d'un procédé d'allocation de bits selon l'invention.

Le bloc 306 représenté sur la figure 7 correspond au bloc d'allocation de bits pour le codage coeur et tel que décrit dans le codeur TDAC de la figure 3, pour le codage coeur G.729.1.
-21 -Ce bloc d'allocation coeur délivre une information d'allocation de bits nbit(j) du codage coeur, par sous-bande de fréquence de la bande de fréquence coeur.

Cette information est reçue par le module 701 d'allocation de bits conjointe.
En fonction d'un débit disponible pour le codage d'amélioration, le module 701 alloue un premier nombre de bits nbit_enhanced(j) pour effectuer une correction du codage coeur de type transformée dans une première bande de fréquence et un deuxième nombre de bits nb_sin pour le codage de type paramétrique sinusoïdal, d'amélioration du codage d'extension dans une deuxième bande de fréquence.

Plus particulièrement, le module 701 reçoit un nombre de bits alloués pour le codage coeur pour chacune des sous-bandes de la première bande de fréquence.

Ce nombre de bits par sous-bande est comparé à un seuil prédéterminé.

Dans les sous-bandes de fréquence où le nombre de bits alloué est inférieur au seuil, le module 701 alloue un nombre de bits minimum d'une valeur prédéfinie, par exemple 9 bits.

Les bits disponibles restants par rapport au débit autorisé pour le codage d'amélioration, par exemple un débit autorisé de 4 kbit/s, sont alloués pour le codage d'amélioration du codage d'extension, c'est-à-dire la deuxième couche de codage d'extension tel que décrit en référence à la figure 5.

De façon simple, le seuil peut être fixé à 0. Ainsi, seules les sous-bandes de fréquence qui n'ont reçus aucun débit, ont une allocation supplémentaire de bits pour corriger le codage coeur dans ces sous-bandes.

Dans une variante de réalisation, le seuil prédéterminé est supérieur à 0. Un premier essai est effectué avec un nombre minimum de bits à allouer pour les sous-bandes qui ont une allocation inférieure à ce seuil. Dans le cas où de nombreuses sous-bandes ont une allocation de bits inférieure au seuil, il se peut que le débit disponible soit dépassé. Dans ce cas, le seuil est diminué pour effectuer un deuxième
-22-essai. Cette diminution peut se faire par exemple par dichotomie, jusqu'à
trouver un seuil qui permette d'allouer le nombre minimum de bits par sous-bandes.

Le nombre de bits restants est alors alloué pour le codage sinusoïdal d'extension de bande. Il correspond au nombre de sinusoïdes qui peuvent être codés pour le codage d'amélioration du codage d'extension.

Le module d'allocation 701 fournit donc une première allocation de bits par sous-bande, nbit-enhanced(j) à un bloc de codage de correction du codage coeur qui effectue une quantification vectorielle sphérique d'un signal résiduel issu de la quantification vectorielle sphérique du codeur TDAC du codage coeur G.729. 1, sxa et du signal original sxs=

Le bloc de codage de correction 703 délivre ainsi au bloc multiplexeur 704, un signal de correction du codage coeur selon le nombre de bits alloué pour ce codage.

Le module d'allocation 701 délivre une deuxième allocation de bits nb sin à
un bloc 702 de codage d'amélioration du codage d'extension de bande.

Ce bloc de codage reçoit le signal de la première couche d'extension de bande SsWB ainsi que le signal original SsWB et code le signal résiduel issu du calcul de différence de ces deux signaux.

Dans une variante de réalisation, le module 701 reçoit également une information de tonalité du signal résiduel. Ce calcul de tonalité est donné
par exemple dans le document ICASSP 2009 référencé ci-dessus.

Le signal d'amélioration codé issu du bloc 702 est transmis au bloc de multiplexage 704 selon l'allocation de bits déterminé par le procédé
d'allocation.
-23-Le codage d'amélioration illustré sur cette figure 7 est par exemple intégré

dans un codeur G.729.1 en bande super-élargie tel que décrit en référence à la figure 5.

Le module d'allocation est par exemple situé dans le module d'extension de bande 515. Il reçoit du TDAC 510, les informations d'allocation du codage coeur. Il transmet le premier nombre de bits alloué au codeur TDAC qui effectue la quantification vectorielle sphérique du bloc 703. Il transmet à la seconde couche de codage du module d'extension 515, le deuxième nombre de bits alloué pour le codage en mode sinusoïdal du bloc 702.

Dans une variante de réalisation, ce module d'allocation de bits est intégré
au module TDAC 510 de la figure 5. Il délivre le premier nombre de bits alloué au bloc de quantification du codeur TDAC et le deuxième nombre de bits alloué au module d'extension 515 pour le codage d'amélioration du bloc 702.

Dans encore une autre variante, le module d'allocation est indépendant des modules 510 et 515 et envoie respectivement aux deux modules, le premier nombre de bits alloué et le deuxième nombre de bits alloué.

L'invention a été décrite ici pour une réalisation dans un codeur G.729.1 en bande super-élargie.

Elle peut bien évidemment s'intégrer dans un codeur en bande élargie de type G.718 ou dans tout autre codeur hiérarchique ayant un codage coeur dans une première bande de fréquence et un codage d'amélioration dans une deuxième bande de fréquence.

Cette figure 7 représente l'étage de codage d'amélioration. Pour le décodage d'amélioration, les mêmes opérations peuvent être effectuées. Un module d'allocation 701 donne alors le nombre de bits nbit_enhanced(j) pour le décodage d'amélioration (SVQ decod) du décodage coeur réalisé par exemple dans le module de décodage
-24-TDAC 603 de la figure 6 et le nombre de bits nb_sin pour le décodage d'amélioration de la couche d'extension (sinus decod), réalisé par exemple par le module de décodage d'extension 614 de la figure 6.

Un exemple de réalisation matérielle d'un module d'allocation tel que représenté et décrit en référence à la figure 7 est maintenant décrit en référence à la figure 8.

Ainsi, la figure 8 illustre un module d'allocation comportant un processeur PROC coopérant avec un bloc mémoire BM comportant une mémoire de stockage et/ou de travail MEM.

Ce module comporte un module d'entrée apte à recevoir un nombre de bits par sous-bande nbit(j) de la première bande de fréquence d'un codeur coeur.

Le bloc mémoire BM peut avantageusement comporter un programme informatique comportant des instructions de code pour la mise en oeuvre des étapes du procédé d'allocation au sens de l'invention, lorsque ces instructions sont exécutées par le processeur PROC, et notamment les étapes, pour un nombre prédéterminé
de bits à allouer pour un codage/décodage d'amélioration:

- d'allocation, d'un premier nombre de bits à un codage/décodage de correction du codage/décodage coeur dans la première bande de fréquence et selon un premier mode de codage/décodage;

- d'allocation d'un deuxième nombre de bits à un codage/décodage d'amélioration du codage/décodage d'extension dans la deuxième bande de fréquence et selon un deuxième mode de codage/décodage.

Typiquement, la description de la figure 7 reprend les étapes d'un algorithme d'un tel programme informatique. Le programme informatique peut également être stocké sur un support mémoire lisible par un lecteur du module ou d'un codeur intégrant le module d'allocation ou téléchargeable dans l'espace mémoire de celui-ci.
-25-Le module d'allocation comporte un module de sortie apte à transmettre le premier nombre de bits nbit_enhanced(j) alloué pour le codage de correction du codage coeur et un deuxième nombre de bits nb_sin pour le codage d'amélioration du codage d'extension.

Ce module d'allocation peut être intégré dans un codeur/décodeur hiérarchique de type G.729.1 en bande super-élargie ou plus généralement dans tout codeur/décodeur hiérarchique avec extension en bande de fréquence.

Claims (10)

REVENDICATIONS
1. Procédé d'allocation binaire dans un codage/décodage d'amélioration d'un codage/décodage hiérarchique de signaux audionumériques comprenant un codage/décodage coeur dans une première bande de fréquence et un codage/décodage d'extension de bande dans une deuxième bande de fréquence, dans lequel :
pour un nombre prédéterminé de bits à allouer pour le codage/décodage d'amélioration du codage/décodage d'extension, un premier nombre de bits (nbit_enhanced(j)) est alloué à un codage/décodage de correction du codage/décodage coeur dans la première bande de fréquence et selon un premier mode de codage/décodage et un deuxième nombre de bits (nb_sin) est alloué à un codage/décodage d'amélioration du codage/décodage d'extension dans la deuxième bande de fréquence et selon un deuxième mode de codage/décodage.
2. Le procédé selon la revendication 1, comprenant les étapes suivantes:
- obtention du nombre de bits alloué (nbit(j)) pour le codage/décodage coeur, par sous-bande de fréquence de la première bande de fréquence;
- dans les sous-bandes de fréquence où le nombre de bits alloué pour le codage/décodage coeur ne dépasse pas un seuil prédéterminé, allocation d'un nombre de bits par sous-bande, constituant le premier nombre de bits pour le codage/décodage de correction du codage/décodage coeur;
- allocation du second nombre de bits alloué pour le codage/décodage d'amélioration du codage/décodage d'extension, en fonction du premier nombre de bits alloué et du nombre prédéterminé de bits à allouer.
3. Le procédé selon la revendication 2, dans lequel un nombre minimal de bits est fixé par sous-bande de fréquence pour l'allocation du premier nombre de bits.
4. Le procédé selon la revendication 2, dans lequel le seuil prédéterminé est fixé à 0.
5. Le procédé selon la revendication 3, dans lequel le seuil prédéterminé est supérieur à 0 et si le premier nombre de bits alloué est supérieur au nombre de bits prédéterminé, la valeur du seuil est réduite.
6. Le procédé selon la revendication 2, comprenant une étape de réception d'information de tonalité d'un signal résiduel résultant d'une différence entre un signal issu d'une première couche d'extension de bande et le signal original et en cas de signal résiduel tonal, le second nombre de bits alloué pour le codage/décodage d'amélioration de l'extension de bande est plus important que le premier nombre.
7. Le procédé selon la revendication 1, dans lequel le codage/décodage coeur est de type codage/décodage normalisé G.729.1, le premier mode de codage/décodage étant un codage/décodage par transformée et le second mode de codage/décodage étant un codage/décodage paramétrique.
8. Module d'allocation binaire dans un codeur/décodeur d'amélioration d'un codeur/décodeur hiérarchique de signaux audionumériques comprenant un module de codage/décodage coeur dans une première bande de fréquence et un module de codage/décodage d'extension de bande dans une deuxième bande de fréquence, le module d'allocation binaire comprenant:
- des moyens d'allocation d'un premier nombre de bits (nbit_enhanced(j)) à
un module de codage/décodage de correction du codeur/décodeur coeur dans la première bande de fréquence et selon un premier mode de codage/décodage, pour un nombre prédéterminé de bits à allouer pour le codeur/décodeur d'amélioration du codage/décodage d'extension, et - des moyens d'allocation d'un deuxième nombre de bits (nb_sin) à un module de codage/décodage d'amélioration du codeur/décodeur d'extension dans la deuxième bande de fréquence et selon un deuxième mode de codage/décodage.
9. Codeur hiérarchique comprenant un module d'allocation binaire dans un codeur d'amélioration du codeur hiérarchique comprenant un module de codage c ur dans une première bande de fréquence et un module de codage d'extension de bande dans une deuxième bande de fréquence, le module d'allocation binaire comprenant:
- des moyens d'allocation d'un premier nombre de bits (nbit_enhanced(j)) à
un module de codage de correction du codeur c ur dans la première bande de fréquence et selon un premier mode de codage, pour un nombre prédéterminé de bits à allouer pour le codeur d'amélioration du codage d'extension, et - des moyens d'allocation d'un deuxième nombre de bits (nb_sin) à un module de codage d'amélioration du codeur d'extension dans la deuxième bande de fréquence et selon un deuxième mode de codage.
10. Décodeur hiérarchique comprenant un module d'allocation binaire dans un décodeur d'amélioration du décodeur hiérarchique comprenant un module de décodage c ur dans une première bande de fréquence et un module de décodage d'extension de bande dans une deuxième bande de fréquence, le module d'allocation binaire comprenant:
- des moyens d'allocation d'un premier nombre de bits (nbit_enhanced(j)) à
un module de décodage de correction du décodeur c ur dans la première bande de fréquence et selon un premier mode de décodage, pour un nombre prédéterminé de bits à allouer pour le décodeur d'amélioration du décodage d'extension, et - des moyens d'allocation d'un deuxième nombre de bits (nb_sin) à un module de décodage d'amélioration du décodeur d'extension dans la deuxième bande de fréquence et selon un deuxième mode de décodage.
CA2766777A 2009-07-07 2010-06-25 Allocation de bits dans un codage/decodage d'amelioration d'un codage/decodage hierarchique de signaux audionumeriques Expired - Fee Related CA2766777C (fr)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
FR0954688A FR2947945A1 (fr) 2009-07-07 2009-07-07 Allocation de bits dans un codage/decodage d'amelioration d'un codage/decodage hierarchique de signaux audionumeriques
FR0954688 2009-07-07
PCT/FR2010/051308 WO2011004098A1 (fr) 2009-07-07 2010-06-25 Allocation de bits dans un codage/décodage d'amélioration d'un codage/décodage hiérarchique de signaux audionumériques

Publications (2)

Publication Number Publication Date
CA2766777A1 CA2766777A1 (fr) 2011-01-13
CA2766777C true CA2766777C (fr) 2015-12-15

Family

ID=41531495

Family Applications (1)

Application Number Title Priority Date Filing Date
CA2766777A Expired - Fee Related CA2766777C (fr) 2009-07-07 2010-06-25 Allocation de bits dans un codage/decodage d'amelioration d'un codage/decodage hierarchique de signaux audionumeriques

Country Status (8)

Country Link
US (1) US8965775B2 (fr)
EP (1) EP2452337B1 (fr)
KR (1) KR101703810B1 (fr)
CN (1) CN102511062B (fr)
CA (1) CA2766777C (fr)
FR (1) FR2947945A1 (fr)
WO (1) WO2011004098A1 (fr)
ZA (1) ZA201200906B (fr)

Families Citing this family (17)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8924222B2 (en) * 2010-07-30 2014-12-30 Qualcomm Incorporated Systems, methods, apparatus, and computer-readable media for coding of harmonic signals
US9208792B2 (en) 2010-08-17 2015-12-08 Qualcomm Incorporated Systems, methods, apparatus, and computer-readable media for noise injection
US9767822B2 (en) * 2011-02-07 2017-09-19 Qualcomm Incorporated Devices for encoding and decoding a watermarked signal
CN102737636B (zh) * 2011-04-13 2014-06-04 华为技术有限公司 一种音频编码方法及装置
NO2669468T3 (fr) * 2011-05-11 2018-06-02
CN102509547B (zh) * 2011-12-29 2013-06-19 辽宁工业大学 基于矢量量化的声纹识别方法及系统
CN103854653B (zh) * 2012-12-06 2016-12-28 华为技术有限公司 信号解码的方法和设备
BR112015025092B1 (pt) 2013-04-05 2022-01-11 Dolby International Ab Sistema de processamento de áudio e método para processar um fluxo de bits de áudio
CN104217727B (zh) * 2013-05-31 2017-07-21 华为技术有限公司 信号解码方法及设备
FR3007563A1 (fr) * 2013-06-25 2014-12-26 France Telecom Extension amelioree de bande de frequence dans un decodeur de signaux audiofrequences
JP6319753B2 (ja) 2013-12-02 2018-05-09 華為技術有限公司Huawei Technologies Co.,Ltd. 符号化方法および装置
CN111312277B (zh) 2014-03-03 2023-08-15 三星电子株式会社 用于带宽扩展的高频解码的方法及设备
CN111105806B (zh) * 2014-03-24 2024-04-26 三星电子株式会社 高频带编码方法和装置,以及高频带解码方法和装置
BR112016019838B1 (pt) * 2014-03-31 2023-02-23 Fraunhofer-Gesellschaft Zur Forderung Der Angewandten Forschung E.V. Codificador de áudio, decodificador de áudio, método de codificação, método de decodificação e mídia de registro legível por computador não transitória
US9847087B2 (en) 2014-05-16 2017-12-19 Qualcomm Incorporated Higher order ambisonics signal compression
US11276412B2 (en) 2017-09-20 2022-03-15 Voiceage Corporation Method and device for efficiently distributing a bit-budget in a CELP codec
WO2020253941A1 (fr) * 2019-06-17 2020-12-24 Fraunhofer-Gesellschaft zur Förderung der angewandten Forschung e.V. Codeur audio avec un nombre dépendant du signal et une commande de précision, décodeur audio, et procédés et programmes informatiques associés

Family Cites Families (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
FR2849727B1 (fr) * 2003-01-08 2005-03-18 France Telecom Procede de codage et de decodage audio a debit variable
KR100923300B1 (ko) * 2003-03-22 2009-10-23 삼성전자주식회사 대역 확장 기법을 이용한 오디오 데이터의 부호화 방법,그 장치, 복호화 방법 및 그 장치
US7343291B2 (en) * 2003-07-18 2008-03-11 Microsoft Corporation Multi-pass variable bitrate media encoding
FR2888699A1 (fr) * 2005-07-13 2007-01-19 France Telecom Dispositif de codage/decodage hierachique
US8032359B2 (en) * 2007-02-14 2011-10-04 Mindspeed Technologies, Inc. Embedded silence and background noise compression
JP4871894B2 (ja) * 2007-03-02 2012-02-08 パナソニック株式会社 符号化装置、復号装置、符号化方法および復号方法
JP4708446B2 (ja) * 2007-03-02 2011-06-22 パナソニック株式会社 符号化装置、復号装置およびそれらの方法
KR100921867B1 (ko) * 2007-10-17 2009-10-13 광주과학기술원 광대역 오디오 신호 부호화 복호화 장치 및 그 방법

Also Published As

Publication number Publication date
CN102511062A (zh) 2012-06-20
FR2947945A1 (fr) 2011-01-14
CN102511062B (zh) 2013-07-31
KR20120061826A (ko) 2012-06-13
EP2452337B1 (fr) 2013-05-29
US20120185256A1 (en) 2012-07-19
ZA201200906B (en) 2012-10-31
EP2452337A1 (fr) 2012-05-16
CA2766777A1 (fr) 2011-01-13
WO2011004098A1 (fr) 2011-01-13
US8965775B2 (en) 2015-02-24
KR101703810B1 (ko) 2017-02-16

Similar Documents

Publication Publication Date Title
CA2766777C (fr) Allocation de bits dans un codage/decodage d&#39;amelioration d&#39;un codage/decodage hierarchique de signaux audionumeriques
EP2115741B1 (fr) Codage/decodage perfectionnes de signaux audionumeriques
CA2766864C (fr) Codage/decodage perfectionne de signaux audionumeriques
EP1989706B1 (fr) Dispositif de ponderation perceptuelle en codage/decodage audio
EP1905010B1 (fr) Codage/décodage audio hiérarchique
JP5129116B2 (ja) 音声信号を帯域分割符号化する方法及び装置
EP2366177B1 (fr) Codage de signal audionumerique avec mise en forme du bruit dans un codeur hierarchique
CA2512179C (fr) Procede de codage et de decodage audio a debit variable
EP1692689B1 (fr) Procede de codage multiple optimise
NZ593517A (en) Buffering samples of input signals, producing transform coefficients, and applying inverse transform to the coefficents
EP2255358A1 (fr) Encodage vocal et audio extensible utilisant un encodage combinatoire de spectre mdct
FR3013496A1 (fr) Transition d&#39;un codage/decodage par transformee vers un codage/decodage predictif
FR2737360A1 (fr) Procedes de codage et de decodage de signaux audiofrequence, codeur et decodeur pour la mise en oeuvre de tels procedes

Legal Events

Date Code Title Description
EEER Examination request
MKLA Lapsed

Effective date: 20180626