(19)
(11) EP 3 025 514 B1

(12) FASCICULE DE BREVET EUROPEEN

(45) Mention de la délivrance du brevet:
11.09.2019  Bulletin  2019/37

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

(22) Date de dépôt:  04.07.2014
(51) Int. Cl.: 
H04S 1/00(2006.01)
H04S 7/00(2006.01)
(86) Numéro de dépôt:
PCT/FR2014/051728
(87) Numéro de publication internationale:
WO 2015/011359 (29.01.2015 Gazette  2015/04)

(54)

SPATIALISATION SONORE AVEC EFFET DE SALLE

KLANGVERRÄUMLICHUNG MIT RAUMWIRKUNG

SOUND SPATIALIZATION WITH ROOM EFFECT


(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é: 24.07.2013 FR 1357299

(43) Date de publication de la demande:
01.06.2016  Bulletin  2016/22

(73) Titulaire: Orange
75015 Paris (FR)

(72) Inventeurs:
  • PALLONE, Grégory
    F-35830 Betton (FR)
  • EMERIT, Marc
    F-35000 Rennes (FR)

(74) Mandataire: Cabinet Plasseraud 
66, rue de la Chaussée d'Antin
75440 Paris Cedex 09
75440 Paris Cedex 09 (FR)


(56) Documents cités: : 
WO-A2-2007/031906
US-A1- 2006 045 294
   
  • STEWART REBECCA ET AL: "Generating a Spatial Average Reverberation Tail Across Multiple Impulse Responses", CONFERENCE: 35TH INTERNATIONAL CONFERENCE: AUDIO FOR GAMES; FEBRUARY 2009, AES, 60 EAST 42ND STREET, ROOM 2520 NEW YORK 10165-2520, USA, 1 février 2009 (2009-02-01), XP040509247,
  • BREEBAART J ET AL: "Multi-channel goes mobile: MPEG surround binaural rendering", AES INTERNATIONAL CONFERENCE. AUDIO FOR MOBILE AND HANDHELD DEVICES, 2 septembre 2006 (2006-09-02), pages 1-13, XP007902577,
  • JEAN-MARC JOT: "Real-time spatial processing of sounds for music, multimedia and interactive human-computer interfaces", MULTIMEDIA SYSTEMS, vol. 7, no. 1, 1 janvier 1999 (1999-01-01) , pages 55-69, XP055116104, ISSN: 0942-4962, DOI: 10.1007/s005300050111
  • SAVIOJA L ET AL: "CREATING INTERACTIVE VIRTUAL ACOUSTIC ENVIRONMENTS", JOURNAL OF THE AUDIO ENGINEERING SOCIETY, AUDIO ENGINEERING SOCIETY, NEW YORK, NY, US, vol. 47, no. 9, 1 septembre 1999 (1999-09-01), pages 675-705, XP000927390, ISSN: 1549-4950
  • MERIMAA JUHA ET AL: "Spatial Impulse Response Rendering I: Analysis and Synthesis", JAES, AES, 60 EAST 42ND STREET, ROOM 2520 NEW YORK 10165-2520, USA, vol. 53, no. 12, 1 décembre 2005 (2005-12-01), pages 1115-1127, XP040507491,
   
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] L'invention est relative au traitement de données sonores, et plus particulièrement à la spatialisation (dite « rendu 3D ») de signaux audio.

[0002] Une telle opération est par exemple exécutée lors du décodage d'un signal audio 3D codé, représenté sur un certain nombre de canaux, vers un nombre de canaux différents, deux par exemple, pour permettre la restitution des effets 3D audio sur un casque d'écoute.

[0003] L'invention est également relative à la transmission et à la restitution de signaux audio multicanaux et à leur conversion vers un dispositif de restitution, transducteur, imposé par l'équipement d'un utilisateur. C'est par exemple le cas pour la restitution d'une scène sonore 5.1 par un casque d'écoute audio, ou par une paire de hauts parleurs.

[0004] L'invention est également relative à la restitution, dans le cadre d'un jeu ou enregistrement vidéo par exemple, d'un ou plusieurs échantillons sonores stockés dans des fichiers, en vue de leur spatialisation.

[0005] Dans le cas d'une source monophonique statique, la binauralisation est basée sur le filtrage du signal monophonique par la fonction de transfert entre la position désirée de la source et chacune des deux oreilles. Le signal binaural (deux canaux) obtenu peut alors alimenter un casque audio et fournir la sensation à l'auditeur d'une source à la position simulée. Ainsi, le terme « binaural » vise la restitution d'un signal sonore avec des effets de spatialisation.

[0006] Chacune des fonctions de transfert simulant différentes positions peuvent être mesurées en chambre sourde, aboutissant ainsi à un ensemble de HRTF (pour « Head Related Transfer Functions » ou « Fonctions de Transferts Relatives à la Tête ») dans lesquelles aucun effet de salle n'est présent.

[0007] Ces fonctions de transfert peuvent également être mesurées dans une salle « classique », aboutissant ainsi à un ensemble de BRIR (pour « Binaural Room Impulse Response » ou « Réponse Impulsionnelle Binaurale de salle») dans lesquelles l'effet de salle, ou réverbération, est présent. L'ensemble des BRIR correspondent donc à un ensemble de fonctions de transfert entre une position donnée et les oreilles d'un auditeur (réel ou tête artificielle) placé dans une salle.

[0008] La technique habituelle de mesure de BRIR consiste à envoyer successivement dans chacun des haut-parleurs réels, positionnés autour d'une tête (réelle ou artificielle) équipée de microphones dans les oreilles, un signal de test (par exemple un signal sweep, une séquence binaire pseudo-aléatoire ou un bruit blanc). Ce signal de test rend possible, lors d'un traitement hors temps réel, la reconstitution (généralement par déconvolution) de la réponse impulsionnelle entre la position du haut-parleur et chacune des deux oreilles.

[0009] La différence entre un ensemble de HRTF et de BRIR se situe principalement dans la longueur de la réponse impulsionnelle, de l'ordre de la milliseconde pour les HRTF, à l'ordre de la seconde pour les BRIR.

[0010] Le filtrage étant basé sur la convolution entre le signal monophonique et la réponse impulsionnelle, la complexité pour effectuer une binauralisation avec des BRIR (contenant un effet de salle) est nettement plus élevée qu'avec des HRTF.

[0011] Il est possible par cette technique de simuler au casque ou sur un nombre limité de haut-parleurs une écoute d'un contenu multicanal (L canaux) généré par L haut-parleurs dans une salle. En effet, il suffit de considérer chacun des L haut-parleurs comme une source virtuelle positionnée idéalement par rapport à l'auditeur, de mesurer dans la salle à simuler les fonctions de transfert (pour les oreilles gauche et droite) de chacun de ces L haut-parleurs, puis d'appliquer à chacun des L signaux audio (censés alimenter les L haut-parleurs réels) les filtres BRIR correspondant aux haut-parleurs. Les signaux alimentant chacune des oreilles sont sommés pour fournir un signal binaural alimentant un casque audio.

[0012] On note I(1) (avec 1=[I,L]) le signal d'entrée censé alimenter les L haut-parleurs. On note BRIRg/d(1), les BRIR de chacun des haut-parleurs pour chacune des deux oreilles, et on note Og/d le signal binaural de sortie. La binauralisation du signal multicanal s'écrit donc :





[0013] Où * représente l'opérateur de convolution.

[0014] Par la suite, l'indice 1 tel que l ∈ [1,L] fait référence à un des L haut-parleurs. On a bien une BRIR pour un signal 1.

[0015] Ainsi, en référence à la figure 1, deux convolutions (une pour chaque oreille) sont présentes pour chaque haut-parleur (étapes S11 à S1L).

