(19)
(11) EP 3 427 260 B1

(12) FASCICULE DE BREVET EUROPEEN

(45) Mention de la délivrance du brevet:
28.04.2021  Bulletin  2021/17

(21) Numéro de dépôt: 17713746.0

(22) Date de dépôt:  10.03.2017
(51) Int. Cl.: 
G10L 19/008(2013.01)
(86) Numéro de dépôt:
PCT/FR2017/050547
(87) Numéro de publication internationale:
WO 2017/153697 (14.09.2017 Gazette  2017/37)

(54)

CODAGE ET DÉCODAGE OPTIMISÉ D'INFORMATIONS DE SPATIALISATION POUR LE CODAGE ET LE DÉCODAGE PARAMÉTRIQUE D'UN SIGNAL AUDIO MULTICANAL

OPTIMIERTE CODIERUNG UND DECODIERUNG VON VERRÄUMLICHUNGSINFORMATIONEN ZUR PARAMETRISCHEN CODIERUNG UND DECODIERUNG EINES MEHRKANALIGEN AUDIOSIGNALS

OPTIMIZED CODING AND DECODING OF SPATIALIZATION INFORMATION FOR THE PARAMETRIC CODING AND DECODING OF A MULTICHANNEL AUDIO SIGNAL


(84) Etats contractants désignés:
AL AT BE BG CH CY CZ DE DK EE ES FI FR GB GR HR HU IE IS IT LI LT LU LV MC MK MT NL NO PL PT RO RS SE SI SK SM TR

(30) Priorité: 10.03.2016 FR 1652034

(43) Date de publication de la demande:
16.01.2019  Bulletin  2019/03

(73) Titulaire: ORANGE
75015 Paris (FR)

(72) Inventeurs:
  • FATUS, Bertrand
    78150 Le Chesnay (FR)
  • RAGOT, Stéphane
    Lannion 22300 (FR)
  • EMERIT, Marc
    35000 Rennes (FR)


(56) Documents cités: : 
US-A1- 2008 252 510
US-A1- 2011 103 591
   
  • GAO LI ET AL: "Azimuthal Perceptual Resolution Model Based Adaptive 3D Spatial Parameter Coding", 5 janvier 2015 (2015-01-05), NETWORK AND PARALLEL COMPUTING; [LECTURE NOTES IN COMPUTER SCIENCE; LECT.NOTES COMPUTER], SPRINGER INTERNATIONAL PUBLISHING, CHAM, PAGE(S) 534 - 545, XP047303645, ISSN: 0302-9743 ISBN: 978-3-642-36762-5 "Algorithm 1" de la section 2; section 3.4; section 3.5; section 4
  • TACKSUNG CHOI ET AL: "Virtual Sound Rendering in a Stereophonic Loudspeaker Setup", IEEE TRANSACTIONS ON AUDIO, SPEECH AND LANGUAGE PROCESSING, IEEE SERVICE CENTER, NEW YORK, NY, USA, vol. 19, no. 7, 1 septembre 2011 (2011-09-01), pages 1962-1974, XP011329897, ISSN: 1558-7916, DOI: 10.1109/TASL.2011.2104954
   
Il est rappelé que: Dans un délai de neuf mois à compter de la date de publication de la mention de la délivrance de brevet européen, toute personne peut faire opposition au brevet européen délivré, auprès de l'Office européen des brevets. L'opposition doit être formée par écrit et motivée. Elle n'est réputée formée qu'après paiement de la taxe d'opposition. (Art. 99(1) Convention sur le brevet européen).


Description


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

[0002] 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).

[0003] Plus particulièrement, la présente invention se rapporte au codage et au décodage multicanal paramétrique de signaux audio multicanaux.

[0004] L'invention s'intéresse donc aux signaux multicanaux, et en particulier aux signaux binauraux qui sont des signaux sonores enregistrés avec des microphones placés à l'entrée du conduit de chaque oreille (d'une personne ou d'un mannequin) ou bien synthétisés artificiellement par le biais de filtres connus sous le nom de filtres HRIR (Head-Related Impulse Response) dans le domaine temporel ou HRTF (Head-Related Transfer Function) dans le domaine fréquentiel, qui sont fonction de la direction et de la distance de la source sonore et de la morphologie du sujet. Les signaux binauraux sont associés à une écoute typiquement au casque ou oreillette et présentent l'avantage de représenter une image spatiale donnant l'illusion d'être naturellement au milieu d'une scène sonore; il s'agit donc d'une reproduction de la scène sonore en 3D avec seulement 2 canaux. On notera qu'il est possible d'écouter un son binaural sur des haut-parleurs moyennant des traitements complexes pour inverser les filtres HRIR/HRTF et reconstituer des signaux binauraux.

[0005] On distingue ici les signaux binauraux des signaux stéréo. Un signal stéréo est aussi constitué de deux canaux mais il ne permet pas en général une reproduction parfaite de la scène sonore en 3D. Par exemple, un signal stéréo peut être construit en prenant un signal donné sur le canal gauche et un signal nul sur le canal droit, à l'écoute un tel signal donnera une localisation de source sonore sur la gauche mais dans un environnement naturel cet artifice n'est pas possible car le signal à l'oreille droite est une version filtrée (incluant un décalage temporel et une atténuation) du signal à l'oreille gauche en fonction de la morphologie de la personne.

[0006] Le codage multicanal paramétrique se base sur l'extraction et le codage de paramètres d'information spatiale afin qu'au décodage ces caractéristiques spatiales puissent être utilisées pour recréer la même image spatiale que dans le signal original. Des exemples de codecs basés sur ce principe se trouvent dans les standards 3GPP e-AAC+ ou MPEG Surround.

[0007] On considère ici à titre d'exemple le cas du codage stéréo paramétrique avec N=2 canaux, dans la mesure où sa description est plus simple que dans le cas de N>2 canaux.

[0008] Une technique de codage/décodage stéréo paramétrique est par exemple décrite dans le document de J. Breebaart, S. van de Par, A. Kohlrausch, E. Schuijers, intitulé "Parametric Coding of Stereo Audio" dans EURASIP Journal on Applied Signal Processing 2005:9, pp. 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.

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

[0010] Les signaux temporels L(n) et R(n), où n est l'indice entier des échantillons, sont traités par les blocs 101, 102, 103 et 104 qui effectuent une analyse de Fourier court-terme. Les signaux transformés L[k] et R[k],k est l'indice entier des coefficients fréquentiels, sont ainsi obtenus.

[0011] Le bloc 105 effectue un traitement de réduction de canaux ou "downmix" en anglais pour obtenir dans le domaine fréquentiel à partir des signaux gauche et droit, un signal monophonique ci-après nommé signal mono. Plusieurs techniques ont été développées pour le traitement de réduction des canaux ou "downmix" stéréo à mono. Ce "downmix" peut être effectué dans le domaine temporel ou fréquentiel. On distingue en général :
  • Le "downmix" passif qui correspond à un matriçage direct des canaux stéréo pour les combiner en un seul signal - les coefficients de la matrice de downmix sont en général réels et de valeurs prédéterminées (fixes);
  • Le "downmix" actif (adaptatif) qui inclut un contrôle de l'énergie et/ou de la phase en plus de la combinaison des deux canaux stéréo.


[0012] Une extraction de paramètres d'information spatiale est également effectuée dans le bloc 105. Les paramètres extraits sont les suivants.

