Login| Sign Up| Help| Contact|

Patent Searching and Data


Title:
OPTIMIZED PARAMETRIC STEREO DECODING
Document Type and Number:
WIPO Patent Application WO/2011/045549
Kind Code:
A1
Abstract:
The invention relates to a method of parametric decoding of a stereo digital audio signal, comprising a step of synthesizing (synth.) the stereo signal, per frequency sub-band, on the basis of a decoded mono signal of formula (I), arising from a downmix of the stereo signal and from spatial information parameters of the stereo signal, in such a way that the signals obtained have the following form: formula (II), wherein formula (III) and formula (IV) represent the channels of the synthesized signal, formula (V) and formula (VI) represent the signals dependent on the decoded mono signal, and c 1[ j ] and c 2[ j ] represent the gains. The gains are characterised in that they are calculated in the following way: formula (VII), wherein formula Î [ j ] is an amplitude ratio between the two channels of the stereo signal, arising from the decoded parameters. The invention also relates to a decoder implementing the method as described.

Inventors:
KOVESI, Balazs (16 chemin du Moulin à Vent, F-LANNION, 22300, FR)
RAGOT, Stéphane (Allegoat, F-LANNION, 22300, FR)
HOANG, Thi Minh Nguyet (Foyer Cosmos F, 25 rue des Hortensias, Lannion, F-22300, FR)
Application Number:
FR2010/052193
Publication Date:
April 21, 2011
Filing Date:
October 15, 2010
Export Citation:
Click for automatic bibliography generation   Help
Assignee:
FRANCE TELECOM (6 place d'Alleray, Paris, F-75015, FR)
KOVESI, Balazs (16 chemin du Moulin à Vent, F-LANNION, 22300, FR)
RAGOT, Stéphane (Allegoat, F-LANNION, 22300, FR)
HOANG, Thi Minh Nguyet (Foyer Cosmos F, 25 rue des Hortensias, Lannion, F-22300, FR)
International Classes:
G10L19/00
Attorney, Agent or Firm:
FRANCE TELECOM R&D/PIV/BREVETS (FROGER Marie-Hélène, 38-40 rue du Général Leclerc, Issy Moulineaux Cedex 9, F-92794, FR)
Download PDF:
Claims:
REVENDICATIONS

1. Procédé de décodage paramétrique d'un signal audionumérique stéréo comportant une étape de synthèse (synth.), par sous-bande de fréquence, du signal stéréo à partir d'un signal mono décodé ( [y'] ) issu d'un matriçage de réduction de canaux du signal stéréo et de paramètres d'information spatiale du signal stéréo, de telle sorte que les signaux obtenus sont de la forme:

L[j] = cl [j]Ml ij]

R[j] = c2 [j]M2 [j]

avec L[j] et R[j] les canaux du signal synthétisé, y] et M2[j] des signaux fonctions du signal mono décodé et c, [y] , c2[j] des gains, caractérisé en ce que les gains sont calculés de la façon suivante:

2

c2 lj] = avec /[y] un rapport d'amplitude entre les deux canaux du signal stéréo, issu des paramètres décodés.

2. Procédé selon la revendication 1 , caractérisé en ce que les signaux , [y] et M2[j] sont égaux au signal mono décodé.

3. Procédé selon la revendication 1, caractérisé en ce qu'il comporte en outre une étape de réception des phases des canaux du signal stéréo et en ce que les signaux M, [y] ou M2[j] correspondent au signal mono décodé auquel un déphasage correspondant à la phase reçue est appliqué pour chacun des canaux.

4. Procédé selon la revendication 1, caractérisé en ce qu'un des signaux M{[j] et M2[j] correspond à une décorrélation temporelle du signal mono décodé alors que l'autre est égal au signal mono décodé.

5. Programme informatique comprenant des instructions de code pour la mise en œuvre des étapes d'un procédé de décodage selon l'une des revendications 1 à 4, lorsque celles-ci sont exécutées par un processeur.

6. Décodeur paramétrique d'un signal audionumérique stéréo comportant un module de synthèse (405) effectuant une synthèse, par sous-bande de fréquence, du signal stéréo à partir d'un signal mono décodé issu d'un matriçage de réduction de canaux du signal stéréo et de paramètres d'information spatiale du signal stéréo, de telle sorte que les signaux obtenus sont de la forme:

Uj] = cl[j]Ml [j]

R[j] = c2[j]M2[j]