[0016] Pour L haut-parleurs, la binauralisation nécessite donc 2.L convolutions. On peut calculer la complexité Cconv dans le cas d'une implémentation rapide par bloc. Une implémentation rapide par bloc est par exemple donnée par une transformée de Fourier rapide (FFT pour « Fast Fourier Transform »). Le document « Submission and Evaluation Procedures for 3D Audio » (MPEG 3D Audio) précise une formule possible pour le calcul de Cconv :



[0017] Dans cette équation, L représente le nombre de FFT pour transformer en fréquence les signaux d'entrée (1 FFT par signal d'entrée), le 2 représente le nombre de FFT inverse pour obtenir le signal binaural temporel (2 FFT inverse pour les deux canaux du binaural), le 6 indique un coefficient de complexité par FFT, le second 2 indique un bourrage de zéros nécessaire pour éviter les problèmes dus à la convolution circulaire, Fs indique la taille de chacune des BRIR, et nBlocs représente le fait d'utiliser un traitement par bloc, plus réaliste dans une approche où la latence ne doit pas être excessivement élevée, et . représente la multiplication.

[0018] Ainsi pour utilisation typique avec nBlocs=10, Fs=48000, L=22, la complexité par échantillon de signal multicanal pour une convolution directe basée sur une FFT est de Cconv = 19049 multiplications-additions.

[0019] Cette complexité est trop élevée pour une implémentation réaliste à l'heure actuelle sur des processeurs courants (mobiles par exemple), il est donc nécessaire de diminuer cette complexité sans dégrader fortement le rendu de la binauralisation.

[0020] Pour que la spatialisation soit de bonne qualité, la totalité du signal temporel des BRIR doit être appliqué.

[0021] US 2006/045294 A1 divulgue un système de spatialisation sonore de signaux multicanaux pour délivrer au moins deux canaux de sortie, et incluant le partitionnement des réponses impulsionnelles en deux parties, la première contenant l'arrivée directe et les premières réflexions, et la seconde contenant la réverbération, les secondes parties d'au moins deux réponses impulsionnelles étant sommées et pondérées pour une obtenir une fonction de transfert unique représentant la réverbération à appliquer aux signaux d'entrée, afin de réduire la complexité des opérations de convolution. US 2006/045294 A1 divulgue également le filtrage par blocs de FFT.

[0022] STEWART REBECCA ET AL: "Generating a Spatial Average Reverberation Tail Across Multiple Impulse Responses",CONFERENCE: 35TH INTERNATIONAL CONFERENCE: AUDIO FOR GAMES; FEBRUARY 2009, AES, NEW YORK, USA, 1 février 2009 (2009-02-01) divulgue un partitionnement de réponses impulsionnelles similaire, ainsi que le moyennage des parties de réponses impulsionnelles représentant la réverbération, pour réduire la redondance dans les bases de données de réponses impulsionnelles.

[0023] GARDNER W G: "EFFICIENT CONVOLUTION WITHOUT INPUT-OUTPUT DELAY",JOURNAL OF THE AUDIO ENGINEERING SOCIETY, AUDIO ENGINEERING SOCIETY, NEW YORK, NY, US, vol. 43, no. 3, 1 mars 1995 (1995-03-01), pages 127-135 décrit une implémentation efficace pour la convolution de réponses impulsionnelles, notamment dans le contexte des simulations de réverbération, sous forme de blocs FFT. Cet article suggère de réutiliser les transformées des signaux d'entrée dès que possible, pour réduire les coûts de calcul, et montre qu'un partitionnement d'une réponse impulsionnelle en sous-blocs de longueur multiple les uns des autres permet de réduire la complexité de calcul.

[0024] La présente invention vient améliorer la situation.

[0025] Elle vise à diminuer fortement la complexité de la binauralisation d'un signal multicanal avec effet de salle tout en conservant au mieux la qualité audio.

[0026] La présente invention propose à cet effet un procédé de spatialisation sonore tel que défini dans les revendications 1 à 10.

[0027] L'invention vise aussi un programme informatique comportant des instructions pour la mise en oeuvre du procédé.

[0028] L'invention peut être mise en oeuvre par un dispositif de spatialisation sonore tel que défini dans la revendication 12.

[0029] L'invention peut également être mise en oeuvre dans un module de décodage de signaux sonores, en tant que signaux d'entrée, comportant le dispositif de spatialisation ci-dessus.

[0030] D'autres avantages et caractéristiques de l'invention apparaîtront à la lecture de la description détaillée ci-après d'exemples de réalisation de l'invention et à l'examen des dessins sur lesquels :
  • la figure 1 illustre un procédé de spatialisation de l'art antérieur,
  • la figure 2 illustre schématiquement les étapes d'un procédé au sens de l'invention, dans un exemple de réalisation,
  • la figure 3 représente une réponse impulsionnelle binaurale de salle BRIR,
  • la figure 4 illustre schématiquement les étapes d'un procédé au sens de l'invention, dans un exemple de réalisation,
  • la figure 5 illustre schématiquement les étapes d'un procédé au sens de l'invention, dans un exemple de réalisation,
  • la figure 6 représente schématiquement un dispositif comportant des moyens de mise en oeuvre du procédé au sens de l'invention.


[0031] On se réfère à la figure 6 pour illustrer tout d'abord un contexte possible de mise en oeuvre de la présente invention dans un dispositif de type terminal connecté TER (par exemple un téléphone, smartphone ou autre, ou encore une tablette connectée, un ordinateur connecté, ou autres). Un tel dispositif TER comporte des moyens de réception (une antenne typiquement) de signaux audio Xc codés en compression, un dispositif de décodage DECOD délivrant des signaux décodés X prêts à être traités par un dispositif de spatialisation avant la restitution des signaux audio (par exemple en binaural sur un casque à oreillettes CAS). Bien entendu, dans certains cas, il peut être avantageux de garder les signaux partiellement décodés (par exemple dans le domaine des sous-bandes) si le traitement de spatialisation est effectué dans le même domaine (traitement fréquentiel dans le domaine des sous-bandes par exemple).

[0032] En référence encore à la figure 6, le dispositif de spatialisation se présente par une combinaison d'éléments :
  • hardware comportant typiquement un ou plusieurs circuits CIR coopérant avec une mémoire de travail MEM et un processeur PROC,
  • et software, dont les figures 2 et 4 sont des exemples d'organigrammes en illustrant l'algorithme général.


[0033] Ici, la coopération entre les éléments hardware et software produit un effet technique procurant notamment une économie de complexité de la spatialisation pour sensiblement un même rendu audio (même sensation pour un auditeur), comme on le verra plus loin.

[0034] On se réfère maintenant à la figure 2 pour décrire un traitement au sens de l'invention, ainsi mis en oeuvre par des moyens informatiques.

[0035] Dans une première étape S21, une préparation des données est effectuée. Cette préparation est optionnelle, les signaux peuvent être traités selon les étapes S22 et suivantes sans ce pré-traitement.

[0036] En particulier, cette préparation consiste à effectuer une troncature de chaque BRIR pour ignorer les échantillons inaudibles au début et à la fin de la réponse impulsionnelle.

[0037] Cette préparation, pour la troncature en début de réponse impulsionnelle TRONC S, à l'étape S211, consiste à déterminer un instant de début d'ondes sonores directes et peut-être mis en oeuvre par les étapes suivantes :
  • Une somme cumulée des énergies de chacun des filtres BRIR(1) est calculée. Typiquement, cette énergie est calculée par une somme au carré des amplitudes des échantillons 1 à j, avec j compris dans [1 ; J] avec J le nombre d'échantillon d'un filtre BRIR.
  • La valeur d'énergie du filtre d'énergie maximum valMax (parmi les filtres relatifs à l'oreille gauche et à l'oreille droite) est calculée.
  • Pour chacun des haut-parleurs 1, on calcule l'indice pour lequel l'énergie de chacun des filtres BRIR(1) dépasse un certain seuil en dB calculé par rapport à valMax (e.g. valMax-50dB).
  • L'indice de troncature iT retenu pour toutes les BRIR est l'indice minimum parmi tous les indices des BRIR et il est considéré comme l'instant de début d'ondes sonores directes.


