Brevet FR3148316A1 — publié le 20241101

Traitement optimisé de réduction de canaux d’un signal audio stéréophonique L’invention se rapporte à un procédé de traitement de réduction de canaux d’un signal stéréophonique pour obtenir un signal monophonique, comprenant ce qui suit : - application (610, 611), à une trame courante dudit signal, de deux (T1 ou T2, T3) traitements de réduction de canaux, l’un utilisant un filtrage du signal stéréophonique et l’autre non, - sélection (612) d’un desdits traitements à appliquer à la trame courante, ladite sélection étant mise en œuvre en fonction de : -- la présence ou non d’au moins une transition dans le signal stéréophonique, ou -- un niveau de qualité du filtrage du signal stéréophonique utilisé lors de la mise en œuvre du traitement utilisant le filtrage du signal stéréophonique. L’invention se rapporte également à un dispositif de traitement de réduction de canaux mettant en œuvre le procédé. Figure de l’abrégé : Figure 6a Traitement optimisé de réduction de canaux d’un signal audio stéréophonique La présente invention se rapporte au domaine général du traitement de signaux audio. L’invention se rapporte en particulier au traitement de réduction de canaux appelé couramment « downmix », d’un signal audio multicanal. On s’intéresse en particulier au traitement de réduction d’un signal stéréophonique à un signal monophonique. Ce type de traitement trouve des applications de manière générale dans le domaine des technologies audio, et plus précisément dans le domaine du codage audio, que ce soit à l’étape d’encodage ou du décodage. La réduction de canaux ou downmix consiste à déduire, à partir d’une combinaison des C canaux d’un signal multicanal x, un signal y constitué d’un nombre inférieur D de canaux. En pratique, cela consiste à définir une fonction Telle que : , avec et n représentant un indice temporel du signal d’entrée et de sortie. Dans cette invention, on s’intéresse au cas particulier D=1 et C=2, on parlera alors de downmix stéréo à mono ou simplement de downmix mono. Dans le cas C=2, on parle de contenu ou signal à 2 canaux qui peut être un contenu stéréo ou un contenu binaural, où la voie 1 ( ) est référencée comme la voie gauche (Left), et la voie 2 ( ) comme la voie droite (pour Right). Par la suite, le cas stéréo sera vu comme un signal général à 2 canaux, incluant le cas binaural pour éviter de répéter les deux termes, même si techniquement un signal binaural a des caractéristiques spécifiques. Dans le cas du signal y obtenu après traitement de réduction, on parle de signal monophonique ou mono, que l’on notera par la suite m(n), dans le domaine temporel, ou M(k), dans le domaine fréquentiel. Ces signaux stéréo peuvent être issus d’une captation à partir d’un couple de microphones stéréo ou une captation binaurale, ou encore d'un mixage artistique de pistes audio. Il existe un certain nombre de couples de microphones permettant de créer des contenus stéréo. Parmi les plus populaires, on peut citer le couple XY composé de 2 microphones cardioïdes présentant une différence d’angle d’orientation entre 90° et 135°. Le couple MS pour « Mid-Side » est un autre couple très répandu composé d’un microphone de directivité cardioïde, et d’un second microphone dit en « figure de 8 » orienté à 90°. Par combinaison de ces 2 micros (somme/différence), on peut créer les voies gauche et droite de contenu stéréo. Ces couples sont dits coïncidents, c’est-à-dire que les capsules microphoniques ne présentent pas de retard entre elles, la spatialisation étant perçue par la différence d’intensité sonore entre les voies gauche et droite. Une autre catégorie de couples dits à stéréophonie de phase consiste à utiliser des microphones distants l’un de l’autre, créant ainsi une différence de phase entre les voies pour les sources situés plus proche de l’un des micros. Le plus connu est le couple AB qui exploite 2 microphones onmidirectionnels espacés de quelques centimètres à plusieurs mètres. Un autre couple très répandu est le couple ORTF qui exploite à la fois une différence de phase par un espacement de 17cm des microphones et une différence d’amplitude par des directivités cardioïdes (les microphones présentent un angle autour de 90°). Le couple binaural consiste à placer des microphones omnidirectionnels dans les oreilles d’une personne ou d’une tête artificielle : ce type de dispositif permet de créer nativement des contenus binauraux que l’on peut écouter au casque. Les contenus stéréo incluent également les signaux de parole et audio issus d’un mixage ou postproduction audio (par exemple des canaux stockés sur un CD ou un DVD, ou diffusés sur Internet). Il existe aussi d’autres méthodes de création de contenus stéréo qui ne sont pas revues ici. La méthode la plus simple pour créer un signal réduit par downmix est celle dite downmix passif. Elle consiste à effectuer une moyenne des voies gauche et droite du signal stéréo tel que : ou dans le domaine fréquentiel : où est la transformée de Fourier à court-terme de (ou FFT en anglais pour « Fast Fourier Transform »), k étant l’indice de la fréquence et t l’indice de la trame : Où j est le nombre imaginaire tel que , t est l’indice de la trame, l est l’indice temporel dans la trame courante, N la taille de la FFT, une fenêtre d’apodisation de taille L , de type sinus ou Hann ou autre, adaptée à la taille de la trame, et . Cette définition s’étend au cas où N>L et est une version augmentée de avec des 0 (0-padding). Cette méthode de downmix passif, très simple, fonctionne bien dans les situations où les voies droite et gauche sont en phase. Cependant, dans les situations où les microphones ne sont pas coïncidents et présentent des différences de phase, un tel mixage génère un filtrage en peigne, qui se manifeste par une coloration du signal d’origine. Cela est dû au fait qu’en fonction de l’espacement des microphones, de la position de la source par rapport au couple de microphones et de la fréquence, les voies gauche et droite d’une même source peuvent se trouver soit en phase comme représenté en figure 1a, soit en opposition de phase comme représenté en figure 1b. Aussi, lors du downmix, les signaux gauche et droite vont soit s’additionner (interférence constructive), soit s’annuler (interférence destructive), créant ainsi des variations de niveau et des effets de coloration du signal réduit . La coloration vient de l’effet du filtrage en peigne : les effets d’interférences constructives et destructives se manifestent dans des bandes de fréquences différentes, modifiant ainsi l’équilibre et donc le timbre du signal issu du downmix par rapport à l'original. Pour corriger ce défaut de niveau d’intensité suivant les fréquences, le downmix du codec e-AAC+ implémente une correction de niveau qui assure que le niveau d’énergie du signal réduit, dans chaque bande de fréquence, reste comparable à celui d’origine : , avec Cette approche permet de compenser dans une certaine mesure la baisse d’intensité du downmix. Cependant, cette compensation mène à des suramplifications lorsque les signaux sont proches de l’opposition de phase : aussi, en pratique, le facteur de correction est limité à une valeur maximum (par exemple une limite haute de 2). La décrit une méthode de réduction de canaux de stéréo à mono intégrée dans le codec candidat IVAS public disponible à l’adresse : https://forge.3gpp.org/rep/ivas-codec-pc/ivas-codec/-/tree/main Le signal à 2 canaux d’entrée x(m), où m est l’indice des échantillons entrelacés, est désentrelacé (bloc 701) pour trouver les deux canaux gauche et droite. Ensuite une analyse fréquentielle avec fenêtrage et transformée de Fourier (blocs 702 et 703) est effectuée pour obtenir les spectres des 2 canaux, et l’intercorrélation sur la base des spectres de phase est estimée (bloc 704) avant de déterminer la différence de temps entre les canaux (notée ici ITD même s’il s’agit formellement d’une ICTD entre 2 canaux) par recherche de pic (bloc 705) ; le bloc 705 fournit également le niveau de corrélation R* correspondant à l’ITD. Le facteur de mixage g est ensuite déterminé comme suit (bloc 706) : où g représente le facteur de mélange (mixage) et est la différence de temps intercanal (appelée abusivement ITD) Ainsi, les 2 canaux sont combinés en un signal mono dans le bloc 706 selon ce facteur g, avec un lissage de la valeur du facteur appliqué échantillon par échantillon à chaque début de trame après le bloc 707: m(n) = γ(n) x 1 (n) + (1-γ(n)) x 2 (n), où γ(n) est le facteur dérivé de g après lissage temporel avec le gain de la trame précédente. Ensuite, les énergies des canaux gauche x 1 (n) et droit x 2 (n) et du signal mono m(n) sont déterminées (bloc 708, 709, 710). Les canaux gauche et droite sont séparément réinjectés (ajoutés) dans les blocs 713 et 715 au signal mono issu du bloc 706 en fonction d’une compensation d’énergie déterminée dans le bloc 711 avec des facteurs d’échelle respectifs définis dans les blocs 712 et 713. Ces méthodes, en sus de la coloration du signal issu du downmix, liée au filtrage en peigne imparfaitement corrigé, souffrent d’un surplus de réverbération liée à la sommation de signaux lorsque les canaux d’entrée sont en déphasage, et d’un artefact de type « clics » lorsque la réinjection de canaux est effectuée ponctuellement dans une seule trame. La compensation d’un retard identique pour toutes les fréquences n’est pas réaliste, ce retard étant lié aux différentes sources composant le contenu. En pratique, cela amène, outre une coloration supplémentaire, une perte potentielle d’intelligibilité des sources, défaut que la compensation de niveau ne peut corriger. D’autres approches de downmix cherchent à éviter les défauts précités. Le principe de ces méthodes est de remettre en phase les signaux gauche et droite avant leur sommation. Dans le 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, il est proposé une méthode qui consiste à appliquer, dans le domaine fréquentiel, un déphasage φ sur l’une des voies, généralement la droite, afin de la remettre en phase avec la voie gauche, tel que : Le déphasage idéal est donné par ce qu’on appelle ici l’IPD pour « Inter-channel Phase Difference » en anglais : où est le conjugué de et ∠ indique la phase de l’opérande complexe. Il est calculé dans le domaine fréquentiel : cela permet de remettre en phase les composantes spectrales de différentes sources, une source avec son propre IPD pouvant être prépondérante dans une bande de fréquence k , tandis qu’une autre source avec un IPD différent peut être prépondérante dans une autre fréquence k ’. Dans le cas du codec MPEG4 décrit dans le document Samsudin cité ci-dessus, l’IPD appliqué est celui estimé par moyennage sur une bande de Bark et non pas l’IPD calculé pour chaque bande de fréquence, ces derniers s’avérant particulièrement bruités et variables d’une trame à l’autre. De plus, cette méthode prend comme référence de phase le canal gauche, et si la phase de ce canal est mal conditionnée, le downmix a une qualité dégradée. Dans la demande de brevet publiée WO2017103418, il est proposé une méthode de downmix qui fait un mélange entre la méthode proposée par Samsudin et le dowmix passif. Notamment, il propose un indicateur ISD pour « Inter-Spectral Distance » qui permet de choisir, bande de fréquence par bande de fréquence, quelle est la méthode la plus adaptée à la remise en phase des signaux : Cet indicateur permet de mesurer si les signaux sont plutôt en phase (ISD ou plutôt en opposition de phase (ISD > 1), i.e. avec une IPD dans l’intervalle . Lorsqu’ils sont en opposition de phase, une grande valeur d’ISD est synonyme d’un niveau comparable entre la voie gauche et la voie droite et la remise en phase est importante pour éviter les effets de coloration et de perte de niveau. A contrario, une valeur d’ISD proche de 1 est représentative d’un canal prépondérant par rapport à l’autre ; dans ce cas dernier cas, la remise en phase n’a pas d’importance, le downmix étant à peu près égal au signal prépondérant. Il est, cependant, important d’éviter de modifier la phase du canal droit si celui-ci est prépondérant. Aussi, dans cette demande de brevet, il est proposé un mécanisme de sélection de type de downmix suivant : Le downmix passif proposé dans la demande de brevet WO2017103418, pour les situations de faible ISD, introduit parfois une réverbération accrue. D’autre part, la méthode proposée dans cette demande de brevet nécessite d’appliquer un traitement dans le domaine fréquentiel, la reconstruction du signal réduit étant réalisé à partir de la transformée inverse de Fourier à court terme (TFCT ou STFT en anglais) du signal M(t,k). Ce type de filtrage engendre une convolution circulaire qui crée des artefacts audibles : écho, pré-écho, grésillements. Pour masquer ces artefacts, on peut utiliser une implémentation avec un recouvrement de trames (overlap) associé à un fenêtrage adapté (fenêtre à l’analyse et/ou à la synthèse) garantissant une reconstruction du signal filtré. De manière générale, ce recouvrement n’est pas compatible avec le fonctionnement des codeurs audio qui travaillent avec des trames adjacentes, i.e. sans recouvrement ; de plus, ce type de reconstruction induit un retard, généralement d’une demi-trame qui est le recouvrement classique, ce qui n’est pas acceptable pour un codeur qui a des contraintes fortes en termes de latence. Une autre implémentation de type addition-recouvrement (OLA pour « Overlap-and-Add » en anglais) est également possible : cette méthode nécessite une étape de remplissage par des 0 (« 0-padding ») sur les signaux et les filtres pour éviter la convolution circulaire. Cependant, les tests montrent qu’avec de tels filtres dont la phase varie très rapidement d’une trame à l’autre, une approche de type OLA ne permet pas de masquer complètement les artefacts à la transition de certaines trames, les artefacts restant alors audibles. Il existe aussi dans l’état des méthodes de l’état de l’art où le downmix est obtenu en commutant, par exemple dans le domaine fréquentiel pour la demande de brevet publiée WO2017103418, des méthodes de downmix différentes. Dans ce cas il est important de s’assurer que la commutation se fait « sans couture », c’est-à-dire sans discontinuités ou différences de niveaux entre méthodes pour éviter des artefacts. L’invention vient améliorer l’état de la technique. A cet effet, l’invention vise un procédé de traitement de réduction de canaux d’un signal stéréophonique pour obtenir un signal monophonique, de traitement de réduction de canaux d’un signal stéréophonique pour obtenir un signal monophonique, comprenant ce qui suit : - application, à une trame courante dudit signal, de deux traitements de réduction de canaux, l’un utilisant un filtrage du signal stéréophonique et l’autre non, - sélection d’un desdits traitements à appliquer à la trame courante, ladite sélection étant mise en œuvre en fonction de : -- une présence ou non d’au moins une transition dans le signal stéréophonique, ou -- un niveau de qualité du filtrage du signal stéréophonique utilisé lors de la mise en œuvre du traitement utilisant le filtrage du signal stéréophonique. L’invention fournit avantageusement deux critères de décision qui permettent de choisir entre deux traitements différents de réduction de canaux, dont l’un utilise un filtrage du signal stéréophonique et l’autre non. Dans un mode de réalisation, si une présence de ladite au moins une transition est détectée, respectivement non détectée, dans le signal stéréophonique, le traitement de réduction de canaux qui n’utilise pas un filtrage du signal stéréophonique, respectivement qui utilise un filtrage du signal stéréophonique, est sélectionné. Ce mode de réalisation permet : - lorsqu’une ou plusieurs transitions sont détectées, d’obtenir un meilleur rendu sur la ou les transition(s) du signal en sélectionnant le traitement de réduction de canaux qui n’utilise pas de filtrage, et qui, de ce fait, préserve la nature du signal stéréophonique, - lorsqu’aucune transition n’est détectée, de privilégier le traitement de réduction de canaux qui utilise le filtrage, mieux adapté à des composantes du signal stéréophonique qui ne sont pas en phase. Dans un mode de réalisation, la détection de ladite au moins une transition est mise en œuvre avant application, audit signal stéréophonique, de l’un ou l’autre des deux traitements de réduction de canaux. Ce mode de réalisation permet, même avant l’application d’un traitement de réduction de canaux, de déduire à priori qu’au moins une transition est présente ou non dans le signal stéréophonique, sans application d’un traitement particulier supplémentaire sur ce signal. Dans un mode de réalisation, la détection de ladite au moins une transition est mise en œuvre comme suit : - calcul de l’énergie du signal stéréophonique, dite énergie d’entrée, avant application du filtrage, - calcul de l’énergie du signal monophonique, dite énergie de sortie, après application du filtrage, - calcul d’un rapport entre l’énergie d’entrée et l’énergie de sortie, - comparaison dudit rapport à un seuil d’énergie, et - si ledit rapport est inférieur, respectivement supérieur, audit seuil d’énergie, le traitement de réduction de canaux qui n’utilise pas un filtrage du signal stéréophonique, respectivement qui utilise un filtrage du signal stéréophonique, est sélectionné. Dans un mode de réalisation, ledit niveau de qualité de filtrage est comparé à un seuil de qualité de filtrage, et si ledit niveau de qualité de filtrage est inférieur, respectivement supérieur, audit seuil de qualité de filtrage, le traitement de réduction de canaux qui n’utilise pas un filtrage du signal stéréophonique, respectivement qui utilise un filtrage du signal stéréophonique, est sélectionné. Dans un mode de réalisation, est généré un indicateur représentatif du résultat de ladite détection, de la comparaison dudit rapport à un seuil d’énergie, ou de la comparaison du niveau de qualité de filtrage à un seuil de qualité de filtrage. Dans un mode de réalisation, deux niveaux de ladite trame courante traitée sont obtenus respectivement après application, à ladite trame courante dudit signal, des deux traitements de réduction de canaux, l’un utilisant un filtrage du signal stéréophonique et l’autre non, - ajustement dudit niveau de la trame courante sur laquelle a été appliqué le traitement de réduction de canaux utilisant ledit filtrage, ledit niveau ajusté étant similaire ou égal audit niveau de la trame courante sur laquelle a été appliqué le traitement de réduction de canaux n’utilisant pas ledit filtrage, - comparaison entre la trame courante traitée ayant ledit niveau ajusté et la trame courante traitée ayant ledit niveau obtenu près application, à ladite trame courante dudit signal, du traitement de réduction de canaux n’utilisant pas un filtrage du signal stéréophonique, - sélection d’un desdits traitements à appliquer à la trame courante, basée sur ladite comparaison. L’invention permet avantageusement, lorsqu’un changement de traitement de réduction de canaux d’une trame courante du signal stéréophonique est mis en œuvre, de maintenir le niveau du signal stéréophonique le plus stable possible, sans entraîner de discontinuités sur le niveau perçu du signal. L’invention vise un dispositif de de traitement de réduction de canaux comportant un circuit de traitement pour la mise en œuvre des étapes du procédé de traitement de réduction de canaux tel que décrit précédemment. L'invention concerne également un programme d'ordinateur comportant des instructions pour la mise en œuvre du procédé de traitement de réduction de canaux conforme à l'invention, selon l’un quelconque des modes particuliers de réalisation décrits précédemment, lorsque ledit programme est exécuté par un processeur. De telles instructions peuvent être stockées durablement dans un support mémoire non transitoire du dispositif de de traitement de réduction de canaux mettant en œuvre le procédé de de traitement de réduction de canaux selon l’invention. Ce programme peut utiliser n’importe quel langage de programmation, et être sous la forme de code source, code objet, ou de code intermédiaire entre code source et code objet, tel que dans une forme partiellement compilée, ou dans n’importe quelle autre forme souhaitable. L’invention vise également un support d’enregistrement ou support d’informations lisible par un ordinateur, et comportant des instructions d’un programme d’ordinateur tel que mentionné ci-dessus. Le support d'enregistrement peut être n'importe quelle entité ou dispositif capable de stocker le programme. Par exemple, le support peut comporter un moyen de stockage, tel qu'une ROM, par exemple un CD ROM ou une ROM de circuit microélectronique, ou encore un moyen d'enregistrement magnétique, par exemple un support mobile, un disque dur ou un SSD. D'autre part, le support d'enregistrement peut être un support transmissible tel qu'un signal électrique ou optique, qui peut être acheminé via un câble électrique ou optique, par radio ou par d'autres moyens, de sorte que le programme d’ordinateur qu’il contient est exécutable à distance. Le programme selon l'invention peut être en particulier téléchargé sur un réseau, par un exemple un réseau de type Internet. Alternativement, le support d'enregistrement peut être un circuit intégré dans lequel le programme est incorporé, le circuit étant adapté pour exécuter ou pour être utilisé dans l'exécution du procédé de de traitement de réduction de canaux précité. Selon un exemple de réalisation, la présente technique est mise en œuvre au moyen de composants logiciels et/ou matériels. Dans cette optique, le terme « dispositif » ou « module » peut correspondre dans ce document aussi bien à un composant logiciel, qu'à un composant matériel ou à un ensemble de composants matériels et logiciels. D’autres caractéristiques et avantages de l’invention apparaîtront plus clairement à la lecture de la description suivante de modes de réalisation particuliers, donnés à titre de simples exemples illustratifs et non limitatifs, et des dessins annexés, parmi lesquels : illustre des canaux d’un signal stéréophonique, en phase tel que décrit précédemment ; illustre des canaux d’un signal stéréophonique, en opposition de phase tel que décrit précédemment ; illustre sous forme de schéma bloc une chaine de traitement de réduction de canaux dans un mode de réalisation de l’invention ; illustre un mode de réalisation d’un calcul de filtre pour le traitement de réduction de canaux, ainsi qu’une sélection de traitement de réduction de canaux ; illustre un mode de réalisation d’une phase d’adaptation d’un filtre de traitement de réduction de canaux ; illustre un mode de réalisation d’une transition de l’application du traitement de réduction de canaux lors d’une transition entre deux trames de signal stéréo ; illustre un autre mode de réalisation d’un calcul de filtre pour le traitement de réduction de canaux, ainsi qu’une sélection de traitement de réduction de canaux ; illustre un autre mode de réalisation d’un calcul de filtre pour le traitement de réduction de canaux, ainsi qu’une sélection de traitement de réduction de canaux ; illustre une méthode de traitement de réduction de canaux existant décrit précédemment ; illustre un exemple de réalisation structurelle d’un dispositif de traitement de réduction de canaux selon un mode de réalisation de l’invention. L’invention va maintenant être décrite ci-dessous en référence aux figures 2 à 8. A cet effet, les symboles suivants seront principalement utilisés dans la description qui suit. INDICES k indice fréquentiel l indice temporel d’un signal (dans la trame courante) n indice temporel d’un signal t numéro de trame CONSTANTES L nombre d’échantillons dans la trame courante N nombre de canaux d’entrée M nombre de canaux de sortie P longueur de filtre Q longueur de fondu enchaîné (crossfade) SIGNAUX x i (n) canaux d’entrée m(n) downmix (en temporel) m(t,l) downmix dans la trame courante (en temporel) M(t,k) downmix dans la trame courante (en fréquentiel) La montre un exemple d’une chaine de traitement d’un signal audio stéréophonique, le traitement comportant un traitement de réduction de canaux dit « downmix ». A l’entrée de cette chaine de traitement, un signal stéréophonique x, composé de deux canaux (x 1 (n) et x 2 (n)) encore appelés voie gauche et voie droite (respectivement), est dans un premier temps découpé en 201, en trames de L échantillons (x 1 ( t,l ) et x 2 ( t,l ), t étant l’indice de la trame et l l’indice de l’échantillon. Le bloc 202 applique un fenêtrage et une transformée de type FFT (pour « Fast Fourier Transform » en anglais), pour obtenir des signaux dans le domaine fréquentiel (X 1 ( t,k ) et X 2 ( t,k ), k étant l’indice de la fréquence). En 203, une sélection et une détermination d’un filtre de réduction de canaux à appliquer à une trame de signal sont ensuite effectuées. Cette étape sera décrite en référence à la . Le filtre ainsi déterminé est conditionné (ou adapté) en 204 pour le rendre causal et l’optimiser afin de diminuer la complexité de traitement. Dans un exemple de réalisation, le fenêtrage et la transformée de type FFT sont similaires aux étapes 702 et 703 de la . Cette phase d’adaptation est décrite en référence à la . Une fois le filtre déterminé et adapté pour la trame courante, il est appliqué en 205 à cette trame courante. Afin d’éviter des artefacts audibles dus à un changement de filtres entre deux trames, un fondu enchainé est effectué en prenant en compte les filtres de la trame précédente . Cette étape sera décrite en référence à la . La décrit un mode de réalisation détaillé du bloc 203 de la . Dans ce bloc de traitement, il est sélectionné et déterminé un premier ou un deuxième traitement de réduction de canaux à appliquer à une trame courante du signal stéréophonique. Une première méthode de traitement de réduction de canaux T1 est ici définie en décalant les canaux gauche et droit du signal stéréophonique simultanément d’un angle défini par la moitié de la différence de phase (IPD) déterminée entre les deux canaux du signal stéréo. On a ainsi un signal de downmix, de la façon suivante : Cette méthode permet d’éviter une dégradation de type surplus de réverbération généré par un downmix classique (moyenne des deux signaux) ou de type filtrage en peigne en cas de décalage temporel entre les deux voies. Ce downmix ainsi défini peut-être vu, dans le domaine fréquentiel, comme un filtrage selon l’équation suivante : avec et . Une deuxième méthode de downmix T2 est par exemple définie comme celle proposée dans le document Samsudin précédemment cité. Dans cette deuxième méthode, on a alors et . Les canaux du signal stéréo, dans le domaine fréquentiel (X 1 (t,k) et X 2 (t,k)), servent d’une part à calculer un indicateur de phase ISD en 301, représentatif d’une mesure de degré d’opposition de phase entre les canaux du signal stéréo, et, d’autre part, la différence de phase entre les canaux (IPD) en 303. L’indicateur de phase est par exemple défini par l’indicateur ISD pour « Inter-Spectral Distance » tel que défini ci-dessus. Dans le mode de réalisation décrit ici, l’ISD est déterminé par trame de signal stéréophonique afin que la décision de sélection d’un premier traitement de réduction de canaux (premier downmix) ou d’un deuxième puisse se faire trame par trame. Cette décision par trame permet de s’affranchir des déphasages importants entre les fréquences et d’autres d’artefacts audibles qui peuvent apparaitre lorsque la décision varie d’une fréquence à l’autre comme dans la demande de brevet citée précédemment. Pour appliquer une décision par trame, un critère de décision selon l’indicateur de phase ISD est défini selon l’équation suivante en 302 : Ce critère mesure le pourcentage de raies fréquentielles d’indice k pour lesquelles le critère est favorable au downmix avec remise en phase, c'est-à-dire quand . La décision est prise d’appliquer le premier downmix tel que défini ci-dessus, avec remise en phase, lorsque dépasse un certain seuil , que l’on fixe par exemple à 70%. On a alors en 305 la décision suivante de sélection de downmix entre T1 et T2 : En 303, la différence de phase IPD est obtenue entre les deux canaux du signal stéréo par où ∠ indique la phase de l’opérande complexe. Cependant, la décision à la trame peut être parfois insuffisante car l’IPD, telle que calculée selon la formule ci-dessus, varie très rapidement dans le temps. Aussi, les filtres peuvent varier très rapidement d’une trame à l’autre, ce qui engendre des discontinuités parfois audibles lors de la transition d’une trame à l’autre. Pour limiter cet effet, on pourra utiliser une version lissée de l’IPD dans le temps pour calculer les filtres . Une manière de lisser l’IPD est d’appliquer un filtrage passe-bas de type IIR d’ordre 1, en 304, tel que : Le coefficient d’oubli est choisi de manière ad-hoc. Il peut être intéressant de choisir un coefficient d’oubli important dans les basses fréquences, typiquement en dessous de 5kHz, car cela permet de garder une cohérence de phase dans la partie basse du spectre d’une trame à l’autre, le spectre des signaux de parole étant stationnaire, notamment dans sa partie basse et l’oreille particulière sensible à la phase dans cette partie du spectre. A contrario, il est intéressant de choisir un faible coefficient d’oubli dans les hautes fréquences : dans les fréquences hautes, typiquement au-dessus de 5kHz, la continuité de phase des signaux de parole est moins marquée et l’oreille est moins sensible aux discontinuités de phase dans cette partie du spectre. On pourra choisir un coefficient d’oubli de la forme suivante : Les valeurs , , et sont déterminées de façon expérimentale. Dans le cas de trames adjacentes de longueur L =20ms, on pourra par exemple choisir le jeu de paramètres suivant : , correspond à Dans des variantes, on forcera les très basses fréquences et les très hautes fréquences à rester intactes. Ainsi dans des variantes, on force pour les premières raies ou ainsi que pour les raies d’indice où k correspond à 8 kHz. La figure 4 détaille à présent le bloc 204 de la figure 2. Les filtres , tels que par exemple définis dans les méthodes de downmix T1 et T2 définies ci-dessus, sont reconditionnés ou encore adaptés pour éviter la convolution circulaire. Dans une première étape, en 401, on calcule les réponses impulsionnelles des filtres , tel que : où les filtres sont de taille N qui correspond à la longueur de la FFT. Ici on prend N=L. Dans le mode de réalisation privilégié, on a L = 20 ms, soit 320 échantillons à 16 kHz, 640 échantillons à 32 kHz et 960 échantillons à 48 kHz. Les réponses impulsionnelles ainsi définies sont classiquement non causales, elles correspondent à des filtres à réponse impulsionnelle finie. Une technique classique pour les rendre causales consiste à effectuer une rotation de L/2 échantillons pour centrer la réponse en L/2. L’inconvénient est que le filtre ainsi reconstruit présente alors une latence de L/2. Pour éviter cette latence, on choisit de tronquer le filtre de façon asymétrique, en 402, en ne conservant qu’une portion de la première moitié de la réponse impulsionnelle de la manière suivante : Ce filtre présente l’avantage d’avoir généralement un maximum (en valeur absolue) sur son premier échantillon, ce qui garantit un traitement sans retard additionnel. En termes de réponse en fréquence, il présente une phase à peu près égale au filtre optimal de remise en phase . Le choix de P dépend de différents critères : une valeur de P proche de N⁄2 garantit une remise en phase quasi optimale, tandis qu’une valeur plus réduite permet de limiter la puissance de calcul nécessaire pour le filtrage. Une valeur réduite de P a également pour conséquence de lisser la phase du filtre. Cela présente un avantage avec des filtres définis par le traitement T2 tel que défini ci-dessus où la phase varie très rapidement d’une fréquence à l’autre : ces variations peuvent se traduire par un délai de groupe très élevé et perceptible par l’oreille humaine. Une faible valeur de P permet de supprimer toute ou partie de ces artefacts. Le filtre ainsi tronqué , notamment lorsque P avec une fenêtre , en 403, tel que : où les coefficients de tendent vers 0 lorsque l tend vers P. Cela permet de réduire l’énergie des échantillons de la fin du filtre et d’éviter des discontinuités lors de la transition entre des filtres de trames consécutives. Cette fenêtre peut être une demi-fenêtre triangulaire, ou encore une demi-fenêtre de Hann : Du fait de sa troncature et du fenêtrage, les filtres possèdent une énergie réduite par rapport à celle du filtre optimal : ce dernier, en tant que filtre déphaseur pur, possède une norme 1/2 par construction. Aussi, on pourra procéder à une normalisation de l’énergie du filtre ainsi tronqué et fenêtré, en 404, tel que : Où est la norme 2 d’un vecteur. Selon l’invention, en 405, est déterminé un niveau de qualité du filtrage qui a été mis en œuvre. A cet effet : - une énergie E 401 du filtre avant troncature 402 est calculée, - une énergie E 403 du filtre temporel après fenêtrage 403 est calculée, - un rapport R 4 entre E 401 et E 403 est calculé. On peut également déterminer une qualité de filtrage en comparant une énergie E 401 et une énergie E 404 du filtre temporel après normalisation. A titre d’alternatives non exhaustives, la détermination du niveau de qualité de filtrage peut être mise en œuvre : - directement sur le filtre H i ( t,k ), et/ou - une version fréquentielle de ce même filtre avant normalisation ou après normalisation . - etc… Dans des variantes, on pourra calculer : Ce critère pourra être normalisé par : Une autre variante de qualité pourra s’intéresser à la mesure de la quantité d’énergie perdue lors de la troncature pour rendre le filtre causal. Dans cette variante, on pourra calculer E 401 comme l’énergie « anticausale » du filtre original : L’énergie E 403 (resp. E 404 ) pourra être calculée comme l’énergie du filtre synthétisé, avant normalisation (resp après normalisation) : Pour éviter le biais lié à la taille de la fenêtre, on pourra calculer également l’énergie de la partie anticausale sur le même nombre d’échantillons, avec fenêtrage par la fenêtre ou non : Dans des variantes, on pourra calculer la réponse en fréquence du filtre obtenu après troncature (en sortie de 403) et comparer avec la réponse cible pour définir le niveau de qualité, par exemple : Ce critère pourra être normalisé par : Une autre variante du critère de qualité pourra consister à comparer la cohérence de phase des filtres, étant donné que l’objectif est de remettre en phase des signaux. Ainsi, on pourra calculer la cohérence entre les 2 filtres : Une cohérence élevée (i.e proche de 1) indiquant que le filtre synthétisé est proche du filtre idéal et donc un facteur de qualité élevé, une valeur faible (proche de 0) indiquant au contraire un critère de qualité faible. La décrit à présent en détails le bloc 205 de la , où une implémentation de type OLS (pour « Overlap-and-Save » en anglais) du filtrage est opérée dans le domaine temporel ou fréquentiel. Le choix du domaine sera réalisé en fonction de la complexité qui dépend de la taille du filtre relativement à celle de la trame à traiter. On présente ici une implémentation de type OLS dans le domaine temporel, avec des trames adjacentes de taille L . Dans un premier temps, on concatène, en 501, la trame actuelle avec les P-1 échantillons de la trame précédente (principe du Save) : Chaque voie est filtrée par son filtre déphaseur en 503 : Le downmix mono est alors créé par somme des deux voies remises en phase en 505 : Dans la pratique, les filtres peuvent être très différents entre deux trames successives, par exemple lorsqu’une nouvelle source apparaît. Dans ce cas, la transition entre et peut occasionner des différences sous forme d’artefacts audibles. Pour éviter ces artefacts, on peut appliquer une étape de fondu enchainé ou « cross-fade » en anglais. Pour réaliser ce cross-fade, on applique les filtres à la trame actuelle sur un nombre d’échantillons Q : Ceci est réalisé par le bloc 502 de la . Le nombre d’échantillons nécessaires au cross-fade devra être déterminé expérimentalement, en fonction de la taille des filtres, de la fréquence d’échantillonnage, … On crée un ensuite le downmix mono en 504, à partir de filtres de la trame précédente : Le signal issu du downmix est créé en 506, à partir d’un cross-fade selon l’équation suivante : Où est une fonction monotone décroissante, avec et avec ε une valeur proche de 0 ou nulle. Typiquement, on pourra choisir une demi-fenêtre de Hann : Il est à noter que, dans une intégration avec d’autres méthodes de downmix, les méthodes de downmix T1 et T2 précitées ne peuvent pas être toujours représentées par une opération de filtrage. C’est le cas de la méthode T3 de la ou toute autre méthode dont le gain dépend du niveau instantané du signal. Selon l’invention, dans le cas où une sélection des méthodes de downmix T1 et T2 ou du downmix T3 est mise en œuvre, comme cela sera décrit dans la suite de la description, une étape de mise à l’échelle 5040 et 5050 de chacun des signaux et respectivement est mise en œuvre. A cet effet, le signal d’(n) obtenu en sortie du downmix T3 de la figure 7 ayant un niveau N3, le niveau N1, respectivement N2, de chacun des signaux et sur lesquels a été appliqué le downmix T1, respectivement T2, est ajusté au niveau N3, de manière à être égal ou similaire à ce niveau N3. Au lieu d’être appliquée à chacun des signaux et , une telle mise à l’échelle peut être effectuée également sur le signal . La détaille à présent un procédé de traitement de réduction de canaux conforme à l’invention, dans lequel est mise en œuvre en 610 l’une des méthodes de downmix T1 ou T2 choisi à l’issue du procédé de sélection de la , et est mise en œuvre en 611 une autre méthode de downmix dont le gain dépend du niveau instantané du signal, telle que par exemple la méthode T3 de la . Dans ce cas, une solution est de calculer les downmix de chaque méthode pour la trame courante d’indice temporel l et d’opérer une transition en 612 d’un downmix à l’autre par cross-fade, ce qui génère un signal monophonique d(n). Plus précisément, dans le cas d’une transition d’un downmix T1 (ou T2) au downmix T3, le downmix peut être réalisé entre le signal obtenu en sortie de T1 (ou T2) et le signal obtenu en sortie de T3. On peut aussi opérer le dowmix entre la sortie de T1 (ou T2) et le signal d(n). Dans ce dernier cas, la compensation d’énergie de la méthode T3 (adapt_gain sur la ) s’appliquerait en permanence à toutes les méthodes. La décision du basculement d’un downmix T1 ou T2 à un downmix T3 pourra être motivée par d’autres critères que l’ISD, par exemple des paramètres Par3 déjà calculés par la méthode T3, comme par exemple l’ITD, en choisissant d’appliquer par défaut le downmix T3 lorsque l’ITD est très important (par exemple ITD > 600 microsec en valeur absolue), ou toute autre critère ou combinaison de critères. Conformément à l’invention, la sélection du downmix T1 (ou T2) ou T3 est mise en œuvre en fonction de : - une présence ou non d’au moins une transition dans le signal stéréophonique, ou - un niveau de qualité du filtrage du signal stéréophonique utilisé lors de la mise en œuvre du downmix T1 (ou T2). Dans le cas d’une détection 613 de la présence ou non d’au moins une transition dans le signal stéréophonique, selon un premier mode de réalisation, une détection de transitoire est appliquée séparément à chacun des signaux d’entrée x 1 (n) et x 2 (n), ou sur la trame courante x 1 ( t,l ) et x 2 ( t,l ). La détection de transitoires étant un problème classique en codage audio, on prend l’exemple du module déjà implémenté dans le codec EVS et décrit dans le standard 3GPP TS 26.445 clause 5.1.8. A cet effet, chacun des signaux d’entrée x 1 (n) et x 2 (n), ou la trame courante x 1 ( t,l ) et x 2 ( t,l ) est découpée en sous-blocs. L’énergie de chaque sous-bloc est calculée, puis un lissage est éventuellement mis en œuvre. L’énergie obtenue est alors comparée à un seuil d’énergie th 61 . Si cette énergie obtenue est inférieure à th 61 , la présence d’une transition est considérée comme non détectée. Si cette énergie obtenue est supérieure à th 61 , la présence d’une transition est considérée comme détectée. A cet effet, un paramètre Par 1 (si T1 a été choisi à l’issue de la sélection de la ) ou Par2 (si T2 a été choisi à l’issue de la sélection de la ) est mis : - à une première valeur, par exemple 0, pour indiquer que la présence d’une transition n’a pas été détectée, - à une deuxième valeur, par exemple 1, pour indiquer que la présence d’une transition a été détectée. Un tel paramètre Par1/Par2 est transmis, en tant que critère de décision, au bloc 612 de cross-fading. Dans le cas où la sélection du downmix T1 (ou T2) ou du downmix T3 est basée sur un niveau de qualité du filtrage du signal stéréophonique utilisé lors de la mise en œuvre du downmix T1 (ou T2), en référence à la , les étapes suivantes sont mises en œuvre : - calcul de l’énergie E 61 du signal , issu du filtrage par - calcul de l’énergie E 62 du signal , - calcul d’un rapport entre E 61 et E 62 , - comparaison dudit rapport à un seuil d’énergie SE. Si le rapport entre E 61 et E 62 est inférieur à SE, la présence d’une transition est considérée comme détectée. Si le rapport entre E 61 et E 62 est supérieur à SE, la présence d’une transition est considérée comme détectée. A cet effet, un paramètre Par 1 (si T1 a été choisi à l’issue de la sélection de la ) ou Par2 (si T2 a été choisi à l’issue de la sélection de la ) est mis : - à une première valeur, par exemple 0, pour indiquer que la présence d’une transition n’a pas été détectée, - à une deuxième valeur, par exemple 1, pour indiquer que la présence d’une transition a été détectée. Un tel paramètre Par1/Par2 est transmis, en tant que critère de décision, au bloc 612 de cross-fading. Ainsi, selon l’invention, lorsqu’un transitoire est détecté dans la trame courante dans l’un ou les deux canaux, on applique à la trame courante le downmix T3 plutôt que le downmix T1 (ou T2). En effet les downmix T1 et T2 utilisent un filtrage par une réponse impulsionnelle qui a parfois tendance à étaler l’enveloppe du signal, ce problème est plus prononcé sur des sons transitoires comme des castagnettes, des claquements de ciseaux sur un enregistrement binaural simulant une coupe chez un coiffeur, etc. Afin de limiter les artefacts potentiels dus au fondu enchaîné (bloc 612) entre méthodes de downmix, l’invention peut prévoir d’appliquer, en 614, une mise à l’échelle du signal en sortie de T1 (ou T2). Selon l’invention, une telle mise à l’échelle 614 met en œuvre les étapes suivantes : - déterminer l’énergie E' du signal de downmix à la sortie de T1 (ou T2), de façon préférentielle avec un lissage, en effectuant les mêmes étapes que les étapes 708, 709, 710 de la , - déterminer le facteur d’échelle : g’ = - appliquer le facteur g’ audit signal de downmix en reprenant le principe de fonctionnement (avec lissage en début de trame) des blocs 712 et 714 de la . A la différence du downmix à la , ici on applique une compensation directe du niveau du downmix en sortie de T1 ou T2, sans réinjecter de signal d’entrée. La illustre une alternative du procédé de traitement de réduction de canaux décrite en référence à la . Le mode de réalisation illustré en se distingue de celui de la uniquement par le fait que la détection d’une transition est mise en œuvre selon un deuxième mode de réalisation. Selon ce deuxième mode, une telle détection est mise en œuvre au cours de l’étape 610 de downmix T1 (ou T2) au lieu d’être appliquée séparément à chacun des signaux d’entrée x 1 (n) et x 2 (n), ou sur la trame courante x 1 ( t,l ) et x 2 ( t,l ). A cet effet, en référence à la , on compare l’énergie de chaque sous-bloc de 2 ms entre le signal d’entrée et de sortie des blocs 502 et 503. Si l’énergie a baissé un seuil, par exemple 3 dB, on considère qu’une transitoire a été fortement atténuée, et dans ce cas on applique le downmix T3 dans la trame courante. Si l’énergie n’a pas baissé un seuil, par exemple 3 dB, on considère qu’une transitoire n’a pas été atténuée, et dans ce cas on applique le downmix T1 (ou T2) dans la trame courante. On a illustré sur la , un dispositif de traitement de réduction de canaux 800, au sens de l’invention. Le dispositif 800 comporte un circuit de traitement incluant typiquement : - une mémoire MEM1 pour stocker des données d’instructions d’un programme informatique au sens de l’invention ; - une interface INT1 de réception d’un signal audio stéréo : ; - un processeur PROC1 pour recevoir ce signal et le traiter en exécutant les instructions de programme informatique que stocke la mémoire MEM1, en vue d’effectuer un traitement de réduction de canaux ; en particulier, le processeur étant apte à piloter les modules de traitement tels que décrits en référence aux figures 2 à 5; et - une interface de communication COM 1 pour transmettre les signaux réduits, issus du traitement de réduction de canaux, , à un autre module de traitement, par exemple un module de codage ou de décodage d’un codeur ou d’un décodeur de signal audio. Bien entendu, cette illustre un exemple d’une réalisation structurelle d’un dispositif de traitement de réduction de canaux au sens de l’invention. Les figures 2 à 7 commentées ci-dessus décrivent en détails des réalisations fonctionnelles de ce dispositif. Les applications de ce type de traitement de réduction de canaux se trouvent par exemple dans le codage audio, par exemple lorsque le distant n’a pas les capacités de restituer sur son terminal un son stéréo. Dans ce cas, il n’est pas nécessaire de transporter un signal stéréo et cela permet d’économiser de la bande passante. Ce type de procédé peut intervenir lors de conversations en point à point si l’un des participants fait une prise son stéréo ou binaurale. Ce type de procédé peut également être présent lors de conférence à plusieurs : le pont de conférence spatialise la scène en créant une scène stéréo, mais tous les participants n’ont pas nécessairement des capacités de restitution stéréo. Il convient alors d’effectuer un downmix de la scène en mono pour ces participants. L’invention peut également s’appliquer pour un décodage audio : dans ce cas, c’est le renderer (module de restitution) de l’utilisateur qui va effectuer le downmix du contenu stéréo pour s’adapter aux capacités réduites de l’utilisateur (simple haut-parleur par exemple). Procédé de traitement de réduction de canaux d’un signal stéréophonique pour obtenir un signal monophonique, comprenant ce qui suit : - application (610, 611), à une trame courante dudit signal, de deux (T1 ou T2, T3) traitements de réduction de canaux, l’un utilisant un filtrage du signal stéréophonique et l’autre non, - sélection (612) d’un desdits traitements à appliquer à la trame courante, ladite sélection étant mise en œuvre en fonction de : -- une présence ou non d’au moins une transition dans le signal stéréophonique, ou -- un niveau de qualité du filtrage du signal stéréophonique utilisé lors de la mise en œuvre du traitement utilisant le filtrage du signal stéréophonique. Procédé de traitement de réduction de canaux selon la revendication 1, dans lequel si une présence de ladite au moins une transition est détectée (613), respectivement non détectée (613), dans le signal stéréophonique, le traitement de réduction de canaux qui n’utilise pas un filtrage du signal stéréophonique, respectivement qui utilise un filtrage du signal stéréophonique, est sélectionné (612). Procédé de traitement de réduction de canaux selon la revendication 1, dans lequel la détection de ladite au moins une transition est mise en œuvre avant application, audit signal stéréophonique, de l’un ou l’autre des deux traitements de réduction de canaux. Procédé de traitement de réduction de canaux selon la revendication 1, dans lequel la détection de ladite au moins une transition est mise en œuvre comme suit : calcul de l’énergie du signal stéréophonique, dite énergie d’entrée, avant application du filtrage, calcul de l’énergie du signal monophonique, dite énergie de sortie, après application du filtrage, calcul d’un rapport entre l’énergie d’entrée et l’énergie de sortie, comparaison dudit rapport à un seuil d’énergie, et si ledit rapport est inférieur, respectivement supérieur, audit seuil d’énergie, le traitement de réduction de canaux qui n’utilise pas un filtrage du signal stéréophonique, respectivement qui utilise un filtrage du signal stéréophonique, est sélectionné. Procédé de traitement de réduction de canaux selon la revendication 1, dans lequel ledit niveau de qualité de filtrage est comparé à un seuil de qualité de filtrage, et si ledit niveau de qualité de filtrage est inférieur, respectivement supérieur, audit seuil de qualité de filtrage, le traitement de réduction de canaux qui n’utilise pas un filtrage du signal stéréophonique, respectivement qui utilise un filtrage du signal stéréophonique, est sélectionné. Procédé de traitement de réduction de canaux selon la revendication 2, 4 ou 5, dans lequel est généré un indicateur (Par1 ou Par2, Par3) représentatif du résultat de ladite détection, de la comparaison dudit rapport à un seuil d’énergie, ou de la comparaison du niveau de qualité de filtrage à un seuil de qualité de filtrage. Procédé de de traitement de réduction de canaux selon l’une quelconque des revendications 1 à 6, dans lequel deux niveaux (E’, E 1 +E 2 ) de ladite trame courante traitée sont obtenus respectivement après application, à ladite trame courante dudit signal, des deux (T1 ou T2, T3) traitements de réduction de canaux, l’un utilisant un filtrage du signal stéréophonique et l’autre non, - ajustement (614) dudit niveau (E’) de la trame courante sur laquelle a été appliqué le traitement de réduction de canaux utilisant ledit filtrage, ledit niveau (E’) ajusté étant similaire ou égal audit niveau (E 1 +E 2 ) de la trame courante sur laquelle a été appliqué le traitement de réduction de canaux n’utilisant pas ledit filtrage, - comparaison entre la trame courante traitée ayant ledit niveau ajusté et la trame courante traitée ayant ledit niveau obtenu près application, à ladite trame courante dudit signal, du traitement de réduction de canaux n’utilisant pas un filtrage du signal stéréophonique, - sélection d’un desdits traitements à appliquer à la trame courante, basée sur ladite comparaison. Dispositif de traitement de réduction de canaux comportant un circuit de traitement pour la mise en œuvre des étapes du procédé de traitement de réduction de canaux selon l’une des revendications 1 à 7. Support de stockage, lisible par un processeur, mémorisant un programme informatique comportant des instructions pour l’exécution du procédé de selon l’une des revendications 1 à 7.