[0013] Les paramètres ICLD ou ILD ou CLD (pour "InterChannel / Channel Level Difference" 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. Ces paramètres permettent de positionner des sources sonores dans le plan horizontal stéréo par "panning". Ils sont définis en dB par la formule suivante:

L[k] et R[k] correspondent aux coefficients spectraux (complexes) des canaux L et R, chaque bande de fréquence d'indice b = 0, ..., B - 1 comprend les raies fréquentielles dans l'intervalle [kb, kb+1 - 1], le symbole * indique le conjugué complexe et B est le nombre de sous-bandes.

[0014] Les paramètres ICPD ou IPD (pour "InterChannel Phase Difference" en anglais), encore appelés différences de phase, sont définis suivant la relation suivante:

où ∠ indique l'argument (la phase) de l'opérande complexe.

[0015] On peut également définir de façon équivalente à l'ICPD, un décalage temporel intercanal appelé ICTD ou ITD (pour "InterChannel Time Difference" en anglais). L'ITD peut être mesuré par exemple comme le retard maximisant l'intercorrélation entre L et R:

où d définit l'intervalle de recherche du maximum. On notera que la corrélation à l'équation (3) peut être normalisée.

[0016] A la différence des paramètres ICLD, ICPD et ICTD qui sont des paramètres de localisation, le paramètre ICC (pour "InterChannel Coherence" en anglais) représente le niveau de corrélation (ou cohérence) inter-canal et est associé à la largeur spatiale d'une source sonore; l'ICC peut être défini comme :

où la corrélation peut être normalisée comme pour l'éq. (3).

[0017] Il est noté dans l'article de Breebart et al. que les paramètres ICC ne sont pas nécessaires dans les sous-bandes réduites à un seul coefficient fréquentiel - en effet les différences d'amplitude et de phase décrivent complètement la spatialisation dans ce cas "dégénéré".

[0018] Les paramètres ICLD et ICPD sont extraits par analyse des signaux stéréo, par le bloc 105. Les paramètres ICTD ou ICC peuvent également être extraits par sous-bande à partir des spectres L[k] et R[k] ; cependant leur extraction est en général simplifiée en supposant un décalage temporel intercanal identique pour chaque sous-bande et dans ce cas un paramètre peut être extrait à partir des canaux temporels L(n) et R(n).

[0019] Le signal mono M[k] est transformé 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 ensuite réalisé. En parallèle les paramètres stéréo sont quantifiés et codés dans le bloc 110.

[0020] En général le spectre des signaux (L[k], R[k]) est divisé suivant une échelle fréquentielle non-linéaire de type ERB (Equivalent Rectangular Bandwidth) ou Bark. Les paramètres (ICLD, ICPD, ICC, ITD) sont codés par quantification scalaire éventuellement suivie d'un codage entropique et/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 entropique 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.

[0021] Pour le codage du signal mono (bloc 109), plusieurs techniques de quantification avec ou sans mémoire sont possibles, par exemple le codage à "Modulation par Impulsions Codées" (MIC), sa version avec prédiction adaptative dite "Modulation par Impulsions Codées Différentielle Adaptative" (MICDA) ou des techniques plus évoluées comme le codage perceptuel par transformée ou le codage "Code Excited Linear Prédiction" (CELP) ou un codage multi-modes.

[0022] On s'intéresse ici plus particulièrement au standard 3GPP EVS (Pour « Enhanced Voice Services ») qui utilise un codage multi-modes. Les détails algorithmiques du codec EVS sont fournis dans les spécifications 3GPP TS 26.441 à 26.451 et ils ne sont donc pas repris ici. Par la suite, on fera référence à ces spécifications par la dénomination EVS.

[0023] Le signal d'entrée du codec EVS (mono) est échantillonné à la fréquence de 8, 16, 32 ou 48 kHz et le codec peut représenter des bandes audio téléphoniques (narrowband, NB), élargie (wideband, WB), super-élargie (super-wideband, SWB) ou pleine bande (fullband, FB). Les débits du codec EVS sont divisés en deux modes:

o "EVS Primary":

o débits fixes: 7.2, 8, 9.6, 13.2, 16.4, 24.4, 32, 48, 64, 96, 128

o mode à débit variable (VBR) avec un débit moyen proche de 5.9 kbit/s pour la parole active

o mode "channel-aware" à 13.2 en WB et SWB uniquement

o "EVS AMR-WB IO" dont les débits sont identiques au codec 3GPP AMR-WB (9 modes)



[0024] A cela s'ajoute le mode de transmission discontinue (DTX) dans lequel les trames détectées comme inactives sont remplacées par des trames SID (SID Primary ou SID AMR-WB IO) qui sont transmises de façon intermittente, environ une fois toutes les 8 trames.

[0025] Au décodeur 200, en référence à la figure 2, le signal mono est décodé (bloc 201), un dé-corrélateur est utilisé (bloc 202) pour produire deux versions (n) et M̂'(n) du signal mono décodé. Cette décorrélation, nécessaire uniquement lorsque le paramètre ICC est utilisé, permet d'augmenter la largeur spatiale de la source mono (n). Ces deux signaux (n) et M̂'(n) sont 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 (ou mise en forme) 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).

[0026] Un exemple de codage stéréo paramétrique cherchant à représenter des signaux binauraux (sans respecter la nature des filtres HRTF) est décrit dans l'article de Pasi Ojala, Mikko Tammi, Miikka Vilermo, intitulé "Parametric binaural audio coding", dans Proc. ICASSP, 2010, pp. 393-396. Deux paramètres sont codés pour restituer une image spatiale avec une localisation proche d'une image binaurale: l'ICLD et l'ITD. De plus un paramètre ALC (pour « Ambiance Level Control » en anglais) similaire à l'ICC est également codé, permettant de contrôler le niveau de l' « ambiance » associée à l'utilisation de canaux décorrélés. Ce codec est décrit pour des signaux en bande super-élargie avec des trames de 20 ms et un débit de 20 ou 32 kbit/s pour coder le signal mono auquel s'ajoute un débit de 5 kbit/s pour coder les paramètres spatiaux.

[0027] Un autre exemple de codec stéréo paramétrique développé avec un mode spécifique pour coder des signaux binauraux est donné par la norme G.722 Annexe D, en particulier dans le mode de codage stéréo R1ws en bande élargie à 56+8 kbit/s. Ce codec fonctionne avec des trames "courtes" de 5 ms selon 2 modes: un mode "transitoire" où des ICLD sont codés sur 38 bits et un mode "normal" où des ICLD sont codés sur 24 bits avec un ITD /IPD pleine bande sur 5 bits. Les détails d'estimation de l'ITD, de codage des paramètres ICLD et ITD ne sont pas repris ici. On notera que les ICLD sont codés par « décimation » en distribuant le codage des ICLDs sur plusieurs trames successives, en ne codant qu'un sous-ensemble des paramètres d'une trame donnée.

[0028] Dans les deux exemples il est important de noter qu'il ne s'agit pas de codecs binauraux, mais de codecs stéréo cherchant à reproduire une image spatiale similaire à un signal binaural.

[0029] On notera que le cas du codage multicanal paramétrique avec N>2 suit le même principe du cas N=2, cependant en général le downmix peut ne pas être mono mais stéréo et les paramètres inter-canaux doivent couvrir plus que 2 canaux. Un exemple de réalisation est donné dans le standard MPEG Surround où des paramètres ICLD, ICTD et ICC sont codés. On notera aussi que le décodeur MPEG Surround inclut une restitution binaurale, paramétrée par des filtres HRTFs.

[0030] Considérons à présent le cas d'un codage et décodage stéréo de paramètres de type ICLD tel que décrit aux figures 1 et 2 et prenons le cas d'un signal en bande élargie, échantillonné à 16 kHz et analysé avec des trames de 20 ms et un fenêtrage sinusoïdal couvrant 40 ms (dont 20 ms de "lookahead"). Pour l'extraction des paramètres ICLD (bloc 105), les spectres L[k] et R[k] peuvent être par exemple découpés en B sous-bandes de fréquences selon l'échelle ERB. Pour chaque trame, l'ICLD de la sous-bande b=0,...,34 est calculée suivant l'équation:



et

représentent respectivement l'énergie du canal gauche (L[k]) et du canal droit (R[k]):



[0031] Selon l'état de l'art, le codage d'un bloc de 35 ICLD d'une trame donnée peut être réalisé par exemple avec:
  • 5 bits pour le premier paramètre ICLD (codé en absolu),
  • 4 bits pour les 32 paramètres ICLD suivants (codés en différentiel),
  • 3 bits pour les 2 derniers paramètres ICLD (codés en différentiel).
ce qui donne un total de 5 + 32x4 + 2x3 = 139 bits / trame, soit un débit proche de 7 kbit/s dans le cas de trames de 20 ms. Ce débit ne comprend pas les autres paramètres.

[0032] Ce débit d'approximativement 7 kbit/s peut être réduit en moyenne en utilisant un codage entropique à débit variable, par exemple un codage de Huffman; cependant la réduction de débit ne pourra pas être drastique dans la plupart des cas.

[0033] Pour diviser le débit du codage des paramètres ICLD par 2, il serait possible d'utiliser l'approche de codage alterné décrit précédemment dans le cas du codage G.722 stéréo. Cependant, le débit associé reste important pour un codage avec 35 sous-bandes et 20 ms de trame; de plus, la résolution temporelle du codage serait réduite ce qui peut être problématique dans le cas de signaux non stationnaires. Une autre approche consisterait à réduire le nombre de sous-bandes pour aller de 35 à par exemple 20 sous-bandes. Cela réduirait le débit associé aux paramètres ICLD, mais dégraderait en général la fidélité de l'image spatiale synthétisée.

[0034] Si on suppose que le codeur de la figure 1 est un codeur stéréo fonctionnant par exemple à des débits de 16.4, 24.4, 32, 48, 64, 96, 128 kbit/s et qu'il s'appuie sur un downmix codé par un codec EVS mono, alors pour les plus bas débits, par exemple 16.4 kbit/s en stéréo, si le downmix est codé avec le codec EVS mono à 13.2 kbit/s, il ne reste que 3.2 kbit/s pour coder tous les paramètres spatiaux afin de représenter fidèlement une image spatiale. Si on doit coder non seulement des paramètres ICLD, mais également d'autres paramètres spatiaux, on comprend que le codage des paramètres ICLD décrit précédemment requiert trop de débit.

[0035] L Gao, R Hu, Y Yang, X Wang, W Tu, T Wu, Azimuthal perceptual resolution model based adaptive 3D spatial parameter coding, multimédia modeling (Springer International Publishing, Sydney, 2015) proposes de quantifier les paramètres ICLD du codec MPEG Surround après les avoir transformés en angles azimutaux.

[0036] Il existe donc un besoin pour représenter les paramètres spatiaux d'un signal multicanal de façon efficace, à un débit aussi faible que possible et avec une qualité acceptable.

[0037] L'invention vient améliorer la situation de l'état de l'art.

[0038] A cet effet, elle propose un procédé de codage paramétrique d'un signal audionumérique multicanal comportant une étape de codage d'un signal issu d'un traitement de réduction de canaux appliqué au signal multicanal et de codage d'informations de spatialisation du signal multicanal. Le procédé est tel qu'il comporte les étapes suivantes :
  • extraction d'une pluralité d'informations de spatialisation du signal multicanal d'au moins deux types ;
  • obtention d'au moins un modèle de représentation des informations de spatialisation extraites ;
  • détermination d'au moins un paramètre d'angle d'un modèle obtenu ;
  • codage du au moins un paramètre d'angle déterminé pour coder les aux moins deux types d'informations de spatialisation extraites lors du codage d'informations de spatialisation.


[0039] La méthode de codage des informations de spatialisation s'appuie sur une approche basée modèle qui permet d'approximer les informations spatiales. Ainsi le codage d'une pluralité d'informations spatiales se réduit au codage d'un paramètre d'angle ce qui réduit considérablement le débit de codage par rapport au codage direct de l'information spatiale. Le débit nécessaire au codage de ce paramètre est donc réduit.

[0040] Dans un mode particulier de réalisation en sous bandes, les informations de spatialisation sont définies par sous-bandes de fréquence du signal audio multicanal et au moins un paramètre d'angle par sous-bande est déterminé et codé.

[0041] Dans un mode de réalisation particulier, le procédé comporte en outre les étapes de calcul d'une information de spatialisation de référence et de codage de cette information de spatialisation de référence.

[0042] Ainsi, le codage d'une information de référence peut améliorer la qualité de décodage. Le débit de codage de cette information de référence ne nécessite pas un débit trop important.

[0043] Cette méthode est particulièrement bien adaptée au codage de l'information spatiale de type décalage temporel intercanal (ITD) et/ou de type différence d'intensité intercanale (ILD).

[0044] Pour améliorer encore la qualité de décodage de l'information de type ILD, le procédé comporte en outre les étapes suivantes:
  • estimation d'une information de différence d'intensité intercanale à partir du modèle obtenu et du paramètre d'angle déterminé ;
  • codage de la différence entre l'information de différence d'intensité intercanale extraite et estimée.


[0045] Le codage de ce résidu nécessite un débit de codage supplémentaire mais cette méthode apporte toujours un gain en débit par rapport au codage direct de l'information de spatialisation ILD.

[0046] Dans un mode particulier de réalisation, un modèle de représentation par information de spatialisation est obtenu. Il peut être fixé et stocké en mémoire.

[0047] Ce modèle fixé et enregistré est par exemple un modèle de forme en sinus. Ce type de modèle est adapté à la forme de l'information ITD ou ILD selon la position de la source.

[0048] Dans une variante de réalisation, l'obtention d'un modèle de représentation des informations de spatialisation est effectuée par la sélection dans une table de modèles définis pour différentes valeurs des informations de spatialisation.

[0049] Plusieurs modèles peuvent être sélectionnables en fonction de caractéristiques du signal multicanal. Cela permet d'adapter au mieux le modèle d'information de spatialisation au signal.

[0050] L'index du modèle choisi peut alors être dans un mode de réalisation, codé et transmise.

[0051] Dans une variante de réalisation un modèle de représentation commun à plusieurs informations de spatialisation est obtenu.

[0052] Cela permet de mutualiser la sélection d'un modèle à plusieurs informations de spatialisation, ce qui réduit les opérations de traitement à effectuer.

[0053] L'invention se rapporte également à un procédé de décodage paramétrique d'un signal audionumérique multicanal comportant une étape de décodage d'un signal issu d'un traitement de réduction de canaux appliqué au signal multicanal et codé et de décodage d'informations de spatialisation du signal multicanal. Le procédé est tel qu'il comporte les étapes suivantes pour décoder au moins une information de spatialisation :
  • réception et décodage d'au moins un paramètre d'angle codé ;
  • obtention d'au moins un modèle de représentation d'informations de spatialisation ;
  • détermination d'une pluralité d'informations de spatialisation d'au moins deux types du signal multicanal à partir du au moins un modèle obtenu et du au moins un paramètre d'angle décodé.


[0054] De la même façon que pour le codage, cette méthode basée sur l'utilisation d'un modèle de représentation des informations de spatialisation permet de retrouver l'information avec une bonne qualité sans qu'il ne soit nécessaire d'avoir un trop grand débit. A débit réduit, un epluralité d'informations de spatialisation est retrouvée par le décodage d'un simple paramètre d'angle.

[0055] Dans un mode particulier de réalisation, le procédé comporte une étape de réception et de décodage d'un index de table de modèles et d'obtention du au moins un modèle de représentation des informations de spatialisation à décoder à partir de l'index décodé.

[0056] Ainsi, il est possible d'adapter le modèle à utiliser selon les caractéristiques du signal multicanal.

[0057] L'invention se rapporte à un codeur paramétrique d'un signal audionumérique multicanal comportant un module de codage d'un signal issu d'un module de traitement de réduction de canaux appliqué au signal multicanal et des modules de codage d'informations de spatialisation du signal multicanal. Le codeur est tel qu'il comporte :
  • un module d'extraction d'une pluralité d'informations de spatialisation du signal multicanal d'au moins deux types ;
  • un module d'obtention d'au moins un modèle de représentation des informations de spatialisation extraites ;
  • un module de détermination d'au moins un paramètre d'angle d'un modèle obtenu ;
  • un module de codage du au moins un paramètre d'angle déterminé pour coder les au moins deux types d'informations de spatialisation extraites lors du codage d'informations de spatialisation.


[0058] Le codeur présente les mêmes avantages que le procédé qu'il met en œuvre.

[0059] L'invention se rapporte à un décodeur paramétrique d'un signal audionumérique multicanal comportant un module de décodage d'un signal issu d'un traitement de réduction de canaux appliqué au signal multicanal et codé et un module de décodage d'informations de spatialisation du signal multicanal. Le décodeur est tel qu'il comporte :
  • un module de réception et décodage d'au moins un paramètre d'angle codé ;
  • un module d'obtention d'au moins un modèle de représentation des informations de spatialisation ;
  • un module de détermination d'une pluralité d'informations de spatialisation d'au moins deux types du signal multicanal à partir du au moins un modèle obtenu et du au moins un paramètre d'angle décodé.


[0060] Le décodeur présente les mêmes avantages que le procédé qu'il met en œuvre.

[0061] Enfin, l'invention se rapporte à un programme informatique comprenant des instructions de code pour la mise en œuvre des étapes d'un procédé de codage selon l'invention, lorsque ces instructions sont exécutées par un processeur, à un programme informatique comprenant des instructions de code pour la mise en œuvre des étapes d'un procédé de décodage selon l'invention, lorsque ces instructions sont exécutées par un processeur.

[0062] L'invention se rapporte enfin à support de stockage lisible par un processeur sur lequel est enregistré un programme informatique comprenant des instructions de code pour l'exécution des étapes du procédé de codage tel que décrit et /ou du procédé de décodage tel que décrit.

[0063] 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 selon un mode de réalisation de l'invention;
  • les figures 4a, 4b et 4c illustrent les étapes du procédé de codage selon différents modes de réalisation de l'invention par une illustration détaillée des blocs de codage d'informations spatiales;
  • les figures 5a, 5b illustrent les notions de perception sonore en 3D et 2D et la figure 5c illustre une représentation schématique de coordonnées polaires (distance, azimuth) d'une source audio dans le plan horizontal par rapport à un auditeur, dans le cas binaural ;
  • la figure 6a illustre des représentations de modèles d'énergie totale de HRTFs adaptés à représenter des informations spatiales de type ILD ;
  • la figure 6b illustre une configuration de microphones stéréo de type ORTF captant un exemple de signal à deux canaux à coder selon un mode de réalisation du procédé de codage de l'invention ;
  • les figures 6c à 6g illustrent des représentations d'un modèle d'information MILD(m,t) (pour m =0 et t correspondant à un azimuth de 0 à 360°) de spatialisation de type ILD par sous-bandes dans une découpe en 1/3 d'octave, en fonction de l'angle d'azimuth ;
la figure 7 illustre un décodeur paramétrique ainsi que le procédé de décodage selon un mode de réalisation de l'invention ;
  • la figure 8 illustre une variante de réalisation d'un codeur paramétrique selon l'invention;
  • la figure 9 illustre une variante de réalisation d'un décodeur paramétrique selon l'invention ; et
  • la figure 10 illustre un exemple matériel d'un équipement incorporant un codeur apte à mettre en œuvre le procédé de codage selon un mode de réalisation de l'invention ou un décodeur apte à mettre en œuvre le procédé de décodage selon un mode de réalisation de l'invention.


[0064] En référence à la figure 3, un codeur paramétrique de signaux à deux canaux selon un mode de réalisation de l'invention, délivrant à la fois un train binaire mono et des paramètres d'information spatiale du signal d'entrée est maintenant décrit. Cette figure présente à la fois les entités, modules hardwares ou logiciels pilotés par un processeur du dispositif de codage et les étapes mises en œuvre par le procédé de codage selon un mode de réalisation de l'invention.

[0065] On décrit ici le cas d'un signal à deux canaux. L'invention s'applique également au cas d'un signal multicanal avec un nombre de canaux supérieur à 2.

[0066] Pour éviter d'alourdir le texte, le codeur décrit à la figure 3 sera appelé "codeur stéréo" même s'il permet le codage de signaux binauraux. De même les paramètres ICLD, ICTD, ICPD seront respectivement notés ILD, ITD, IPD même si le signal n'est pas binaural.

[0067] Ce codeur stéréo paramétrique tel qu'illustré utilise un codage mono EVS selon les spécifications 3GPP TS 26.442 (code source en virgule fixe) ou TS 26.443 (code source en virgule flottante), il fonctionne avec des signaux stéréo ou multicanaux échantillonnés à la fréquence d'échantillonnage Fs de 8, 16, 32 et 48 kHz, avec des trames de 20 ms. Par la suite, sans perte de généralité, la description est principalement donnée pour le cas Fs =16 kHz et pour le cas N=2 canaux.

[0068] Il est à noter que le choix d'une longueur de trames de 20 ms n'est en aucun cas restrictif dans l'invention qui s'applique pareillement dans des variantes du mode de réalisation où la longueur de trames est différente, par exemple de 5 ou 10 ms, avec un autre codec qu'EVS.

[0069] Par ailleurs, l'invention s'applique pareillement à d'autres types de codage mono (ex : IETF OPUS, UIT-T G.722) opérant à des fréquences d'échantillonnage identiques ou non.

[0070] Chaque canal temporel (L(n) et R(n)) échantillonné à 16 kHz est d'abord pré-filtré par un filtre passe-haut (HPF pour High Pass Filter en anglais) éliminant typiquement les composantes en dessous de 50 Hz (blocs 301 et 302). Ce pré-filtrage est optionnel, mais il peut être utilisé pour éviter le biais dû à la composante continue (DC) dans l'estimation de paramètres comme l'ICTD ou l'ICC.

[0071] Les canaux L'(n) et R'(n) issus des blocs de pré-filtrage sont analysés en fréquences par transformée de Fourier discrète avec fenêtrage sinusoïdal à recouvrement de 50% de longueur 40 ms soit 640 échantillons (blocs 303 à 306). Pour chaque trame, le signal (L'(n), R'(n)) est donc pondéré par une fenêtre d'analyse symétrique couvrant 2 trames de 20 ms soit 40 ms (soit 640 échantillons pour Fs=16 kHz). La fenêtre d'analyse de 40 ms couvre la trame courante et la trame future. La trame future correspond à un segment de signal "futur" communément appelé "lookahead" de 20 ms. Dans des variantes de l'invention, d'autres fenêtres pourront être utilisées, par exemple une fenêtre asymétrique à bas retard appelée "ALDO" dans le codec EVS. De plus, dans des variantes, le fenêtrage d'analyse pourra être rendu adaptatif en fonction de la trame courante, afin d'utiliser une analyse avec une fenêtre longue sur des segments stationnaires et une analyse avec des fenêtres courtes sur des segments transitoires/non stationnaires, avec éventuellement des fenêtres de transition entre fenêtres longue et courte.

[0072] Pour la trame courante de 320 échantillons (20 ms à Fs=16 kHz), les spectres obtenus, L[k] et R[k] (k=0...320), comprennent 321 coefficients complexes, avec une résolution de 25 Hz par coefficient fréquentiel. Le coefficient d'indice k=0 correspond à la composante continue (0 Hz), il est réel. Le coefficient d'indice k=320 correspond à la fréquence de Nyquist (8000 Hz pour Fs=16 kHz), il est aussi réel. Les coefficients d'indice 0 < k <160 sont complexes et correspondent à une sous-bande de largeur 25 Hz centrée sur la fréquence de k.

[0073] Les spectres L[k] et R[k] sont combinés dans le bloc 307 pour obtenir un signal mono (downmix) M[k] dans le domaine fréquentiel. Ce signal est converti en temps par FFT inverse et fenêtrage-recouvrement avec la partie "lookahead" de la trame précédente (blocs 308 à 310).

[0074] Un exemple de technique de « downmix » fréquentiel est décrit dans le document intitulé "A stereo to mono downmixing scheme for MPEG-4 parametric stereo encoder" par Samsudin, E. Kurniawati, N. Boon Poh, F. Sattar, S. George, dans Proc. ICASSP, 2006. Dans ce document, les canaux L et R sont alignés en phase avant d'effectuer le traitement de réduction des canaux.

[0075] Plus précisément, la phase du canal L pour chaque sous-bande fréquentielle est choisie comme la phase de référence, le canal R est aligné selon la phase du canal L pour chaque sous-bande par la formule suivante:

R'[k] est le canal R aligné, k est l'indice d'un coefficient dans la bième sous-bande fréquentielle, ICPD[b] est la différence de phase inter-canal dans la bième sous-bande fréquentielle donnée par l'équation (2).

[0076] A noter que lorsque la sous-bande d'indice b est réduite à un coefficient fréquentiel, on trouve:



[0077] Finalement le signal mono obtenu par le "downmix" du document de Samsudin et al. cité précédemment est calculé en moyennant le canal L et le canal R' aligné, selon l'équation suivante:



[0078] L'alignement en phase permet donc de conserver l'énergie et d'éviter les problèmes d'atténuation en éliminant l'influence de la phase. Ce "downmix" correspond au "downmix" décrit dans le document de Breebart et al. où:

avec w1 = 0,5 et

dans le cas où la sous-bande d'indice b ne comporte qu'une valeur fréquentielle d'indice k.

[0079] D'autres méthodes de « downmix » peuvent bien sûr être choisies sans modifier la portée de l'invention.

[0080] Le retard algorithmique du codec EVS est de 30,9375 ms à Fs=8 kHz et 32 ms pour les autres fréquences Fs=16, 32 ou 48 kHz. Ce retard inclut la trame courante de 20 ms, le retard supplémentaire par rapport à la longueur de trame est donc de 10,9375 ms à Fs=8 kHz et 12 ms pour les autres fréquences (soit 192 échantillons à Fs =16 kHz), le signal mono est retardé (bloc 311) de T= 320-192= 128 échantillons pour que le retard accumulé entre le signal mono décodé par EVS et les canaux stéréo originaux devienne un multiple de la longueur de trames (320 échantillons). Par suite, pour synchroniser l'extraction de paramètres stéréo (bloc 314) et la synthèse spatiale à partir du signal mono effectué au décodeur, le lookahead pour le calcul du signal mono (20 ms) et le retard de codage/décodage mono auquel est ajouté le retard T pour aligner la synthèse mono (20 ms) correspondent à un retard supplémentaire de 2 trames (40 ms) par rapport à la trame courante. Ce retard de 2 trames est spécifique à la mise en œuvre détaillée ici, en particulier il est lié aux fenêtres symétriques sinusoïdales de 20 ms. Ce retard pourrait être différent. Dans une variante de réalisation, on pourrait obtenir un retard d'une trame avec une fenêtre optimisée avec un recouvrement plus faible entre fenêtres adjacentes avec un bloc 311 n'introduisant pas de retard (T=0).

[0081] Le signal mono décalé est ensuite codé (bloc 312) par le codeur EVS mono par exemple à un débit de 13,2, 16,4 ou 24,4 kbit/s. Dans des variantes, le codage pourra être effectué directement sur le signal non décalé ; dans ce cas le décalage pourra être effectué après décodage.

[0082] On considère dans un mode particulier de réalisation de l'invention, illustré ici à la figure 3, que le bloc 313 introduit un retard de deux trames sur les spectres L[k], R[k] et M[k] afin d'obtenir les spectres Lbuf[k], Rbuf[k] et Mbuf[k].

[0083] On pourrait de façon plus avantageuse en termes de quantité de données à stocker, décaler les sorties du bloc 314 d'extraction des paramètres ou encore les sorties des blocs de quantification 318, 316 et 319. On pourrait également introduire ce décalage au décodeur à la réception du train binaire du codeur stéréo.

[0084] Parallèlement au codage mono, le codage de l'information spatiale est mis en œuvre dans les blocs 315 à 319 selon un procédé de codage de l'invention. Par ailleurs, le codage comprend une étape optionnelle de classification du signal d'entrée dans le bloc 321.

[0085] Ce bloc de classification, selon le signal multicanal à coder peut permettre de passer d'un mode de codage à un autre. Un des modes de codage étant celui mettant en œuvre l'invention pour le codage des informations de spatialisation. Les autres modes de codage ne sont pas détaillés ici, mais on pourra utiliser des techniques classiques de codage stéréo ou multicanal dont des techniques de codage paramétrique avec des paramètres ILD, ITD, IPD, ICC. La classification est ici indiquée avec les signaux temporels L et R en entrée, éventuellement les signaux dans le domaine fréquentiel et les paramètres stéréo ou multicanal pourront aussi servir à la classification. On pourra également utiliser la classification pour appliquer l'invention à un paramètre spatial donné (par exemple pour coder l'ITD ou l'ILD), autrement dit pour commuter le type de codage de paramètres spatiaux avec un choix possible entre une méthode de codage selon un modèle comme dans l'invention ou une méthode de codage alternative de l'état de l'art.

[0086] Les paramètres spatiaux sont extraits (bloc 314) à partir des spectres L[k], R[k] et M[k] décalés de deux trames: Lbuf[k], Rbuf[k] et Mbuf[k] et codés (blocs 315 à 319) selon un procédé de codage décrit en référence aux figures 4a à 4c et détaillant les blocs 315 et 317.

[0087] Pour l'extraction des paramètres ILD (bloc 314), les spectres Lbuf[k] et Rbuf[k] sont par exemple découpés en sous-bandes de fréquences.

[0088] Dans un mode de réalisation, on prendra une découpe en sous-bandes en 1/3 d'octave définie au tableau 1 ci-dessous :



[0089] Ce tableau couvre tous les cas de fréquence d'échantillonnage, par exemple pour un codeur avec une fréquence d'échantillonnage à 16kHz on retiendra uniquement les B=20 premières sous-bandes. Ainsi, on pourra définir le tableau :



[0090] Le tableau ci-dessus délimite (en indice de raies de Fourier) les sous-bandes fréquentielles d'indice b = 0 à B-1 pour le cas Fs=16 kHz. Chaque sous-bande d'indice b comprend les coefficients kb=0 à kb+1 - 1. La raie fréquentielle d'indice k =320 qui correspond à la fréquence de Nyquist n'est pas prise en compte ici.

[0091] Dans des variantes, on pourra utiliser une autre découpe en sous-bandes, par exemple selon l'échelle ERB ; dans ce cas, on pourra utiliser B=35 sous-bandes, celles-ci sont définies par les frontières suivantes dans le cas où le signal d'entrée est échantillonné à 16 kHz:



[0092] Le tableau ci-dessus délimite (en indice de raies de Fourier) les sous-bandes fréquentielles d'indice b = 0 à B-1. Par exemple la première sous-bande (b=0) va du coefficient kb=0 à kb+1 - 1 = 0; elle est donc réduite à un seul coefficient qui représente 25 Hz. De même, la dernière sous-bande (k=34) va du coefficient kb=307 à kb+1 - 1 = 319, elle comprend 12 coefficients (300 Hz). La raie fréquentielle d'indice k =320 qui correspond à la fréquence de Nyquist n'est pas prise en compte ici.

[0093] Pour chaque trame, l'ILD de la sous-bande b=0,...,B-1 est calculée suivant les équations (5) et (6) reprises ici:



et

représentent respectivement l'énergie du canal gauche (Lbuf[k]) et du canal droit (Rbuf[k]):



[0094] Selon un mode de réalisation particulier, les paramètres ITD et ICC sont extraits dans le domaine temporel (bloc 320). Dans des variantes de l'invention ces paramètres pourront être extraits dans le domaine fréquentiel (bloc 314), ce qui n'est pas représenté sur la figure 3 pour ne pas alourdir la figure. Un exemple de réalisation de l'estimation de l'ITD dans le domaine fréquentiel est donné dans la norme UIT-T G.722 Annexe D à partir du produit L[k].R[k] lissé.

[0095] Dans un mode de réalisation les paramètres ITD et ICC sont estimés de la façon suivante. L'ITD est recherché par intercorrélation selon l'équation (3) reprise ici :

avec par exemple d= 630µs x Fs, soit 10 échantillons à 16 kHz. Cette valeur de 630µs s'obtient pour le cas binaural, à partir de la loi de Woodworth définie ci-après, avec une approximation sphérique de la tête (avec un rayon moyen a=8,5cm) et un azimuth θ = π/2.

[0096] L'ITD obtenu selon l'équation (3) est ensuite lissé pour atténuer ses variations temporelles. L'intérêt du lissage est d'atténuer les fluctuations de l'ITD instantané qui peuvent dégrader la qualité de la synthèse spatiale au décodeur. La méthode de lissage retenue dépasse le cadre de l'invention et elle n'est pas détaillée ici.

[0097] Lors du calcul de l'ITD on calcule aussi l'ICC selon l'équation (4) définie ci-avant.

[0098] Les paramètres ou informations spatiales ILD et ITD sont codés selon une méthode faisant l'objet de l'invention et décrite en référence aux figures 4a à 4c qui détaillent les blocs 315 et 317 de la figure 3 selon différents modes de réalisation de l'invention.

[0099] Ces blocs 315 et 317 mettent en œuvre des méthodes basées sur des modèles de représentations respectives des informations ITD et ILD.

[0100] Certains paramètres des modèles respectifs obtenus à la sortie des blocs 315 et 317 sont ensuite codés en 316 et 318 par exemple selon une méthode de quantification scalaire.

[0101] Toutes les informations de spatialisation ainsi codées sont multiplexées par le multiplexeur 322 avant d'être transmises.

[0102] On rappelle aux figures 5a et 5b certaines notions importantes sur la perception sonore. A la figure 5a est illustré un plan médian M, un plan frontal F et un plan horizontal H, par rapport à la tête d'un auditeur. La perception sonore permet une localisation en 3D d'une source sonore, cette localisation est typiquement identifiée par des coordonnées sphériques (r, θ, ϕ) selon la figure 5b ; dans le cas d'un signal stéréo, la perception se fait sur un plan horizontal et dans ce cas des coordonnées polaires (r, θ) suffisent à localiser la source en 2D. On rappelle également qu'un signal stéréo ne permet une reproduction que sur une ligne entre 2 haut-parleurs sur le plan horizontal, alors qu'un signal binaural permet normalement une perception en 3D.

[0103] Dans un mode de réalisation on considère que le signal comprend une source sonore située dans le plan horizontal.

[0104] Dans le cas d'un signal binaural, il peut être utile de définir la position d'une source virtuelle associée au signal multicanal à coder. Comme illustré à la figure 5c, si on considère uniquement le cas d'une source sonore 510 située dans le plan horizontal (2D) autour de la personne représentée par une tête approximée par une sphère en 540, la position de la source est spécifiée par les coordonnées polaires (r, θ).

[0105] L'angle θ est défini entre l'axe frontal 530 de l'auditeur et l'axe de la source 520. Les deux oreilles de l'auditeur sont représentées en 550R pour l'oreille droite et en 550L pour l'oreille gauche. L'information de décalage temporel entre les deux canaux d'un signal binaural est associée avec la différence interaurale de temps, c'est-à-dire la différence de temps que met un son à arriver aux deux oreilles. Si la source est directement devant l'auditeur, l'onde arrive au même moment aux deux oreilles et l'information d'ITD est nulle.

[0106] La différence interaurale de temps (ITD) peut être simplifiée en utilisant une approximation géométrique sous la forme de la loi en sinus suivante:

θ est l'azimuth dans le plan horizontal, a est le rayon d'une approximation sphérique de la tête et c la vitesse du son (en m.s-1) qui peut être définie comme c=343 m.s-1. Cette loi est indépendante de la fréquence, et elle est connue pour donner de bons résultats en termes de localisation spatiale.

[0107] Une source sonore virtuelle peut donc être localisée avec un angle θ et l'information ITD peut être déduite par la formule suivante:





[0108] La valeur donnée à ITDmax peut par exemple correspondre à 630 µs, qui est la limite de séparation perceptuelle entre deux impulsions. Pour des valeurs d'ITD plus grandes le sujet entendra deux sons différents et ne pourra pas interpréter les sons comme une seule source sonore.

[0109] Dans des variantes de l'invention la loi en sinus pourra être remplacée par le modèle d'ITD de Woodworth défini dans l'ouvrage de R.S Woodworth, Expérimental Psychology (Holt, New York), 1938, pp. 520-523, par l'équation suivante:

qui est valable pour un champ lointain (typiquement une source à une distance d'au moins 10. a). En reprenant le principe d'une normalisation par une valeur maximale ITDmax comme à l'équation (15), le modèle d'ITD selon la loi de Woodworth peut être écrit sous la forme :





[0110] Dans des variantes, il serait possible de définir un facteur multiplicatif qui ne représente pas la valeur maximale de l'ITD mais une valeur proportionnelle par exemple le facteur a/c. L'invention s'applique également dans ce cas. Par exemple, pour simplifier l'expression de la loi de Woodworth il est possible d'écrire :





[0111] Dans ce cas la valeur de ITDmax ne représente pas la valeur maximale de l'ITD. Par la suite, cet « écart de notation » sera utilisé.

[0112] Ainsi, en référence à la figure 4a, le bloc 315 qui reçoit une information de décalage temporel intercanal (ITD) par le module d'extraction 320, comprend un module 410 d'obtention d'un modèle de représentation de l'information de décalage temporel interacanal.

[0113] Ce modèle est par exemple le modèle tel que défini ci-dessus à l'équation (15) avec un valeur ITDmax=630µs prédéfinie dans le modèle ou le modèle de l'équation (20).

[0114] Dans des variantes, la valeur ITDmax pourra être rendue flexible en codant soit cette valeur directement, soit en codant la différence entre cette valeur et une valeur pré-déterminée. Cette approche permet en effet d'étendre l'application du modèle d'ITD à des cas plus généraux, mais elle a pour inconvénient de nécessiter un débit supplémentaire. Pour indiquer que le codage explicite de la valeur ITDmax est optionnelle, le bloc 412 apparaît en pointillés à la figure 4a.

[0115] Un module 411 de détermination de l'angle θ tel que défini ci-dessus est mis en œuvre pour obtenir l'angle défini par la source sonore. Plus précisément ce module recherche le paramètre d'azimuth θ qui permet de s'approcher au plus près de l'ITD extrait. Quand la loi est connue comme à l'équation (15), cet angle peut être obtenu de façon analytique :



[0116] Dans des variantes, la fonction asin pourra être approximée.

[0117] Une approche équivalente pour déterminer l'azimuth peut être mise en œuvre dans le bloc 411. Selon cette approche, la détermination de l'angle θ pour la loi en sinus fait appel à une recherche à l'aide du modèle d'ITD, de la valeur la plus proche en fonction des valeurs possibles d'azimuth:



[0118] Cette recherche peut être effectuée en pré-stockant les différentes valeurs candidates de ITDmax.sin(θ) issues du modèle d'ITD dans une table MITD pour un intervalle de recherche qui peut être T = [-π/2,π/2] en supposant que l'ITD est symétrique lorsque la source est devant ou derrière le sujet. Dans ce cas, les valeurs de θ sont discrétisées, par exemple avec un pas de 1° sur l'intervalle de recherche.

[0119] Dans le cas de la loi de Woodworth, on peut également suivre la même approche que ci-dessus pour la loi en sinus. L'expression analytique de la fonction inverse de sin(θ) + θ n'étant pas triviale, on pourra préférer la recherche :



[0120] Le paramètre d'angle θ déterminé dans le bloc 411 est ensuite codé selon une méthode de codage classique par exemple par quantification scalaire sur 4 bits par le bloc 316. Ce bloc réalise une recherche de l'indice de quantification

où la table est donnée pour le cas d'une quantification scalaire uniforme sur 4 bits



[0121] Dans des variantes, le nombre de bits alloué au codage de l'azimuth pourra être différent, et les niveaux de quantification pourront être non uniformes pour tenir compte des limites perceptuelles de la localisation d'une source sonore selon l'azimuth.

[0122] C'est le codage de ce paramètre qui permet de coder l'information de décalage temporel ITD, avec éventuellement le codage de ITDmax (bloc 412) comme information supplémentaire si la valeur pré-déterminée par le modèle d'ITD doit être adaptée. L'information de spatialisation sera donc retrouvée au décodage en décodant le paramètre d'angle, éventuellement en décodant ITDmax, et en appliquant le même modèle de représentation de l'ITD. Le débit nécessaire au codage de ce paramètre d'angle est faible (par exemple 4 bits par trame) lorsqu'aucune correction de la valeur ITDmax pré-définie dans le modèle n'est codée. Ainsi, le codage de cette information de spatialisation (ITD) est peu consommateur en débit.

[0123] A très bas débit, le codage d'un seul angle θ peut être mis en œuvre pour coder l'information de spatialisation d'un signal binaural.

[0124] Dans une variante de réalisation, on pourra estimer un ITD par bande de fréquences, par exemple en prenant une découpe en B sous-bandes définie précédemment. Dans ce cas, un angle θ par bande de fréquence est codé et transmis au décodeur, ce qui pour l'exemple de B sous-bandes donne B angles à transmettre.

[0125] Dans une autre variante, on pourra ignorer l'estimation de l'ITD pour certaines bandes de fréquences hautes pour lesquelles les différences de phases ne sont pas perceptibles. De même, on pourra omettre l'estimation de l'ITD pour des très basses fréquences. Par exemple, l'ITD pourra ne pas être estimé pour les bandes supérieures à 1 kHz, et pour une découpe en sous-bande comme définie précédemment on pourra retenir les bandes b = 0 à 11 dans le mode de réalisation utilisant le 1/3 d'octave et 1 à 16 dans les variantes utilisant l'échelle ERB (la première bande b =0 étant omise dans ce dernier cas car il s'agit de fréquences inférieures à 25 Hz). Dans des variantes de l'invention, une découpe en sous-bande avec une résolution différente de 25 Hz pourra être utilisée ; on pourra ainsi regrouper certaines sous-bandes car la découpe en 1/3 d'octave ou l'échelle ERB peut être trop fine pour le codage de l'ITD. Ceci évite de coder trop d'angles par trame. Pour chaque bande fréquentielle, l'ITD est ensuite converti en un angle comme dans le cas d'un angle unique décrit ci-dessus avec une allocation de bits qui peut être soit fixe, soit variable en fonction de l'importance de la sous-bande. Dans toutes ces variantes où plusieurs angles sont déterminés et codés, une quantification vectorielle pourra être mise en œuvre dans le bloc 316.

[0126] La figure 4b représente une variante de réalisation de l'invention qui peut remplacer le mode décrit à la figure 4a. Le principe de cette variante est de combiner en particulier les blocs 411 et 316 en un bloc 432.

[0127] Dans cette variante de réalisation, on considère la définition de plusieurs modèles « concurrents » pour coder l'ITD, sachant que l'invention s'applique aussi lorsqu'un seul modèle d'ITD est défini.

[0128] Ainsi, le modèle tel que défini pour l'information de décalage temporel intercanal (ITD) peut ne pas être fixé et être paramétrable. Chaque modèle définit un ensemble de valeurs d'ITD en fonction d'un paramètre d'angle : la loi en sinus et la loi de Woodworth constituent deux exemples de modèles. Dans cette variante, pour le codage, à partir d'une table de modèles d'ITD obtenue en 430, on détermine dans le bloc 432 un indice de modèle et un indice d'angle (encore appelé paramètre d'angle) à coder selon l'équation suivante :