[0038] L'indice iT obtenu correspond donc au nombre d'échantillons à ignorer pour chacune des BRIR. Une troncature brutale en début de réponse impulsionnelle avec une fenêtre rectangulaire peut mener à des artefacts audibles si elle est appliquée dans une partie trop énergétique. Il peut donc être préférable d'appliquer une fenêtre de fondu d'entrée adaptée, cependant si des précautions ont été prises dans le seuil choisi, ce fenêtrage devient inutile, car inaudible (on coupe juste du signal inaudible).

[0039] Le synchronisme entre BRIR rend possible l'application d'un délai constant pour toutes les BRIR dans un souci de simplicité d'implémentation, même si une optimisation de complexité est possible.

[0040] La troncature de chaque BRIR pour ignorer les échantillons inaudibles à la fin de la réponse impulsionnelle TRONC E, à l'étape S212, peut être réalisée à partir d'étape similaires à celles décrites ci-avant, adaptées pour convenir à la fin de la réponse impulsionnelle. Une troncature brutale en fin de réponse impulsionnelle avec une fenêtre rectangulaire peut mener à des artefacts audibles sur des signaux impulsionnels où la queue de réverbération peut se révéler audible. Ainsi, dans un mode de réalisation, on applique une fenêtre de fondu de sortie adaptée.

[0041] A l'étape 22, une isolation en synchronisme ISOL A/B est effectuée. Cette isolation en synchronisme consiste à séparer, pour chaque BRIR, la partie « son direct » et « premières réflexions » (ou Direct, noté A) et de la partie « son diffus » (ou Diffus, noté B). En effet, le traitement à effectuer sur la partie « son diffus » peut avantageusement être différent de celui à effectuer sur la partie « son direct » dans la mesure où il est préférable d'avoir une meilleure qualité de traitement sur la partie « son direct » que sur la partie « son diffus ». Ceci rend possible une optimisation du rapport qualité/complexité.

[0042] En particulier, pour réaliser l'isolation en synchronisme, on détermine un index « iDD » d'échantillon unique et commun à toutes les BRIR (d'où le terme « synchronisme ») à partir duquel on considère que le reste de la réponse impulsionnelle correspond à un champ diffus. On partitionne donc les réponses impulsionnelles BRIR(1) en deux : A(l) et B(l), où la concaténation des deux correspond à BRIR(1).

[0043] La figure 3 montre l'index de partitionnement iDD à l'échantillon 2000. La partie à gauche de cet indice iDD correspond à la partie A. La partie à droite de cet indice iDD correspond à la partie B.

[0044] Dans un mode de réalisation, ces deux parties sont isolées, sans fenêtrage, afin de subir des traitements différents. Dans une variante, un fenêtrage entre les parties A(1) et B(1) est appliqué.

[0045] L'indice iDD peut-être spécifique à la salle pour laquelle les BRIR ont été déterminés. Le calcul de cet indice peut donc dépendre de l'enveloppe spectrale, de la corrélation des BRIR ou encore de l'échogramme de ces BRIR. Par exemple, iDD peut être déterminé par une formule du type

avec Vsalle le volume de la salle de mesure.

[0046] Dans un mode de réalisation, iDD est une valeur fixe, typiquement 2000. Dans une variante, iDD varie, avantageusement de manière dynamique, en fonction de l'environnement à partir duquel les signaux d'entrée sont capturés.

[0047] Le signal de sortie pour les oreilles gauche (g) et droite (d), représenté par Og/d, s'écrit donc :

z-iDD correspond au délai de iDD échantillons.

[0048] L'application de ce délai aux signaux est effectuée en stockant les valeurs calculées pour

dans une mémoire temporaire (par exemple dans un buffer) et en les restituant au moment voulu.

[0049] Dans un mode de réalisation, les index d'échantillons choisis pour A et B peuvent également tenir compte des longueurs de trames dans le cas d'intégration dans un codeur audio. En effet, des tailles typiques de trames de 1024 échantillons peut mener à un choix tel que A fasse 1024 et B fasse 2048, en s'assurant que B est bien une zone de champ diffus pour toutes les BRIR.

[0050] En particulier, il peut être intéressant que la taille de B soit un multiple de la taille de A car si le filtrage est implémenté par blocs de FFT, alors le calcul d'une FFT pour A peut être réutilisé pour B.

[0051] Un champ diffus se caractérise par le fait qu'il est statistiquement identique en tous les points de la salle. Ainsi, sa réponse en fréquence varie peu en fonction du haut-parleur à simuler. La présente invention exploite cette caractéristique dans le but de remplacer tous les filtres Diffus D(l) de toutes les BRIR par un seul et unique filtre « moyen » Bmean afin de diminuer fortement la complexité due aux convolutions multiples. Pour cela, on peut modifier la partie champ diffus B à l'étape S23B, toujours en référence à la figure 2.

[0052] A l'étape S23B1, on calcule la valeur du filtre moyen Bmean. D'abord, il est extrêmement rare que le système complet soit calibré idéalement, on peut donc appliquer un gain de pondération qui sera reporté dans le signal d'entrée afin d'effectuer une unique convolution par oreille pour la partie champs diffus. On décompose donc les BRIR en des filtres normalisés en énergie, et on reporte le gain de normalisation

dans le signal d'entrée :

avec

EBg/d(l) représente l'énergie de Bg/d(l).

[0053] Ensuite, on approxime Bnormg/d(l) par un seul et unique filtre moyen Bmeang/d qui n'est plus fonction du haut-parleur 1, mais qu'il est possible de normaliser également en énergie :

avec



[0054] Dans un mode de réalisation, ce filtre moyen peut être obtenu par moyennage des échantillons temporels. Dans une variante, il peut être obtenu par tout autre type de moyennage comme par exemple un moyennage des densités spectrales de puissance.

[0055] Dans un mode de réalisation, l'énergie du filtre moyen EEmeang/d peut être mesurée directement à partir du filtre construit Bmeang/d. Dans une variante, il peut également être estimé en prenant en compte l'hypothèse que les filtres Bnormg/d(l) sont décorrélés. En effet, dans ce cas, comme on somme des signaux d'énergie unitaire, on a :



[0056] L'énergie peut être calculée sur l'ensemble des échantillons correspondants à la partie champ diffus.

[0057] A l'étape S23B2, on calcule la valeur du facteur de pondération Wg/d(l). Un seul facteur de pondération à appliquer au signal d'entrée est calculé, prenant en compte les normalisations des filtres Diffus et du filtre moyen:

Avec



[0058] Le filtre moyen étant constant, il peut sortir de la somme :



[0059] Ainsi, les L convolutions avec la partie champ diffus sont remplacées par une seule convolution avec un filtre moyen, moyennant une somme pondérée du signal d'entrée.

[0060] A l'étape S23B3, on peut optionnellement calculer un gain G corrigeant le gain du filtre moyen Bmeang/d. En effet, dans le cas de la convolution entre les signaux d'entrée et les filtres non approximés, quelles que soient les valeurs de corrélation entre les signaux d'entrée, le filtrage par des filtres décorrélés que sont les Bg/d(l) mène à des signaux à sommer qui sont alors eux aussi décorrélés. A l'inverse, dans le cas de la convolution entre les signaux d'entrée et le filtre moyen approximé, l'énergie du signal issu de la sommation des signaux filtrés va dépendre de la valeur de corrélation existant entre les signaux d'entrée.

[0061] Par exemple,
* si tous les signaux d'entrée I(1) sont identiques et d'énergie unitaire, et que les filtres B(l) sont tous décorrélés (puisque champs diffus) et d'énergie unitaire, on a :

* si tous les signaux d'entrée I(1) sont décorrélés et d'énergie unitaire, et que les filtres B(l) sont tous d'énergie unitaire, mais remplacés par des filtres identiques

on a:



[0062] Car les énergies des signaux décorrélés s'ajoutent.

[0063] Ce cas est équivalent au précédent dans le sens où les signaux issus du filtrage sont tous décorrélés, grâce aux signaux d'entrée dans le premier cas, et grâce aux filtres dans le second cas.
* si tous les signaux d'entrée I(1) sont identiques et d'énergie unitaire, et que les filtres B(l) sont tous d'énergie unitaire, mais remplacés par des filtres identiques

on a:



[0064] Car les énergies des signaux identiques s'ajoutent en quadrature (car leurs amplitudes s'ajoutent).

