Brevet FR2972587A1 — publié le 20120914

Dispositif et procédé de mixage réparti de flux de données L'invention concerne le domaine de la transmission et du mixage de flux de données, en particulier de flux de données multimédias audio et vidéo dans le cadre de 5 téléconférences audio et/ou vidéo. Les avancées des dernières années en matière de technologies de l'information combinées au besoin d'optimiser le temps de travail et de limiter les déplacements ont favorisé le développement récent des systèmes de téléconférence entre utilisateurs. Les systèmes classiques de téléconférence se basent sur la transmission de flux de 10 données, aussi bien audio pour le son que vidéo pour l'image, entre les différents participants à une telle téléconférence. Afin de gérer au mieux ce type de téléconférences, les différents flux en question sont gérés par un serveur de conférence multimédia qui se charge d'organiser la vidéoconférence pour le compte des intervenants. Ce serveur reçoit ainsi les différents 15 flux de données provenant des participants à la vidéoconférence, et traite ces différents flux en les mixant afin de construire des flux de données de sorties à envoyer en retour aux différents participants. Ainsi, dans le cas des données vidéo, un serveur multimédia central de vidéoconférence peut recevoir un certain nombre de flux vidéos provenant des différents 20 participants, et peux diffuser vers ceux-ci un unique flux de diffusion vidéo dans lesquels ces flux se retrouvent mixés, par exemple sous forme de mosaïque vidéo. Afin de traiter les différents flux d'entrée et de sortie, le serveur de conférence multimédia ci-avant dispose de moyens de mixage limités en puissance de calcul, ce qui l'empêche de gérer des vidéoconférences avec un nombre de participants dépassant les 25 capacités autorisées par ces moyens de traitement. Les serveurs de conférence multimédia ne sont donc pas actuellement évolutifs. Les serveurs de conférence multimédia actuels imposent également que tous les participants soient pris en charge sur le même serveur, ce qui est difficile à gérer lorsqu'un service de conférence est reparti sur plusieurs machines (ferme, cloud, ...) 30 Il existe donc un besoin de proposer un système de mixage de flux de données qui puisse être évolutif et disposant de capacités de calcul supérieures à celles des serveurs multimédias actuels. La présente invention a pour objet de remédier aux inconvénients précités. La présente invention propose à cet effet un dispositif de mixage réparti de flux de données comprenant un serveur multimédia principal, apte à recevoir au moins un flux de données entrant et à fournir en sortie au moins un flux de données sortant, et au moins un serveur multimédia secondaire, apte à recevoir au moins un flux de données entrant et à fournir en sortie au moins un flux de données sortant, le serveur multimédia principal comprenant un module de sélection arrangé pour sélectionner une pluralité de flux de données parmi les flux de données entrants et un module de mixage global arrangé pour mixer les flux de données sélectionnés afin d'obtenir un flux agrégé, le serveur multimédia secondaire comprenant un module de mixage local arrangé pour mixer au moins deux flux de données entrants, reçus par le serveur multimédia secondaire et sélectionnés par le module de sélection du serveur multimédia principal, afin d'obtenir un flux intermédiaire entrant apte à être utilisé par le module de mixage global du serveur multimédia principal afin d'obtenir le flux agrégé. Selon un mode de réalisation, les serveurs multimédia principal et secondaire comprennent respectivement un module de communication arrangés pour transmettre, du module de sélection au serveur multimédia secondaire, un message désignant les flux de données entrants reçus par le serveur multimédia secondaire qui sont sélectionnés par le module de sélection et pour transmettre le flux intermédiaire entrant du module de mixage local du serveur multimédia secondaire au module de mixage global du serveur multimédia principal. Dans un mode de réalisation où les flux de données de sorties comprennent le flux agrégé, le module de communication du serveur multimédia principal est arrangé pour transmettre le flux agrégé du module de mixage global du serveur multimédia principal au module de communication de chaque serveur multimédia secondaire. Selon un mode de réalisation, pour chaque serveur multimédia secondaire, le module de mixage global est arrangé pour fournir un flux intermédiaire sortant de données comprenant le flux agrégé dans lequel le flux intermédiaire entrant de données fourni par le serveur multimédia secondaire est retiré, le module de communication du serveur multimédia principal est arrangé pour transmettre le flux agrégé du module de mixage global du serveur multimédia principal au module de communication du serveur multimédia secondaire, et le module de mixage local du serveur multimédia secondaire est arrangé pour obtenir chaque flux de données sortant fourni en sortie du serveur multimédia secondaire en mixant le flux intermédiaire sortant de données avec le flux intermédiaire entrant de données. Dans un mode de réalisation où chaque flux de données entrant est associé à un flux de données sortant, pour chaque flux de données sortant fourni en sortie du serveur multimédia secondaire, le module de mixage local du serveur multimédia secondaire est arrangé pour retirer dudit flux de données sortant le flux de données en entrant qui lui est associé. Selon un mode de réalisation, le serveur multimédia principal comprend en outre un module de mixage local arrangé pour mixer au moins deux flux de données entrants reçus par le serveur multimédia principal lorsque lesdits flux de données entrant sont sélectionnés par le module de sélection, ce qui permet de répartir encore plus la charge de calcul au sein du système. Dans un mode de réalisation avantageux, chaque module de mixage local est arrangé en outre pour décoder les flux de données entrants et pour coder les flux de données sortants, ce qui permet de répartir en outre entre plusieurs serveurs la charge de calcul liée au codage de données. La présente invention propose par ailleurs un procédé de mixage réparti de flux de données, mis en oeuvre par un dispositif de mixage réparti comprenant un serveur multimédia principal et au moins un serveur multimédia secondaire, le procédé comprenant les étapes consistant à : recevoir au moins un flux de données entrant dans le serveur multimédia principal et au moins un flux de données entrants dans le serveur multimédia secondaire ; sélectionner une pluralité de flux de données parmi les flux de données entrants ; lorsque plusieurs flux de données entrants reçus par le serveur multimédia secondaire sont sélectionnés, mixer lesdits flux de données entrants reçus par le serveur multimédia secondaire et sélectionnés dans le serveur multimédia secondaire, afin d'obtenir un flux intermédiaire entrant de données ; mixer les flux de données sélectionnés, au moyen du flux intermédiaire entrant de données, dans le serveur multimédia principal afin d'obtenir un flux agrégé ; et fournir au moins un premier flux de données sortant en sortie du serveur multimédia principal et au moins un deuxième flux de données sortant en sortie du serveur multimédia secondaire, lesdits flux de données sortants étant obtenus à partir du flux agrégé. Dans un mode de réalisation avantageux, ce procédé comprend les étapes consistant à, pour chaque serveur multimédia secondaire : obtenir un flux intermédiaire sortant de données comprenant le flux agrégé dans lequel le flux intermédiaire entrant de données fourni par le serveur multimédia 30 secondaire est retiré, transmettre ledit flux intermédiaire sortant de données audio du serveur multimédia principale au serveur multimédia secondaire, et obtenir chaque flux de données sortant fourni en sortie du serveur multimédia secondaire en mixant le flux intermédiaire sortant de données avec le flux intermédiaire entrant de données. Dans un mode de réalisation s'appliquant en particulier aux flux audio de données, où chaque flux de données entrant est associé à un flux de données sortant, pour chaque flux de données sortant fourni en sortie du serveur multimédia secondaire, le flux de données entrant associé au flux de données sortant est retiré dudit flux de données sortant. Dans un mode de réalisation avantageux, l'étape de réception des flux de données entrants comprend le décodage desdits flux de données entrants et l'étape de fourniture des flux de données sortants comprend le codage desdits flux de données sortants, ce qui permet de répartir en outre entre plusieurs serveurs la charge de calcul liée au codage de données. Selon un mode de réalisation, le dispositif de mixage est un dispositif de mixage de flux de données vidéo et les flux de données entrants et sortants sont des flux de données vidéo. Selon un autre mode de réalisation, le dispositif de mixage est un dispositif de mixage de flux de données audio et les flux de données entrants et sortants sont des flux de données audio. Dans un mode de réalisation particulier, la sélection ci-avant des flux de données entrants comprend la sélection d'un nombre prédéfini de flux de données entrants présentant le niveau sonore le plus élevé parmi l'ensemble des flux de données entrants, afin d'assurer une bonne qualité sonore en conférence. Dans un autre mode de réalisation particulier, la sélection ci-avant des flux de données entrants comprend la sélection d'un flux de données entrant prédéterminé, afin de pouvoir imposer un participant prioritaire au sein d'une conférence. D'autres caractéristiques et avantages de l'invention apparaîtront à l'examen de la description détaillée ci-après, et des dessins annexés sur lesquels : - la figure 1 illustre schématiquement un dispositif de mixage réparti de flux de 4 données selon la présente invention ; - la figure 2 illustre les étapes d'un procédé de mixage réparti de flux de données selon la présente invention ; - la figure 3 illustre un premier mode de réalisation du dispositif de mixage réparti selon la présente invention ; et - la figure 4 illustre un premier mode de réalisation du dispositif de mixage réparti selon la présente invention. On se réfère tout d'abord à la figure 1 sur laquelle est illustré schématiquement un dispositif de mixage réparti de flux de données selon la présente invention. Ce dispositif de mixage réparti de flux de données comprend, d'une part, un serveur multimédia principal 10 et, d'autre part, au moins un serveur multimédia secondaire 20. A titre purement illustratif, deux serveurs multimédias secondaires 20 et 30 sont illustrés sur la figure 1, mais n'importe quel nombre de serveurs multimédias secondaires peut être employé sachant que plus ce nombre est grand, et plus la présente invention produit son effet avantageux. Dans la suite de la description, seule la relation entre le serveur multimédia principal 10 et le serveur multimédia secondaire 20 est décrite en détail dans un souci de concision. Le serveur multimédia principal 10 est apte à recevoir au moins un flux de données entrant et à fournir en sortie au moins un flux de données sortant. Ainsi, dans l'exemple de la figure 1, le serveur multimédia principal 10 reçoit trois flux de données entrants A,B et C provenant respectivement de trois utilisateurs et renvoie en retour trois flux de données sortants A',B' et C' à ces trois utilisateurs, de sorte que le flux de données entrant A soit associé au flux de données sortant A', etc. De façon similaire, le serveur multimédia secondaire 20 est apte à recevoir au moins un flux de données entrant et à fournir en sortie au moins un flux de données sortant. Ainsi, dans l'exemple de la figure 1, le serveur multimédia secondaire 20 reçoit trois flux de données entrants D,E et F provenant respectivement de trois utilisateurs (différents des utilisateurs communiquant avec le serveur principal 10) et renvoie en retour trois flux de données sortants D',E' et F' à ces trois utilisateurs, de sorte que le flux de données entrant D soit associé au flux de données sortant D', etc. Similairement, dans l'exemple de la figure 1, le serveur multimédia secondaire 30 reçoit trois flux de données entrants G,H,I provenant respectivement de trois autres utilisateurs et renvoie respectivement en retour trois flux de données sortants G',H' et l' à 5 ces trois utilisateurs. Le serveur multimédia principal comprend par ailleurs un module de sélection 11 arrangé pour sélectionner une pluralité de flux de données parmi les flux de données entrants. Ce module de sélection utilise un ou plusieurs critère(s) de sélection, lesquels peuvent tenir compte du comportement des utilisateurs. Ainsi, lorsque les flux de données entrants sont des flux de données audio, le module de sélection 11 des flux de données entrants peut utiliser un critère de sélection correspondant à la sélection d'un nombre prédéfini de flux de données entrants présentant le niveau sonore le plus élevé parmi l'ensemble des flux de données entrants. Ainsi, dans le cas de la figure 1 où six flux de données entrants A-F sont reçus, et avec un critère sélectionnant les quatre flux présentant le volume sonore le plus élevés, les quatre flux A, B, E et F sont sélectionnés. Un critère de sélection arbitraire peut également utilisé, par exemple en imposant la sélection d'un flux de données entrant prédéterminé, ce qui peut être utile dans les cas où un flux de données prioritaire doit absolument être diffusé aux différents participants. Le serveur multimédia principal comprend en outre un module de mixage global 13 arrangé pour mixer les flux de données sélectionnés par le module de sélection 11, afin d'obtenir un flux agrégé S, ce qui est représenté schématiquement sur la figure 1 par S=A+B+E+F. En d'autres termes, dans l'exemple de la figure 1, le flux agrégé S comprend donc les quatre flux de données A, B, E et F mixés ensemble par le module de mixage global. Le serveur multimédia secondaire 20 comprend, pour sa part, un module de mixage local 21 (tout comme le serveur multimédia secondaire 30 qui comprend un module de mixage local 31 similaire) arrangé pour mixer au moins deux des flux de données entrants reçus par le serveur multimédia secondaire, lorsque ceux-ci sont sélectionnés par le module de sélection du serveur multimédia principal, afin d'obtenir un flux intermédiaire entrant T. Ce flux intermédiaire entrant T peut alors être transmis au serveur multimédia principal et est apte à être utilisé par le module de mixage global de ce serveur multimédia principal afin d'obtenir le flux agrégé S. Ainsi, dans la figure 1, comme les flux de données entrants E et F sont sélectionnés par le module de sélection 11, le flux intermédiaire entrant T est obtenu en mixant ces deux flux de données E et F (i.e. T=E+F). On voit bien ici que, lorsque plusieurs flux de données entrant reçus par le serveur multimédia secondaire sont sélectionnés, une première opération de mixage local peut avoir lieu au niveau du serveur multimédia secondaire 20 (pour obtenir le flux 6 intermédiaire entrant T) avant qu'une deuxième opération de mixage n'ait lieu au niveau du serveur multimédia principal 10 (pour obtenir le flux agrégé S). Le mixage des différents flux sélectionnés est donc réparti entre les serveurs 10 et 20, ce qui permet d'alléger la charge de travail du serveur multimédia principal par rapport à une situation où il devrait s'occuper seul du mixage. Le serveur multimédia principal 10 comprend en outre un module de communication 15 et, similairement, les serveurs multimédias 20 et 30 comprennent respectivement des modules de communication 25 et 35. Ces modules de communication sont connectés et arrangés pour communiquer entre eux afin d'échanger des flux de données entre, d'une part, les serveurs 10 et 20 et, d'autre part, les serveurs 10 et 30. En particulier, ces modules de communication 15 et 25 peuvent être arrangés pour transmettre, du serveur multimédia secondaire 20 au serveur multimédia principal, des paramètres servant à la sélection des flux entrants, comme par exemple le niveau sonore d'un flux de données audio entrant, etc. Ces modules de communication 15 et 25 sont arrangés pour transmettre, du module de sélection 10 au serveur multimédia secondaire 20, un message SLCT désignant les flux de données entrants reçus par le serveur multimédia secondaire qui sont sélectionnés par le module de sélection (ici les flux E et F). Ces modules de communication 15 et 25 sont également arrangés pour transmettre le flux intermédiaire entrant T du module de mixage local du serveur multimédia secondaire au module de mixage global du serveur multimédia principal, afin que ce dernier puisse utiliser ce flux intermédiaire T pour construire le flux agrégé S. Dans un premier cas, les différents flux de données sortants A' à F' comprennent le flux agrégé S tel quel, comme cela est plus particulièrement le cas avec le premier mode de réalisation illustré ci-après à la figure 3. Dans ce cas, le module de communication 15 du serveur multimédia principal 10 est alors arrangé pour transmettre le flux agrégé S du module de mixage global du serveur multimédia principal au module de communication de chaque serveur multimédia secondaire 20, 30, etc. Le serveur multimédia secondaire peut alors émettre alors des flux sortants D', E' et F' comprenant, voire correspondant complètement, le flux agrégé S. Dans un deuxième cas, le module de communication 15 du serveur multimédia principale 10 ne retourne pas le flux agrégé S tel quel aux différents serveurs multimédia secondaires 20,30, comme cela est plus particulièrement le cas avec le premier mode de réalisation illustré ci-après à la figure 4. Dans cet autre cas, le module de mixage global 13 est arrangé pour fournir, à chaque serveur multimédia secondaire, un flux intermédiaire sortant T'. En particulier, un flux intermédiaire sortant est construit respectivement pour chaque serveur multimédia secondaire associé au serveur multimédia principal 10. Un tel flux intermédiaire sortant T' comprend ainsi le flux agrégé S dans lequel le flux intermédiaire entrant de données T fourni par le serveur multimédia secondaire concerné est retiré. On entend ici par « retiré » le fait que le flux intermédiaire sortant T' ne comprenne pas le flux intermédiaire entrant T, donc qu'il ne comprenne pas les flux entrants individuels E et F constituant ce flux intermédiaire entrant T. lo Un tel retrait peut consister à supprimer ces flux entrants individuels E et F dans le flux agrégé S, par un filtrage numérique laissant passer tous les flux individuels du signal agrégé S à l'exception de ces flux individuels E et F. Cette opération de retrait peut alternativement consister à sélectionner les flux individuels du flux agrégé S différents de ces flux individuels E et F et à construire le flux intermédiaire sortant T' à partir de ces flux 15 individuels. Le module de communication 15 du serveur multimédia principal 10 est alors arrangé pour transmettre le flux intermédiaire sortant T' du module de mixage global 13 du serveur multimédia principal au module de communication 25 du serveur multimédia secondaire 20. 20 Le module de mixage local 21 du serveur multimédia secondaire est alors, pour sa part, arrangé pour obtenir chaque flux de données sortant fourni en sortie du serveur multimédia secondaire (i.e. les flux sortants D', E' et F' dans la figure 1) en mixant le flux intermédiaire sortant T' avec le flux intermédiaire entrant T tel que construit par le module de mixage local 21. 25 On voit bien dans ce dernier cas que, outre les opérations de mixage effectuées par le module de mixage local 21 sur les flux entrants et par le module de mixage global 13 sur les flux sélectionnés, une opération supplémentaire de mixage est effectuée par le module de mixage local 21 avec les flux intermédiaires entrant et sortant afin d'obtenir les flux de données sortants, ce qui permet d'alléger encore plus la charge de travail du 30 serveur multimédia principal. Dans la mesure où chaque flux de données entrant A à F est associé respectivement à un flux de données sortant A' et F', il peut être avantageux de veiller à ce que, pour chaque flux de données sortant D' à F' fourni en sortie du serveur multimédia secondaire, le module de mixage local 21 du serveur multimédia secondaire 35 20 soit arrangé en outre pour retirer de ce flux de données sortant le flux de données en entrant qui lui est associé si ce dernier fait partie des flux entrants sélectionnés par le module de sélection 11. Ainsi, lorsque le flux de données entrant E est sélectionné par le module de sélection 11, ce flux de données entrant E se retrouve dans tous les flux de données sortants A' à F' à l'exception du flux de données sortant E' qui lui est associé. Similairement, lorsque le flux de données entrant F est sélectionné par le module de sélection 11, ce flux de données entrant F se retrouve dans tous les flux de données sortants A' à E', mais pas dans le flux de données sortant F' qui lui est associé. Ceci est particulièrement avantageux dans le cas de flux de données audio où il est inutile de renvoyer à un participant à une téléconférence le son de sa voix. Le serveur multimédia principal 10 peut comprendre en outre un module de mixage local 17 arrangé pour mixer au moins deux flux de données entrants reçus par le serveur multimédia principal lorsque ces flux de données entrants sont sélectionnés par le module de sélection 11, similairement à ce qui est effectué par le module de mixage local 21 d'un des serveur multimédia secondaires. L'utilisation d'un tel module de mixage local 17 au sein du serveur multimédia principal 10 permet d'encore mieux répartir le mixage des différents flux entre plusieurs modules de mixage, et donc de mieux répartir la charge de calcul entre les différents modules 15,17 et 21. Les flux de données entrants et sortants sont présentés selon un format spécifique permettant, d'une part, aux serveurs multimédias d'interagir avec d'autres éléments du réseau lors de la conférence et, d'autre part, d'optimiser la transmission en terme de tailles de données et de résistance aux erreurs de transmission. A titre d'exemple, le protocole TCP peut être employé pour transporter ces flux de données, afin de bien gérer les erreurs de transmission pouvant les affecter. Le traitement interne aux serveurs multimédias n'est pas forcément compatible avec le format spécifiquement employé pour la transmission externe des flux de données et il peut être approprié de convertir les flux de données entrants A-F dans un format approprié au mixage lorsqu'ils sont reçus par l'un des serveurs multimédia et, réciproquement, de convertir les flux de données sortants A'-F' dans un format approprié à la transmission sur un réseau. Pour ce faire, chaque module de mixage local 17, 21, 31 est avantageusement arrangé en outre pour décoder les flux de données entrants A-F dans un format approprié à des opérations de mixage et pour coder les flux de données sortants A'-F' dans un format approprié à la transmission de données. 5 Dans le cas de flux de données audio, un format approprié aux opérations de mixage internes aux serveurs multimédia peut être le format PCM (pour Pulse Code Modulation en anglais) et à le protocole TCP peut être employé pour la transmission des flux de données en dehors des serveurs multimédia. On se réfère maintenant à la figure 2 qui illustre les étapes d'un procédé de mixage réparti de flux de données selon la présente invention. Ce procédé 100 de mixage réparti est mis en oeuvre par un dispositif de mixage réparti tel que décrit ci-avant en relation avec la figure 1, c'est-à-dire comprenant un 10 serveur multimédia principal 10 et au moins un serveur multimédia secondaire 20. Ce procédé 100 comprend une étape 110 de réception d'au moins un flux de données entrant (par exemple trois flux de données entrants A, B, C) dans le serveur multimédia principal 10 et d'au moins un flux de données entrants (par exemple trois flux de données entrants D, E, F) dans le serveur multimédia secondaire . 15 Cette étape 110 peut comprendre avantageusement une sous-étape 115 de décodage des flux de données entrants afin de les convertir d'un format d'origine, approprié à la transmission de données, à un format approprié au mixage de flux de données, comme décrit précédemment, ce qui permet de répartir également l'effort en matière de décodage entre plusieurs serveurs. 20 Le procédé se poursuit par une étape 120 de sélection une pluralité de flux de données (par exemple les flux de données entrants A, B, E, F) parmi les flux de données entrants reçus par les différents serveurs multimédias. Comme évoqué précédemment, cette sélection se fait selon un ou plusieurs critère(s) de sélection, comme par exemple la sélection d'un certain nombre de flux présentant le volume sonore le plus important ou 25 d'un flux arbitraire prédéterminé. Lorsque plusieurs flux de données entrants reçus par le serveur multimédia secondaire sont sélectionnés (dans l'exemple présent, les flux E et F), le procédé se poursuit par une étape 130 de mixage local, par le module de mixage local 21 du serveur multimédia secondaire, de ces flux de données entrants qui sont reçus par le serveur 30 multimédia secondaire 20 et sélectionnés par le serveur multimédia principal 10, afin d'obtenir un flux intermédiaire entrant T qui est envoyé ensuite au module de mixage global 13 du serveur multimédia principal. Dans un mode de réalisation avantageux où le serveur multimédia principal dispose lui aussi d'un module de mixage local 17, une opération similaire peut également être pratiquée au niveau du serveur multimédia principal lors de cette étape 130 de mixage local. Ainsi, lorsque plusieurs flux de données entrants reçus par le serveur multimédia principal sont sélectionnés (dans l'exemple présent, les flux A et B), l'étape 130 de mixage local comprend en outre le mixage, par ce module de mixage local 17, de ces flux de données entrants reçus et sélectionnés par le serveur multimédia principal afin d'obtenir un flux intermédiaire entrant lui aussi envoyé par la suite au module de mixage global 13 du serveur multimédia principal. Le procédé se poursuit alors par une étape 140 de mixage global des flux de données sélectionnés, au moyen notamment du flux intermédiaire entrant T, dans le serveur multimédia principal afin d'obtenir un flux agrégé S comprenant l'ensemble des flux de données sélectionnés au cours de l'étape 120 de sélection. Ce mixage global utilise donc tout flux intermédiaire entrant généré localement par un des modules de mixage local d'un serveur multimédia secondaire (ou du serveur multimédia principal quand il dispose d'un tel module) lorsqu'une pluralité de flux de données entrants peuvent être mixés localement. Une fois le flux agrégé S obtenu, le procédé se termine alors par une étape 150 de fourniture d'au moins un flux de données sortant en sortie du serveur multimédia principal (par exemple les flux de données sortants A', B', C' associés respectivement aux flux d'entrée A, B, C) et au moins un flux de données sortant en sortie du serveur multimédia secondaire (par exemple les flux de données sortants D', E', F' associés respectivement aux flux d'entrée D, E, F), ces différents flux de données sortants étant obtenus à partir du flux agrégé S. Cette étape 150 peut comprendre avantageusement une sous-étape 155 de codage des flux de données sortants afin de les convertir d'un format d'origine, plus approprié au mixage de flux de données, à un format externe, plus approprié à la transmission des flux de données comme décrit précédemment, ce qui permet de répartir également l'effort en matière de codage entre plusieurs serveurs. Dans un premier mode de réalisation adapté à la diffusion d'un même flux vers différents participants, le flux de données agrégé S obtenu lors de l'étape 140 est directement transmis, tel quel, au serveur multimédia secondaire afin de permettre la fourniture, lors de l'étape 150, de(s) flux de données sortant(s) (ici, les flux D', E', F') comprenant, voire correspondant complètement, à ce flux de données agrégé S. Dans un autre mode de réalisation, le flux de données agrégé S n'est pas directement transmis du serveur multimédia principal au serveur multimédia secondaire, mais un flux intermédiaire sortant T' est généré lors de l'étape de mixage global 140, pour chaque serveur multimédia secondaire, à partir de ce flux de données agrégé S auquel on retire le flux intermédiaire entrant T reçu du serveur multimédia secondaire en question. Dans cet autre mode de réalisation, une sous-étape supplémentaire 151 de mixage local est alors effectuée lors de l'étape 150, au niveau du serveur multimédia secondaire, afin de mixer le flux intermédiaire sortant T' avec le flux intermédiaire entrant T pour obtenir localement le flux agrégé S. Ceci permet de distribuer encore plus l'effort de mixage entre les différents serveurs. Durant cette sous-étape 151 de mixage local, il est également possible de retirer, pour chaque flux de données sortant, le flux de données entrant qui lui est associé (i.e. le flux entrant A pour le flux sortant A', etc.) lors que ce dernier fait partie des flux sélectionnés, ce qui est particulièrement approprié aux conférences audio. On se réfère maintenant à la figure 3 qui illustre un premier mode de réalisation du dispositif de mixage réparti selon la présente invention. Dans ce premier mode de réalisation, les flux de données sont des flux vidéo et ce dispositif de mixage est un dispositif de mixage vidéo plus particulièrement adapté aux vidéoconférences. Ce dispositif comprend un serveur multimédia principal 10', similaire au serveur multimédia principal 10 décrit précédemment, ainsi qu'un serveur multimédia secondaire 20' similaire au serveur multimédia secondaire 20 décrit précédemment. Le serveur multimédia principal 10' comprend ainsi un module de mixage vidéo global 13' (similaire au module de mixage global 13), un module de mixage vidéo local 17' (similaire au module de mixage local 17) ainsi qu'un module de communication et de sélection 15', lequel correspond aux modules de communication 15 et de sélection 11 précédemment décrits. Le serveur multimédia secondaire 20' comprend, pour sa part, un module de mixage vidéo local 21' ainsi qu'un module de communication et de sélection 25', similaires respectivement aux modules 21 et 25 décrits ci-avant. Le serveur multimédia principal 10' reçoit trois flux vidéo entrants A, B, C sur trois ports d'entrée distincts attribués respectivement à un participant distinct, et retourne trois flux vidéo sortants A', B', C' attribués respectivement à chacun de ces participants (et donc associés respectivement à un flux vidéo entrant) sur trois ports de sortie distincts. Similairement, le serveur multimédia secondaire 20' reçoit trois flux vidéo entrants D, E, F sur trois ports d'entrée distincts attribués respectivement à un participant distinct, et retourne trois flux vidéo sortants E', D', F' attribués respectivement à chacun de ces participants (et donc associés respectivement à un flux vidéo entrant) sur trois ports de sortie distincts. Ainsi, l'ensemble du dispositif illustré à la figure 3 est capable de gérer une vidéoconférence comptant six participants. Dans les faits, le module de communication et de sélection 25' utilise un critère de sélection (à titre d'exemple, la sélection de quatre flux vidéo dont les flux audio associés présentent le plus fort volume sonore, ou la sélection de quatre flux vidéo conditionnée à l'ordre d'arrivée des participants dans une conférence vidéo, ou bien encore la sélection d'un flux vidéo dont le flux audio associé présente un volume sonore dépassant un certain seuil indicatif de l'activité du participant ou la sélection de flux vidéo indicatifs d'un mouvement) pour sélectionner quatre flux vidéos parmi les six reçus, et éventuellement décodés dans un format approprié au mixage de flux. Ici les flux A, B, E et F sont sélectionnés à titre d'exemple. Dans la mesure où chaque serveur reçoit une pluralité de flux vidéo entrants sélectionnés, les modules de mixage local respectifs de ces serveurs opèrent un mixage local sur les flux vidéo entrants sélectionnés que ces serveurs reçoivent. En d'autres termes, le module 17' mixe les flux A et B afin d'obtenir un flux intermédiaire entrant U (où U=A+B) et le module 21' mixe les flux E et F afin d'obtenir un flux intermédiaire entrant T (où T=E+F). Le flux intermédiaire T est ensuite transmis par le module de communication 25' au module de communication et de contrôle 15' qui se charge de le transmettre au module de mixage global 13', lequel reçoit par ailleurs le flux intermédiaire U obtenu par le module de mixage local 17'. Le module de mixage global 13' peut alors mixer les différents flux entrants qu'il reçoit, c'est-à-dire les flux intermédiaire T et U dans le cas présent, afin d'obtenir un flux vidéo agrégé S comprenant l'ensemble des flux entrants sélectionnés (où S=T+T'=A+B+E+F). Une fois le flux agrégé S obtenu, il est diffusé à l'ensemble des ports de sortie des serveurs multimédia 10' et 20'. En ce qui concerne le serveur multimédia principal 10', cette diffusion revient à fournir respectivement, sur chacun des trois ports de sortie, les flux vidéo de sortie A', B', C' comprenant, ou correspondant intégralement, au flux vidéo agrégé S. Sur la figure 3, le flux agrégé S est de fait directement fourni sur les trois ports de sortie du serveur 10", après avoir éventuellement été encodé avec un format approprié à la transmission de données. En ce qui concerne le serveur multimédia secondaire 20', cette diffusion revient à transmettre le flux agrégé S du module de contrôle et de communication 15' au module de contrôle et de communication 25', avant d'en obtenir les flux vidéo de sortie D', E', F' à fournir respectivement sur les trois ports de sortie du serveur 20', ces flux vidéo comprenant, ou correspondant intégralement, au flux vidéo agrégé S. Ici aussi, sur la figure 3, le flux agrégé S est de fait directement fourni sur les trois ports de sortie du serveur 20', après avoir éventuellement été encodé avec un format approprié à la transmission de données. Dans le domaine de la vidéo, les opérations de mixage évoquées précédemment peuvent consister à mixer les flux de données vidéo au sein d'une mosaïque présentant simultanément les flux vidéos sélectionnées (ici une mosaïque de 4 images de même taille). Ainsi, le module de mixage local 17' mixe les flux entrants A, B de façon à les faire apparaître dans les coins opposés en haut à droite et en bas à gauche d'une mosaïque de 4 images, et le module de mixage local 21' mixe les flux entrants E, F de façon à les faire apparaître dans les autres coins opposés, en haut à gauche et en bas à droite d'une mosaïque de 4 images similaire. L'emplacement attribué à chaque flux de données entrant sélectionné dans la mosaïque peut être défini au préalable au moyen du module de contrôle et de sélection 15' du serveur principal et communiqué au module de contrôle et de commande 25' du serveur secondaire afin que ce module instruise le module de mixage local 21' en conséquence. Avec les flux de données entrants sélectionnés ainsi mixé, le module de mixage global 13' n'a plus qu'à superposer les flux intermédiaires ainsi formé afin d'obtenir un flux agrégé S dont la présentation visuelle correspond à une mosaïque de 4 images correspondant aux flux A, B, E, F qui peut être diffusé en sortie vers les 6 participants à la vidéoconférence. La disposition de la mosaïque peut prendre diverses formes utilisant un ou plusieurs critère(s) de sélection. Ainsi, en reprenant le principe d'une mosaïque de 4 images, une image peut être réservée à un participant sélectionné comme étant obligatoire visible par un statut particulier, tandis que les trois autres images peuvent être utilisées pour afficher en temps réel les images correspondant aux participants parlant le plus fort dans leur micro, par exemple. On se réfère maintenant à la figure 4 qui illustre un deuxième mode de réalisation du dispositif de mixage réparti selon la présente invention. Dans ce deuxième mode de réalisation, les flux de données sont des flux audio et le dispositif de mixage est un dispositif de mixage audio plus particulièrement adapté aux conférences audio. Ce dispositif de mixage peut également être un dispositif de mixage audio/vidéo, auquel cas la figure 4 illustre plus spécifiquement le fonctionnement en audio d'un tel dispositif, que ce soit par exemple lors d'une conférence audio seulement ou audio/vidéo. Ici, contrairement au mode de réalisation précédent concernant les vidéoconférences, le flux agrégé S correspondant aux flux de données entrants sélectionnés n'est pas directement diffusé à l'ensemble des participants, mais est modifié de façon spécifique, pour chaque participant, afin d'éviter qu'un même participant reçoive un flux sortant comprenant le flux entrant qu'il envoie au dispositif, si celui-ci est sélectionné, ce qui engendrerait des phénomènes d'échos délétères. A ce titre, ce dispositif comprend un serveur multimédia principal 10", similaire au serveur multimédia principal 10 décrit précédemment, ainsi qu'un serveur multimédia secondaire 20" similaire au serveur multimédia secondaire 20 décrit précédemment. Le serveur multimédia principal 10" comprend un module de mixage audio global 13" (similaire au module de mixage global 13), un module de mixage audio local 17" (similaire au module de mixage local 17), ainsi qu'un module de communication et de sélection 15", lequel correspond aux modules de communication 15 et de sélection 11 précédemment décrits. Le serveur multimédia secondaire 20" comprend, pour sa part, un module de mixage audio local 21" ainsi qu'un module de communication et de sélection 25", respectivement similaires aux modules 21 et 25 décrits ci-avant. Ici, les modules de mixage audio locaux 17" et 21" comprennent respectivement des moyens de mixage préliminaire 18" et 22" qui sont arrangés pour mixer les flux audio entrants sélectionnés par le module de communication et de sélection 15", afin d'obtenir des flux entrants intermédiaires pouvant être utilisés par le module de mixage audio global 13" pour obtenir le flux agrégé S. Les modules de mixage audio locaux 17" et 21" comprennent également respectivement des deuxièmes moyens de mixage final 19" et 23- qui sont arrangés pour fournir en sortie les flux de données sortants à partir du flux intermédiaire sortant T' et de certains flux de données entrants sélectionnés. Ici encore, le serveur multimédia principal 10" reçoit trois flux audio entrants A, B, C sur trois ports d'entrée distincts attribués respectivement à un participant distinct, et retourne trois flux audio sortants A', B', C' attribués respectivement à chacun de ces participants (et donc associés respectivement à un flux vidéo entrant) sur trois ports de sortie distincts. Similairement, le serveur multimédia secondaire 20" reçoit trois flux audio entrants D, E, F sur trois ports d'entrée distincts attribués respectivement à un participant distinct, et retourne trois flux audio sortants E',D',F' attribués respectivement à chacun de ces participants (et donc associés respectivement à un flux vidéo entrant) sur trois ports de sortie distincts. Dans les faits, le module de communication et de sélection 25" utilise un critère de sélection, tel que de ceux évoqués précédemment, pour sélectionner quatre flux audio parmi les six reçus, et éventuellement décodés dans un format approprié au mixage de lo flux. A titre d'exemple, le serveur multimédia secondaire peut envoyer un message contenant des informations au sujet des niveaux sonore des flux audio entrants D, E, F afin que le module de communication et de sélection 25", lequel a par ailleurs directement accès aux niveaux sonores des flux audio entrants A, B, C, puisse sélectionner les 4 flux 15 entrants présentant les niveaux sonores les plus élevés, ici les flux A, B, E et F à titre d'exemple. Ces informations sur les niveaux sonores peuvent obtenir par le biais d'un élément spécifique calculant la puissance sonore des flux audio entrants lors de leur réception, après leur décodage par exemple. 20 Chaque serveur recevant une pluralité de flux audio entrants sélectionnés, les modules de mixage local préliminaires respectifs de ces serveurs opèrent un mixage local sur les flux audio entrants sélectionnés que ces serveurs reçoivent. En d'autres termes, le module 18" mixe les flux A et B afin d'obtenir un flux intermédiaire entrant U (où U=A+B) et le module 22" mixe les flux E et F afin d'obtenir un flux intermédiaire entrant T (où 25 T=E+F). Le flux intermédiaire T est ensuite transmis par le module de communication 25" au module de communication et de contrôle 15" qui se charge de le transmettre au module de mixage audio global 13", lequel reçoit par ailleurs le flux intermédiaire U obtenu par le module de mixage local préliminaire 18". 30 Le module de mixage audio global 13" peut alors mixer les différents flux entrants intermédiaires qu'il reçoit, c'est-à-dire les flux intermédiaire T et U dans le cas présent, afin d'obtenir un flux audio agrégé S comprenant l'ensemble des flux entrants sélectionnés (où S=T+T'=A+B+E+F). Une fois le flux agrégé S obtenu, un flux intermédiaire sortant est construit, par le 16 module de mixage global 13", pour chaque serveur en prenant le flux vidéo agrégé S et en retirant le flux intermédiaire U reçu du serveur en question. Ainsi, en ce qui concerne le serveur multimédia principal 10", un flux intermédiaire sortant U" est construit à partir du flux agrégé S auquel on retire les éléments du flux intermédiaire entrant U reçu du module de mixage local préliminaire 18". En d'autres termes, le flux intermédiaire sortant U" vérifie U"=S-U, c'est-à-dire U"=E+F dans l'exemple de la figure 4. En ce qui concerne le serveur multimédia secondaire, un flux intermédiaire sortant T" est construit à partir du flux agrégé S auquel on retire les éléments du flux intermédiaire entrant T reçu du module de mixage local préliminaire 22". En d'autres termes, le flux intermédiaire sortant T" vérifie T"=S-T, c'est-à-dire T"=A+B dans l'exemple de la figure 4. Les flux intermédiaires sortants respectifs sont ensuite transmis aux modules de mixage final respectifs des serveurs, afin de servir à l'obtention des flux de données sortants. Le flux intermédiaire sortant U" est donc transmis directement au module de mixage final 19" tandis que le flux intermédiaire sortant T" est transmis, grâce au module de communication et de sélection 15" et au module de communication et de contrôle 25", au module de mixage final 23". Le module de mixage final 19" construit alors les différents flux audio de sorties A', B', C' à fournir en sortie du serveur multimédia principal 10" en utilisant le flux intermédiaire sortant U" et les flux de données entrants sélectionnés A et B, mais en veillant à retirer, pour chaque flux de sortie A', B', C', le flux entrant de données qui lui est associé. En d'autres termes, le premier flux audio sortant A' vérifie A'=U'+(A+B)-A, c'est-à- dire A'=B+E+F dans l'exemple de la figure 4, le deuxième flux audio sortant B' vérifie B'=U'+(A+B)-B, c'est-à-dire B'=A+E+F dans l'exemple de la figure 4, et le troisième flux audio sortant C' vérifie C'=U'+(B+A), c'est-à-dire C'=A+B+E+F=S dans l'exemple de la figure 4. Similairement, le module de mixage final 23" construit les différents flux audio de sorties D', E', F' à fournir en sortie du serveur multimédia secondaire 20" en utilisant le flux intermédiaire sortant T"' et les flux de données entrants sélectionnés E et B, mais en veillant à retirer, pour chaque flux de sortie D', E', F', le flux entrant de données qui lui est associé. En d'autres termes, le premier flux audio sortant D' vérifie D'=T'+(E+F), c'est-à-dire D'=A+B+E+F=S dans l'exemple de la figure 4, le deuxième flux audio sortant E' vérifie E'=T'+(E+F)-E, c'est-à-dire E'=A+B+F dans l'exemple de la figure 4, et le troisième flux audio sortant F' vérifie F'=U'+(E+F), c'est-à-dire F'=A+B+E dans l'exemple de la figure 4. Ainsi, les différents flux audio sortants comprennent tous les flux audio entrants sélectionnés, à l'exception éventuelle du flux audio entrants correspondant au flux audio sortants concerné, et ce au moyen d'opérations de mixage réparties entre différents modules de mixage eux-mêmes distribués au sein de différents serveurs multimédias. Bien entendu, l'invention n'est pas limitée aux exemples de réalisation ci-dessus décrits et représentés, à partir desquels on pourra prévoir d'autres modes et d'autres formes de réalisation, sans pour autant sortir du cadre de l'invention. lo En particulier, les différents modules utilisés par la présente invention sont indiqués comme étant séparés fonctionnellement sur les figures mais peuvent très bien être intégrés ensemble, au sein d'un même processeur de traitement par exemple, lors de leur réalisation physique. De plus, par souci de concision, les relations entre un serveur multimédia principal 15 et un seul serveur multimédia secondaire ont été décrites sur les figures 3 et 4. Il est cependant évident que l'invention couvre le cas où un nombre quelconque de serveur multimédia secondaires sont connectés à un même serveur multimédia principal. Plus ce nombre est important, plus les opérations de mixage, de décodage et de codage de flux de données seront réparties, et plus l'invention sera efficace. 20 En particulier, la présente invention permet d'offrir un système évolutif permettant de s'adapter à l'augmentation du nombre de participants potentiels à une téléconférence. Si ce nombre évolue et dépasse les capacités d'un dispositif de mixage réparti selon la présente invention, il suffit de rajouter un ou plusieurs serveur(s) multimédia secondaire(s) dans le dispositif et de les connecter au serveur multimédia principal afin d'absorber cette 25 augmentation de charge de traitement potentielle, sans avoir à remplacer l'ensemble du dispositif de mixage, ce qui représente un avantage certain en termes de maintenance et de coût. Par ailleurs, les figures 3 et 4 présentent des modes de réalisation traitant séparément les flux audio et les flux vidéo. Il est cependant bien évidemment possible de 30 combiner le traitement des deux types de flux au sein d'un même dispositif de mixage réparti disposant d'un serveur principal connecté à un ou plusieurs serveur(s) secondaire(s), ces serveurs comprenant aussi bien des modules de mixage audio que des modules de mixage vidéo. REVENDICATIONS1. Dispositif de mixage réparti de flux de données comprenant un serveur multimédia principal (10), apte à recevoir au moins un flux de données entrant (A, B, C) et à fournir en sortie au moins un flux de données sortant (A', B', C'), et au moins un serveur multimédia secondaire (20), apte à recevoir au moins un flux de données entrant (D,E, F) et à fournir en sortie au moins un flux de données sortant (D', E', F'), le serveur multimédia principal comprenant un module de sélection (11) arrangé pour sélectionner une pluralité de flux de données (A,B, E, F) parmi les flux de données entrants et un module de mixage global (13) arrangé pour mixer les flux de données sélectionnés afin d'obtenir un flux agrégé (S); le serveur multimédia secondaire comprenant un module de mixage local (21) arrangé pour mixer au moins deux flux de données entrants (E, F), reçus par le serveur multimédia secondaire et sélectionnés par le module de sélection du serveur multimédia principal, afin d'obtenir un flux intermédiaire entrant (T) apte à être utilisé par le module de mixage global du serveur multimédia principal afin d'obtenir le flux agrégé. 2. Dispositif de mixage réparti selon la revendication 1, caractérisé en ce que les serveurs multimédia principal et secondaire comprennent respectivement un module de communication (15,25) arrangés pour transmettre, du module de sélection au serveur multimédia secondaire, un message désignant les flux de données entrants reçus par le serveur multimédia secondaire qui sont sélectionnés par le module de sélection et pour transmettre le flux intermédiaire entrant (T) du module de mixage local du serveur multimédia secondaire au module de mixage global du serveur multimédia principal. 3. Dispositif de mixage réparti selon la revendication 2, dans lequel les flux de données de sorties comprennent le flux agrégé (S), caractérisé en ce que le module de communication du serveur multimédia principal est arrangé pour transmettre le flux agrégé du module de mixage global du serveur multimédia principal au module de communication de chaque serveur multimédia secondaire. 4. Dispositif de mixage réparti selon la revendication 2, caractérisé en ce que, pour chaque serveur multimédia secondaire :le module de mixage global est arrangé pour fournir un flux intermédiaire sortant de données (T') comprenant le flux agrégé dans lequel le flux intermédiaire entrant de données (T) fourni par le serveur multimédia secondaire est retiré, le module de communication du serveur multimédia principal est arrangé pour transmettre le flux agrégé du module de mixage global du serveur multimédia principal au module de communication du serveur multimédia secondaire, et le module de mixage local du serveur multimédia secondaire est arrangé pour obtenir chaque flux de données sortant fourni en sortie du serveur multimédia secondaire en mixant le flux intermédiaire sortant de données (T') avec le flux intermédiaire entrant de données (T). 5. Dispositif de mixage réparti selon la revendication 4, dans lequel chaque flux de données entrant est associé à un flux de données sortant, caractérisé en ce que, pour chaque flux de données sortant fourni en sortie du serveur multimédia secondaire, le module de mixage local du serveur multimédia secondaire est arrangé pour retirer dudit flux de données sortant le flux de données en entrant qui lui est associé. 6. Dispositif de mixage réparti selon l'une des revendications 1 à 5, caractérisé en ce que le serveur multimédia principal comprend en outre un module de mixage local (17) arrangé pour mixer au moins deux flux de données entrants reçus par le serveur multimédia principal lorsque lesdits flux de données entrant sont sélectionnés par le module de sélection. 7. Dispositif de mixage réparti selon l'une des revendications 1 à 6, caractérisé en ce chaque module de mixage local (15) est arrangé en outre pour décoder les flux de données entrants et pour coder les flux de données sortants. 8. Procédé de mixage réparti de flux de données, mis en oeuvre par un dispositif de mixage réparti comprenant un serveur multimédia principal et au moins un serveur multimédia secondaire, le procédé comprenant les étapes consistants à : recevoir au moins un flux de données entrant (A, B, C) dans le serveur multimédia principal et au moins un flux de données entrants (D, E, F) dans le serveur multimédia secondaire ;sélectionner une pluralité de flux de données (A, B,E, F) parmi les flux de données entrants ; lorsque plusieurs flux de données entrants reçus par le serveur multimédia secondaire sont sélectionnés, mixer lesdits flux de données entrants reçus par le serveur multimédia secondaire et sélectionnés dans le serveur multimédia secondaire, afin d'obtenir un flux intermédiaire entrant de données (T), mixer les flux de données sélectionnés, au moyen du flux intermédiaire entrant de données (T), dans le serveur multimédia principal afin d'obtenir un flux agrégé (S); et fournir au moins un premier flux de données sortant (A', B') en sortie du serveur multimédia principal et au moins un deuxième flux de données sortant (E', F') en sortie du serveur multimédia secondaire, lesdits flux de données sortants étant obtenus à partir du flux agrégé. 9. Procédé de mixage réparti selon la revendication 8, caractérisé en outre par les étapes consistant à, pour chaque serveur multimédia secondaire : obtenir un flux intermédiaire (T') sortant de données comprenant le flux agrégé dans lequel le flux intermédiaire entrant de données (T) fourni par le serveur multimédia secondaire est retiré, transmettre ledit flux intermédiaire sortant de données audio du serveur multimédia principale au serveur multimédia secondaire, et obtenir chaque flux de données sortant fourni en sortie du serveur multimédia secondaire en mixant le flux intermédiaire sortant de données (T') avec le flux intermédiaire entrant de données (T). 10. Procédé de mixage réparti selon la revendication 9, dans lequel chaque flux de données entrant est associé à un flux de données sortant, caractérisé en ce que, pour chaque flux de données sortant fourni en sortie du serveur multimédia secondaire, le flux de données entrant associé au flux de données sortant est retiré dudit flux de données sortant. 11. Procédé de mixage réparti selon l'un des revendications 8 à 10, caractérisé en ce que l'étape de réception des flux de données entrants comprend le décodage desdits flux de données entrants et l'étape de fourniture des flux de données sortantscomprend le codage desdits flux de données sortants. 12. Dispositif ou procédé de mixage réparti selon l'une des revendications précédentes, caractérisé en ce que le dispositif de mixage est un dispositif de mixage de flux de données vidéo et les flux de données entrants et sortants sont des flux de données vidéo. 13. Dispositif ou procédé de mixage réparti selon l'une des revendications précédentes, caractérisé en ce que le dispositif de mixage est un dispositif de mixage de flux de données audio et les flux de données entrants et sortants sont des flux de données audio. 14. Dispositif ou procédé de mixage réparti selon la revendication précédente, caractérisé en ce que la sélection des flux de données entrants comprend la sélection d'un nombre prédéfini de flux de données entrants présentant le niveau sonore le plus élevé parmi l'ensemble des flux de données entrants. 15. Dispositif ou procédé de mixage réparti selon l'une des revendications précédentes, caractérisé en ce que la sélection des flux de données entrants comprend la sélection d'un flux de données entrant prédéterminé.