NM est le nombre de modèles dans la table de modèles ITD, Nθ(m) est le nombre d'angles d'azimuth considérés pour le m-ième modèle et MITD(m,t) correspond à une valeur précise de l'information ITD.

[0129] Un exemple de modèle MITD(m,t) est donné ci-dessous dans le cas d'un modèle d'indice m = 0 suivant une loi de Woodworth comme à l'équation 20 avec ITDmax= 0.2551 ms :

où chaque valeur est en ms. L'indice d'angle t correspond en fait à un angle θ couvrant l'intervalle

avec un pas de



[0130] Cette table peut également être ramené à des échantillons par exemple dans le cas d'un échantillonnage à 16 kHz on obtient de façon équivalente :



[0131] Dans ce cas, Nθ (m)=8 et NM=1. Il est donc possible de coder l'information ITD sur 3 bits avec ce modèle unique.

[0132] On remarquera que pour un indice de modèle m donné, le modèle MITD(m,t) est implicitement fonction de l'angle d'azimuth, dans la mesure où l'indice t représente en fait un indice de quantification de l'angle θ. Ainsi, le modèle MITD(m, t) est un moyen efficace de combiner la relation entre ITD et θ, et la quantification de θ sur Nθ(m) niveaux, et d'utiliser potentiellement plusieurs modèles (au moins un), indexés par mopt lorsque plus d'un modèle est utilisé.