[0065] Ainsi,
  • si deux haut-parleurs sont actifs simultanément, alimentés par des signaux décorrélés, alors aucun gain n'est apporté en appliquant les étapes S23B1 et S23B2 par rapport à la méthode classique.
  • si deux haut-parleurs sont actifs simultanément, alimentés par des signaux identiques, alors un gain de 10. log10(L2/L) =10.log10(22/2) = 3.01dB est apporté en appliquant les étapes S23B1 et S23B2 par rapport à la méthode classique.
  • si trois haut-parleurs sont actifs simultanément, alimentés par des signaux identiques, alors un gain de 10.log10(L2/L) = 10.log10(32/3) = 4.77dB est apporté en appliquant les étapes S23B1 et S23B2 par rapport à la méthode classique.


[0066] Les cas évoqués ci-avant correspondent aux cas extrêmes de signaux identiques ou décorrélés. Ces cas sont toutefois réalistes : une source positionnée au milieu de deux haut-parleurs, virtuels ou réels, fournira un signal identique à ces deux haut-parleurs (par exemple avec une technique de type VBAP, pour « Vector base amplitude panning »). Dans le cas d'un positionnement dans un système 3D, les 3 haut-parleurs peuvent recevoir le même signal au même niveau.

[0067] Ainsi, on peut appliquer une compensation afin de respecter l'énergie des signaux binauralisés.

[0068] Idéalement, ce gain de compensation G sera déterminé en fonction du signal d'entrée (soit G(I(1))) et sera appliqué à la somme des signaux d'entrée pondérés :



[0069] Le gain G(I(l)) peut être estimé par un calcul de corrélation entre chacun des signaux. Il peut également être estimé en comparant les énergies des signaux avant et après sommations. Dans ce cas, le gain G peut varier dynamiquement au cours du temps, en fonction par exemple des corrélations entre les signaux d'entrée, qui varient eux-mêmes au cours du temps.

[0070] Dans un mode de réalisation simplifié, il est possible de fixer un gain constant, par exemple G = -3dB = 10-3/20, ce qui évitera d'avoir à effectuer une estimation de corrélation qui peut être coûteuse. Le gain constant G peut alors être appliqué hors ligne aux facteurs de pondération (donnant ainsi

), ou au filtre Bmeang/d, ce qui évitera l'application d'un gain supplémentaire au vol.

[0071] Une fois les fonctions de transfert A et B isolées et les filtres Bmeang/d (optionnellement les poids Wg/d(l) et G) calculés, on applique ces fonctions de transfert et ces filtres aux signaux d'entrée.

[0072] Dans un premier mode de réalisation, décrit en référence à la figure 4, le traitement du signal multicanal par application des filtres Direct (A) et Diffus (B) pour chacune des oreilles est effectué de la manière suivante :
  • On applique (étapes S4A1 à S4AL) au signal multicanal d'entrée un filtrage efficace (par exemple convolution directe basée-FFT) par les filtres Direct (A), comme décrit dans l'état de l'art. On obtient un signal

  • En fonction des relations entre les signaux d'entrée, notamment en fonction de leur corrélation, on peut optionnellement corriger à l'étape S4B11 le gain du filtre moyen Bmeang/d par application du gain G aux signaux de sortie après sommation des signaux d'entrée préalablement pondérés (étapes M4B1 à M4BL).
  • On applique au signal multicanal B à l'étape S4B1 un filtrage efficace par le filtre Diffus moyen Bmean. Cette étape a bien lieu après sommation des signaux d'entrée préalablement pondérés (étapes M4B1 à M4BL). On obtient le signal

  • On applique au signal

    un délai iDD afin de compenser le retard introduit lors de l'étape d'isolation du signal B à l'étape S4B2.
  • Les signaux

    et

    sont sommés.
  • Si une troncature éliminant les échantillons inaudibles au début des réponses impulsionnelles a été réalisée, alors on applique à l'étape S41 au signal d'entrée un délai iT correspondant aux échantillons inaudibles supprimés.


[0073] Dans une variante, en référence à la figure 5, les signaux ne sont pas seulement calculés pour les oreilles gauches et droites (indices g et d ci-avant) mais pour k dispositifs de restitution (typiquement des haut-parleurs).

[0074] Dans un second mode de réalisation, on applique le gain G préalablement à la sommation des signaux d'entrée, c'est-à-dire pendant les étapes de pondération (étapes M4B1 à M4BL).

[0075] Dans un troisième mode de réalisation, on applique une décorrélation aux signaux d'entrée. Ainsi, les signaux sont décorrélés après convolution par le filtre Bmean quelles que soient les corrélations d'origine entre signaux d'entrée. On peut utiliser une implémentation efficace de décorrélation (par exemple en utilisant un réseau de retards bouclés) afin d'éviter l'utilisation de filtres de décorrélation couteux.

[0076] Ainsi, en supposant de manière réaliste que des BRIR de longueur 48000 échantillons peuvent être :
  • tronquées entre l'échantillon 150 et l'échantillon 3222 par la technique décrite à l'étape S21,
  • décomposées en deux parties : champ direct A de 1024 échantillons, et champ diffus B de 2048 échantillons, par la technique décrite à l'étape S22,
alors la complexité de binauralisation peut être approximativement donnée par :

Avec NA et NB les tailles en échantillons de A et B

[0077] Ainsi pour nBlocs=10, Fs=48000, L=22, NA=1024 et NB=2048, la complexité par échantillon de signal multicanal pour une convolution basée-FFT est de Cconv = 3312 multiplications-additions. Ce résultat est cependant logiquement à comparer à une solution simple implémentant seulement la troncature, soit pour nBlocs=10, Fs=3072, L=22 :



[0078] Il existe donc un facteur 19049/3312=5.75 de complexité entre l'état de l'art et la présente invention, et encore un facteur 13339/3312=4 de complexité entre l'état de l'art bénéficiant de la troncature et la présente invention.

[0079] Si la taille de B est un multiple de la taille de A, alors si le filtrage est implémenté par blocs de FFT, le calcul d'une FFT pour A peut être réutilisé pour B. On a donc besoin de L FFT sur NA points, qui serviront à la fois au filtrage par A et par B, deux FFT inverse sur NA points pour obtenir le signal binaural temporel, et la multiplication des spectres en fréquence.

[0080] Dans ce cas, la complexité peut être approximée (les additions sont négligées, (L+1) correspond à la multiplication des spectres, L pour A et 1 pour B) par :



[0081] Avec cette approche, on gagne encore un facteur 2, et donc un facteur 12 et 8 par rapport à l'état de l'art non tronquée et tronquée.

[0082] L'invention peut trouver une application directe dans la norme MPEG-H 3D Audio.

[0083] Bien entendu, la présente invention ne se limite pas à la forme de réalisation décrite ci-avant ; elle s'étend à d'autres variantes tout en restant dans l'étendue de la protection définie dans les revendications annexées.

