La présente invention se rapporte à un procédé de communication par multiplexage entre plusieurs terminaux de communication audionumérique équipés chacun d’au moins un haut-parleur et d’un microphone.
Les fréquences radio étant de plus en plus sollicitées, des solutions pour augmenter la densité des communications sont envisagées. Les procédés de communication par accès multiple selon un mode de multiplexage sont couramment utilisés, notamment dans la téléphonie mobile, pour partager un canal de communication commun (ou une bande de fréquence) et attribuer dynamiquement une ou des parties du canal à différents utilisateurs.
Parmi les modes de multiplexage permettant de transmettre plusieurs signaux numériques sur un même canal de fréquences, sont principalement connus le mode d’accès multiple à répartition dans le temps (« Time Division Multiple Access » ou TDMA) qui est un mode de multiplexage temporel, le mode d’accès multiple à répartition en fréquence (« Frequency Division Multiple Access » ou FDMA) qui est un mode de multiplexage fréquentiel, le mode d’accès multiple à répartition en fréquence et en temporel (« Orthogonal Frequency Division Multiple Access » ou OFDMA, ainsi que la variante « Single-Carrier Frequency Division Multiple Access » ou SC-FDMA) qui est un mode associant le multiplexage fréquentiel et le multiplexage temporel, le mode d’accès multiple à répartition en code (« Code division multiple access » ou CDMA) qui est un mode de multiplexage utilisant simultanément plusieurs codes.
Ainsi, avec une communication par multiplexage, plusieurs utilisateurs partagent le même canal. Le flux de données est généralement divisé en paquets de données et transmis dans un canal de communication divisé en cycles successifs périodiques.
Dans le cas particulier d’un multiplexage temporel, chaque cycle est divisé en plusieurs intervalles de temps (« time slot » en anglais). Les utilisateurs transmettent des signaux vocaux, sous forme de données numériques ou audionumériques, successivement en utilisant leur propre intervalle de temps à l’intérieur de chaque cycle de sorte que, pour chaque utilisateur, un intervalle de temps lui est dédié.
Lors d’échanges vocaux, le signal vocal restitué par le(s) haut-parleurs) d’un terminal est susceptible d’être partiellement capté en retour par le microphone de ce même terminal, et le signal parasite ainsi capté est renvoyé en ligne amplifié au(x) haut-parleur(s), en superposition avec le signal vocal de l'utilisateur local, engendrant ainsi des effets d’écho et Larsen.
Pour limiter ces effets acoustiques indésirables, il est parfois prévu de plaquer le(s) haut-parleur(s) sur la ou les oreilles de l’utilisateur et ainsi isoler acoustiquement le(s) haut-parleur(s) de l’extérieur. Cependant, une telle solution est inadaptée lorsque, pour des raisons de sécurité, l’utilisateur doit pouvoir percevoir les sons externes de manière fiable, ou lorsque le terminal est intégré à un casque. A titre d’exemple, dans certains secteurs, comme par exemple le secteur des travaux publics, le terminal est intégré à un casque de protection, de sorte que le(s) haut-parleur(s) et le microphone sont montés sur le casque avec le(s) haut-parleur(s) placés à distance de la ou des oreilles du porteur du casque. L’écart entre le(s) haut-parleur(s) et la ou les oreilles est la cause des effets acoustiques d’écho et Larsen.
Par ailleurs, dans de tels terminaux de communication, il est également connu de mettre en oeuvre des algorithmes de filtrage numérique anti-écho et anti-Larsen, qui s’avèrent relativement efficaces pour traiter les effets acoustiques d’écho et Larsen au sein d’un même terminal, autrement dit pour traiter numériquement les signaux parasites provenant du chemin acoustique entre le(s) haut-parleur(s) et le microphone d’un même terminal.
Cependant, ces algorithmes de filtrage ne sont pas adaptés pour traiter de tels effets lorsque plusieurs terminaux sont à proximité (et notamment lorsque trois ou plus terminaux sont situés dans un espace de quelques mètres carrés). En effet, la proximité entre plusieurs utilisateurs conduit à la proximité entre les haut-parleurs et les microphones de plusieurs terminaux dits en champ proche (c’est-à-dire à des distances en-deçà d’une distance minimale qui est fonction de la sensibilité des microphones et de la puissance audio des haut-parleurs), et cette proximité engendre une multiplicité des chemins acoustiques entre tous les haut-parleurs et tous les microphones des divers terminaux.
Autrement dit, le son émis par le(s) haut-parleur(s) d’un terminal (ou d’un casque) peut être capté par le microphone d’un autre terminal (ou autre casque) présent à proximité, contribuant à générer des effets d’écho et Larsen supplémentaires qui viennent s’ajouter aux effets d’écho et Larsen propres à chaque terminal. De même, la voix émis par le porteur d’un terminal (ou d’un casque) peut être capté par le microphone d’un autre terminal (ou autre casque) présent à proximité, contribuant aussi à générer des effets d’écho et Larsen supplémentaires.
Avec des utilisateurs en constant mouvement, qui se rapprochent et s’éloignent les uns des autres, les chemins acoustiques varient en nombre et varient dans le temps, rendant ainsi les algorithmes de filtrage particulièrement inefficaces pour répondre à cette problématique.
Il est connu, dans le secteur des émetteur-récepteurs radio mobiles de type talkie-walkie, d’employer une liaison dite « half-duplex » ou un système dit « push to talk » qui répondent en partie à la problématique précitée. Avec une telle liaison, la communication se passe dans les deux sens, mais pas simultanément, de sorte que chaque interlocuteur parle à tour de rôle. Avant de parler, un utilisateur enclenche un interrupteur qui autorise l’émission de la parole captée par le microphone mais qui ne permet plus la réception des signaux vocaux émis par les autres utilisateurs, et le relâche dès qu'il a fini de parler pour pouvoir recevoir les signaux vocaux émis par les autres utilisateurs.
Une telle solution, propre à ces émetteurs-récepteurs de type talkie-walkie, est cependant clairement incompatible avec une exigence de communication full-duplex, autrement dit avec une volonté de mettre en oeuvre une communication audio de type « conférence call » entre plusieurs utilisateurs où tous les utilisateurs sont à la fois en écoute et en émission.
La présente invention a pour but de résoudre cette problématique, en proposant un procédé qui permette de supprimer de manière automatique l’ensemble des bruits et leurs harmoniques issus de la pluralité de chemins acoustiques entre terminaux proches, sans intervention manuelle de la part des utilisateurs. A cet effet, elle propose un procédé de communication par multiplexage entre plusieurs terminaux de communication audionumérique équipés chacun d’au moins un haut-parleur et d’un microphone, une transmission de données audionumériques étant réalisée dans des cycles successifs d’un canal de communication, ledit procédé étant remarquable en ce que chaque terminal met en œuvre de manière répétitive deux phases principales : a) une phase de réception et de traitement des signaux vocaux reçus en provenance des autres terminaux, où : - ledit terminal reçoit des signaux vocaux sous forme de données audionumériques en provenance des autres terminaux ; - ledit terminal stocke lesdits signaux vocaux en provenance des autres terminaux et détermine leurs volumes sonores respectifs ; - ledit terminal met en œuvre une analyse de proximité spatiale de chaque autre terminal vis-à-vis dudit terminal, à partir d’une intensité du signal vocal reçu de chaque autre terminal, et à l’issue de laquelle chaque autre terminal est classé comme un terminal proche ou comme un terminal lointain ; - si au moins un autre terminal est un terminal proche, alors ledit terminal met en œuvre une analyse des volumes sonores au cours de laquelle ledit terminal compare le volume sonore du signal vocal capté par son propre microphone et le volume sonore du signal vocal reçu du ou de chaque terminal proche et, en fonction de cette comparaison, sélectionne, parmi ledit terminal et le ou lesdits terminaux proches, un unique terminal dit prioritaire, le ou les terminaux restants étant sélectionnés comme terminaux secondaires, et : - si ledit terminal est le terminal prioritaire, alors ledit terminal ne transmet pas sur son au moins un haut-parleur les signaux vocaux reçus du ou des terminaux proches ; - si ledit terminal est un terminal secondaire, alors ledit terminal active une séquence de coupure de son propre microphone et transmet sur son au moins un haut-parleur uniquement les signaux vocaux reçus du terminal prioritaire, les éventuels signaux vocaux reçus du ou des autres terminaux secondaires n’étant quant à eux pas transmis sur son au moins un haut-parleur ; - si au moins un autre terminal est un terminal lointain, alors ledit terminal transmet sur son au moins un haut-parleur les signaux vocaux reçus du ou des terminaux lointains ; b) une phase de traitement du son capté par son propre microphone, où : - ledit terminal reçoit le son capté par son propre microphone ; - ledit terminal met en œuvre un algorithme de détection de la parole sur ledit son issu du microphone, à l’issue duquel est délivré un signal vocal sous forme de données audionumériques ; - ledit terminal détermine le volume sonore dudit signal vocal, ce volume sonore étant exploité dans l’étape d’analyse des volumes sonores de la phase a) ; - ledit terminal met en œuvre une étape de gestion de la transmission dudit signal vocal, dans lequel : - si ledit terminal est sélectionné comme un terminal prioritaire, alors ledit terminal transmet ledit signal vocal à destination des autres terminaux ; - si ledit terminal est sélectionné comme un terminal secondaire, alors la séquence de coupure de son propre microphone est activée de sorte que ledit terminal ne transmet pas ledit signal vocal à destination des autres terminaux.
Ainsi, avec le procédé conforme à l’invention, chaque terminal distingue les terminaux qui lui sont proches des terminaux qui lui sont éloignés en se basant sur la mesure des intensités de signal reçu et : - lorsque plusieurs terminaux sont proches, seul le microphone du terminal principal (parmi les terminaux proches) sera « ouvert » (c’est-à-dire transmettra le son capté), tandis que les microphones des terminaux secondaires seront « fermés » (c’est-à-dire ne transmettront pas les sons captés), la proximité entre les terminaux proches permettant de n’utiliser qu’un seul microphone « ouvert » pour la diffusion des échanges entre les utilisateurs proches ; - lorsque un terminal est lointain (c’est-à-dire éloigné des autres terminaux), le terminal lointain fonctionne normalement avec son microphone « ouvert ».
Grâce à l’invention, lorsque plusieurs terminaux sont proches, plusieurs chemins acoustiques sont coupés, limitant ainsi grandement les phénomènes de Larsen et d’échos entre terminaux proches.
Selon une caractéristique, lors de l’étape d’analyse de proximité spatiale de chaque autre terminal, le terminal met en œuvre les étapes suivantes vis-à-vis de chaque autre terminal : - ledit terminal mesure une intensité du signal vocal reçu de l’autre terminal et la compare au moins avec un seuil dit de champ proche ; - si l’intensité du signal vocal reçu de l’autre terminal est supérieure audit seuil de champ proche, alors ledit autre terminal est classé comme étant un terminal proche vis-à-vis dudit terminal ; - si l’intensité du signal vocal reçu de l’autre terminal est inférieure audit seuil de champ proche, alors ledit autre terminal est classé comme étant un terminal éloigné vis-à-vis dudit terminal.
Le choix du seuil de champ proche est établi pour permettre à un seul microphone de capter toutes les discussions des utilisateurs proches, tout en limitant les phénomènes de Larsen et d’échos introduits par la multiplicité des chemins acoustiques ; de sorte que ce seuil de champ proche dépendra en partie de la sensibilité des microphones.
Selon une autre caractéristique, le seuil de champ proche est prédéfini pour correspondre à une distance entre deux terminaux comprise entre 1,5 et 3,0 mètres, et notamment entre 2,0 et 2,5 mètres.
Dans une réalisation particulière, chaque terminal présente deux états de réception du signal vocal reçu de chaque autre terminal, propres à la réception vis-à-vis de chaque autre terminal : - un état dit de haute sensibilité dans lequel l’intensité du signal vocal reçu est proportionnelle à l’amplitude du signal d’entrée selon un premier coefficient de proportionnalité, jusqu’à atteindre un niveau de saturation de l’intensité du signal vocal reçu au-delà d’un seuil de saturation de l’amplitude du signal d’entrée, ledit seuil de saturation étant inférieur au seuil de champ proche ; et - un état désensibilisé dans lequel l’intensité du signal vocal reçu est proportionnelle à l’amplitude du signal d’entrée selon un second coefficient de proportionnalité supérieur au premier coefficient de proportionnalité ; en considérant un seuil dit de désensibilisation inférieur ou égal audit seuil de saturation, lors de l’étape d’analyse de proximité spatiale de chaque autre terminal, le terminal met en œuvre les étapes suivantes vis-à-vis de chaque autre terminal : - dans une première étape, ledit terminal est dans l’état de haute sensibilité vis-à-vis de l’autre terminal et mesure une intensité du signal vocal reçu de l’autre terminal, pour ensuite la comparer avec ledit seuil de désensibilisation ; - si l’intensité du signal vocal reçu de l’autre terminal est inférieure audit seuil de désensibilisation, alors ledit autre terminal est classé comme étant un terminal lointain vis-à-vis dudit terminal et ledit terminal reste dans l’état de haute sensibilité vis-à-vis de l’autre terminal pour reprendre à la première étape ; - si l’intensité du signal vocal reçu de l’autre terminal est supérieure audit seuil de désensibilisation alors, dans une deuxième étape, ledit terminal bascule dans un état désensibilisé vis-à-vis de l’autre terminal et compare ensuite l’intensité de signal reçu avec le seuil de champ proche ; - si l’intensité du signal vocal reçu de l’autre terminal est inférieur audit seuil de champ proche alors, dans une troisième étape, ledit autre terminal est classé comme étant un terminal lointain vis-à-vis dudit terminal et ledit terminal retourne dans l’état de haute sensibilité vis-à-vis de l’autre terminal avant de revenir à la première étape ; - si l’intensité du signal vocal reçu de l’autre terminal est supérieur audit seuil de champ proche alors, dans une quatrième étape, ledit autre terminal est classé comme étant un terminal proche vis-à-vis dudit terminal et ledit terminal reste dans l’état désensibilisé vis-à-vis de l’autre terminal.
Ainsi, en tenant compte des deux états de réception précités, l’invention propose de travailler en état de haute sensibilité en champ éloigné, et en état de haute sensibilité en champ proche et même en champ intermédiaire (défini par le seuil de désensibilisation) pour affiner la mesure de la distance entre deux terminaux.
Avantageusement, le seuil de désensibilisation est prédéfini pour correspondre à une distance entre deux terminaux comprise entre 7,0 et 13,0 mètres, et notamment entre 8,5 et 11,5 mètres.
Dans un mode de réalisation particulier, lors de la troisième étape, est réalisée une attente pendant une première durée d’attente prédéfinie, correspondant à un multiple de la durée d’un cycle, avant de revenir à la première étape.
Cette première attente a pour objet d’éviter de basculer brutalement d’un classement en terminal lointain vers un classement en terminal proche.
Selon une possibilité de l’invention, lors de la quatrième étape, le terminal compare l’intensité du signal vocal reçu de l’autre terminal avec un seuil dit d’hystérésis inférieur au seuil de champ proche et supérieur au seuil de saturation et, - si l’intensité du signal vocal reçu de l’autre terminal est supérieure audit seuil d’hystérésis alors ledit autre terminal continue d’être classé comme étant un terminal proche vis-à-vis du terminal et ledit terminal reste dans l’état désensibilisé vis-à-vis de l’autre terminal pour reprendre la quatrième étape avec la comparaison avec ledit seuil d’hystérésis ; - si l’intensité du signal vocal reçu de l’autre terminal est inférieure audit seuil d’hystérésis alors, dans une cinquième étape, ledit autre terminal continue d’être classé comme étant un terminal proche vis-à-vis du terminal, ledit terminal reste dans l’état désensibilisé vis-à-vis de l’autre terminal, une attente est réalisée pendant, au maximum, une deuxième durée d’attente prédéfinie, correspondant à un multiple de la durée d’un cycle, et, pendant cette attente, à chaque cycle, l’intensité du signal vocal reçu de l’autre terminal est comparée avec le seuil de champ proche ; - si l’intensité du signal vocal reçu de l’autre terminal est restée inférieure au seuil de champ proche pendant toute la deuxième durée d’attente, alors ledit autre terminal est classé comme étant un terminal lointain vis-à-vis dudit terminal et ledit terminal retourne dans l’état de haute sensibilité vis-à-vis de l’autre terminal avant de revenir à la première étape ; - si l’intensité du signal vocal reçu de l’autre terminal redevient supérieure au seuil de champ proche pendant l’attente (autrement dit avant la fin de deuxième durée d’attente), alors l’attente est interrompue pour revenir à la quatrième étape avec la comparaison avec ledit seuil d’hystérésis, ledit autre terminal continuant d’être classé comme étant un terminal proche vis-à-vis du terminal et ledit terminal restant dans l’état désensibilisé vis-à-vis de l’autre terminal.
Une telle procédure permet d’éviter de basculer brutalement d’un classement en terminal proche vers un classement en terminal lointain.
Avantageusement, la première durée d’attente est inférieure à la deuxième durée d’attente.
En effet, il est préférable de maintenir plus longtemps un terminal dans un classement proche (même si le terminal a commencé à s’éloigner) par rapport à la durée de maintien d’un terminal en classement éloigné (même si le terminal a commencé à se rapprocher).
Selon une autre possibilité de l’invention, chaque terminal met en œuvre les deux phases principales a) et b) périodiquement, de préférence après l’acquisition des sons par le microphone et après la réception des signaux vocaux en provenance des autres terminaux.
Conformément à une autre caractéristique avantageuse de l’invention, lors de l’étape d’analyse des volumes sonores, le terminal réalise la sélection du terminal principal comme suit : - si le volume sonore du signal vocal capté par son propre microphone est supérieur au volume sonore du signal vocal reçu du ou de chaque terminal proche, alors ledit terminal est sélectionné comme le terminal prioritaire ; - si le volume sonore du signal vocal capté par son propre microphone est inférieur au volume sonore du signal vocal reçu d’au moins un terminal proche, alors ledit terminal est sélectionné comme terminal secondaire.
Une telle procédure garantit que, au sein de plusieurs terminaux proches, c’est toujours le terminal dont le microphone reçoit le signal vocal le plus fort (terminal prioritaire) qui transmettra son signal vocal ; la sélection du terminal prioritaire pouvant changer dynamiquement en fonction de la prise de parole par les utilisateurs proches.
La présente invention concerne également la caractéristique selon laquelle, lors de l’étape d’analyse de proximité spatiale de chaque autre terminal, l’intensité du signal vocal reçu de chaque autre terminal correspond à la puissance en réception ou RSSI (Received Signal Strength Indication) dudit signal vocal reçu. D’autres caractéristiques et avantages de la présente invention apparaîtront à la lecture de la description détaillée ci-après, d’un exemple de mise en œuvre non limitatif, faite en référence aux figures annexées dans lesquelles : - la figure 1 est une vue schématique d’un casque de protection porté par un utilisateur et équipé d’un terminal de communication audionumérique adapté pour la mise en œuvre du procédé conforme à l’invention ; - la figure 2 est une vue schématique d’une première situation avec six utilisateurs équipés d’un casque conforme à la figure 1, où les six utilisateurs sont éloignés les uns des autres car situés à des distances supérieures à une distance dite de champ proche ; - la figure 3 est une vue schématique d’une deuxième situation avec six utilisateurs équipés d’un casque conforme à la figure 1, où trois utilisateurs sont proches les uns des autres car situés entre eux à des distances inférieures à la distance de champ proche et où trois autres utilisateurs sont éloignés des autres utilisateurs ; - la figure 4 est un schéma séquentiel principal des étapes du procédé conforme à l’invention ; - la figure 5 est un schéma séquentiel secondaire détaillant les étapes mis en œuvre pour l’une des étapes (l’étape d’analyse de proximité spatiale) du schéma principal de la figure 4 ; - la figure 6 représente schématiquement deux cycles successifs du canal de communication entre six terminaux (ou six utilisateurs) ; - la figure 7 illustre une courbe de variation de l’intensité du signal vocal reçu en fonction de l’amplitude du signal d’entrée pour un terminal dans un état de haute sensibilité ; - la figure 8 illustre un chronogramme d’analyse de proximité spatiale d’un terminal dans l’intervalle de temps alloué à un autre terminal, par la mise en œuvre du schéma séquentiel secondaire de la figure 5 ; et - la figure 9 illustre un autre chronogramme d’analyse de proximité spatiale d’un terminal dans l’intervalle de temps alloué à un autre terminal, par la mise en œuvre du schéma séquentiel secondaire de la figure 5.
En référence aux figures 1 à 3, le procédé de communication par multiplexage conforme à l’invention peut être mis en œuvre avec des terminaux T, T1, T2, T3, T4, T5, T6 de communication audionumérique intégrés dans des casques 1 de protection, tels que des casques de chantier, portés par des utilisateurs U, U1, U2, U3, U4, U5, U6.
Pour la suite de la description, il sera considéré que le procédé met en œuvre un mode de multiplexage temporel ou mode TDMA, bien que l’invention ne soit pas limitée à un tel mode de multiplexage et puisse être envisagée avec d’autres modes de multiplexage tels que par exemple les modes FDMA, OFDMA, SC-FDMA et CDMA décrits ci-dessus.
Chaque terminal T, T1, T2, T3, T4, T5, T6 est adapté pour recevoir et émettre des données audionumériques (ou données voix ou trames de données audio) lors d’une communication audio, dans les intervalles de temps des cycles successifs.
Chaque terminal T comporte : - un système de communication audio permettant la réception et la transmission de la voix, comprenant classiquement un microphone 10 et au moins un haut-parleur 11 ; - une interface audionumérique (non illustrée), en liaison avec le système de communication audio afin de convertir la voix en données audionumériques et inversement ; - un processeur de communication (non illustré), en liaison avec le système de communication et conçu pour recevoir en entrée les différentes données audionumériques et pour les délivrer en sortie dans les intervalles de temps des cycles de communication, et inversement ; et - un moteur radionumérique (non illustré), en liaison avec le processeur de communication, conçu pour émettre et recevoir les données, via une antenne.
Dans l’exemple de la figure 2, les utilisateurs U1, U2, U3, U4, U5, U6 (et donc les terminaux T1, T2, T3, T4, T5, T6) sont situés les uns des autres à des distances (symbolisées par les flèches doubles) supérieures à une distance dite de champ proche DCP. Dans cet exemple, les terminaux T1, T2, T3, T4, T5, T6 sont dits éloignés les uns des autres.
Dans l’exemple de la figure 3, trois utilisateurs U1, U2, U3 (et donc trois terminaux T1, T2, T3) sont proches les uns des autres car situés entre eux à des distances inférieures à la distance de champ proche DCP, et trois autres utilisateurs U4, U5, U6 (et donc trois autres terminaux T4, T5, T6) sont éloignés des autres utilisateurs car chacun de ces trois autres utilisateurs U4, U5, U6 est situé à des distances vis-à-vis des autres utilisateurs supérieures à la distance de champ proche DCP. Autrement dit, les trois terminaux T1, T2, T3 sont tous situés dans un espace ES réduit dont les dimensions sont inférieures à la distance de champ proche DCP.
Cette notion de distance entre utilisateurs est essentielle dans la mise en œuvre du procédé détaillé ci-après ; étant rappelé qu’il s’agit d’un procédé de communication par multiplexage temporel entre plusieurs terminaux Ti (i entier), une transmission de données audionumériques étant réalisée dans des cycles successifs d’un canal de communication, chaque cycle étant divisé en une pluralité d’intervalles de temps, et chaque terminal étant soit en mode d’émission soit en mode de réception pendant chaque intervalle de temps.
Pour chaque cycle, un intervalle de temps TSi est alloué à un terminal Ti, autrement dit à un utilisateur Ui, pour la transmission de ses données audionumériques.
La figure 6 illustre deux cycles successifs Cn, Cn+1, où les terminaux T1, T2, T3, T4, T5, T6 émettent des données audionumériques dans leurs intervalles TS1, TS2, TS3, TS4, TS5, TS6 dédiés. Autrement dit, chaque terminal Ti émet ses propres données audionumériques dans l’intervalle de temps TSi dédié, et reçoit les données audionumériques des autres terminaux Tj (j^i) dans les autres intervalles de temps TSj.
En référence à la figure 4, le procédé est conçu de sorte que chaque terminal Ti (i entier) met en œuvre les deux phases principales a) et b) suivantes lors de chaque cycle, ces deux phases principales a) et b) étant menées en parallèles.
La phase principale a) est une phase de réception et de traitement des signaux vocaux reçus en provenance des autres terminaux Tj (j^i, j entier), comprenant les étapes décrites ci-après.
Dans une étape A1 (« Réception audio »), le terminal Ti, en mode d’attente de réception de données audionumériques, reçoit des signaux vocaux sous forme de données audionumériques en provenance des autres terminaux Tj (réception dans les intervalles de temps TSj dédiés aux autres terminaux Tj).
Dans une étape A2 (« Mémorisation »), le terminal Ti stocke (ou mémorise) ces signaux vocaux en provenance des autres terminaux Tj et détermine leurs volumes sonores VSj respectifs.
Dans une étape A3 (« Analyse spatiale »), le terminal Ti met en œuvre une analyse de proximité spatiale de chaque autre terminal Tj vis-à-vis du terminal Ti, à partir d’une intensité du signal vocal RSSiJ reçu de chaque autre terminal Tj, et à l’issue de laquelle chaque autre terminal Tj est classé comme un terminal proche Tj(p_i) ou comme un terminal lointain Tj(l_i).
Si, lors de l’étape A3, au moins un autre terminal Tp (p^i, p entier) est classé comme un terminal proche Tj(p_i), alors le terminal Ti suit le chemin « terminal proche » pour mettre en œuvre une étape A4 (« Analyse volumes sonores ») au cours de laquelle le terminal Ti compare le volume sonore VSi du signal vocal capté par son propre microphone 10 (ce volume VSi étant récupéré lors de l’étape B2 mise en œuvre par le terminal Ti) et le volume sonore VSp du signal vocal reçu du ou de chaque terminal Tp proche (ce volume VSp étant récupéré lors de l’étape B2 mis en œuvre par le terminal Tp) et, en fonction de cette comparaison, sélectionne, parmi ledit terminal Ti et le ou lesdits terminaux proches Tp, un unique terminal dit prioritaire, le ou les terminaux restants étant sélectionnés comme terminaux secondaires.
Si le terminal Ti est le terminal prioritaire, alors ce terminal Ti ne transmet pas sur son au moins un haut-parleur 11 les signaux vocaux reçus du ou des terminaux proches Tp (ledit terminal Ti suit alors le chemin « prioritaire » pour retourner directement en mode d’attente de réception de données audionumériques à l’étape A1). Ainsi, l’utilisateur du terminal prioritaire n’entendra pas sa voix captée par les microphones des terminaux proches.
Par contre, si le terminal Ti est un terminal secondaire, alors ce terminal active une étape A5 (« Coupure microphone ») de coupure de son propre microphone 10 (en suivant le chemin «secondaire») et ensuite, lors d’une étape A6 (« sortie audio »), le terminal Ti transmet sur son haut-parleur 11 uniquement les signaux vocaux reçus du terminal prioritaire. Ainsi, les signaux vocaux reçus des autres terminaux secondaires ne seront pas transmis sur son haut-parleur 11. Ainsi, l’utilisateur d’un terminal secondaire entendra dans son haut-parleur uniquement la voix de l’utilisateur du terminal prioritaire (sans compter les éventuelles voix des utilisateurs lointains), et n’entendra pas cette voix captée par les microphones des différents terminaux proches (dont le sien).
Si, lors de l’étape A3, au moins un autre terminal Tl (l^i et l^p, I entier) est classé comme un terminal éloigné Tj(l_i), alors le terminal Ti suit le chemin « terminal éloigné » pour mettre en œuvre l’étape A6 dans laquelle le terminal Ti transmet sur son haut-parleur 11 les signaux vocaux reçus du ou des terminaux lointains Tl.
Bien entendu, cette phase principale a) est déroulée par le terminal Ti vis-à-vis de chaque autre terminal Tj, chaque autre terminal Tj étant soit classé comme terminal proche Tj(p_i) soit classé comme terminal éloigné Tj(Ü) à l’issue de l’étape A3, et dans ce cas le terminal Ti suivra le chemin « terminal éloigné » pour chaque terminal lointain Tj(l_i) ou Tl et suivra le chemin « terminal proche » pour chaque terminal proche Tj(p_i) ou Tp. Et bien entendu, cette phase principale a) est mise en œuvre par chaque terminal Ti.
La phase principale b) mise en œuvre par le terminal Ti est quant à elle une phase de traitement du son capté par son propre microphone 10, comprenant plusieurs étapes.
Dans une étape B1 (« entrée audio microphone »), le terminal Ti reçoit le son capté par son propre microphone 10 ;
Dans une étape B2 (« détection voix »), le terminal Ti met en œuvre un algorithme de détection de la parole sur ledit son issu du microphone 10 (un tel algorithme mettant en œuvre un filtrage anti-bruit), à l’issue duquel est délivré un signal vocal sous forme de données audionumériques si une parole est détectée.
Si aucune parole n’est détectée lors de l’étape B2, alors le terminal Ti retourne à l’étape B1 selon le chemin « absence parole ».
Par contre, si une parole est détectée lors de l’étape B2, alors le terminal Ti suit le chemin « présence parole » pour réaliser une étape B3 (« volume sonore ») au cours de laquelle le terminal Ti détermine le volume sonore VSi dudit signal vocal, ce volume sonore VSi étant exploité dans l’étape A4.
De manière avantageuse, à la suite de cette étape B3, le terminal Ti peut mettre en œuvre des algorithmes de filtrage numérique anti-écho et/ou anti-Larsen, sur la base, entre autres, de l’historique du signal émis par le haut-parleur 11. A la suite de l’étape B3, le terminal Ti met en œuvre une étape B4 (« gestion transmission ») consistant à gérer la transmission du signal vocal, le cas échéant après filtrage numérique anti-écho et/ou anti-Larsen, dans lequel : - si, lors de l’étape A4, le terminal Ti est sélectionné comme un terminal prioritaire (autrement dit si l’étape A5 n’a pas été activée), alors le terminal Ti suit le chemin « activation microphone » pour réaliser une étape B6 (« Transmission audio ») dans laquelle le terminal Ti transmet le signal vocal à destination des autres terminaux Tj, avant de retourner à l’étape « entrée audio microphone » initiale ; - si, lors de l’étape A4, le terminal Ti est sélectionné comme un terminal secondaire (autrement dit si l’étape A5 a été activée), alors la coupure de son propre microphone 10 est activée de sorte que ledit terminal Ti ne transmet pas ledit signal vocal à destination des autres terminaux, en retournant directement à l’étape B1 initiale en suivant le chemin « désactivation microphone ».
La suite de la description porte sur l’étape A3 d’analyse de proximité spatiale.
Chaque terminal Ti présente deux états de réception du signal vocal reçu de chaque autre terminal Tj, propres à la réception vis-à-vis de chaque autre terminal Tj (autrement dit dans l’intervalle de temps TSj dédié au terminal Tj) : - un état dit de haute sensibilité « HS » (illustré sur la figure 7) dans lequel l’intensité du signal vocal reçu RSSIiJ par le terminal Ti en provenance du terminal Tj, est proportionnelle à l’amplitude du signal d’entrée AEiJ selon un premier coefficient de proportionnalité K1, jusqu’à atteindre un niveau de saturation RSSIsat de l’intensité du signal vocal reçu RSSIiJ au-delà d’un seuil de saturation Ssat (par exemple de l’ordre de - 38 dBm) de l’amplitude du signal d’entrée AEiJ ; et - un état désensibilisé « DS » dans lequel l’intensité du signal vocal reçu est proportionnelle à l’amplitude du signal d’entrée selon un second coefficient de proportionnalité K2 supérieur au premier coefficient de proportionnalité K1.
Ainsi, le terminal Ti peut être dans un état de haute sensibilité sur l’intervalle de temps TSj alloué à un autre terminal Tj (j^i, j entier), et être dans un état désensibilisé sur l’intervalle de temps TSj alloué à un autre terminal Tk (k^j et k^i, k entier).
En référence à la figure 5, lors de l’étape A3, le terminal Ti met en œuvre, vis-à-vis de chaque autre terminal Tj, un schéma séquentiel secondaire comprenant les étapes décrites ci-après.
Dans une première étape E1 (« comparaison seuil de désensibilisation »), le terminal Ti est dans l’état de haute sensibilité vis-à-vis de l’autre terminal Tj (autrement dit dans l’intervalle de temps TSj dédié au terminal Tj) et mesure une intensité du signal vocal reçu RSSIiJ de l’autre terminal Tj, pour ensuite la comparer avec un seuil de désensibilisation Sdes (par exemple de l’ordre de - 42 dBm), ce seuil de désensibilisation Sdes étant inférieur ou égal audit seuil de saturation Ssat ;
Si, lors de la première étape E1, l’intensité du signal vocal reçu RSSIiJ de l’autre terminal Tj est inférieure audit seuil de désensibilisation Sdes, alors ledit autre terminal Tj est classé comme étant un terminal lointain vis-à-vis dudit terminal Ti et ledit terminal Ti reste dans l’état de haute sensibilité vis-à-vis de l’autre terminal Tj pour reprendre à la première étape E1.
Par contre, si, lors de la première étape E1, l’intensité du signal vocal reçu RSSIiJ de l’autre terminal Tj est supérieure audit seuil de désensibilisation Sdes alors, dans une deuxième étape E2 (« comparaison seuil de champ proche »), ledit terminal Ti bascule dans un état désensibilisé vis-à-vis de l’autre terminal Tj (autrement dit dans l’intervalle de temps TSj dédié au terminal Tj) et compare ensuite l’intensité du signal vocal reçu RSSIiJ avec un seuil de champ proche Sep (par exemple de l’ordre de - 25 dBm), ce seuil de champ proche Sep étant supérieur au seuil de saturation Ssat ;
Si, lors de la deuxième étape E2, l’intensité du signal vocal reçu RSSIiJ de l’autre terminal Tj est inférieur audit seuil de champ proche Sep alors, dans une troisième étape E3 (« Décision champ lointain »), ledit autre terminal Tj est classé comme étant un terminal lointain Tl vis-à-vis dudit terminal Ti et ledit terminal Ti retourne dans l’état de haute sensibilité vis-à-vis de l’autre terminal avant de revenir à la première étape E1 après une attente pendant une première durée d’attente DA1 prédéfinie, cette première durée d’attente DA1 correspondant à un multiple de la durée d’un cycle (notamment un multiple compris 5 et 14) ;
Par contre, si, lors de la deuxième étape E2, l’intensité du signal vocal reçu RSSIiJ de l’autre terminal est supérieur audit seuil de champ proche Sep alors, dans une quatrième étape E4 (« Comparaison seuil d’hystérésis »), ledit autre terminal Tj est classé comme étant un terminal proche Tp vis-à-vis dudit terminal Ti et ledit terminal Ti reste dans l’état désensibilisé vis-à-vis de l’autre terminal Tj, et le terminal Ti compare l’intensité du signal vocal reçu RSSIiJ de l’autre terminal avec un seuil dit d’hystérésis Shy (par exemple de l’ordre de - 30 dBm), ce seuil d’hystérésis Shy étant inférieur au seuil de champ proche Sep et supérieur au seuil de saturation Ssat ;
Si, lors de la quatrième étape E4, l’intensité du signal vocal reçu RSSIiJ de l’autre terminal Tj est supérieure audit seuil d’hystérésis Shy alors ledit autre terminal Tj continue d’être classé comme étant un terminal proche Tp vis-à-vis du terminal Ti et ledit terminal Ti reste dans l’état désensibilisé vis-à-vis de l’autre terminal Tj pour reprendre la quatrième étape E4 avec la comparaison avec ledit seuil d’hystérésis Shy ;
Par contre, si, lors de la quatrième étape E4, l’intensité du signal vocal reçu RSSIiJ de l’autre terminal Tj est inférieure audit seuil d’hystérésis Shy alors, dans une cinquième étape E5 (« Décision champ proche »), ledit autre terminal Tj continue d’être classé comme étant un terminal proche Tp vis-à-vis du terminal Ti, ledit terminal Ti reste dans l’état désensibilisé vis-à-vis de l’autre terminal Tj, une attente est réalisée pendant, au maximum, une deuxième durée d’attente DA2 prédéfinie supérieure à la première durée d’attente DA1, cette deuxième durée d’attente DA2 correspondant à un multiple de la durée d’un cycle (notamment un multiple compris entre 15 et 25), et, pendant cette attente, à chaque cycle, l’intensité du signal vocal reçu RSSIiJ de l’autre terminal Tj est comparée avec le seuil de champ proche Sep ;
Si, lors de la cinquième étape E5, l’intensité du signal vocal reçu RSSIiJ de l’autre terminal Tj est resté inférieure au seuil de champ proche Sep pendant toute la durée d’attente DA2, alors ledit autre terminal Tj est classé comme étant un terminal lointain Tl vis-à-vis dudit terminal Ti et ledit terminal Ti retourne dans l’état de haute sensibilité vis-à-vis de l’autre terminal Tj avant de revenir à la première étape E1 ;
Par contre, si, lors de la cinquième étape E5, l’intensité du signal vocal reçu RSSIiJ de l’autre terminal Tj redevient supérieure au seuil de champ proche Sep pendant l’attente, alors l’attente est interrompue pour revenir à la quatrième étape E4 avec la comparaison avec ledit seuil d’hystérésis Shy, et ledit autre terminal Tj continue d’être classé comme étant un terminal proche Tp vis-à-vis du terminal Ti et ledit terminal Ti reste dans l’état désensibilisé vis-à-vis de l’autre terminal Tj.
Les figures 8 et 9 illustrent la mise en œuvre de l’étape a-3) ou étape « Analyse spatiale », dans deux situations, avec une représentation de la courbe Crssi de l’intensité du signal vocal reçu RSSIiJ par le terminal Ti en provenance de l’autre terminal Tj, et également de la courbe Ce de l’état de réception du terminal Ti vis-à-vis de l’autre terminal Tj. Sur ces figures, l’étape « Analyse spatiale » commence au premier cycle Ci, dont la durée est par exemple de 60 millisecondes.
Sur la figure 8, l’utilisateur Uj parle et la courbe Crssi traduit l’intensité du signal vocal reçu RSSIiJ par le terminal Ui dans l’intervalle de temps TSj alloué au terminal Tj. Dans cet exemple, l’utilisateur Uj est situé à une distance supérieure à la distance dite de champ proche ; étant précisé que le seuil de champ proche Sep est prédéfini pour correspondre à une distance entre deux terminaux comprise entre 1,5 et 3,0 mètres, et notamment entre 2,0 et 2,5 mètres.
Cette courbe Crssi démarre au milieu du premier cycle Ci, pour atteindre un palier à un niveau Np supérieur au seuil de désensibilisation Sdes et inférieur au seuil de champ proche Sep, et se termine environ au cycle C24· Dans ce cas de figure, l’étape « Analyse spatiale » se déroule comme suit : - avant le cycle C-\, la séquence est bloquée à l’étape E1 car RSSIiJ est quasiment nulle (pas de parole détectée dans l’intervalle de temps TSj alloué au terminal Tj), le terminal Ti est dans l’état « HS » (sous-entendu dans l’état « HS » dans l’intervalle de temps TSj alloué au terminal Tj), et le terminal Tj est classé comme étant un terminal lointain ; - au début du cycle C-\, RSSIiJ = 0 < Sdes, donc la séquence reste à l’étape E1 et le terminal reste dans l’état « HS » ; - au début du cycle C2, RSSIiJ = Np > Sdes, donc la séquence bascule à l’étape E2 et le terminal passe dans l’état « DS » ; - au début du cycle C3, RSSIiJ = Np < Sep, donc la séquence bascule à l’étape E3 et le terminal retourne dans l’état « HS » ; - entre les cycles C4 et C13, la séquence est mise en attente sur la durée DA1 qui correspond ici à 10 cycles d’attente ; - au début du cycle Cu, RSSIiJ = Np > Sdes, donc la séquence bascule à l’étape E2 et le terminal passe dans l’état « DS » ; - au début du cycle C15, RSSIiJ = Np < Sep, donc la séquence bascule à l’étape E3 et le terminal retourne dans l’état « HS » ; - entre les cycles C16 et C25, la séquence est mise en attente sur la durée DA1 qui correspond ici à 10 cycles d’attente ; - au début du cycle C26, RSSIiJ = 0 < Sdes (plus de parole), donc la séquence reste à l’étape E1 et le terminal reste dans l’état « HS », jusqu’à ce qu’un nouveau signal de parole soit détecté dans l’intervalle de temps TSj alloué au terminal Tj.
Durant toute la séquence, le terminal Tj est donc resté classé comme terminal lointain pour le terminal Ti.
Sur la figure 9, l’utilisateur Uj parle à proximité de l’utilisateur Ui, tout en se déplaçant de sorte qu’il est parfois à une distance inférieure à la distance de champ proche, et parfois à une distance légèrement supérieure à la distance de champ proche. La courbe Crssi traduit l’intensité du signal vocal reçu RSSIiJ par le terminal Ui dans l’intervalle de temps TSj alloué au terminal Tj.
Cette courbe Crssi démarre au milieu du premier cycle Ci et présente successivement : - un premier palier jusqu’au cycle C5 à un niveau N2 supérieur au seuil de désensibilisation Sdes, également supérieur au seuil d’hystérésis Shy, et inférieur au seuil de champ proche Sep ; - un deuxième palier, du cycle C5 jusqu’au milieu du cycle C15, à un niveau N3 supérieur au seuil de champ proche Sep ; - un troisième palier, du milieu du cycle C15 jusqu’au milieu du cycle C17, au niveau N2 ; - un quatrième palier, du milieu du cycle C-Jusqu’au milieu du cycle C34, à un niveau N1 supérieur au seuil de désensibilisation Sdes et inférieur au seuil d’hystérésis Shy ; - un cinquième et dernier palier, du milieu du cycle C34 jusqu’au milieu du cycle C35, au niveau N3, pour se terminer ensuite.
Dans ce cas de figure, l’étape « Analyse spatiale » se déroule comme suit : - avant le cycle Ci, la séquence est bloquée à l’étape E1 car RSSIiJ est quasiment nulle (pas de parole détectée dans l’intervalle de temps TSj alloué au terminal Tj), le terminal Ti est dans l’état « HS », et le terminal Tj est classé comme étant un terminal lointain ; - au début du cycle C-\, RSSIiJ = 0 < Sdes, donc la séquence reste à l’étape E1 et le terminal reste dans l’état « HS » ; - au début du cycle C2, RSSIiJ = N2 > Sdes, donc la séquence bascule à l’étape E2 et le terminal passe dans l’état « DS » ; - au début du cycle C3, RSSIiJ = N2 < Sep, donc la séquence bascule à l’étape E3 et le terminal retourne dans l’état « HS » ; - entre les cycles C4 et C13, la séquence est mise en attente sur la durée DA1 qui correspond ici à 10 cycles d’attente, et le terminal Tj reste classé comme étant un terminal lointain ; - au début du cycle Ch, RSSIiJ = N3 > Sdes, donc la séquence bascule à l’étape E2 et le terminal passe dans l’état « DS » ; - au début du cycle C15, RSSIiJ = N3 > Sep, donc la séquence bascule à l’étape E4, le terminal reste dans l’état « DS » et le terminal Tj est désormais classé comme étant un terminal proche ; - au début du cycle C16, RSSIiJ = N2 > Shy, donc la séquence revient à l’étape E4, le terminal reste dans l’état « DS » et le terminal Tj reste classé comme étant un terminal proche ; - au début du cycle C17, RSSIiJ = N2 > Shy, donc la séquence revient à l’étape E4, le terminal reste dans l’état « DS » et le terminal Tj reste classé comme étant un terminal proche ; - au début du cycle Ch, RSSIiJ = N1 < Shy, donc la séquence bascule dans l’étape E5, avec le lancement d’une attente sur une durée maximum DA2 (ici DA2 correspond à 25 cycles d’attente), et, durant cette attente, à chaque cycle, RSSIiJ est comparée à Sep, et en outre le terminal reste dans l’état « DS » et le terminal Tj reste classé comme étant un terminal proche ; - au début du cycle C35 (donc avant la fin de la durée maximum DA2), RSSIiJ = N3 > Sep, donc la séquence retourne à l’étape E4, le terminal étant toujours dans l’état « DS » et le terminal Tj étant toujours classé comme étant un terminal proche ; - au début du cycle C36, RSSIiJ = 0 < Shy (plus de parole), donc la séquence bascule dans l’étape E5, avec le lancement d’une attente sur une durée maximum DA2 (ici 25 cycles d’attente), et, durant cette attente, à chaque cycle, RSSIiJ est comparée à Sep (dans le cas présente RSSIiJ = 0 < Sep durant toute l’attente), et en outre le terminal reste dans l’état « DS » et le terminal Tj reste classé comme étant un terminal proche ; - au début du cycle Οβ2 (fin de l’attente qui a duré DA2), RSSIiJ = 0 < Sep, alors la séquence retourne à l’étape E1, le terminal retourne dans l’état « HS » et le terminal Tj redevient classé comme terminal lointain, jusqu’à ce qu’un nouveau signal de parole soit détecté dans l’intervalle de temps TSj alloué au terminal Tj.
Ainsi, le terminal Tj est classé comme terminal lointain pour le terminal Ti du début jusqu’au cycle C15, puis il est classé comme terminal proche du cycle C15 jusqu’au cycle C62, avant de retourner au classement terminal lointain. On observe donc un décalage de 15 cycles, soit 900 millisecondes (moins de 1 seconde) pour un cycle de 60 millisecondes, entre le début de parole et le classement en terminal proche, ce qui est clairement compatible avec les exigences en matière de confort d’écoute.
La suite de la description porte sur l’étape a-4) ou étape « Analyse volume », et en particulier sur la méthode pour sélectionner le terminal principal lorsque au moins deux terminaux Ti, Tj sont classés comme proches l’un de l’autre.
Le terminal Ti met en œuvre l’analyse comparative suivante : - si le volume sonore VSi du signal vocal capté par son propre microphone 10 est supérieur au volume sonore VSj du signal vocal reçu du ou de chaque terminal proche Tp, alors ledit terminal Ti est sélectionné comme le terminal prioritaire ; - si le volume sonore VSi du signal vocal capté par son propre microphone 10 est inférieur au volume sonore VSj du signal vocal reçu d’au moins un terminal proche Tp, alors ledit terminal Ti est sélectionné comme terminal secondaire.
Bien entendu, cette analyse comparative est également mise en œuvre par le ou chaque terminal proche Tj, de sorte qu’automatiquement, lorsque le terminal Ti est sélectionné comme le terminal prioritaire, le ou chaque terminal Tj est sélectionné comme terminal secondaire, et inversement lorsque le terminal Ti est sélectionné comme terminal secondaire, l’un des terminaux Tj est sélectionné comme terminal prioritaire.
Ainsi, le procédé conforme à l’invention garantit une conférence audio au cours de laquelle tous les utilisateurs Ui s’entendent et chaque utilisateur Ui peut s’adresser aux autres à tout moment aux autres utilisateurs.
De manière simplifiée, deux situations sont observées : - lorsque un utilisateur Ui est éloigné des autres utilisateurs (par exemple les utilisateurs U4, U5 et U6 de la figure 3), alors sont terminal Ti procédera de sorte que son microphone sera toujours « ouvert », autrement dit la voix capté par son microphone sera toujours transmise aux autres terminaux (avantageusement, un filtre anti-bruit et également un filtre anti-écho et/ou anti-larsen garantira que seule la voix est transmise en éliminant tous les bruits extérieurs). - lorsque plusieurs utilisateurs Ui sont proches les uns des autres (par exemple les utilisateurs U1, U2 et U3 de la figure 3), un unique microphone est « ouvert » parmi les terminaux proches, supprimant ainsi les bruits et les harmoniques issus de la pluralité de chemins acoustiques entre ces terminaux proches.