[0133] On considère par exemple dans un mode de réalisation le cas de deux modèles différents :
  • m=0 : Un modèle binaural défini précédemment avec la loi de Woodworth avec ITD(θ) = ITDmax(sin(θ) + θ) et ITDmax = 10 (échantillons à 16 kHz) m=1 : Un modèle selon une loi en sinus comme à l'équation (15) mais pour un micro A-B (2 microphones omnidirectionnels séparés d'une distance a). La loi en sinus s'applique ici aussi, seul le paramètre a dépend de la distance entre les microphones : ITD(θ) = ITDmaxsin(θ) et ITDmax = 30 (échantillons à 16 kHz)


[0134] On remarquera que la taille Nθ(m) peut être identique pour tous les modèles, mais dans le cas général il est possible que des tailles différentes soient utilisées. Par exemple on pourra définir Nθ(m) = 16 et NM=2. Il est donc possible de coder l'information ITD sur 4+1=5 bits.

[0135] Un index de la loi sélectionnée mopt est alors codé sur ┌log2NM┐ bits et transmis au décodeur en plus de l'angle d'azimuth topt codé sur ┌log2Nθ┐ bits. Dans l'exemple pris ci-dessus, on pourra coder mopt sur 1 bit, et topt sur 4 bits.

[0136] Dans une variante, on pourra remplacer le modèle m=0 par une table d'ITD en fonction de l'azimuth issue de mesures réelles de HRTFs, sans loi paramétrique, mais avec des valeurs d'ITD estimées sur les données réelles ; dans ce cas, la taille Nθ(m) pourra dépendre de la résolution angulaire utilisée pour mesurer des HRTFs (en supposant qu'aucune interpolation angulaire n'a été appliquée).