[0084] Ainsi par exemple, on a décrit ci-avant un mode de réalisation dans lequel le signal Direct A n'est pas approximé par un filtre moyen. Bien entendu, on peut utiliser filtre moyen de A pour faire les convolutions (étapes S4A1 à S4AL) avec les signaux issus des haut-parleurs.

[0085] On a décrit ci-avant un mode de réalisation basé sur le traitement d'un contenu multicanal généré pour L haut-parleurs. Bien sûr, le contenu multicanal peut-être généré par tout type de source audio comme par exemple la voix, un instrument de musique, un bruit quelconque, etc.

[0086] On a décrit ci-avant un mode de réalisation basé sur des valeurs de BRIR déterminées dans une salle. Bien sûr, on peut mettre en oeuvre la présente invention pour tout type d'environnement extérieur (par exemple salle de concert, plein air, etc.).

[0087] On a décrit ci-avant un mode de réalisation basé sur l'application de deux fonctions de transfert. Bien sûr, on peut mettre en oeuvre la présente invention avec plus de deux fonctions de transfert. Par exemple, on peut isoler en synchronisme une partie relative aux sons émis directement, une partie relative aux premières réflexions et une partie relative aux sons diffus.


Revendications

1. Procédé de spatialisation sonore dans lequel on applique au moins un filtrage à au moins deux signaux d'entrée (I(1), I(2), ..., I(L)) pour délivrer au moins deux signaux de sortie (O(1), O(2), ..., O(K)), le filtrage comportant:

- pondérer (M4B1, M4B2, ..., M4BL) lesdits au moins deux signaux d'entrée par des poids de pondération (Wk(1), ..., Wk(L)) respectifs, chaque poids de pondération étant spécifique à chacun des signaux d'entrée ;

- pour chaque réponse impulsionnelle incorporant un effet de salle parmi une pluralité de réponses impulsionnelles incorporant un effet de salle, ladite réponse impulsionnelle incorporant un effet de salle étant respectivement associée à un signal d'entrée parmi lesdits au moins deux signaux d'entrée (I(1), I(2), ..., I(L)) et à un signal de sortie parmi lesdits au moins deux signaux de sortie (O(1), O(2), ..., O(K)) :

∘ partitionner (S22), dans un domaine temporel, ladite réponse impulsionnelle en une première partie (A) et une deuxième partie (B), ledit partitionnement étant effectué tel que :

ladite première partie représente des propagations sonores directes et des premières réflexions sonores desdites propagations et s'étend sur un premier nombre d'échantillons ; et

ladite deuxième partie représente un champ sonore diffus présent après lesdites premières réflexions et s'étend sur un deuxième nombre d'échantillons, ledit deuxième nombre d'échantillons étant un multiple dudit premier nombre d'échantillons ;

∘ déterminer une première fonction de transfert (Ak(1), Ak(2), ..., Ak(L)) à partir de ladite première partie ;

∘ déterminer une deuxième fonction de transfert à partir de ladite deuxième partie ;

- pour chaque signal de sortie (O(1), O(2), ..., O(K)) parmi lesdits au moins deux signaux de sortie (O(1), O(2), ..., O(K)) :

∘ déterminer (S23B1) une troisième fonction de transfert (Bmeank) à partir d'une moyenne desdites deuxièmes fonctions de transfert correspondant au signal de sortie (O(1), O(2), ..., O(K)) ;

∘ appliquer (S4A1, S4A2, ..., S4AL) à chaque signal d'entrée (I(1), I(2), ..., I(L)) la première fonction de transfert (Ak(1), Ak(2), ..., Ak(L)) correspondant au signal d'entrée (I(1), I(2), ..., I(L)) et au signal de sortie (O(1), O(2), ..., O(K)) ;

∘ appliquer (S4B1) à chaque signal d'entrée la troisième fonction de transfert (Bmeank) correspondant au signal de sortie (O(1), O(2), ..., O(K)) ;
dans lequel l'application des premières et troisièmes fonctions de transfert est effectuée par blocs de FFT ;

- sommer des signaux résultant desdites applications des premières et troisièmes fonctions de transfert pour obtenir lesdits au moins deux signaux de sortie (O(1), O(2), ..., O(K)).


 
2. Procédé selon la revendication 1, caractérisé en ce qu'un gain de compensation d'énergie (G) est appliqué (S4B11) aux poids de pondération (Wk(1), ..., Wk(L)).
 
3. Procédé selon l'une des revendications précédentes, caractérisé en ce que ledit partitionnement de ladite réponse impulsionnelle comporte les opérations:

- de détermination (S211) d'un instant de début de présence d'ondes sonores directes,

- de détermination d'un instant de début de présence dudit champ sonore diffus après les premières réflexions, et

- de sélection (S22), dans ladite réponse impulsionnelle, d'une partie de la réponse qui s'étend temporellement entre ledit instant de début de présence d'ondes sonores directes jusqu'audit instant de début de présence de champ diffus, ladite partie de réponse sélectionnée correspondant à ladite première fonction de transfert.


 
4. Procédé selon la revendication 3, caractérisé en ce que ledit filtrage comporte l'application d'au moins un délai de compensation (S4B2) correspondant à un écart temporel entre ledit instant de début d'ondes sonores directes et ledit instant de début de présence de champ diffus.
 
5. Procédé selon la revendication 4, caractérisé en ce que lesdites première et troisième fonctions de transfert sont appliquées parallèlement auxdits signaux d'entrée et en ce que ledit au moins un délai de compensation est appliqué aux signaux d'entrée filtrés par lesdites troisièmes fonctions de transfert.
 
6. Procédé selon l'une des revendications précédentes, dans lequel ladite troisième fonction de transfert est donnée par :

avec :

k un indice relatif à un signal de sortie,

l ∈ [1; L] un indice relatif à un signal d'entrée parmi lesdits signaux d'entrée,

L un nombre de signaux d'entrée,

Bnormk(l) une fonction de transfert normalisée obtenue à partir d'une deuxième fonction de transfert parmi lesdites deuxièmes fonctions de transfert.


 
7. Procédé selon la revendication 6, caractérisé en ce qu'au moins un signal de sortie Ok dudit procédé est donné par :

avec :

I(l) un signal d'entrée parmi lesdits signaux d'entrée,

Ak(l) une première fonction de transfert parmi lesdites premières fonctions de transfert,

Wk(l) un poids de pondération parmi lesdits poids de pondération,

z-iDD correspond à l'application dudit délai de compensation,
où . est la multiplication, et

où * est l'opérateur de convolution.


 
8. Procédé selon la revendication 6, caractérisé en ce qu'il comprend une étape de décorrélation des signaux d'entrée, préalablement à l'application des troisièmes fonctions de transfert et en ce qu'au moins un signal de sortie Ok dudit procédé est donné par :

avec :

I(l) un signal d'entrée parmi lesdits signaux d'entrée,

Id(l) un signal d'entrée parmi lesdits signaux d'entrée ayant été soumis à ladite étape de décorrélation,

Ak(l) une première fonction de transfert parmi lesdites premières fonctions de transfert,

Wk(l) un poids de pondération parmi lesdits poids de pondération,

z-iDD correspond à l'application dudit délai de compensation,

où. est la multiplication, et

où * est l'opérateur de convolution.


 
9. Procédé selon la revendication 6, caractérisé en ce qu'il comprend une étape de détermination d'un gain de compensation d'énergie en fonction des signaux d'entrée et en ce qu'au moins un signal de sortie est donné par :

avec :

I(l) un signal d'entrée parmi lesdits signaux d'entrée,

G(I(1)) ledit gain de compensation d'énergie déterminé,

Ak(l) une première fonction de transfert parmi lesdites premières fonctions de transfert,

Wk(l) un poids de pondération parmi lesdits poids de pondération,