avec L[j] et R[j] les canaux du signal synthétisé, M{[j] et M2[j] des signaux fonctions du signal mono décodé et c{ [j] , c2[j] des gains, caractérisé en ce que les gains sont calculés par le module de synthèse, de la façon suivante:

avec I[j] un rapport d'amplitude entre les deux canaux du signal stéréo, issu des paramètres décodés.

Description:
Décodage paramétrique stéréo optimisé

La présente invention concerne le domaine du codage/décodage des signaux numériques.

Le codage et le décodage selon l'invention est adapté notamment pour la transmission et/ou le stockage de signaux numériques tels que des signaux audiofréquences (parole, musique ou autres).

Plus particulièrement, la présente invention se rapporte au codage/décodage paramétrique de signaux audio multicanaux.

Ce type de codage/décodage se base sur l'extraction de paramètres d'information spatiale pour qu'au décodage, ces caractéristiques spatiales puissent être reconstituées pour l'auditeur.

Ce type de codage paramétrique s'applique notamment pour un signal stéréo. Une telle technique de codage/décodage est par exemple décrite dans le document de Breebaart, J. and van de Par, S and Kohlrausch,A. and Schuijers, intitulé "Parametric Coding of Stereo Audio" dans EURASIP Journal on Applied Signal Processing 2005:9, 1305-1322. Cet exemple est repris en référence aux figures 1 et 2 décrivant respectivement un codeur et un décodeur stéréo paramétrique.

Ainsi, la figure 1 décrit un codeur recevant deux canaux audio, un canal gauche (noté L pour Left en anglais) et un canal droit (noté R pour Right en anglais).

Les canaux L(n) et R(n) sont traités par les blocs 101, 102 et 103, 104 respectivement qui effectuent une analyse de Fourier cout terme. Les signaux transformés L j] et R[j] sont ainsi obtenus.

Le bloc 105 effectue un matriçage de réduction de canaux ou "Downmix" en anglais pour obtenir à partir des signaux gauche et droit, un signal somme, un signal monophonique ci-après nommé signal mono, dans le cas présent, dans le domaine fréquentiel.

Une extraction de paramètres d'information spatiale est également effectuée dans le bloc 105. Les paramètres de type ICLD (pour "InterChannel Level Différence" en anglais) encore appelés différences d'intensité intercanal, caractérisent les ratios d'énergie par sous-bande fréquentielle entre les canaux gauche et droit.

Ils sont définis en dB par la formule suivante:

ICLD[/fc] = 10.1og t dB (1)

où L[j] et R[j] correspondent aux coefficients spectraux (complexes) des canaux L et R, les valeurs B[k] et B[k+1], pour chaque bande de fréquence k, définissent la découpe en sous-bande du spectre et le symbole * indique le conjugué complexe.

Un paramètre de type ICPD (pour "InterChannel Phase Différence" en anglais) encore appelé différence de phase par sous-bande fréquentielle, est définie suivant la relation suivante:

l D [k] = z(∑^ L[j] . R' [j]) (2) où Z indique l'argument (la phase) de l'opérande complexe.

On peut également définir de façon équivalente à l'ICPD, un décalage temporel intercanal appelé ICTD (pour "interchannel time différence" en anglais).

Un paramètre de cohérence intercanal ICC (pour "InterChannel Cohérence" en anglais) représente quant à lui, la corrélation intercanal.

Ces paramètres ICLD, ICPD et ICC sont extraits des signaux stéréo, par le bloc 105.

Le signal mono est passé dans le domaine temporel (blocs 106 à 108) après synthèse de Fourier court-terme (FFT inverse, fenêtrage et addition-recouvrement dite OverLap-Add ou OLA en anglais) et un codage mono (bloc 109) est réalisé. En parallèle les paramètres stéréo sont quantifiés et codés dans le bloc 1 10.

En général le spectre des signaux ( L[y ' ] , /?[ ] ) est divisé suivant une échelle fréquentielle non-linéaire de type ERB (Equivalent Rectangular Bandwidth) ou Bark, avec un nombre de sous-bandes allant typiquement de 20 à 34. Cette échelle définit les valeurs de B(k) et B(k+1) pour chaque sous-bande k. Les paramètres (ICLD, ICPD, ICC) sont codés par quantification scalaire éventuellement suivie d'un codage entropique ou d'un codage différentiel. Par exemple, dans l'article précédemment cité, l'ICLD est codée par un quantificateur non-uniforme (allant de - 50 à +50 dB) avec codage différentiel ; le pas de quantification non-uniforme exploite le fait que plus la valeur de l'ICLD est grande plus la sensibilité auditive aux variations de ce paramètre est faible.

Au décodeur 200, le signal mono est décodé (bloc 201), un dé-corrélateur est utilisé (bloc 202) pour produire deux versions M(n)et M'(n) du signal mono décodé. Ces deux signaux passés dans le domaine fréquentiel (blocs 203 à 206) et les paramètres stéréo décodés (bloc 207) sont utilisés par la synthèse stéréo (bloc 208) pour reconstruire les canaux gauche et droit dans le domaine fréquentiel. Ces canaux sont enfin reconstruits dans le domaine temporel (blocs 209 à 214).

Pour la synthèse stéréo effectuée dans le bloc 208, différentes méthodes existent pour synthétiser deux canaux stéréo à partir des paramètres ICLD et d'un signal mono décodé.

Un exemple est décrit dans l'article des auteurs Lapierre et Lefebvre, intitulé "On Improving Parametric Stereo Audio Coding", apparu à la 120th AES Convention, Paris, 2006.

Les canaux gauche et droit décodés sont synthétisés - en ne considérant que les paramètres de différence d'intensité intercanal - selon les équations suivantes:

L[j] = c,[Â:].M[7]

(3)

R[j] = c 2 [k]M[j]

avec

c,[k]

ou c,[k]

Cependant, pour arriver à ce résultat il faut prendre une hypothèse forte. En effet, l'opération de "downmix" mono est calculée comme suit:

L [j] + R[J]

M [j] = - (5) l'expression exacte de l'éner ie du signal mono est la suivante:

Les formules donnant c [k] et c 2 [k] découlent de la contrainte d'énergie suivante:

On suppose que le canal gauche et le canal droit sont identiques (L[j]=R[j]), et on peut écrire:

donc, 2

La contrainte ci-dessus s'écrit donc: c [kf , soit f + c 2 [kf = 2 (9)

Comme = c[k] , on trouve c [k c k +c 2 [kf = c 2 [kf (c[kf + l) - 2 ce qui

c 2 [k] ' - v / permet d'arriver au résultat c 2 [*] = . et de manière similaire

l + c 2 [k] Cette démonstration montre que la contrainte d'énergie

2 Λ 2 2

ΙΧ] + - 2 M[f\ imposée dans les techniques de l'état de l'art du codage stéréo d'intensité n'est valable que pour le cas spécifique de sous-bandes des canaux L et R identiques (L[j]=R[j]).

Cette hypothèse n'est pas vérifiée dans le cas de signaux stéréo réels, pour lesquels les canaux gauche et droit sont différents en général.

Dans les autres cas, l'énergie du signal stéréo synthétisée ne sera pas bien conservée. Aussi des méthodes de compensation d'énergie ou des méthodes de downmix dites « actives » doivent être développées pour conserver cette énergie.

Une méthode basée sur un facteur d'échelle au décodeur est décrite dans le document de Lapierre cité ci-dessus.

L'exemple suivant décrit ici montre par exemple un cas où la contrainte d'énergie imposée dans les techniques de l'état de l'art n'est plus applicable.

Dans cet exemple, l'énergie d'un des deux canaux est dominante dans une sous-bande.

Pour le cas d'une sous-bande réduite à un coefficient, en supposant que L[jj = 1000X et R(j] = X où X est réel, on en déduit le signal mono M j] = (L j]+R|j])/2 = 500.5X.

On obtient donc 2|M[j]| 2 = 2*250500.25X 2 = 501000.5X 2 .

Cette valeur diffère de \L\}]\ 2 +|R j]| 2 = 1000001X 2 . La conséquence de cette mauvaise hypothèse de départ est que l'énergie du signal décodé est nettement inférieure à l'énergie du signal à coder dans le cas où les deux canaux sont déséquilibrés. Dans notre exem le, le paramètre d'information spatiale s'écrit:

ICLD [A ] = 10. dB ( 10)

On obtient donc: c[k] = lO' CLWno = l =

R 1^ X°-^ = 1000

Ce qui donne : 2c 2 [k] 2000000

\ + c 2 [k] V 1000001 c 2 [k] = - 0.0014142 (12)

l + c 2 [k] V 1000001

Les valeurs décodées seront alors :

= c l [k]M[j] l. 142 · 500.5Χ = 707.807 IX à la place de 1000X et R[j] = c 2 [k].M[j] 0.00l4142 - 500.5X = 0.7078071* à la place de X, ce qui revient à environ 3 dB de perte dans chaque canaux.

Pour ce type de cas, on peut voir qu'il est nécessaire de mettre en œuvre une technique de compensation d'énergie qui augmentera le débit nécessaire pour synthétiser correctement le signal stéréo au décodeur.

Afin de ne pas augmenter le débit nécessaire au codage stéréo, il existe un besoin d'effectuer une synthèse d'un signal stéréo qui ne nécessite pas de compensation d'énergie.

La présente invention vient améliorer la situation.

A cet effet, elle propose un procédé de décodage paramétrique d'un signal audionumérique stéréo comportant une étape de synthèse, par sous-bande de fréquence, du signal stéréo à partir d'un signal mono décodé issu d'un matriçage de réduction de canaux du signal stéréo et de paramètres d'information spatiale du signal stéréo, de telle sorte que les signaux obtenus sont de la forme:

R[j] = c 2 [j]M 2 \j]

avec L[j] et R[j] les canaux du signal synthétisé, ,[j] et M 2 [j] des signaux fonctions du signal mono décodé et c, |j] , c 2 [j] des gains. Les gains sont remarquables en ce qu'ils sont calculés de la façon suivante: 2I[j)

avec un rapport d'amplitude entre les deux canaux du signal stéréo, issu des paramètres décodés.

Ainsi, l'application de ces gains pour la synthèse du signal stéréo permet de s'affranchir de toute compensation à appliquer pour conserver l'énergie des signaux.

En effet, par l'application de ces gains, la synthèse permet de synthétiser un signal stéréo avec une différence d'intensité intercanal sans perte d'énergie.

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éfini ci-dessus.

Dans un mode de réalisation, les signaux J ] et M 2 [j] sont égaux au signal mono décodé.

Ceci s'applique en particulier dans le cas où les canaux du signal stéréo ne sont pas déphasés.

Dans un autre mode de réalisation, le procédé comporte en outre une étape de réception des phases des canaux du signal stéréo et les signaux M [j] ou M 2 [j] correspondent au signal mono décodé auquel un déphasage correspondant à la phase reçue est appliqué pour chacun des canaux.

Ceci s'applique dans le cas où les canaux du signal stéréo sont déphasés. Dans encore un autre mode de réalisation un des signaux M, [j] et M 2 [ j\ correspond à une décorrélation temporelle du signal mono décodé alors que l'autre est égal au signal mono décodé.

Ce mode de réalisation s'applique dans le cas où la synthèse prend en compte non seulement le signal mono décodé mais aussi le signal mono décorrélé.

L'invention se rapporte également à un décodeur paramétrique d'un signal audionumérique stéréo comportant un module de synthèse effectuant une synthèse, par sous-bande fréquence, du signal stéréo à partir d'un signal mono décodé issu d'un matriçage de réduction de canaux du signal stéréo et de paramètres d'information spatial du signal stéréo, de telle sorte que les signaux obtenus sont de la forme:

L j] = c [ [j].M l [j]

R[j] = c 2 [jlM 2 [j]

avec L[j] et R[j] les canaux du signal synthétisé, M v [j et M 2 [j] des signaux fonctions du signal mono décodé et c [j] , c 2 [j] des gains. Le module de synthèse effectue le calcul des gains de la façon suivante:

2

c 2 lj] = avec î[j] un rapport d'amplitude entre les deux canaux du signal stéréo, issu des paramètres décodés.

Elle se rapporte aussi à un programme informatique comprenant des instructions de code pour la mise en œuvre des étapes du procédé de décodage tel que décrit, lorsque celles-ci sont exécutées par un processeur.

L'invention se rapporte enfin à un moyen de stockage lisible par un processeur mémorisant un programme informatique tel que décrit.

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 un codeur mettant en œuvre un codage paramétrique connu de l'état de l'art et précédemment décrit;

- la figure 2 illustre un décodeur mettant en œuvre un décodage paramétrique connu de l'état de l'art et précédemment décrit;

- la figure 3 illustre un codeur paramétrique stéréo délivrant un signal mono issu d'un matriçage de réduction de canaux et des paramètres d'information spatiale du signal stéréo; - la figure 4 illustre un décodeur selon un mode de réalisation de l'invention, mettant en œuvre un procédé de décodage selon un mode de réalisation de l'invention;

- la figure 5 illustre l'effet de compensation automatique que l'invention permet d'obtenir; et

- la figure 6 illustre un dispositif apte à mettre en œuvre le procédé de décodage selon un mode de réalisation de l'invention.

En référence à la figure 3, un codeur paramétrique de signaux stéréo délivrant à la fois un signal mono et des paramètres d'information spatiale du signal stéréo est maintenant décrit.

A noter que dans la suite on utilisera l'indice k pour noter un indice de sous- bande fréquentielle et l'indice j pour noter un indice de raie fréquentielle.

Ce codeur stéréo paramétrique opère en bande élargie avec des signaux stéréo échantillonnés à 16 kHz avec des trames de 5 ms. Chaque canal (L et R) est d'abord pré-filtré par un filtre passe-haut (HPF pour High Pass Filter en anglais) éliminant les composantes en dessous 50 Hz (blocs 301 et 302).

Le passage du signal stéréo dans le domaine fréquentiel est effectué par les blocs 303a, 303b, 303c et 303d.

Le calcul du signal mono s'effectue dans le bloc 303e de matriçage du signal stéréo ou "downmix" dans lequel le signal est calculé dans le domaine fréquentiel par la formule suivante:

où |.j représente l'amplitude (module complexe) et Z(.) la phase (argument complexe).

Ainsi, les canaux L et R sont mis en phase de sorte qu'une phase ZM (j) est choisie comme phase de référence pour chaque raie spectrale du signal mono. L'amplitude du signal mono est calculée en moyennant les amplitudes des canaux L et R. Dans le mode de réalisation privilégié on fixe: ZM ( _/ ' ) = ZR(j) . Les blocs 303f, 303g et 303h pennettent de ramener le signal mono dans le domaine temporel afin d'être codé par le bloc 304.

Le codage du signal mono s'effectue par un codeur de type G.722, tel que décrit par exemple dans la recommandation UIT-T G.722, 7 kHz audio-coding within 64 kbit/s, Nov. 1988.

Le retard introduit dans le codage de type G.722 est de 22 échantillons à 16 kHz et celui du "downmix" dans le domaine fréquentiel est de 80 échantillons à 16 kHz. Les canaux L et R sont alignés dans le temps (blocs 305 et 308) avec un retard de T' = 22+80 = 102 échantillons et analysés en fréquentiel par transformée, par exemple par transformée en Fourier discrète avec fenêtrage sinusoïdal à recouvrement qui dans l'exemple ici est de 50% (blocs 306, 307 et 309, 310). Chaque fenêtre couvre ainsi 2 trames de 5 ms soit 10 ms (160 échantillons).

Le bloc 311 permet d'extraire les paramètres d'information spatiale du signal stéréo.

Dans un mode de réalisation particulier, le calcul des paramètres s'effectue par sous- bande de fréquence après une étape de découpage des spectres L[ j] et R [j] en un nombre prédéterminé de sous-bandes de fréquence, par exemple ici 20 sous-bandes suivant l'échelle définie ci-dessous:

{ B(k) Jfc-o.,.,20 = [0, 1, 2, 3, 4, 5, 6, 7, 9, 11 , 13, 16, 19, 23, 27, 31, 37, 44, 52,

61, 80j

Cette échelle délimite (en nombre de coefficients de Fourier) les sous- bandes fréquentielles d'indice k = 0 à 19. Par exemple la première sous-bande (k=0) va du coefficient B(k)=0 à B(k+l)-l = 0; elle est donc réduite à un seul coefficient (100 Hz).

De même la dernière sous-bande (k=l9) va du coefficient B(k)=6l à B(k+1)- 1 = 79, elle comprend 19 coefficients (1900 Hz).

L'obtention de ces paramètres est par exemple effectuée par le calcul suivant: Le rapport î[k] représente le rapport d'amplitude raie par raie entre les canaux gauche et droit décodé. Afin de reproduire une image spatiale au décodeur similaire à celle des signaux stéréo en entrée du codeur, on définit ici au codeur le rapport l [k] comme:

On suppose que le rapport l [k] est codé dans le domaine logarithmique. On peut également exploiter le fait que le paramètre ICLD [/t ] pour h=0 peut être négligé. Son calcul et donc son codage peuvent être évités.

Un exemple de codage des paramètres l [k] est détaillé ci-dessous:

- pour les trames d'indice pair: codage d'un bloc de 9 paramètres par quantification scalaire non-uniforme avec:

• 5 bits pour le premier paramètre l [k] avec k=\

• 4 bits pour les 8 paramètres l[k] suivants

- pour les trames d'indice t impair: codage d'un bloc de 10 paramètres {l[fc]} i=10 19 comme présenté précédemment

• 5 bits pour le premier paramètre l [k] ,

• 4 bits pour les 8 paramètres l[k] suivants,

• 3 bits pour le dernier (dixième) paramètre l [k] .

On utilise ainsi, dans ce mode de réalisation, 37 bits pour les trames d'indice pair (avec 3 bits d'usage réservé) et 40 bits pour les trames d'indice impair. La longueur de trame étant de 5 ms on obtient 40 bits par trame, soit un débit de 8 kbit/s pour l'extension stéréo (en plus du codage G.722).

Un exemple plus détaillé de réalisation est par exemple comme ci-dessous: Pour la table de quantification:

tab_ild_q5[31] = {-50, -45, -40, -35, -30, -25, -22, - 19, -16, -13, - 10, -8, -6, - 4, -2, 0, 2, 4, 6, 8, 10, 13, 16, 19, 22, 25, 30, 35, 40, 45, 50} la quantification à 5 bits del [£] J consiste à trouver l'indice de quantification tel que i = arg min j= o...3o| I[k] - tab_ild_q5{j]| A 2

De même pour la pour la table de quantification:

tab_ild_q4[15] = {-16, -13, -10, -8, -6, -4, -2, 0, 2, 4, 6, 8, 10, 13, 16} la quantification à 4 bits de I[k] consiste à trouver l'indice de quantification i tel que i = arg min j =o... i 5 1 I[k] - tab_ild_q4 j]| A 2

Enfin pour la table de quantification tab_ild_q3[7] = { -16, -8, -4, 0, 4, 8, 16 } la quantification à 3 bits de I[k] consiste à trouver l'indice de quantification / ' tel que i = arg min p o. , . 15 | I[k] - tab_ild_q3 j]| A 2

Dans le mode de réalisation privilégié, on transmet en plus la phase ZR [ j] pour j=2..10 avec 5 bits par phase dans une deuxième couche d'extension de 8 kbit/s. Chaque phase est quantifiée avec un quantificateur uniforme dont la table de niveau de reconstruction est donnée ci-dessous :

tab_phase_q5[32] = { 0, π/16, 2π 16, 3π/16, 4π/16, 5 /ΐ6, 6 /16, 7π/16, 871 16, 9π/16, 10π 16, 11π 16, 1271/16, 1371/16, 1471/16, 1571/16}

Le paramètre de ICLD défini à l'équation (1) correspond ainsi au rapport I[k], cependant I[k] est homogène à un rapport d'amplitude alors que l'ICLD est homogène à un rapport d'énergie.

Dans le mode de réalisation décrit ci-dessus, on se situait dans le contexte d'un codeur en bande élargie fonctionnant avec une fréquence d'échantillonnage de 16 kHz et une découpe en sous-bande particulière.

Dans un autre mode de réalisation possible, le codeur peut opérer à d'autres fréquences (comme 32 kHz) et avec une découpe en sous-bandes différente.

En particulier, dans une variante du mode de réalisation, le calcul des paramètres s'effectue raie par raie, ce qui est équivalent à définir des sous-bandes de fréquence réduites à un coefficient de Fourier ; on obtient alors 80 sous-bandes pour l'exemple du mode de réalisation avec des trames 5 ms à 16 kHz de fréquence d' échantillonnage.

La figure 4 illustre un décodeur dans un mode de réalisation de l'invention ainsi que le procédé de décodage qu'il met en œuvre.

La partie du train binaire scalable en débit et reçu du codeur G.722 est démultiplexée et décodée par un décodeur de type G.722 (bloc 401) au mode de 56 ou 64 kbit/s. Le signal synthétisé obtenu correspond au signal mono M (n) en l'absence d'erreurs de transmission.

Une analyse par transformée de Fourier discrète à court-terme avec le même fenêtrage qu'au codeur est réalisée surM(n) (blocs 402 et 403) pour obtenir le spectre M[j] .

La partie du train binaire associée à l'extension stéréo est aussi démultiplexée au bloc 404. Comme expliqué précédemment, on suppose ici que le codeur génère deux couches de train binaire pour l'extension stéréo de G.722 : une première couche contenant les indices de codage des paramètres l[k] et une deuxième couche contenant les indices de codage des phase ..

Le fonctionnement du bloc 405 de synthèse est maintenant détaillé.

Dans un premier temps, pour simplifier la description on suppose que la découpe en sous-bandes fréquentielles est telle que chaque sous-bande comprend un seul coefficient. Ainsi î[k] devient

Les spectres des canaux gauche et droit sont synthétisés comme suit:

R[j] = c 2 [j)M 2 [j)

avec L[j] et R[j] les canaux du signal synthétisé, M { [j] et M 2 [j] des signaux fonctions du signal mono décodé M[j] et c^j] , c 2 [j] des gains calculés de la façon suivante:

avec I[j] un rapport d'amplitude entre les deux canaux du signal stéréo, issu des paramètres décodés.

Dans un mode de réalisation privilégie on définit M j] = M 2 [j] = M[j] quand le décodeur reçoit la première couche d'extension stéréo à 8 kbit/s, M t [j] = M[j] et M l [j] = M[j].e J R ^ où ^R[y] est la phase décodée quand le décodeur reçoit en plus la deuxième couche d'extension stéréo à 16 kbit/s.

A noter que l'invention s'applique pareillement au cas plus général où ,|j] et M 2 [j] sont dérivés de M[j] . Par exemple dans une variante un des signaux M [j] ou M 2 [j] correspond à une décorrélation temporelle du signal mono décodé et mis dans le domaine fréquentiel alors que l'autre est égal au signal mono décodé mis dans le domaine fréquentiel M[j] .

Selon un mode de réalisation de l'invention, le décodeur ne reçoit pas directement les valeurs codées des deux facteurs d'échelle c, [ j] et c 2 [ j] , mais il décode un paramètre, noté ici l [j] , défini comme le rapport entre les deux facteurs d'échelle:

Au codeur, comme exemple de réalisation, / [ j] peut être défini comme le rapport d'amplitude des deux canaux :

et on note î[j] la valeur reconstruite de / [j] au décodeur. L'invention consiste à déterminer les facteurs d'échelle et c 2 [j] à partir du rapport î[j] en définissant la contrainte suivante sur le signal mono décodé M[j] a ) = ± (18)

On détermine alors les facteurs c, [ ] et c 2 [j] à partir du rapport [ [j] selon l'équation (16) ci-dessus.

On démontre ci-dessous que ces facteurs d'échelle permettent de retrouver le signal stéréo tel que codé.

Dans le cas particulier de réalisation où M { [j] = M 2 [j] = [y] c'est-à-dire quand les canaux du signal stéréo ne sont pas déphasés, on remarque en effet que d'après les équations (15) et (17), les canaux gauche et droit décodés sont liés par la relation:

La contrainte de l'é uation 18 im se:

L'équation (20) permet d'obtenir le canal droit décodé à partir de M [j] et du paramètre î[j] '.

De façon similaire, en combinant les équations ( 16) et (21), on obtient le canal gauche décodé à partir de M[j] et du paramètre î[j] : En comparant les équations (15), (21) et (22), on retrouve donc bien l'équation (16).

Si on suppose que les canaux gauche et droit (signaux complexes dans le domaine fréquentiel) sont en phase et diffère uniquement en amplitude, c'est-à-dire L[j} = I[j]R[j\ où I[j] est le ratio d'amplitude, on peut vérifier facilement que l'invention permet de retrouver exactement les canaux originaux dans le cas d'un codage idéal où j] = / [ j] et M [j] = M [ j] - en effet dans ce cas pour ZM (j) = « d'après

les équations (21 et (22) on trouve

et

L(j) = î [ j] R(j) = I[j]R[j] = L[j]

Lorsque les canaux gauche et droit ne sont pas en phase, c'est-à-dire lorsque Mi ij]≠ M 2 |j] , le "downmix" décrit à l'équation (5) force l'alignement de la phase de ces canaux.

Dans ce mode de réalisation de l'invention, le procédé de décodage s'applique donc à retrouver exactement le rapport d'amplitude. Cependant, les phases des canaux gauche et droit doivent être codées et transmises en plus des paramètres pour synthétiser correctement les deux canaux.

Si l'on suppose que ZM(j) = ZR(j) , la phase du signal mono décodé correspond à la phase du canal droit ZR( j) et il suffit de transmettre la phase du canal gauche ZL(j) - ou inversement si la phase du signal mono décodé correspond à la phase du canal gauche ZL( j) .

Les signaux M, [j] et M 2 [j] correspondent alors au signal mono décodé auquel un déphasage correspondant à la phase reçue est appliqué pour chacun des canaux. Dans un premier mode de réalisation, l'invention suppose ici de transmettre les paramètres pour chaque raie fréquentielle. Dans l'exemple décrit ci-dessus, le spectre comprend 80 raies complexes, donc en principe 80 paramètres devraient être transmis.

Dans un deuxième temps, on suppose que la découpe en sous-bandes fréquentielles est telle que les sous-bandes ont une taille non uniforme comme dans le mode de réalisation privilégié du codeur. Ainsi le décodeur reçoit comme paramètre stéréo / [k] qui correspond à la valeur codée / [k] par sous-bande dont un exemple de définition a été donné précédemment à l'équation 14.

Dans cette variante plus avantageuse de réalisation de l'invention le spectre est divisé en sous-bandes comme décrit en référence à la figure 3.

Au décodeur, les spectres L[j] et R [ j] sont découpés comme au codeur en

20 sous-bandes suivant l'échelle définie ci-dessous:

{ B(k) }fco...,20 = [0, 1 , 2, 3, 4, 5, 6, 7, 9, 11 , 13, 16, 19, 23, 27, 31 , 37, 44, 52,

61, 80]

Les premières sous-bandes se réduisent à un seul coefficient (complexe) ce qui permet de mettre en œuvre le procédé de décodage selon l'invention.

Pour les sous-bandes de plus d'un coefficient - d'indice k > 6 - on utilise un seul facteur d'échelle par canal pour toute la sous-bande k , selon:

Le codeur transmet alors l[k] .

En utilisant les mêmes principes que ceux du mode de réalisation décrit ci- dessus, on trouve au décodeur:

R(y) = M (j) (26)

I [k] + l L'avantage de cette variante est de transmettre 20 paramètres l [k] au lieu de

80 paramètres. Dans une version optimisée on ne transmet pas le paramètre l [0] qui correspond à une bande de 0-50 Hz dans laquelle la différence d'intensité intercanal n'est pas perceptuellement importante.

L'énergie totale - raie ar raie - du signal stéréo décodé est donnée par: L(j) 2 + kjf = B(k)...B(k + 1) - 1

En notant a(I[k\) = \ -J— on trouve deux valeurs limites:

\ I[k] J

Pour î[k] = 0 dB, on a a(I[k]) =2

Pour î[k] > +/- 100 dB, on a (I[k]) = 4

La figure 5 illustre les valeurs d'énergie en fonction du rapport I en dB. On peut ainsi remarquer que la synthèse selon l'invention permet d'obtenir une compensation automatique de l'énergie dans les zone où î[k] > +/-100 dB .

Cette méthode ne nécessite donc pas de technique de compensation coûteuse en débit puisque seul le calcul spécifique des gains appliqué à la synthèse permet d'obtenir cette compensation. En référence à nouveau à la figure 4, les canaux gauche et droit L(«) et

R(n) sont reconstruits par transformée de Fourier discrète inverse (blocs 406 et 409) des spectres respectifs L[j] et R[j] issus du bloc de synthèse 405 et addition- recouvrement (blocs 408 et 411) avec fenêtrage sinusoïdal (blocs 407 et 410).

Ainsi, le décodeur décrit en référence à la figure 4, dans le mode particulier de réalisation au décodage de signaux stéréo, met en œuvre un procédé de décodage paramétrique d'un signal audionumérique stéréo comportant une étape de synthèse (synth.), par sous-bande fréquence, du signal stéréo à partir d'un signal mono décodé issu d'un matriçage de réduction de canaux du signal stéréo et de paramètres d'information spatiale du signal stéréo, de telle sorte que les signaux obtenus sont de la forme:

R[j] = c 2 [j].M 2 [j]

avec L[j] et R[j] les canaux du signal synthétisé, M x [j] et M 2 [j] des signaux fonctions du signal mono décodé et c,[ j] , c 2 [j] des gains. Les gains sont calculés de la façon suivante:

2Î[j]

2 avec I[j] un rapport d'amplitude entre les deux canaux du signal stéréo, issu des paramètres décodés.

En reprenant l'exemple mentionné au début selon les techniques de l'état de l'art avec L j] = 1000X, R[j] = X, M j] = (L[j]+R[j]) 2 = 500.5X , et en définissant I[j] comme

1 000

en négligeant l'erreur de quantification, on a donc îfj] = I[j] et on obtient:

r ·ΐ - 2 - 2

C2 J " /[ ] + r i001

Les valeurs décodées sont alors :

2000

L j} = c, [k].M[j] = 500.5X = ÎOOOX

1001

R[y] = c [k].M[j] = 500.5X = X

2 1001

On retrouve ainsi, au décodeur, exactement les valeurs à coder, sans nécessiter d'un facteur de correction. Cette technique est donc plus efficace que celle utilisée dans l'état de l'art.

L'invention a été décrite ici dans le cas d'un codeur/décodeur G.722. Elle peut bien évidemment s'appliquer dans le cas d'un codeur G.722 modifié, par exemple incluant des mécanismes de réduction de bruit ("noise feedback" en anglais) ou incluant une extension scalable de G.722 avec informations supplémentaires. L'invention peut également s'appliquer dans le cas d'un autre codeur mono que celui de type G.722 comme par exemple un codeur de type G.711.1. Dans ce dernier cas, le retard T doit être ajusté pour prendre en compte le retard du codeur G.711.1.

De même, l'analyse temps-fréquence du mode de réalisation décrit en référence à la figure 3 pourrait être remplacée suivant différentes variantes:

- un autre fenêtrage que le fenêtrage sinusoïdal pourrait être utilisé,

- un autre recouvrement que le recouvrement à 50% entre fenêtres successives pourrait être utilisé

- une autre transformée fréquentielle que la transformée de Fourier, par exemple la transformée en cosinus discret modifiée (MDCT en anglais) pourrait être utilisée.

Les modes de réalisation décrit précédemment traitaient du cas d'un signal multicanal de type signal stéréo, la réalisation de l'invention s'étend également au cas plus général du codage de signaux multicanaux (avec plus de 2 canaux audio) à partir d'un "downmix" mono ou même stéréo.

Dans ce cas le codage de l'information spatiale implique le codage et la transmission de paramètres d'information spatiale. C'est par exemple le cas de signaux à 5.1 canaux comprenant un canal gauche (L), droit (R), centre (C), arrière gauche (Ls pour Left surround), arrière droit (Rs pour Right surround), et subwoofer (LFE pour Low Frequency Effects). Les paramètres d'information spatiale du signal multicanal prennent alors en compte les différences ou les cohérences entre les différents canaux.

Les codeurs et décodeurs tels que décrit en référence aux figures 3 et 4 peuvent être intégrés à un équipement multimédia de type décodeur de salon, ordinateur ou encore équipement de communication tel qu'un téléphone mobile ou agenda électronique personnel.

La figure 6 représente un exemple d'un tel équipement multimédia ou dispositif de décodage comportant un décodeur selon l'invention.

Ce dispositif comporte un processeur PROC coopérant avec un bloc mémoire BM comportant une mémoire de stockage et/ou de travail MEM.

Le bloc mémoire peut avantageusement comporter un programme informatique comportant des instructions de code pour la mise en œuvre des étapes du procédé de décodage au sens de l'invention, lorsque ces instructions sont exécutées par le processeur PROC, et notamment l'étape de synthèse (synth.), par sous-bande fréquence, du signal stéréo à partir d'un signal mono décodé ( M[j] ) issu d'un matriçage de réduction de canaux du signal stéréo et de paramètres d'information spatiale du signal stéréo, de telle sorte que les signaux obtenus sont de la forme:

avec L[j] et R[j] les canaux du signal synthétisé, M, [j] et M 2 [j] des signaux fonctions du signal mono décodé et cjy ' j , c 2 \j] des gains. Les gains sont calculés de la façon suivante:

2

c 2 U] = -

/UJ + i

avec I[j] un rapport d'amplitude entre les deux canaux du signal stéréo, issu des paramètres décodés.

Typiquement, la description de la figure 4 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 dispositif ou téléchargeable dans l'espace mémoire de l'équipement.

Le dispositif comporte un module d'entrée apte à recevoir les paramètres d'information spatiale codés P c et un signal mono M provenant par exemple d'un réseau de communication. Ces signaux d'entrée peuvent provenir d'une lecture sur un support de stockage.

Le dispositif comporte un module de sortie apte à transmettre un signal stéréo S s décodé par le procédé de décodage mis en œuvre par l'équipement.

Cet équipement multimédia peut également comporter des moyens de restitution de type haut-parleur ou des moyens de communication apte à transmettre ce signal stéréo.