[0137] Comme à la figure 4a, le codage d'une information de correction de la valeur ITDmax est optionnel, ainsi le bloc 312 est indiqué en pointillés. Quand le budget de bits alloué au codage de ITDmax est nul, on prendra donc la valeur de ITDmax pré-définie dans le modèle de représentation de l'ITD.

[0138] Dans une variante de l'invention le modèle de représentation de l'ITD pourra être généralisé pour se réduire uniquement au plan horizontal mais aussi inclure l'élévation. Dans ce cas, deux angles sont déterminés, l'angle d'azimuth θ et l'angle d'élévation ϕ.

[0139] La recherche des deux angles peut se faire selon l'équation suivante :

avec Nϕ(m) le nombre d'angles d'élévation considérés pour le m-ième modèle et popt représentant l'angle d'élévation à coder.

[0140] Dans l'invention, on cherche aussi à réduire le débit de codage d'autres informations de spatialisation que l'ITD, comme l'information de spatialisation de différence d'intensité intercanale (ILD). On notera que le bloc 316 de la figure 4b pourra coder et multiplexer de différentes façons avec un codage à débit fixe ou variable des informations mopt,topt,popt ainsi ITDmax que quand celles-ci doivent être transmises.

[0141] Ainsi, de la même façon que pour l'ITD on peut recourir à une paramétrisation de l'ILD. Dans le cas binaural, d'après la thèse de Jérôme Daniel, intitulée « Représentation de champs acoustiques, application à la transmission et à la reproduction de scènes sonores complexes dans un contexte multimédia », Université Paris 6, Juillet 2011, l'ILD peut également être approximée selon la loi suivante:

f est la fréquence, r la distance avec la source sonore et c la vitesse du son.

[0142] En définissant une ILD relative ILDmax il est possible sous certaines conditions de réduire cette approximation à l'équation:



[0143] La loi ci-dessus n'est qu'une approximation correspondant au niveau global des HRTFs à un azimuth donné ; elle ne permet pas de caractériser complètement la coloration spectrale donnée par les HRTFs mais elle caractérise uniquement leur niveau global.

[0144] L'ILD de référence peut être définie - en temps différé, lors de la définition du modèle d'ILD, en prenant une base de signaux normalisés ou une base de filtres HRTFs - en prenant le maximum de l'ILD total d'un signal binaural. On considère dans l'invention que cette loi en sinus s'applique non seulement à l'ILD totale (ou globale) mais aussi à l'ILD par sous-bandes ; dans ce cas, le paramètre ILDmax dépend de l'indice de la sous-bande et le modèle devient :