z-iDD correspond à l'application dudit délai de compensation,

où. est la multiplication, et

où * est l'opérateur de convolution.


 
10. Procédé selon l'une des revendications 6 à 9, caractérisé en ce que ledit poids est donné par :

avec k l'indice relatif à un signal de sortie,

l ∈ [1; L] l'indice relatif un signal d'entrée parmi lesdits signaux d'entrée,

L le nombre de signaux d'entrée,

avec EBmeank une énergie relative à

EBk(l) une énergie relative à une deuxième fonction de transfert parmi lesdites deuxièmes fonctions de transfert.


 
11. Programme informatique comportant des instructions pour la mise en oeuvre du procédé selon l'une des revendications 1 à 10, lorsque ces instructions sont exécutées par un processeur.
 
12. Dispositif de spatialisation sonore, comportant au moins un filtre appliqué à au moins deux signaux d'entrée (I(1), I(2), ..., I(L)), le dispositif étant apte à délivrer au moins deux signaux de sortie (O(1), O(2), ..., O(K)),
le dispositif comprenant des modules de pondération (M4B1, M4B2, ..., M4BL) pour pondérer lesdits au moins deux signaux d'entrée par des poids de pondération respectifs (Wk(1), ..., Wk(L)), chaque poids de pondération étant spécifique à chacun des signaux d'entrée ;
le dispositif étant en outre configuré pour :

- pour chaque réponse impulsionnelle incorporant un effet de salle parmi une pluralité de réponses impulsionnelles incorporant un effet de salle, ladite réponse impulsionnelle incorporant un effet de salle étant respectivement associée à un signal d'entrée parmi lesdits au moins deux signaux d'entrée (I(1), I(2), ..., I(L)) et à un signal de sortie parmi lesdits au moins deux signaux de sortie (O(1), O(2), ..., O(K)) :

∘ partitionner (S22), dans un domaine temporel, ladite réponse impulsionnelle en une première partie (A) et une deuxième partie (B), ledit partitionnement étant effectué tel que :

ladite première partie représente des propagations sonores directes et des premières réflexions sonores desdites propagations et s'étend sur un premier nombre d'échantillons ; et

ladite deuxième partie représente un champ sonore diffus présent après lesdites premières réflexions et s'étend sur un deuxième nombre d'échantillons, ledit deuxième nombre d'échantillons étant un multiple dudit premier nombre d'échantillons ;

∘ déterminer une première fonction de transfert (Ak(1), Ak(2), ..., Ak(L)) à partir de ladite première partie ;

∘ déterminer une deuxième fonction de transfert à partir de ladite deuxième partie le filtre comprenant :

- pour chaque signal de sortie (O(1), O(2), ..., O(K)) parmi lesdits au moins deux signaux de sortie (O(1), O(2), ..., O(K)) :

∘ déterminer (S23B1) une troisième fonction de transfert (Bmeank) à partir d'une moyenne desdites deuxièmes fonctions de transfert correspondant au signal de sortie (O(1), O(2), ..., O(K)) ;

∘ appliquer (S4A1, S4A2, ..., S4AL) à chaque signal d'entrée des premières fonctions de transfert correspondant au signal de sortie (O(1), O(2), ..., O(K)) ;

∘ appliquer (S4B1) à chaque signal d'entrée la troisième fonction de transfert (Bmeank) correspondant au signal de sortie (O(1), O(2), ..., O(K)) ;
dans lequel l'application des premières et troisièmes fonctions de transfert est effectuée par blocs de FFT ;

dans lequel des signaux résultant desdites applications des premières et troisièmes fonctions de transfert sont sommés pour obtenir lesdits au moins deux signaux de sortie (O(1), O(2), ..., O(K)).
 
13. Module de décodage de signaux sonores, comportant un dispositif de spatialisation selon la revendication 12, desdits signaux sonores en tant que signaux d'entrée.
 


Ansprüche

1. Verfahren zur Klangverräumlichung, wobei mindestens ein Filtern auf mindestens zwei Eingangssignale (I(1), I(2), ... , I(L)) angewendet wird, um mindestens zwei Ausgangssignale (O(1), O(2), ... , O(K))abzugeben, wobei das Filtern aufweist:

- Gewichten (M4B1, M4B2, ... , M4BL) der mindestens zwei Eingangssignale durch jeweilige Gewichtungsgewichte (Wk(1), ... , Wk(L)), wobei jedes Gewichtungsgewicht für jedes der Eingangssignale spezifisch ist,

- für jede Impulsantwort, die eine Raumwirkung enthält, unter mehreren Impulsantworten, die eine Raumwirkung enthalten, wobei die Impulsantwort, die eine Raumwirkung enthält, jeweils einem Eingangssignal unter den mindestens zwei Eingangssignalen (I(1), I(2), ... , I(L)) und einem Ausgangssignal unter den mindestens zwei Ausgangssignalen (O(1), 0(2), ... , 0(K)) zugeordnet wird:

∘ Partitionieren (S22) der Impulsantwort in einem Zeitbereich in einen ersten Teil (A) und einen zweiten Teil (B), wobei das Partitionieren derart durchgeführt wird, dass:

der erste Teil direkte Schallausbreitungen und erste Schallreflexionen der Ausbreitungen darstellt und sich über eine erste Anzahl von Abtastwerten erstreckt und

der zweite Teil ein diffuses Schallfeld darstellt, das nach den ersten Reflexionen vorhanden ist und sich über eine zweite Anzahl von Abtastwerten erstreckt, wobei die zweite Anzahl von Abtastwerten ein Vielfaches der ersten Anzahl von Abtastwerten ist,

∘ Bestimmen von einer ersten Übertragungsfunktion (Ak(1), Ak(2), ..., Ak(L)) ausgehend von dem ersten Teil,

∘ Bestimmen von einer zweiten Übertragungsfunktion ausgehend von dem zweiten Teil,

- für jedes Ausgangssignal (O(1), O(2), ... , O(K)) unter den mindestens zwei Ausgangssignalen (O(1), O(2), ... , O(K)):

∘ Bestimmen (S23B1) von einer dritten Übertragungsfunktion (Bmeank) ausgehend von einem Durchschnittswert der zweiten Übertragungsfunktionen, die dem Ausgangssignal (O(1), O(2), ... , O(K)) entspricht,

∘ Anwenden (S4A1, S4A2, ... , S4AL) auf jedes Eingangssignal (I(1), I(2), ... , I(L)) der ersten Übertragungsfunktion (Ak(1), Ak(2), ..., Ak(L)), die dem Eingangssignale (I(1), I(2), ... , I(L)) und dem Ausgangssignal (O(1), O(2), ... , O(K)) entspricht,

∘ Anwenden (S4Bl) auf jedes Eingangssignal der dritten Übertragungsfunktion (Bmeank), die dem Ausgangssignal (O(1), O(2), ... , O(K)) entspricht,
wobei das Anwenden der ersten und dritten Übertragungsfunktionen durch FFT-Blöcke erfolgt,

- Summieren der Signale, die sich aus den Anwendungen der ersten und dritten Übertragungsfunktionen ergeben, um die mindestens zwei Ausgangssignale (O(1), O(2), ... , O(K)) zu erhalten.


 
2. Verfahren nach Anspruch 1, dadurch gekennzeichnet, dass eine Energieausgleichsverstärkung (G) auf die Gewichtungsgewichte (Wk(1), ... , Wk(L)) angewendet wird (S4Bll).
 
3. Verfahren nach einem der vorhergehenden Ansprüche, dadurch gekennzeichnet, dass das Partitionieren der Impulsantwort die Vorgänge aufweist:

- des Bestimmens (S211) eines Anfangszeitpunkts der Anwesenheit von direkten Schallwellen,

- des Bestimmens eines Anfangszeitpunkts der Anwesenheit des diffusen Schallfeldes nach den ersten Reflexionen und

- des Auswählens (S22) in der Impulsantwort eines Teils der Antwort, der sich zeitlich zwischen dem Anfangszeitpunkt der Anwesenheit von direkten Schallwellen bis zum Anfangszeitpunkt der Anwesenheit des diffusen Schallfeldes erstreckt, wobei der ausgewählte Antwortteil der ersten Übertragungsfunktion entspricht.


 
4. Verfahren nach Anspruch 3, dadurch gekennzeichnet, dass das Filtern das Anwenden von mindestens einer Ausgleichsverzögerung (S4B2) aufweist, die einer Zeitdifferenz zwischen dem Anfangszeitpunkt von direkten Schallwellen und dem Anfangszeitpunkt der Anwesenheit des diffusen Schallfeldes entspricht.
 
5. Verfahren nach Anspruch 4, dadurch gekennzeichnet, dass die erste und die dritte Übertragungsfunktion parallel zu den Eingangssignalen angewendet werden und dadurch, dass die mindestens eine Ausgleichsverzögerung durch die dritten Übertragungsfunktionen auf die gefilterten Eingangssignale angewendet wird.
 
6. Ein Verfahren nach einem der vorhergehenden Ansprüche, wobei die dritte Übertragungsfunktion gegeben ist durch:

wobei: k ein Index in Bezug auf ein Ausgangssignal ist,

l∈[1;L] ein Index in Bezug auf ein Eingangssignal unter den Eingangssignalen ist,

L eine Anzahl von Eingangssignalen ist,

Bnormk(l) eine normalisierte Übertragungsfunktion ist, die ausgehend von einer zweiten Übertragungsfunktion unter den zweiten Übertragungsfunktionen erhalten wird.


 
7. Verfahren nach Anspruch 6, dadurch gekennzeichnet, dass mindestens ein Ausgangssignal 0k des Verfahrens gegeben ist durch:

wobei:

I(l) ein Eingangssignal unter den Eingangssignalen ist,

Ak(l) eine erste Übertragungsfunktion unter den ersten Übertragungsfunktionen ist,

Wk(l) ein Gewichtungsgewicht unter den Gewichtungsgewichten ist,

z-iDD einem Anwenden der Ausgleichsverzögerung entspricht,

wobei . die Multiplikation ist und

wobei * der Faltungsoperator ist.


 
8. Verfahren nach Anspruch 6, dadurch gekennzeichnet, dass es einen Dekorrelationsschritt der dritten Eingangssignale vor dem Anwenden der zweiten Übertragungsfunktionen aufweist und dadurch, dass mindestens ein Ausgangssignal 0k des Verfahrens gegeben ist durch:

wobei:

I(l) ein Eingangssignal unter den Eingangssignalen ist,

Id(l) ein Eingangssignal unter den Eingangssignalen ist, das einem Dekorrelationsschritt unterworfen worden ist,

Ak(l) eine erste Übertragungsfunktion unter den ersten Übertragungsfunktionen ist,

Wk(l) ein Gewichtungsgewicht unter den Gewichtungsgewichten ist,

z-iDD dem Anwenden der Ausgleichsverzögerung entspricht,

wobei . die Multiplikation ist und

wobei * der Faltungsoperator ist.


 
9. Verfahren nach Anspruch 6, dadurch gekennzeichnet, dass es einen Schritt des Bestimmens einer Energieausgleichsverstärkung in Abhängigkeit von den Eingangssignalen aufweist und dadurch, dass mindestens ein Ausgangssignal gegeben ist durch:

wobei:

I(l) ein Eingangssignal unter den Eingangssignalen ist,

G(I(l)) die bestimmte Energieausgleichsverstärkung ist,

Ak(l) eine erste Übertragungsfunktion unter den ersten Übertragungsfunktionen ist,

Wk(l) ein Gewichtungsgewicht unter den Gewichtungsgewichten ist,

z-iDD dem Anwenden der Ausgleichsverzögerung entspricht,

wobei . die Multiplikation ist und

wobei * der Faltungsoperator ist.


 
10. Verfahren nach einem der Ansprüche 6 bis 9, dadurch gekennzeichnet, dass das Gewicht gegeben ist durch:

wobei k ein Index in Bezug auf ein Ausgangssignal ist,

l ∈ [1;L] der relative Index eines Eingangssignals unter den Eingangssignalen ist,

L die Anzahl von Eingangssignalen ist,

wobei EBmeank eine Energie in Bezug auf

ist,

EBk(l) eine Energie in Bezug auf eine zweite Übertragungsfunktion unter den zweiten Übertragungsfunktionen ist.


 
11. Computerprogramm, umfassend Anweisungen für das Umsetzen der Schritte des Verfahrens nach einem der Ansprüche 1 bis 10, wenn diese Anweisungen von einem Prozessor ausgeführt werden.
 
12. Vorrichtung zur Klangverräumlichung, umfassend mindestens einen Filter, der auf mindestens zwei Eingangssignale (I(1), I(2), ... , I(L)) angewendet ist, wobei die Vorrichtung geeignet ist, mindestens zwei Ausgangssignale (O(1), O(2), ... , O(K)) abzugeben,
wobei die Vorrichtung Module zum Gewichten (M4B1, M4B2, ... , M4BL) aufweist, um die mindestens zwei Eingangssignale durch jeweilige Gewichtungsgewichte (Wk(1), ... , Wk(L)) zu gewichten, wobei jedes Gewichtungsgewicht für jedes der Eingangssignale spezifisch ist,
wobei die Vorrichtung ferner konfiguriert ist, um:

- für jede Impulsantwort, die eine Raumwirkung enthält, unter mehreren Impulsantworten, die eine Raumwirkung enthalten, wobei die Impulsantwort, die eine Raumwirkung enthält, jeweils einem Eingangssignal unter den mindestens zwei Eingangssignalen (I(1), I(2), ... , I(L)) und einem Ausgangssignal unter den mindestens zwei Ausgangssignalen (O(1), O(2), ... , O(K)) zugeordnet ist:

∘ die Impulsantwort in einem Zeitbereich in einen ersten Teil (A) und einen zweiten Teil (B) zu partitionieren (S22) der, wobei das Partitionieren derart durchgeführt wird, dass:

der erste Teil direkte Schallausbreitungen und erste Schallreflexionen der Ausbreitungen darstellt und sich über eine erste Anzahl von Abtastwerten erstreckt und

der zweite Teil ein diffuses Schallfeld darstellt, das nach den ersten Reflexionen vorhanden ist und sich über eine zweite Anzahl von Abtastwerten erstreckt, wobei die zweite Anzahl von Abtastwerten ein Vielfaches der ersten Anzahl von Abtastwerten ist,

∘ eine erste Übertragungsfunktion (Ak(1), Ak(2), ..., Ak(L)) ausgehend von dem ersten Teil zu bestimmen,

∘ eine zweite Übertragungsfunktion ausgehend von dem zweiten Teil zu bestimmen,

wobei der Filter aufweist:

- für jedes Ausgangssignal (O(1), O(2), ... , O(K)) unter den mindestens zwei Ausgangssignalen (O(1), O(2), ... , O(K)):

∘ Bestimmen (S23B1) von einer dritten Übertragungsfunktion (Bmeank) ausgehend von einem Durchschnittswert der zweiten Übertragungsfunktionen, die dem Ausgangssignal (O(1), O(2), ... , O(K)) entspricht,

∘ Anwenden (S4A1, S4A2, ..., S4AL) auf jedes Eingangssignal der ersten Übertragungsfunktionen, die dem Ausgangssignal (O(1), O(2), ... , O(K)) entsprechen,

∘ Anwenden (S4Bl) auf jedes Eingangssignal der dritten Übertragungsfunktion (Bmeank), die dem Ausgangssignal (O(1), O(2), ... , O(K)) entspricht,