[0145] Expérimentalement, on peut vérifier que si l'on calcule l'énergie des filtres HRTFs (illustrée en référence à la figure 6a pour plusieurs valeurs d'élévation ϕ), il apparaît que l'approximation de l'ILD globale (au sens de différence de niveau global entre canaux) suit une loi en sinus pour les élévations représentées ϕ = 0°, 15° et 30°, en fonction de l'azimuth θ.

[0146] On notera que même si la symétrie du demi-plan frontral (azimuth dans [0, 180] degrés) et le demi-plan à l'arrière de la tête (azimuth dans [180,360] degrés) n'est en général pas totalement valable, cette loi en sinus est utilisée dans l'invention pour coder et décoder l'ILD.

[0147] Comme pour le cas de l'ITD où une valeur ITDmax a été définie, on peut donc soit transmettre le paramètre ILDmax, soit utiliser une valeur ILDmax pré-déterminée et stockée, pour en dériver une valeur ILDglob(θ) selon l'équation (30) et ainsi appliquer un ILD global, valable sur tout le spectre du signal pour obtenir une location rudimentaire (globale).

[0148] Un autre exemple de modèle s'appuie sur la configuration de microphones stéréo ORTF illustrée à la figure 6b.

[0149] Dans cet exemple, le modèle d'ILD en sous-bandes pourra être défini en rapport avec une configuration de microphones ORTF comme suit :

avec



où θ0 (en radians) correspond à 55°.

[0150] Il est possible d'écrire ce modèle également sous la forme :



[0151] On peut là encore définir une valeur ILDmax qui correspond à :



[0152] Là encore, on suppose que le modèle défini à l'équation 35 s'applique non seulement au cas d'un ILD total (ou global) mais aussi à l'ILD en sous-bandes ; dans ce cas le paramètre ILDmax (ou une version proportionnelle) sera dépendant de la sous-bande sous la forme ILD[b]max.

[0153] Ainsi, en référence à la figure 4a, de la même façon que pour l'information ITD, le bloc 317 qui reçoit une information de différence d'intensité intercanale (ILD) par le module d'extraction 314, comprend un module 420 d'obtention d'un modèle de représentation de l'information de différence d'intensité intercanale (ILD).

[0154] Ce modèle est par exemple le modèle tel que défini ci-dessus à l'équation (30) ou avec d'autres modèles décrits dans ce document.

[0155] Le paramètre d'angle θ déjà défini en 411 est ré-utilisé au décodeur pour retrouver l'ILD global ou l'ILD en sous-bandes tel que défini par l'équation (30), (31) ou (35) ; cela permet en effet de « mutualiser » le codage de l'ITD et de l'ILD. Dans le cas où la valeur ILDmax n'est pas fixée, celle-ci est déterminée en 423 et codée.

[0156] Dans un mode de réalisation particulier, un module 421 d'estimation d'une information de différence d'intensité intercanale est mis en œuvre à partir d'une part du paramètre d'angle obtenu par le bloc 411 pour coder l'information de décalage temporel (ITD) et d'autre part du modèle de représentation de l'équation (30), (31) ou (35). De façon optionnelle, le module 422 calcule un résidu de l'information ILD, c'est-à-dire la différence entre l'information de différence d'intensité intercanale (ILD) réelle extraite en 314 et l'information de différence d'intensité intercanale (ILD) estimée en 421 à partir du modèle d'ILD.

[0157] Ce résidu peut être codé en 318 par exemple par une méthode classique de quantification scalaire. Cependant, contrairement au codage d'un ILD direct, la table de quantification peut être par exemple limitée à une dynamique de +/-12 dB avec un pas de 3 dB.

[0158] Ce résidu ILD permet d'améliorer la qualité de décodage de l'information ILD dans le cas où le modèle d'ILD est trop spécifique et ne s'applique qu'au signal à coder dans la trame courante ; on rappelle qu'une classification peut éventuellement être utilisée au codeur pour éviter de tels cas, cependant dans le cas général il peut être utile de coder un résidu d'ILD.

[0159] Ainsi, le codage de ces paramètres ainsi que celui d'angle de l'ITD permet de retrouver au décodeur l'information de différence d'intensité intercanale (ILD) du signal audio binaural avec une bonne qualité.

[0160] De la même façon que pour l'ITD, l'information de spatialisation (globale ou par sous-bandes) sera donc retrouvée au décodage en appliquant le même modèle de représentation et en décodant le cas échéant les paramètres de résidu et d'ILD de référence. Le débit nécessaire au codage de ces paramètres est plus faible que si l'information ILD elle-même était codée, en particulier lorsque le résidu ILD n'a pas à être transmis et qu'on utilise le ou les paramètre(s) ILDmax pré-définis dans le ou les modèle(s) d'ILD. Ainsi, le codage de cette information de spatialisation (ILD) est peut consommateur en débit.

[0161] Ce modèle d'ILD n'utilisant qu'une valeur d'ILD globale est cependant très simpliste car en général l'ILD est défini sur plusieurs sous-bandes.

[0162] Dans le codeur décrit précédemment, B sous-bandes suivant une découpe en 1/3 d'octave ou suivant l'échelle ERB ont été définies. Pour permettre de représenter plus qu'un paramètre d'ILD total (ou global) le modèle de représentation de l'ILD est donc étendu à plusieurs sous-bandes. Cette extension s'applique à l'invention décrite à la figure 4a, cependant la description associée est donnée ci-après dans le contexte de la figure 4b pour éviter trop de redondance. Le modèle est fonction de l'angle θ et éventuellement de l'élévation ; ce modèle peut être le même dans toutes les sous-bandes, ou varier selon les sous-bandes.

[0163] On considère la variante de réalisation décrite à la figure 4b pour le codage de l'ILD. Comme pour l'ITD, dans cette variante on définit des modèles de représentation de l'ILD. Le modèle tel que défini pour l'information de différence d'intensité intercanale (ILD) n'est pas fixé mais est paramétrable. Le modèle est défini par une valeur ILDmax et un paramètre d'angle. Dans le cas général, à partir d'une table de modèles ILD obtenue en 440, on détermine un indice de modèle mopt et un indice d'angle à coder en 442 selon l'équation suivante :

NM est le nombre de modèles dans la table de modèles ILD, Nθ(m) est le nombre d'angles d'azimuth considérés pour le m - ième modèle, MILD(m,t) correspond à une valeur précise de l'information ILD et dist(.,.) est un critère de distance entre vecteurs d'ILD.

[0164] Cependant, dans une variante de réalisation, cette recherche pourra être simplifiée en utilisant l'information d'angle déjà obtenue dans le bloc 432 pour le modèle d'ITD. On notera que les valeurs t = 0, ..., Nθ(m) - 1 pour le modèle d'ILD ne correspondent pas forcément au même ensemble de valeurs que pour le modèle d'ITD, cependant il est avantageux d'harmoniser ces ensembles pour avoir une cohérence entre modèles de représentation pour l'ILD et l'ITD.

[0165] On pourra par exemple prendre comme critères possibles de distance :

q = 1 ou 2.

[0166] Un exemple de modèle d'ILD est illustré aux figures 6c à 6g pour plusieurs bandes de fréquence. On ne donne pas ici les valeurs correspondantes (en dB) sous la forme de tableaux pour ne pas alourdir le texte, des valeurs approximatives pourront être tirées des graphiques des figures 6c à 6g. Cette figure considère le cas d'une découpe en 1/3 d'octave déjà définie précédemment. Ainsi chaque figure représente l'ILD pour la bande de fréquence définie par le numéro de tiers d'octave défini dans le tableau 1 ci-avant avec une fréquence centrale fc fonction de la bande. Chaque point marqué avec un cercle sur chaque sous-figure correspond à une valeur MILD(m, t); en plus de définir la table d'ILD associé au modèle on a aussi montré la loi en sinus mise à l'échelle par un paramètre ILDmax pré-défini et dépendant de la sous-bande.

[0167] Dans une variante de l'invention le modèle de représentation de l'ILD pourra être généralisé pour ne pas se réduire uniquement au plan horizontal mais aussi inclure l'élévation. Dans ce cas, la recherche de deux angles devient :

avec Nϕ(m) le nombre d'angles d'élévation considérés pour le m-ième modèle et popt représentant l'angle d'élévation à coder.

[0168] Dans une variante, un exemple de modèle MILD(m, t, p) peut être obtenu à partir d'un jeu de HRTFs de la façon suivante. Etant donnés les filtres HRTFs pour θ et ϕ, on peut :
  • calculer les ILDs par sous-bande entre canaux gauche et droit par sous-bande
  • éventuellement normaliser les ILDs
  • stocker les IlDs et déterminer la valeur de ILDmax dans chaque sous-bande pour ajuster un facteur de dilatation des ILD


[0169] La table multidimensionnelle MILD(m, t, p) peut être vue comme un modèle de directivité ramené au domaine de l'ILD.

[0170] Un index de la loi sélectionnée mopt est alors codé et transmis au décodeur en 318.

[0171] De la même façon que pour la figure 4a, un résidu ILD pourra être calculé (blocs 421 et 422) et codé.

[0172] Jusqu'ici des modèles séparés ont été considérés pour l'ITD et l'ILD, même s'il a été noté que la détermination de l'angle peut être « mutualisée ». Par exemple, l'azimuth peut être déterminé en utilisant le modèle d'ITD et ce même angle est directement utilisé pour le modèle d'ILD. On considère maintenant une autre variante de réalisation faisant appel à un « modèle intégré » (conjoint). Cette variante est décrite à la figure 4c.

[0173] Dans cette variante, plutôt que d'avoir des modèles séparés pour l'ITD et l'ILD ( MITD (m, t, p) et MILD(m, t, p) ) on pourra définir un modèle conjoint dans le bloc 450 : MITD,ILD (m, t, p) dont les entrées comprennent des valeurs candidates d'ITD et d'ILD ; ainsi, pour différentes valeurs discrètes réprésentant θ et ϕ des « vecteurs » (ITD, ILD) sont définis. Dans ce cas, la mesure de distance utilisée pour la recherche doit combiner la distance sur l'ITD et la distance sur l'ILD, cependant il est encore possible d'effectuer une recherche séparée.

[0174] Ainsi, un index de la loi sélectionnée mopt, de l'angle d'azimuth topt et de l'angle d'élévation popt déterminés en 453, sont codés en 331 et transmis au décodeur, de même pour les figures 4a et 4b, les paramètres ITDmax, ILDmax et le résidu ILD peuvent être déterminés et codés.

[0175] Une variante du codeur illustré à la figure 3 mettant en œuvre le modèle conjoint de la figure 4c est illustrée à la figure 8. On notera que dans cette variante de codeur les paramètres ITD et ICC sont estimés dans le bloc 314. De plus on considère ici le cas général où des paramètres IPD sont également extraits et codés dans le bloc 332. Les blocs 330 et 331 correspondent aux blocs indiqués et détaillés à la figure 4c.

[0176] En référence à la figure 7 un décodeur selon un mode de réalisation de l'invention est maintenant décrit.

[0177] Ce décodeur comporte un démultiplexeur 701 dans lequel le signal mono codé est extrait pour être décodé en 702 par un décodeur EVS mono (selon les spécifications 3GPP TS 26.442 ou TS 26.443) dans cet exemple. La partie du train binaire correspondant au codeur EVS mono est décodée selon le débit utilisé au codeur. On suppose ici qu'il n'y a pas de perte de trames ni d'erreurs binaires sur le train binaire pour simplifier la description, cependant des techniques connues de correction de perte de trames peuvent bien évidemment être mises en œuvre dans le décodeur.

[0178] Le signal mono décodé correspond à (n) en l'absence d'erreurs de canal. Une analyse par transformée de Fourier discrète à court-terme avec le même fenêtrage qu'au codeur est réalisée sur (n) (blocs 703 et 704) pour obtenir le spectre [k]. On considère ici qu'une décorrélation dans le domaine fréquentiel (bloc 720) est également appliquée. Cette décorrélation pourra également été appliquée dans le domaine temporel.

[0179] Les détails de mise en œuvre du bloc 708 pour la synthèse du signal stéréo ne sont pas présentés ici car ils dépassent le cadre de l'invention, mais les techniques classiques de synthèse connues de l'état de l'art pourront être utilisées.

[0180] Dans le bloc de synthèse 708, il est par exemple possible de reconstruire un signal à deux canaux avec le traitement suivant sur le signal mono décodé et transformé en fréquences:



c = 10ILD[b]/10 (avec b l'indice de la sous-bande contenant la raie d'indice k),

et

ITD est l'ITD décodé pour la raie k (si un seul ITD est codé, cette valeur est identique pour les différentes raies d'indice k) et NFFT est la longueur de la FFT et de la FFT inverse (blocs 704, 709, 712).

[0181] On peut également prendre en compte le paramètre ICC décodé en 718 pour recréer une ambiance sonore (bruit de fond) non localisée pour améliorer la qualité.

[0182] Les spectres [k] et [k] sont ainsi calculés et ensuite convertis dans le domaine temporel par FFT inverse, fenêtrage, addition et recouvrement (blocs 709 à 714) pour obtenir les canaux synthétisés (n) et (n).

[0183] Les paramètres qui ont été codés pour obtenir les informations de spatialisation sont décodés en 705, 715 et 718.

[0184] En 718, ce sont les informations ICCq[b] qui sont décodés si toutefois elles ont été codées.

[0185] En 705, c'est le paramètre d'angle θ qui est décodé avec éventuellement une valeur ITDmax. A partir de ce paramètre, le module 706 d'obtention d'un modèle de représentation d'une information de décalage temporel intercanal est mis en œuvre pour obtenir ce modèle. Comme pour le codeur, ce modèle peut être défini par l'équation (15) défini ci-dessus. Ainsi, à partir de ce modèle et du paramètre d'angle décodé, il est possible au module 707 de déterminer l'information de décalage temporel intercanal (ITD) du signal multicanal.

[0186] Si au décodeur un angle par fréquence ou par bande de fréquence est codé, alors ces différents angles par fréquence ou bandes de fréquences sont décodés pour définir les informations ITD par fréquence ou bandes de fréquence.

[0187] De la même façon, dans le cas où des paramètres permettant de coder l'information de différence d'intensité intercanale (ILD) sont codés, ils sont décodés par le module de décodage de ces paramètres en 715, au décodeur.

[0188] Ainsi, les paramètres de résidu (Resid. ILD) et d'ILD de référence (ILDmax) sont décodés en 715.

[0189] A partir de ces paramètres, le module 716 d'obtention d'un modèle de représentation d'une information de différence d'intensité intercanale est mis en œuvre pour obtenir ce modèle. Comme pour le codeur, ce modèle peut être défini par l'équation (30) défini ci-dessus.

[0190] Ainsi, à partir de ce modèle, des paramètres de résidu d'ILD (c'est-à-dire la différence entre l'information de différence d'intensité intercanale (ILD) réelle et l'information de différence d'intensité intercanale (ILD) estimée avec le modèle), du paramètre d'ILD de référence (ILDmax) et du paramètre d'angle décodé en 705 pour l'information ITD, il est possible au module 717 de déterminer l'information de différence d'intensité intercanale (ILD) du signal multicanal.

[0191] Si au codeur les paramètres de codage de l'ILD ont été déclinés par bande de fréquence, alors ces différents paramètres par bandes de fréquences sont décodés pour définir les informations ILD par fréquence ou bandes de fréquence.

[0192] On notera que le décodeur de la figure 7 est en rapport avec le codeur de la figure 4a. On comprendra que si le codage selon l'invention se fait selon les figures 4b ou 4c, le décodeur sera modifié en conséquence pour décoder en particulier des indices de modèles et d'angles sous la forme mopt, topt ,popt et reconstruire les valeurs d'ITD et d'ILD en fonction du modèle utilisé et des indices associés à des valeurs de reconstruction

[0193] Dans une variante de l'invention le décodeur de la figure 7 est ainsi modifié comme illustré à la figure 9. Dans cette variante, les paramètres ILD et ITD décodés ne sont pas directement reconstruits. La synthèse stéréo (bloc 708) est remplacée par une synthèse binaural (bloc 920). Ainsi le décodage des informations ILD et ITD se réduit à un décodage (bloc 910) des coordonnées angulaires. En utilisant une base pré-définie de HRTFs (bloc 930) il est donc possible de décoder un signal binaural et non un signal stéréo. Dans des variantes, on pourra appliquer les filtres HRTFs dans le domaine temporel.

[0194] Le codeur présenté en référence à la figure 3 et le décodeur présenté en référence à la figure 7 ont été décrits dans le cas d'application particulière de codage et décodage stéréo. L'invention a été décrite à partir d'une décomposition des canaux stéréo par transformée de Fourier discrète. L'invention s'applique également à d'autres représentations complexes, comme par exemple la décomposition MCLT (Modulated Complex Lapped Transform) combinant une transformée discrète en cosinus modifiée (MDCT) et transformée discrète en sinus modifiée (MDST), ainsi qu'au cas de bancs de filtres de type Pseudo-Quadrature Mirror Filter (PQMF). Ainsi le terme de "raie fréquentielle" utilisé dans la description détaillé peut être étendu à la notion de "sous-bande" ou de "bande de fréquence", sans changer la nature de l'invention.

[0195] Les codeurs et décodeurs tels que décrits en référence aux figures 3 et 7 peuvent être intégrés dans des équipements multimédia de type décodeur de salon, "set top box" ou lecteur de contenu audio ou vidéo. Ils peuvent également être intégré dans des équipements de communication de type téléphone mobile ou passerelle de communication.

[0196] La figure 10 représente un exemple de réalisation d'un tel équipement dans lequel un codeur tel que décrit en référence aux figures 3, 8 et 4a à 4c ou un décodeur tel que décrit en référence à la figure 7 ou 9, selon l'invention est intégré. 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.

[0197] Dans le cas d'un codeur, 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 codage au sens de l'invention, lorsque ces instructions sont exécutées par le processeur PROC, et notamment les étapes d'extraction d'une pluralité d'informations de spatialisation du signal multicanal, d'obtention d'au moins un modèle de représentation des informations de spatialisation extraites, de détermination d'au moins un paramètre d'angle d'un modèle obtenu et de codage du au moins un paramètre d'angle déterminé pour coder les informations de spatialisation extraites lors du codage d'informations de spatialisation.

[0198] Dans le cas d'un décodeur, 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 les étapes de réception et décodage d'au moins un paramètre d'angle codé, d'obtention d'au moins un modèle de représentation d'informations de spatialisation et de détermination d'une pluralité d'informations de spatialisation du signal multicanal à partir du au moins un modèle obtenu et du au moins un paramètre d'angle décodé.

[0199] La mémoire MEM peut stocker le ou les modèles de représentation de différentes informations de spatialisation qui sont utilisés dans les procédés de codage et de décodage selon l'invention.

[0200] Typiquement, les descriptions des figures 3, 4 d'une part et 7 d'autre part reprennent les étapes d'un algorithme d'un tel programme informatique respectivement pour le codeur et pour le décodeur. Le programme informatique peut également être stocké sur un support mémoire lisible par un lecteur du dispositif ou équipement ou téléchargeable dans l'espace mémoire de celui-ci.

[0201] Un tel équipement en tant que codeur comporte un module d'entrée apte à recevoir un signal multicanal par exemple un signal binaural comportant les canaux R et L pour droit et gauche, soit par un réseau de communication, soit par lecture d'un contenu stocké sur un support de stockage. Cet équipement multimédia peut également comporter des moyens de capture d'un tel signal binaural.

[0202] Le dispositif en tant que codeur comporte un module de sortie apte à transmettre un signal mono M issu d'un traitement de réduction de canaux et au minimum, un paramètre d'angle θ permettant d'appliquer un modèle de représentation d'une information de spatialisation pour retrouver cette information spatiale. Le cas échéant, d'autres paramètres comme les paramètres de résidu d'ILD, d'ILD ou d'ITD de référence (ILDmax ou ITDmax) sont aussi transmis via le module de sortie.

[0203] Un tel équipement en tant que décodeur comporte un module d'entrée apte à recevoir un signal mono M issu d'un traitement de réduction de canaux et au minimum un paramètre d'angle θ permettant d'appliquer un modèle de représentation de l'information de spatialisation pour retrouver cette information spatiale. Le cas échéant, pour retrouver l'information de spatialisation, d'autres paramètres comme les paramètres de résidu d'ILD, d'ILD ou d'ITD de référence (ILDmax ou ITDmax) sont également reçues via le module d'entrée E.

[0204] Le dispositif en tant que décodeur comporte un module de sortie apte à transmettre un signal multicanal par exemple un signal binaural comportant les canaux R et L pour droit et gauche.


Revendications

1. Procédé de codage paramétrique d'un signal audionumérique multicanal comportant une étape de codage (312) d'un signal (M) issu d'un traitement de réduction de canaux (307) appliqué au signal multicanal et de codage d'informations de spatialisation du signal multicanal, caractérisé en ce qu'il comporte les étapes suivantes :

- extraction (314, 320) d'une pluralité d'informations de spatialisation du signal multicanal d'au moins deux types ;

- obtention (315, 317) d'au moins un modèle de représentation des informations de spatialisation extraites ;

- détermination (315,411) d'au moins un paramètre d'angle d'un modèle obtenu ;

- codage (316, 318) du au moins un paramètre d'angle déterminé pour coder les au moins deux types d'informations de spatialisation extraites lors du codage d'informations de spatialisation.


 
2. Procédé de codage selon la revendication 1, caractérisé en ce que les informations de spatialisation sont définies par sous-bandes de fréquence du signal audio multicanal et en ce qu'au moins un paramètre d'angle par sous-bande est déterminé et codé.
 
3. Procédé selon l'une des revendications 1 à 2, caractérisé en ce qu'il comporte en outre les étapes de calcul d'une information de spatialisation de référence et de codage de cette information de spatialisation de référence.
 
4. Procédé de codage selon l'une des revendications précédentes, caractérisé en ce qu'une des informations de spatialisation d'un premier type est une information de décalage temporel intercanal (ITD).
 
5. Procédé de codage selon l'une des revendications précédentes, caractérisé en ce qu'une des informations de spatialisation d'un deuxième type est une information de différence d'intensité intercanale (ILD).
 
6. Procédé selon la revendication 5, caractérisé en ce qu'il comporte en outre les étapes suivantes pour coder une information de différence d'intensité intercanale :

- estimation d'une information de différence d'intensité intercanale à partir du modèle obtenu et du paramètre d'angle déterminé ;

- codage de la différence entre l'information de différence d'intensité intercanale extraite et estimée.


 
7. Procédé selon l'une des revendications précédentes, caractérisé en ce que un modèle de représentation par information de spatialisation est obtenu.
 
8. Procédé selon l'une des revendications précédentes, caractérisé en ce qu'un modèle de représentation commun à plusieurs informations de spatialisation est obtenu.
 
9. Procédé de codage selon l'une des revendications 1 à 8, caractérisé en ce que l'obtention d'un modèle de représentation des informations de spatialisation est effectuée par la sélection dans une table de modèles définis pour différentes valeurs des informations de spatialisation.
 
10. Procédé selon la revendication 9, caractérisé en ce qu'un index de la table correspondant au modèle sélectionné est codé.
 
11. Procédé de décodage paramétrique d'un signal audionumérique multicanal comportant une étape de décodage (702) d'un signal issu d'un traitement de réduction de canaux appliqué au signal multicanal et codé et de décodage (705, 715) d'informations de spatialisation du signal multicanal, caractérisé en ce qu'il comporte les étapes suivantes pour décoder au moins une information de spatialisation :

- réception et décodage (705, 715) d'au moins un paramètre d'angle codé ;

- obtention (706, 716) d'au moins un modèle de représentation d'informations de spatialisation ;

- détermination (707, 717) d'une pluralité d'informations de spatialisation d'au moins deux types du signal multicanal à partir du au moins un modèle obtenu et du au moins un paramètre d'angle décodé.


 
12. Procédé de décodage selon la revendication 11, caractérisé en ce qu'il comporte une étape de réception et de décodage d'un index de table de modèles et d'obtention du au moins un modèle de représentation des informations de spatialisation à décoder à partir de l'index décodé.
 
13. Codeur paramétrique d'un signal audionumérique multicanal comportant un module de codage (312) d'un signal (M) issu d'un module de traitement de réduction de canaux (307) appliqué au signal multicanal et des modules (315, 317, 316, 318) de codage d'informations de spatialisation du signal multicanal, caractérisé en ce qu'il comporte :

- un module d'extraction (314, 320) d'une pluralité d'informations de spatialisation d'au moins deux types du signal multicanal ;

- un module d'obtention (315, 317) d'au moins un modèle de représentation des informations de spatialisation extraites ;

- un module de détermination (411) d'au moins un paramètre d'angle d'un modèle obtenu ;

- un module de codage (316, 318) du au moins un paramètre d'angle déterminé pour coder les au moins deux types d'informations de spatialisation extraites lors du codage d'informations de spatialisation.


 
14. Décodeur paramétrique d'un signal audionumérique multicanal comportant un module de décodage (702) d'un signal issu d'un traitement de réduction de canaux appliqué au signal multicanal et codé et un module de décodage (705, 7015) d'informations de spatialisation du signal multicanal, caractérisé en ce qu'il comporte :

- un module de réception et décodage (705, 715) d'au moins un paramètre d'angle codé ;

- un module d'obtention (706, 716) d'au moins un modèle de représentation des informations de spatialisation ;

- un module de détermination (707, 717) d'une pluralité d'informations de spatialisation d'au moins deux types du signal multicanal à partir du au moins un modèle obtenu et du au moins un paramètre d'angle décodé.


 
15. Support de stockage lisible par un processeur sur lequel est enregistré un programme informatique comprenant des instructions de code pour l'exécution des étapes du procédé de codage selon l'une des revendications 1 à 10 et/ou du procédé de décodage selon l'une des revendications 11 à 12.
 