wobei das Anwenden der ersten und dritten Übertragungsfunktionen durch FFT-Blöcke erfolgt,
wobei Signale, die sich aus den Anwendungen der ersten und dritten Übertragungsfunktionen ergeben, summiert werden, um die mindestens zwei Ausgangssignale (O(1), O(2), ... , O(K)) zu erhalten.
 
13. Modul zum Decodieren der Schallsignale, umfassend eine Vorrichtung zur Klangverräumlichung nach Anspruch 12 der Schallsignale als Eingangssignale.
 


Claims

1. Audio spatializing method wherein at least one filtering operation is applied to at least two input signals (I(1), I(2), ..., I(L)) in order to deliver at least two output signals (O(1), O(2), ..., O(K)), the filtering operation comprising:

- weighting (M4B1, M4B2, ..., M4BL) said at least two input signals with respective weighting weights (Wk(1), ..., Wk(L)), each weighting weight being specific to each of the input signals;

- for each impulse response incorporating a room effect among a plurality of impulse responses incorporating a room effect, said impulse response incorporating a room effect being respectively associated with one input signal among said at least two input signals (I(1), 1(2), ..., I(L)) and with one output signal among said at least two output signals (O(1), O(2), ..., O(K)):

∘ partitioning (S22), in a time domain, said impulse response into a first portion (A) and a second portion (B), said partitioning being carried out such that:

said first portion represents direct audio propagations and first audio reflections of said propagations and extends over a first number of samples; and

said second portion represents a diffuse audio field present after said first reflections and extends over a second number of samples, said second number of samples being a multiple of said first number of samples;

∘ determining a first transfer function (Ak(1), Ak(2), ..., Ak(L)) from said first portion;

∘ determining a second transfer function from said second portion;

- for each output signal (O(1), O(2), ..., O(K)) among said at least two output signals (O(1), O(2), ..., O(K)):

∘ determining (S23B1) a third transfer function (Bmeank) from an average of said second transfer functions corresponding to the output signal (O(1), O(2), ..., O(K));

∘ applying (S4A1, S4A2, ..., S4AL) to each input signal (1(1), 1(2), ..., I(L)) the first transfer function (Ak(1), Ak(2), ..., Ak(L)) corresponding to the input signal (I(1), 1(2), ..., I(L)) and to the output signal (O(1), O(2), ..., O(K));

∘ applying (S4B1) to each input signal the third transfer function (Bmeank) corresponding to the output signal (O(1), O(2), ..., O(K)); wherein the application of the first and third transfer functions is carried out using FFT blocks;

- summing the signals resulting from applying said first and third transfer functions in order to obtain said at least two output signals (O(1), O(2), ..., O(K)).


 
2. Method according to Claim 1, characterized in that an energy-compensating gain (G) is applied (S4B11) to the weighting weights (Wk(1), ..., Wk(L)).
 
3. Method according to one of the preceding claims, characterized in that said partitioning of said impulse response comprises operations for:

- determining (S211) a start time of presence of direct audio waves,

- determining a start time of presence of said diffuse audio field after the first reflections and

- selecting (S22), in said impulse response, a portion of the response that extends temporally between said start time of presence of direct audio waves to said start time of presence of the diffuse field, said selected response portion corresponding to said first transfer function.


 
4. Method according to Claim 3, characterized in that said filtering comprises applying at least one compensating delay (S4B2) corresponding to a temporal offset between said start time of direct audio waves and said start time of presence of the diffuse field.
 
5. Method according to Claim 4, characterized in that said first and third transfer functions are applied in parallel to said input signals and in that said at least one compensating delay is applied to the input signals filtered by said third transfer functions.
 
6. Method according to one of the preceding claims, wherein said third transfer function is given by:

with:

k an index relative to an output signal,

l ∈ [1; L] an index relative to one input signal among said input signals,

L a number of input signals, and



a normalised transfer function obtained from one second transfer function among said second transfer functions.


 
7. Method according to Claim 6, characterized in that at least one output signal 0k of said method is given by:

with:

I(l) one input signal among said input signals,

Ak(l) one first transfer function among said first transfer functions,

Wk(l) one weighting weight among said weighting weights,

z-iDD corresponds to the application of said compensating delay,

where · is a multiplication, and

where * is the convolution operator.


 
8. Method according to Claim 6, characterized in that it comprises a step of decorrelating the input signals, prior to applying the third transfer functions and in that at least one output signal 0k of said method is given by:

with:

I(l) one input signal among said input signals,

Id(l) one input signal among said input signals having been subjected to said decorrelating step,

Ak(l) one first transfer function among said first transfer functions,

Wk(l) one weighting weight among said weighting weights,

z-iDD corresponds to the application of said compensating delay,

where · is a multiplication, and

where * is the convolution operator.


 
9. Method according to Claim 6, characterized in that it comprises a step of determining an energy-compensating gain depending on the input signals, and in that at least one output signal is given by:

with:

I(l) one input signal among said input signals,

G(I(l)) said determined energy-compensating gain,

Ak(l) one first transfer function among said first transfer functions,

Wk(l) one weighting weight among said weighting weights,

z-iDD corresponds to the application of said compensating delay,

where · is a multiplication, and

where * is the convolution operator.


 
10. Method according to one of Claims 6 to 9, characterized in that said weight is given by:

with k the index relative to an output signal,

l ∈ [1; L] the index relative to one input signal among said input signals,

L the number of input signals,

with

an energy relative to

EBk(l) an energy relative to a one second transfer function among said second transfer functions.


 
11. Computer program containing instructions for implementing the method according to one of Claims 1 to 10, when these instructions are executed by a processor.
 
12. Audio spatializing device, comprising at least one filter applied to at least two input signals (I(1), I(2), ..., I(L)), the device being able to deliver at least two output signals (O(1), O(2), ..., O(K)),
the device comprising weighting modules (M4B1, M4B2, ..., M4BL) for weighting said at least two input signals with respective weighting weights (Wk(1), ..., Wk(L)), each weighting weight being specific to each of the input signals;
the device furthermore being configured to:

- for each impulse response incorporating a room effect among a plurality of impulse responses incorporating a room effect, said impulse response incorporating a room effect being respectively associated with one input signal among said at least two input signals (I(1), I(2), ..., I(L)) and with one output signal among said at least two output signals (O(1), O(2), ..., O(K)):

∘ partition (S22), in a time domain, said impulse response into a first portion (A) and a second portion (B), said partitioning being carried out such that:

said first portion represents direct audio propagations and first audio reflections of said propagations and extends over a first number of samples; and

said second portion represents a diffuse audio field present after said first reflections and extends over a second number of samples, said second number of samples being a multiple of said first number of samples;

∘ determine a first transfer function (Ak(1), Ak(2), ..., Ak(L)) from said first portion;

∘ determine a second transfer function from said second portion;

the filter comprising:

- for each output signal (O(1), O(2), ..., O(K)) among said at least two output signals (O(1), O(2), ..., O(K)):

∘ determining (S23B1) a third transfer function (Bmeank) from an average of said second transfer functions corresponding to the output signal (O(1), O(2), ..., O(K));

∘ applying (S4A1, S4A2, ..., S4AL) to each input signal first transfer functions corresponding to the output signal (O(1), O(2), ..., O(K));

∘ applying (S4B1) to each input signal the third transfer function (Bmeank) corresponding to the output signal (O(1), O(2), ..., O(K));
wherein the application of the first and third transfer functions is carried out using FFT blocks;

wherein the signals resulting from applying said first and third transfer functions are summed in order to obtain said at least two output signals (O(1), O(2), ..., O(K)).
 
13. Module for decoding audio signals, comprising a device according to Claim 12 for spatializing said audio signals when input as input signals.
 




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.

Documents brevets cités dans la description




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