Ansprüche

1. Verfahren zur parametrischen Codierung eines mehrkanaligen digitalen Audiosignals, umfassend einen Schritt der Codierung (312) eines Signals (M), das aus einer Verarbeitung zur Reduzierung von Kanälen (307) hervorgeht, die auf das mehrkanalige Signal angewandt wird, und zur Codierung von Verräumlichungsinformationen des mehrkanaligen Signals, dadurch gekennzeichnet, dass es die folgenden Schritte umfasst:

- Extraktion (314, 320) einer Vielzahl von Verräumlichungsinformationen des mehrkanaligen Signals von mindestens zwei Arten;

- Gewinnung (315, 317) mindestens eines Darstellungsmodells der extrahierten Verräumlichungsinformationen;

- Bestimmung (315,411) mindestens eines Winkelparameters eines gewonnenen Modells;

- Codierung (316, 318) des mindestens einen bestimmten Winkelparameters, um die mindestens zwei Arten von Verräumlichungsinformationen zu codieren, die bei der Codierung von Verräumlichungsinformationen extrahiert werden.


 
2. Verfahren zur Codierung nach Anspruch 1, dadurch gekennzeichnet, dass die Verräumlichungsinformationen durch Frequenzteilbänder des mehrkanaligen Audiosignals definiert sind, und dadurch, dass mindestens ein Winkelparameter pro Teilband bestimmt und codiert wird.
 
3. Verfahren nach einem der Ansprüche 1 bis 2, dadurch gekennzeichnet, dass es außerdem die Schritte der Berechnung einer Referenz-Verräumlichungsinformation und der Codierung dieser Referenz-Verräumlichungsinformation umfasst.
 
4. Verfahren zur Codierung nach einem der vorhergehenden Ansprüche, dadurch gekennzeichnet, dass eine der Verräumlichungsinformationen einer ersten Art eine Information der Interkanal-Laufzeitdifferenz (ITD) ist.
 
5. Verfahren zur Codierung nach einem der vorhergehenden Ansprüche, dadurch gekennzeichnet, dass eine der Verräumlichungsinformationen einer zweiten Art eine Information der Interkanal-Pegeldifferenz (ILD) ist.
 
6. Verfahren nach Anspruch 5, dadurch gekennzeichnet, dass es außerdem die folgenden Schritte zur Codierung einer Interkanal-Pegeldifferenz umfasst:

- Schätzung einer Information zur Interkanal-Pegeldifferenz anhand des gewonnenen Modells und des bestimmten Winkelparameters;

- Codierung der Differenz zwischen der extrahierten und der geschätzten Interkanal-Pegeldifferenz.


 
7. Verfahren nach einem der vorhergehenden Ansprüche, dadurch gekennzeichnet, dass ein Darstellungsmodell pro Verräumlichungsinformation gewonnen wird.
 
8. Verfahren nach einem der vorhergehenden Ansprüche, dadurch gekennzeichnet, dass ein gemeinsames Darstellungsmodell für mehrere Verräumlichungsinformationen gewonnen wird.
 
9. Verfahren zur Codierung nach einem der Ansprüche 1 bis 8, dadurch gekennzeichnet, dass die Gewinnung eines Darstellungsmodells der Verräumlichungsinformationen durch die Auswahl aus einer Tabelle von Modellen erfolgt, die für verschiedene Verräumlichungsinformationswerte definiert sind.
 
10. Verfahren nach Anspruch 9, dadurch gekennzeichnet, dass ein Index der Tabelle, der dem ausgewählten Modell entspricht, codiert wird.
 
11. Verfahren zur parametrischen Decodierung eines mehrkanaligen digitalen Audiosignals, umfassend einen Schritt der Decodierung (702) eines codierten Signals, das aus einer Verarbeitung zur Reduzierung von Kanälen hervorgeht, die auf das mehrkanalige Signal angewandt wird, und der Decodierung (705, 715) von Verräumlichungsinformationen des mehrkanaligen Signals, dadurch gekennzeichnet, dass es die folgenden Schritte zur Decodierung mindestens einer Verräumlichungsinformation umfasst:

- Empfang und Decodierung (705, 715) mindestens eines codierten Winkelparameters;

- Gewinnung (706, 716) mindestens eines Darstellungsmodells von Verräumlichungsinformationen;

- Bestimmung (707, 717) einer Vielzahl von Verräumlichungsinformationen von mindestens zwei Arten des mehrkanaligen Signals anhand des mindestens einen gewonnenen Modells und des mindestens einen decodierten Winkelparameters.


 
12. Verfahren zur Decodierung nach Anspruch 11, dadurch gekennzeichnet, dass es einen Schritt des Empfangs und der Decodierung eines Indexes der Tabelle von Modellen und der Gewinnung des mindestens einen Darstellungsmodells der Verräumlichungsinformationen umfasst, die anhand des decodierten Indexes zu decodieren sind.
 
13. Parametrischer Codierer eines mehrkanaligen digitalen Audiosignals, umfassend ein Modul zur Codierung (312) eines Signals (M), das aus einem Verarbeitungsmodul zur Reduzierung von Kanälen (307) hervorgeht, das auf das mehrkanalige Signal angewandt wird, und Module (315, 317, 316, 318) zur Codierung von Verräumlichungsinformationen des mehrkanaligen Signals, dadurch gekennzeichnet, dass es umfasst:

- ein Modul zur Extraktion (314, 320) einer Vielzahl von Verräumlichungsinformationen von mindestens zwei Arten des mehrkanaligen Signals;

- ein Modul zur Gewinnung (315, 317) mindestens eines Modells zur Darstellung der extrahierten Verräumlichungsinformationen;

- ein Modul zur Bestimmung (411) mindestens eines Winkelparameters eines gewonnenen Modells;

- ein Modul zur Codierung (316, 318) des mindestens einen bestimmten Winkelparameters, um die mindestens zwei Arten von Verräumlichungsinformationen zu codieren, die bei der Codierung von Verräumlichungsinformationen extrahiert werden.


 
14. Parametrischer Decodierer eines mehrkanaligen digitalen Audiosignals, umfassend ein Modul zur Decodierung (702) eines codierten Signals, das aus einer Verarbeitung zur Reduzierung von Kanälen hervorgeht, die auf das mehrkanalige Signal angewandt wird, und ein Modul zur Decodierung (705, 7015) von Verräumlichungsinformationen des mehrkanaligen Signals, dadurch gekennzeichnet, dass es umfasst:

- ein Modul zum Empfang und zur Decodierung (705, 715) mindestens eines codierten Winkelparameters;

- ein Modul zur Gewinnung (706, 716) mindestens eines Darstellungsmodells der Verräumlichungsinformationen;

- ein Modul zur Bestimmung (707, 717) einer Vielzahl von Verräumlichungsinformationen von mindestens zwei Arten des mehrkanaligen Signals anhand des mindestens einen gewonnenen Modells und des mindestens einen decodierten Winkelparameters.


 
15. Prozessorlesbares Speichermedium, auf dem ein Computerprogramm aufgezeichnet ist, das Codeanweisungen für die Ausführung der Schritte des Verfahrens zur Codierung nach einem der Ansprüche 1 bis 10 und/oder des Verfahrens zur Decodierung nach einem der Ansprüche 11 bis 12 umfasst.
 


Claims

1. Method of parametric coding of a multichannel digital audio signal comprising a step (312) of coding a signal (M) arising from a channels reduction processing (307) applied to the multichannel signal and of coding spatialization cues in respect of the multichannel signal, characterized in that it comprises the following steps:

- extraction (314, 320) of a plurality of spatialization cues in respect of the multichannel signal of at least two types;

- obtaining (315, 317) of at least one representation model of the spatialization cues extracted;

- determination (315, 411) of at least one angle parameter of a model obtained;

- coding (316, 318) of the at least one determined angle parameter so as to code the at least two types of spatialization cues extracted during the coding of spatialization cues.


 
2. Coding method according to Claim 1, characterized in that the spatialization cues are defined by frequency sub-bands of the multichannel audio signal and in that at least one angle parameter per sub-band is determined and coded.
 
3. Method according to one of Claims 1 and 2, characterized in that it furthermore comprises the steps of calculating a reference spatialization cue and of coding this reference spatialization cue.
 
4. Coding method according to one of the preceding claims, characterized in that one of the spatialization cues of a first type is an interchannel time shift (ITD) cue.
 
5. Coding method according to one of the preceding claims, characterized in that one of the spatialization cues of a second type is an interchannel intensity difference (ILD) cue.
 
6. Method according to Claim 5, characterized in that it furthermore comprises the following steps for coding an interchannel intensity difference cue:

- estimation of an interchannel intensity difference cue on the basis of the model obtained and of the angle parameter determined;

- coding of the difference between the interchannel intensity difference cue extracted and estimated.


 
7. Method according to one of the preceding claims, characterized in that a spatialization-cue-based representation model is obtained.
 
8. Method according to one of the preceding claims, characterized in that a representation model common to several spatialization cues is obtained.
 
9. Coding method according to one of Claims 1 to 8, characterized in that the obtaining of a representation model of the spatialization cues is performed by selecting from a table of models defined for various values of the spatialization cues.
 
10. Method according to Claim 9, characterized in that an index of the table corresponding to the selected model is coded.
 
11. Method of parametric decoding of a multichannel digital audio signal comprising a step (702) of decoding a coded signal arising from a channels reduction processing applied to the multichannel signal and of decoding (705, 715) spatialization cues in respect of the multichannel signal, characterized in that it comprises the following steps for decoding at least one spatialization cue:

- reception and decoding (705, 715) of at least one coded angle parameter;

- obtaining (706, 716) of at least one representation model of spatialization cues;

- determination (707, 717) of a plurality of spatialization cues of at least two types in respect of the multichannel signal on the basis of the at least one model obtained and of the at least one decoded angle parameter.


 
12. Decoding method according to Claim 11, characterized in that it comprises a step of receiving and decoding an index of table of models and of obtaining the at least one representation model of the spatialization cues to be decoded on the basis of the decoded index.
 
13. Parametric coder of a multichannel digital audio signal comprising a module (312) for coding a signal (M) arising from a module for channels reduction processing (307) applied to the multichannel signal and modules (315, 317, 316, 318) for coding spatialization cues in respect of the multichannel signal, characterized in that it comprises:

- a module (314, 320) for extracting a plurality of spatialization cues of at least two types in respect of the multichannel signal;

- a module (315, 317) for obtaining at least one representation model of the spatialization cues extracted;

- a module (411) for determining at least one angle parameter of a model obtained;

- a module (316, 318) for coding the at least one angle parameter determined so as to code the at least two types of spatialization cues extracted during the coding of spatialization cues.


 
14. Parametric decoder of a multichannel digital audio signal comprising a module (702) for decoding a coded signal arising from a channels reduction processing applied to the multichannel signal and a module (705, 7015) for decoding spatialization cues in respect of the multichannel signal, characterized in that it comprises:

- a module (705, 715) for receiving and decoding at least one coded angle parameter;

- a module (706, 716) for obtaining at least one representation model of the spatialization cues;

- a module (707, 717) for determining a plurality of spatialization cues of at least two types in respect of the multichannel signal on the basis of the at least one model obtained and of the at least one decoded angle parameter.


 
15. Storage medium readable by a processor on which is recorded a computer program comprising code instructions for the execution of the steps of the coding method according to one of Claims 1 to 10 and/or of the decoding method according to one of Claims 11 and 12.
 




Dessins



























































Références citées

RÉFÉRENCES CITÉES DANS LA DESCRIPTION



Cette liste de références citées par le demandeur vise uniquement à aider le lecteur et ne fait pas partie du document de brevet européen. Même si le plus grand soin a été accordé à sa conception, des erreurs ou des omissions ne peuvent être exclues et l'OEB décline toute responsabilité à cet égard.

Littérature non-brevet citée dans la description