FR3054393B1 - Pilotage de dispositifs multimedia connectes - Google Patents

Pilotage de dispositifs multimedia connectes Download PDF

Info

Publication number
FR3054393B1
FR3054393B1 FR1657074A FR1657074A FR3054393B1 FR 3054393 B1 FR3054393 B1 FR 3054393B1 FR 1657074 A FR1657074 A FR 1657074A FR 1657074 A FR1657074 A FR 1657074A FR 3054393 B1 FR3054393 B1 FR 3054393B1
Authority
FR
France
Prior art keywords
wireless
multimedia
bluetooth
circuit
wireless multimedia
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Active
Application number
FR1657074A
Other languages
English (en)
Other versions
FR3054393A1 (fr
Inventor
Thomas GIRARDIER
Julien GOUPY
Bertrand FATUS
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Google LLC
Original Assignee
Tap Sound System SAS
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Priority to FR1657074A priority Critical patent/FR3054393B1/fr
Application filed by Tap Sound System SAS filed Critical Tap Sound System SAS
Priority to PCT/EP2017/068278 priority patent/WO2018015459A1/fr
Priority to CN201780045037.8A priority patent/CN109565662B/zh
Priority to KR1020197001972A priority patent/KR20190034206A/ko
Priority to EP17182172.1A priority patent/EP3273620B1/fr
Priority to CN202211458391.2A priority patent/CN115942288A/zh
Priority to JP2019524517A priority patent/JP7246307B2/ja
Priority to US15/655,551 priority patent/US10158985B2/en
Publication of FR3054393A1 publication Critical patent/FR3054393A1/fr
Application granted granted Critical
Publication of FR3054393B1 publication Critical patent/FR3054393B1/fr
Priority to JP2022143417A priority patent/JP7426448B2/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04WWIRELESS COMMUNICATION NETWORKS
    • H04W4/00Services specially adapted for wireless communication networks; Facilities therefor
    • H04W4/80Services using short range communication, e.g. near-field communication [NFC], radio-frequency identification [RFID] or low energy communication
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04BTRANSMISSION
    • H04B10/00Transmission systems employing electromagnetic waves other than radio-waves, e.g. infrared, visible or ultraviolet light, or employing corpuscular radiation, e.g. quantum communication
    • H04B10/11Arrangements specific to free-space transmission, i.e. transmission through air or vacuum
    • H04B10/114Indoor or close-range type systems
    • H04B10/1141One-way transmission
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L12/00Data switching networks
    • H04L12/02Details
    • H04L12/16Arrangements for providing special services to substations
    • H04L12/18Arrangements for providing special services to substations for broadcast or conference, e.g. multicast
    • H04L12/189Arrangements for providing special services to substations for broadcast or conference, e.g. multicast in combination with wireless systems
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04MTELEPHONIC COMMUNICATION
    • H04M1/00Substation equipment, e.g. for use by subscribers
    • H04M1/72Mobile telephones; Cordless telephones, i.e. devices for establishing wireless links to base stations without route selection
    • H04M1/724User interfaces specially adapted for cordless or mobile telephones
    • H04M1/72403User interfaces specially adapted for cordless or mobile telephones with means for local support of applications that increase the functionality
    • H04M1/72409User interfaces specially adapted for cordless or mobile telephones with means for local support of applications that increase the functionality by interfacing with external accessories
    • H04M1/72412User interfaces specially adapted for cordless or mobile telephones with means for local support of applications that increase the functionality by interfacing with external accessories using two-way short-range wireless interfaces
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/40Client devices specifically adapted for the reception of or interaction with content, e.g. set-top-box [STB]; Operations thereof
    • H04N21/43Processing of content or additional data, e.g. demultiplexing additional data from a digital video stream; Elementary client operations, e.g. monitoring of home network or synchronising decoder's clock; Client middleware
    • H04N21/4302Content synchronisation processes, e.g. decoder synchronisation
    • H04N21/4307Synchronising the rendering of multiple content streams or additional data on devices, e.g. synchronisation of audio on a mobile phone with the video output on the TV screen
    • H04N21/43072Synchronising the rendering of multiple content streams or additional data on devices, e.g. synchronisation of audio on a mobile phone with the video output on the TV screen of multiple content streams on the same device
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/40Client devices specifically adapted for the reception of or interaction with content, e.g. set-top-box [STB]; Operations thereof
    • H04N21/43Processing of content or additional data, e.g. demultiplexing additional data from a digital video stream; Elementary client operations, e.g. monitoring of home network or synchronising decoder's clock; Client middleware
    • H04N21/436Interfacing a local distribution network, e.g. communicating with another STB or one or more peripheral devices inside the home
    • H04N21/4363Adapting the video or multiplex stream to a specific local network, e.g. a IEEE 1394 or Bluetooth® network
    • H04N21/43637Adapting the video or multiplex stream to a specific local network, e.g. a IEEE 1394 or Bluetooth® network involving a wireless protocol, e.g. Bluetooth, RF or wireless LAN [IEEE 802.11]
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04RLOUDSPEAKERS, MICROPHONES, GRAMOPHONE PICK-UPS OR LIKE ACOUSTIC ELECTROMECHANICAL TRANSDUCERS; DEAF-AID SETS; PUBLIC ADDRESS SYSTEMS
    • H04R1/00Details of transducers, loudspeakers or microphones
    • H04R1/10Earpieces; Attachments therefor ; Earphones; Monophonic headphones
    • H04R1/1091Details not provided for in groups H04R1/1008 - H04R1/1083
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04RLOUDSPEAKERS, MICROPHONES, GRAMOPHONE PICK-UPS OR LIKE ACOUSTIC ELECTROMECHANICAL TRANSDUCERS; DEAF-AID SETS; PUBLIC ADDRESS SYSTEMS
    • H04R3/00Circuits for transducers, loudspeakers or microphones
    • H04R3/12Circuits for transducers, loudspeakers or microphones for distributing signals to two or more loudspeakers
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04RLOUDSPEAKERS, MICROPHONES, GRAMOPHONE PICK-UPS OR LIKE ACOUSTIC ELECTROMECHANICAL TRANSDUCERS; DEAF-AID SETS; PUBLIC ADDRESS SYSTEMS
    • H04R5/00Stereophonic arrangements
    • H04R5/04Circuit arrangements, e.g. for selective connection of amplifier inputs/outputs to loudspeakers, for loudspeaker detection, or for adaptation of settings to personal preferences or hearing impairments
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04SSTEREOPHONIC SYSTEMS 
    • H04S7/00Indicating arrangements; Control arrangements, e.g. balance control
    • H04S7/30Control circuits for electronic adaptation of the sound field
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04SSTEREOPHONIC SYSTEMS 
    • H04S7/00Indicating arrangements; Control arrangements, e.g. balance control
    • H04S7/30Control circuits for electronic adaptation of the sound field
    • H04S7/301Automatic calibration of stereophonic sound system, e.g. with test microphone
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04SSTEREOPHONIC SYSTEMS 
    • H04S7/00Indicating arrangements; Control arrangements, e.g. balance control
    • H04S7/30Control circuits for electronic adaptation of the sound field
    • H04S7/308Electronic adaptation dependent on speaker or headphone connection
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04WWIRELESS COMMUNICATION NETWORKS
    • H04W56/00Synchronisation arrangements
    • H04W56/004Synchronisation arrangements compensating for timing error of reception due to propagation delay
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04RLOUDSPEAKERS, MICROPHONES, GRAMOPHONE PICK-UPS OR LIKE ACOUSTIC ELECTROMECHANICAL TRANSDUCERS; DEAF-AID SETS; PUBLIC ADDRESS SYSTEMS
    • H04R2420/00Details of connection covered by H04R, not provided for in its groups
    • H04R2420/07Applications of wireless loudspeakers or wireless microphones

Abstract

La description se rapporte notamment à un dispositif (DEV) de pilotage de dispositifs multimédia sans fil (SPK1, SPK2, SPKN) comprenant un circuit de communication sans fil (BC), agencé pour recevoir depuis chaque dispositif multimédia sans fil un identifiant de dispositif multimédia sans fil. Le dispositif (DEV) comprend un circuit d'accès (DBC) à une base de données (DB) de dispositifs multimédia sans fil, agencé pour obtenir à partir de ladite base de données, les caractéristiques de chaque dispositif multimédia sans fil dont le circuit de communication sans fil a reçu un identifiant. Le dispositif (DEV) comprend un circuit de séparation (SEC) d'un flux multimédia principal en autant de flux multimédia séparés que le circuit de communication sans fil a reçu d'identifiants de dispositifs multimédia sans fil. Le dispositif (DEV) comprend un circuit d'attribution (AC) de chaque flux multimédia séparé à un dispositif multimédia sans fil respectif. Le dispositif (DEV) comprend un circuit de synchronisation (SYC) des flux multimédia séparés en fonction de caractéristiques des dispositifs multimédia sans fil dont le circuit de communication sans fil a reçu un identifiant. La description se rapporte également à un procédé de pilotage de dispositifs multimédia sans fil, à un programme d'ordinateur agencé pour mettre en œuvre un tel procédé ainsi qu'à un support de stockage stockant un tel programme d'ordinateur.

Description

PILOTAGE DE DISPOSITIFS MULTIMEDIA CONNECTES
La description a notamment pour objet un dispositif de pilotage dedispositifs multimédia connectés, en particulier d'enceintes connectées,également appelées enceintes sans fil.
Il est de plus en plus courant de connecter un dispositif source(ordinateur, tablette, téléphone portable, etc.) contenant un contenumultimédia à une enceinte sans fil adaptée pour restituer le son du contenumultimédia. Il paraît souhaitable de pouvoir connecter un dispositif source àplusieurs enceintes sans fil, afin d'obtenir un son de meilleur qualité (parexemple un son stéréophonique, voire un son 5.1, ou encore d'autresconfigurations). Mais il est alors souhaitable de synchroniser ces enceintesafin qu'il n'y ait pas de décalage entre le son joué sur deux enceintesdistinctes. Un problématique similaire se pose dans le cas de contenusmultimédia autres qu'audio, par exemple en cas de projection d'une vidéo. Ilpeut s'agir de la retransmission d'un même flux en plusieurs exemplaires,par exemple de la retransmission en direct de la vidéo d'une conférence surplusieurs écrans situés dans une même salle. Il peut également s'agir de laretransmission sur plusieurs écrans de vidéos correspondant à une mêmescène vue de différents points de vue (par exemple dans le cadre d'un jeuvidéo), les vidéos étant alors différentes mais devant être parfaitementsynchronisées.
Lorsque toutes les enceintes connectées utilisées sont issues du mêmefabricant et sont connues du dispositif source, le fabricant peut contrôlertoute la chaîne et peut mettre en place un logiciel de synchronisation.Chaque enceinte peut par exemple communiquer des données telles qu'unpointeur indiquant la prochaine partie d'une mémoire tampon qui sera lue ouque l'état d'une horloge interne au dispositif source, qui peut être agencépour en tirer les conclusions qui s'imposent en déterminant les valeursrelatives des différentes horloges internes et les différentes positions delecture dans les mémoires tampons respectives des différentes enceintes.
Mais lorsqu'un dispositif source se connecte à des enceintes sans fil qu'il neconnaît pas, et a fortiori lorsque ces enceintes sont hétéroclites (issues parexemple de différents fabricants), il est impossible de synchroniser cesenceintes, dont le fonctionnement et les caractéristiques sont inconnus.
Un protocole sans fil couramment utilisé est le protocole Bluetooth.Bluetooth est un standard de communication bien connu de l'homme dumétier, défini depuis 1994 et géré par un groupe d'industriels (le BluetoothSIG) qui en édite des versions successives. La version actuelle est laversion 4.2 et une version 5 vient d'être annoncée. Bluetooth permet unéchange bidirectionnel de données à courte distance (on parle de réseaupiconet, ce qui désigne un réseau couvrant une zone personnelle). Laportée d'un équipement Bluetooth est ainsi limitée à quelques dizaines demètres. Bluetooth utilise des ondes radio qui se situent dans la bande UHF(entre 300 MHz et 3 GHz). Bluetooth vise à simplifier les connexions entreles appareils électroniques en supprimant des liaisons filaires. Bluetoothpermet ainsi remplacer par des communications sans fil les câbles entre undispositif multimédia maître (chaîne Hi-fi, autoradio, ordinateur, tablette,téléphone mobile, etc.) et des dispositifs multimédia cibles tels que desenceintes agencées pour restituer un flux multimédia reçu.
Les enceintes Bluetooth rencontrent un certain succès du fait de leurgrande portabilité.
Cependant, le standard Bluetooth ne permet pas à une puce Bluetoothde transmettre plusieurs flux audio en parallèle à plusieurs dispositifsmultimédia que l'on souhaite synchroniser, si un profil d’échange dedonnées audio dit profil A2DP est utilisé. Ce profil A2DP ne permet pasd'effectuer une transmission point à multipoints synchronisée. Le standardBluetooth indique en effet: "The following restrictions are applied to thisprofile: 1. The profile does not support a synchronized point-to-multipointdistribution." (soit en français: "les restrictions suivantes s'appliquent à ceprofil : 1. ce profil ne supporte pas une distribution point à multipointssynchronisée"). Ainsi, il n'est pas possible en théorie de concevoir undispositif de pilotage synchronisé de dispositifs multimédia Bluetooth, le dispositif de pilotage synchronisé comprenant une seule puce Bluetoothpour piloter plusieurs dispositifs multimédia, car Bluetooth ne le permet pas.
Il a déjà été proposé de créer un dispositif Bluetooth point à multipoints àdestination de plusieurs enceintes. Par exemple, la demande FR2920930,déposée le 6 septembre 2007 et désormais définitivement déchue,proposait un tel dispositif. Mais cette demande ne décrivait pas commentréaliser un tel dispositif, qui paraît impossible au regard du standardBluetooth si l'on n'utilise qu'une puce Bluetooth. L'insuffisance dedescription de cette demande empêche d'en retirer un enseignementpertinent quant à la manière de réaliser une liaison point à multipoints, et afortiori une liaison point à multipoints synchronisée.
Bien que Bluetooth ne le prévoie pas, il serait possible de créer dans unepuce Bluetooth de dispositif de pilotage plusieurs SEPs Source afin depiloter plusieurs dispositifs Bluetooth (au lieu de prévoir dans un circuit depilotage autant de puces Bluetooth qu'il y a de dispositifs Bluetooth àpiloter). Un SEP est un "Stream End Point" (en français, point d'extrémité deflux). Les communications Bluetooth s'effectuent en point à point entre deuxSEPs. Un SEP représente les ressources et les capacités d’un dispositif.Par exemple, un dispositif tel qu'un téléphone portable peut disposer detrois SEPs, l’un représentant ses capacités en tant que récepteur vidéo, unautre représentant ses capacités en tant que récepteur audio avec un codéeSBC et un dernier représentant ses capacités de récepteur audio avec uncodée aptX. Chaque codée doit être associé à un SEP différent de celui ouceux au(x)quel(s) est(sont) associé(s) un(des) autre(s) codec(s), mais unmême codée peut être associé à plusieurs SEPs.
Cependant, dans le cas où les dispositifs Bluetooth sont des dispositifsmultimédia Bluetooth, se pose le problème de synchroniser les signauxtransmis à chacun de ces dispositifs multimédia Bluetooth en A2DP. L'acronyme A2DP signifie "Advanced Audio Distribution Profile", soit enfrançais profil de distribution audio avancé. Le profil A2DP conventionneldéfinit un ensemble de protocoles et procédures pour l’échange de donnéesaudio au travers du protocole Bluetooth entre un dispositif maître (dit
Source) et un dispositif esclave (dit "Sink", terme signifiant "puits" enfrançais et désignant la destination ultime d'un flux, par exemple uneenceinte Bluetooth). Ce profil A2DP est construit à partir de plusieursbriques définies par le standard Bluetooth.
Le profil s'appuie notamment sur des briques bas niveau bien connuesde l'homme du métier. Ces briques comprennent: une brique "Baseband" (mot anglais signifiant "bande de base" enfrançais, la brique Baseband étant identifiée par la référence BB surla figure 1), une brique "LMP" (acronyme de l'anglais "Link Manager Protocol"signifiant protocole de gestion de lien), une brique "L2CAP" (acronyme de l'expression "Logical Link Controland Adaptation Protocol" signifiant protocole de contrôle etd'adaptation de lien logique), une brique "SDP" ("Service Discovery Protocol", soit en français:protocole de découverte de service). Ces briques sont desprotocoles définis dans le standard Bluetooth.
Le profil A2DP s’appuie également sur une couche haut niveau ditecouche applicative (références AASo et AASi sur la figure 1, respectivementpour "Application Audio Source" et "Application Audio Sink", signifiantrespectivement source audio applicative et destination audio applicative). Ils'agit de la couche dans laquelle le dispositif détermine les paramètres detransport et les différents services disponibles. C’est aussi à ce niveauqu'est effectué le choix du codée utilisé pour transmettre les données audio(ce qui peut impliquer un décodage suivi d'un ré-encodage, lorsque le fluxaudio à transmettre est déjà encodé, ce qui est habituellement le cas).
Le profil A2DP s'appuie enfin sur une brique AVDTP (acronyme signifiant"Audio/Video Distribution Transport Protocol" soit: protocole de transport dedistribution audio/vidéo) qui définit les transactions binaires entre desdispositifs Bluetooth pour la mise en place d'un flux et pour la diffusion d'un flux audio et/ou vidéo utilisant L2CAP. Ceci recouvre donc des procéduresd’établissement du flux audio, de négociation des paramètres du flux audioet de transmission des données du flux audio. AVDTP comprend une entitéde signalisation pour la négociation de paramètres de diffusion et une entitéde transport pour gérer le flux lui-même. L’AVDTP définit un protocole detransport des données audio et/ou vidéo. Plus précisément, l’AVDTPs'intéresse au transport de données audio et/ou vidéo entre deux SEPs.
Une limitation imposée par l’AVDTP selon le standard Bluetooth est quelorsque qu’une connexion a été négociée entre deux SEPs, ces deuxderniers doivent être verrouillés l'un à l'autre pour la diffusion du flux. Pardéfaut un SEP connecté refuse toute nouvelle connexion. Sur des produitsBluetooth récents, une fonction dite "social mode" (mode social en français)permet parfois de changer ce comportement par défaut. Mais cette fonction"social mode" qui permet une nouvelle connexion interrompt la connexionen cours. On peut donc être en présence par exemple de deux téléphonesconnectés à une même enceinte Bluetooth. Mais on ne peut mettre enplace plusieurs transports simultanés. Le basculement vers une nouvelleconnexion se fait typiquement par terminaison de la connexion précédentetout en gardant le téléphone précédemment connecté en mémoire. Enconséquence, si l'on n'a qu'un seul et unique SEP audio source sur undispositif Source alors un seul transport AVDTP peut être établi vers undispositif Sink donné à un instant donné, d'après le standard Bluetooth.
La couche L2CAP définit le protocole minimal d’échange de données dela spécification Bluetooth. La couche L2CAP permet notamment lasegmentation et le réassemblage des paquets, le multiplexage et la qualitéde service. C’est à partir de cette couche L2CAP que sont réalisés lesdifférents protocoles de transport (comme l’AVDTP) à la base des différentsprofils Bluetooth (comme l’A2DP). Un canal L2CAP est créé entre un CID("Channel Identifier", signifiant identifiant de canal en français) d'undispositif maître et un CID d'un dispositif esclave, permettant l’échange dedonnées entre ces deux dispositifs. Les canaux L2CAP font chacun l’objetd’un paramétrage permettant notamment de gérer le contrôle des flux dedonnées transitant dans des canaux que L2CAP définit (canaux L2CAP).
Pour cela, différents paramètres peuvent être pris en compteindépendamment pour chaque canal L2CAP, notamment: • Un paramètre FTO ou "Flush Timeout" (expression anglaisesignifiant: délai d'expiration pour la suppression) définit un délai depéremption d'un paquet de données dans une mémoire tampon d'undispositif maître. Ce délai est infini par défaut (mode bloquant), ce quisignifie qu'un paquet transmis qui n'arrive pas à destination est renvoyé tantqu'aucun paquet (le paquet initial ou les paquets renvoyés) n'est pasparvenu à destination. Mais le délai peut aussi être tel qu'il n'y ait jamais deretransmission (si le paramètre "Flush Timeout" est fixé à une valeurappropriée définie par le standard Bluetooth), ce qui revient en quelquesorte à un délai nul. Le délai peut également prendre une valeur finie. Ilexiste par ailleurs une variable booléenne appelée en anglais "flag non-automatically flushable" (signifiant en français: drapeau pas de suppressionautomatique) présente dans les paquets Bluetooth, permettant d’indiquerque le paquet concerné ne peut pas être supprimé automatiquement. • Un paramètre QoS (acronyme de l'expression anglaise "Quality ofservice" signifiant qualité de service) permettant de définir notamment lalatence maximale entre la prise en compte d'un paquet à transmettre dansun canal L2CAP et sa transmission effective. • Des paramètres appelés "Extended Flow features" (signifiantcaractéristiques de flux étendues en anglais), remplaçant et complétant lacombinaison des paramètres "Flush Timeout" et "QOS" précités.
Ces paramètres sont négociés entre la pile Bluetooth d'un dispositifBluetooth maître et la pile Bluetooth d'un dispositif Bluetooth esclave et, endehors des valeurs par défaut, ne sont pas toujours supportés. L2CAP permet la mise en oeuvre de différents modes. Ces modes sontégalement des paramètres des canaux L2CAP, au même titre que lesparamètres "Extended Flow features" ou que le paramètre "Flush Timeout".C’est l’ensemble de ces paramètres (modes compris) qui permet demodifier le contrôle des flux. Chaque mode définit des procédures différentes de gestion des flux de données. Dans le cadre du Bluetoothclassique (dit BR/EDR) cinq modes opératoires sont possibles pour uncanal L2CAP. Ces modes sont: • "Basic Mode" (signifiant mode basique L2CAP en français), • "Flow Control Mode" (signifiant mode contrôle de flux en français), • "Retransmission Mode" (signifiant mode retransmission en français), • "Enhanced Retransmission Mode" (dit "ERTM", et signifiant moderetransmission accrue en français) et • "Streaming Mode" (dit "SM", et signifiant mode de diffusion enfrançais).
Le "Basic Mode" est le mode par défaut et est supporté par toutes lespiles Bluetooth. Il ne requiert aucun paramétrage. Le "Flow Control Mode"envoie des paquets mais n'effectue jamais aucune retransmission despaquets perdus. Cependant, ces paquets (appelés PDUs) sont détectéslorsqu'ils sont perdus, et le "Flow Control Mode" permet la communicationd'un compte rendu listant les paquets perdus. Le "Flow Control Mode" et le"Retransmission Mode" ne peuvent être utilisés que si l’"ERTM" et le "SM"ne sont pas utilisables. Ces deux modes ("Flow Control Mode" et"Retransmission Mode") ne sont pratiquement plus utilisés. L'"ERTM"permet notamment de prendre en compte un nombre maximal donné deretransmissions, une durée maximale donnée pendant laquelle uneretransmission peut intervenir et permet d’identifier les paquets non ou maltransmis. Le "SM" est adapté aux flux de données asynchrones. Il prend encompte un paramètre "Flush Timeout" fini. Du côté du récepteur Bluetooth,si la mémoire tampon est pleine, alors les précédentes données sontécrasées.
Dans le standard Bluetooth, un paramètre appelé "Retransmission andflow control option", ce qui signifie "option de retransmission et de contrôlede flux" permet de choisir un mode. Le standard Bluetooth recommanded’établir des liaisons fiables ("reliable" en anglais) limitant les pertes de données, en utilisant un "Basic Mode" avec un "Flush Timeout" infini, ou surdes piles Bluetooth plus récentes l’"ERTM" avec un "Flush Timeout"quelconque.
En pratique, aucun produit du marché ne propose de fonction de pilotageA2DP point à multipoints synchronisé pour des dispositifs multimédiaBluetooth quelconques. L’invention vise à améliorer la situation. L'invention se rapporte notamment à un dispositif de pilotage dedispositifs multimédia sans fil comprenant: - un circuit de communication sans fil, agencé pour recevoir depuischaque dispositif multimédia sans fil un identifiant de dispositif multimédiasans fil; - un circuit d'accès à une base de données de dispositifs multimédia sansfil, agencé pour obtenir à partir de ladite base de données, lescaractéristiques de chaque dispositif multimédia sans fil dont le circuit decommunication sans fil a reçu un identifiant; - un circuit de séparation d'un flux multimédia principal en autant de fluxmultimédia séparés que le circuit de communication sans fil a reçud'identifiants de dispositifs multimédia sans fil; - un circuit d'attribution de chaque flux multimédia séparé à un dispositifmultimédia sans fil respectif; - un circuit de synchronisation des flux multimédia séparés en fonction decaractéristiques des dispositifs multimédia sans fil dont le circuit decommunication sans fil a reçu un identifiant.
Un tel dispositif est avantageux en ce qu'il est capable, grâce à une basede données de référence, d'extraire des informations pertinentes au sujetdes dispositifs multimédia sans fil auxquelles il est connecté, et de synchroniser lesdits dispositifs multimédia sans fil en fonction de cesinformations.
Le dispositif selon l’invention peut comporter une ou plusieurs descaractéristiques suivantes prises seules ou en combinaison. L'invention se rapporte notamment à un dispositif de pilotage dedispositifs multimédia sans fil dans lequel les caractéristiques de chaquedispositif multimédia sans fil comprennent une latence dudit dispositifmultimédia sans fil, le circuit de synchronisation étant agencé pour décalertemporellement la transmission d'un flux multimédia séparé à destinationd'un dispositif multimédia sans fil en fonction de sa latence. L'invention se rapporte notamment à un dispositif de pilotage dedispositifs multimédia sans fil agencé, lorsqu'un paquet de flux multimédia àdestination d'un dispositif multimédia sans fil est perdu, pour renvoyer leditpaquet de flux multimédia audit dispositif multimédia sans fil, dans lequel,chaque dispositif multimédia sans fil comprenant une mémoire tampon, lecircuit de synchronisation est agencé pour déterminer un taux deremplissage de la mémoire tampon d'au moins un dispositif multimédia sansfil, et pour déterminer une durée maximale pendant laquelle le dispositif depilotage de dispositif multimédia sans fil peut renvoyer un paquet de fluxmultimédia perdu à un dispositif multimédia sans fil en fonction du taux deremplissage de la mémoire tampon de l'au moins un dispositif multimédiasans fil. L'invention se rapporte notamment à un dispositif de pilotage dedispositifs multimédia sans fil comprenant un circuit d'harmonisation des fluxmultimédia séparés en fonction de caractéristiques des dispositifsmultimédia sans fil dont le circuit de communication sans fil a reçu unidentifiant, les caractéristiques de chaque dispositif multimédia sans filcomprenant une réponse fréquentielle dudit dispositif multimédia sans filpour chaque bande de fréquences d'un ensemble de bandes defréquences, le circuit d'harmonisation étant agencé pour ajuster l'amplitudede chaque composante fréquentielle d'un flux multimédia séparé àdestination d'un dispositif multimédia sans fil en fonction de la réponse fréquentielle dudit dispositif multimédia sans fil pour ladite composantefréquentielle. L'invention se rapporte notamment à un procédé de pilotage dedispositifs multimédia sans fil comprenant: une réception, par un circuit de communication sans fil, depuis chaquedispositif multimédia sans fil, d'un identifiant de dispositif multimédia sans fil; une obtention, par un circuit d'accès à une base de données dedispositifs multimédia sans fil, de caractéristiques de chaque dispositifmultimédia sans fil dont un identifiant a été reçu par le circuit decommunication sans fil; une séparation, par un circuit de séparation de flux, d'un flux multimédiaprincipal en autant de flux multimédia séparés que le circuit decommunication sans fil a reçu d'identifiants de dispositifs multimédia sansfil; une attribution, par un circuit d'attribution, de chaque flux multimédiaséparé à un dispositif multimédia sans fil respectif; une synchronisation, par un circuit de synchronisation, des fluxmultimédia séparés en fonction de caractéristiques des dispositifsmultimédia sans fil dont le circuit de communication sans fil a reçu unidentifiant. L'invention se rapporte notamment à un procédé de pilotage dedispositifs multimédia sans fil dans lequel les caractéristiques de chaquedispositif multimédia sans fil comprennent une latence dudit dispositifmultimédia sans fil, et dans lequel le circuit de synchronisation décaletemporellement la transmission d'un flux multimédia séparé à destinationd'un dispositif multimédia sans fil en fonction de sa latence. L'invention se rapporte notamment à un procédé de pilotage dedispositifs multimédia sans fil dans lequel, lorsqu'un paquet de fluxmultimédia à destination d'un dispositif multimédia sans fil est perdu, leprocédé renvoie ledit paquet de flux multimédia audit dispositif multimédia sans fil, et dans lequel, chaque dispositif multimédia sans fil comprenantune mémoire tampon, le circuit de synchronisation détermine un taux deremplissage de la mémoire tampon d'au moins un dispositif multimédia sansfil, et détermine une durée maximale pendant laquelle le dispositif depilotage de dispositifs multimédia sans fil peut renvoyer un paquet de fluxmultimédia perdu à un dispositif multimédia sans fil en fonction du taux deremplissage de la mémoire tampon de l'au moins un autre dispositifmultimédia sans fil. L'invention se rapporte notamment à un procédé de pilotage dedispositifs multimédia sans fil dans lequel un circuit d'harmonisationharmonise des flux multimédia séparés en fonction de caractéristiques desdispositifs multimédia sans fil dont le circuit de communication sans fil areçu un identifiant, les caractéristiques de chaque dispositif multimédia sansfil comprenant une réponse fréquentielle dudit dispositif multimédia sans filpour chaque bande de fréquences d'un ensemble de bandes defréquences, le circuit d'harmonisation ajustant l'amplitude chaquecomposante fréquentielle d'un flux multimédia séparé à destination d'undispositif multimédia sans fil en fonction de la réponse fréquentielle duditdispositif multimédia sans fil pour ladite composante fréquentielle. L'invention se rapporte notamment à un programme d'ordinateurcomprenant une série d'instructions qui, lorsqu'elles sont exécutées par unprocesseur, mettent en oeuvre un procédé selon un mode de réalisation del'invention. L'invention se rapporte notamment à un support de stockage nontransitoire lisible par ordinateur, stockant un programme d'ordinateur selonun mode de réalisation de l'invention. D’autres caractéristiques et avantages de l’invention apparaîtront à lalecture de la description qui va suivre. Celle-ci est purement illustrative etdoit être lue en regard des dessins annexés sur lesquels : - la figure 1 illustre un système comprenant un dispositif selon un mode de réalisation de l'invention ainsi qu'un ensemble d'enceintesBluetooth ; - la figure 2 illustre un procédé selon un mode de réalisation del'invention ; - la figure 3 illustre une technique de synchronisation selon un modede réalisation de l'invention ; - la figure 4 illustre une technique d'harmonisation selon un mode deréalisation de l'invention ; - la figure 5 illustre une technique d'ajustement de l'amplitude desbasses selon un mode de réalisation de l'invention; - la figure 6 illustre un profil A2DP conventionnel ainsi qu'un profilA2DP' selon un mode de réalisation de l'invention agencé pourcommuniquer avec le profil A2DP conventionnel ; - la figure 7 illustre un système comprenant un dispositif selon unmode de réalisation de l'invention ainsi qu'un ensemble d'enceintesBluetooth ; - la figure 8 illustre une variante du système de la figure 7.
Les réalisations suivantes sont des exemples. Bien que la description seréfère à un ou plusieurs modes de réalisation, ceci ne signifie pasnécessairement que chaque élément mentionné dans le cadre d'un modede réalisation ne concerne que ce même mode de réalisation, ou que descaractéristiques de ce mode de réalisation s'appliquent seulement à cemode de réalisation.
La figure 1 illustre un système comprenant un dispositif DEV de pilotaged'enceintes sans fil selon un mode de réalisation de l'invention ainsi qu'unensemble d'enceintes sans fil SPKi, SPK2 et SPKn comprenant chacuneune mémoire tampon respective BUFi, BUF2 et BUFn. Le dispositif DEV comprend un circuit de communication sans fil BC (tel qu'un circuitBluetooth) permettant de communiquer avec les enceintes sans fil SPKi,SPK2 et SPKN et notamment de les identifier. Le dispositif DEV comprendun circuit d'accès DBC à une base de données DB comprenant desinformations (telles que des latences LATi, LAT2 et LATn) sur différentstypes d'enceintes sans fil, informations associées aux identifiants IDi, ID2 etIDn de ces différents types d'enceintes sans fil. Le dispositif DEV comprendun circuit de séparation SEC d'un flux audio principal en autant de flux audioséparés que le dispositif de pilotage a reçu (via son circuit decommunication sans fil) d'identifiants d'enceintes sans fil. Le dispositif DEVcomprend un circuit d'attribution AC de chaque flux audio séparé à uneenceinte sans fil respective. Le dispositif DEV comprend un circuit desynchronisation SYC des flux audio séparés en fonction de caractéristiquesdes enceintes sans fil dont le circuit de communication sans fil a reçu unidentifiant. Le dispositif DEV comprend un circuit d'harmonisation HAC desflux audio séparés en fonction de caractéristiques des enceintes sans fildont le circuit de communication sans fil a reçu un identifiant.
La figure 2 illustre un procédé selon un mode de réalisation de l'invention.
Le procédé comprend une réception REC, par un circuit decommunication sans fil BC, des identifiants IDi, ID2 et IDn d'enceintes sansfil SPKi, SPK2 et SPKN.
Sur la base de ces identifiants IDi, ID2 et IDn, le procédé comprend uneétape d'obtention OBT des paramètres LAT1; LAT2 et LATN associés auxdifférentes enceintes sans fil consistant à transmettre les identifiants reçus àune base de données DB afin d'obtenir en retour les paramètres demandés.
Le procédé comprend alors une étape de séparation SPR d'un flux audioen un nombre de sous-flux audio égal au nombre d'enceintes sans fildétectées (dont le procédé a reçu les identifiants).
Le procédé comprend ensuite une étape ATT d'attribution de chaquesous-flux à une enceinte sans fil respective.
Le procédé comprend enfin une étape de synchronisation SYN,permettant de s'assurer que les sons issus des différents sous-flux sontjoués simultanément par toutes les enceintes sans fil.
Le procédé comprend en l'espèce des étapes supplémentaires.
Il comprend notamment une étape HRM d'harmonisation, durant laquelleil modifie les flux audio envoyés aux enceintes sans fil en fonction descaractéristiques de celles-ci afin de permettre une restitution aussi fiableque possible.
Il comprend aussi, en cas d'erreur de transmission (perte de paquet deflux audio par exemple), une étape de ré-envoi RSND des données perduesou erronées, suivie d'une étape de détermination DET d'un taux deremplissage de mémoire tampon de chaque enceinte sans fil, afin le caséchéant de cesser de renvoyer les données s'il apparaît que c'est inutile. Siles conditions permettent un renvoi, ce renvoi est effectué. Sinon, leprocédé abandonne la procédure de récupération des données qui ont étéperdues, car cela prendrait trop de temps et risquerait de provoquer uneperte de synchronisation.
La figure 3 illustre une technique de synchronisation selon un mode deréalisation de l'invention. Selon cette technique, le dispositif DEV est munid'un microphone MIC lui permettant de capter les signaux acoustiquesambiants. Le dispositif DEV est également agencé pour émettre àdestination de chaque enceinte sans fil un signal h, situé hors du spectreaudible par un être humain mais pouvant être reproduit par l'enceinte sansfil et capté par le microphone MIC, ce signal étant choisi de manière àidentifier l'enceinte sans fil considérée. Chaque enceinte sans fil SPK, reçoitun signal h, qui lui est propre car attribué à elle seule, superposé au fluxaudio. Ainsi le microphone peut-il mesurer le signal émis par toutes lesenceintes sans fil, et en fonction du retard mesuré entre le moment où lesignal a été intégré au flux audio et le moment où ce signal a été détecté, leprocédé peut estimer la désynchronisation éventuelle et la compenser, alors même qu'il n'a aucun accès aux fonctions internes de l'enceinte sans filconsidérée.
Plus précisément, le dispositif DEV est muni d'un banc de filtres FLTR. Al'aide de ces filtres (qui peuvent être numériques ou analogiques), ledispositif DEV peut générer à partir du signal d'entrée un ensemble designaux de sortie dont les spectres respectifs sont compris dans desbandes de fréquence respectives, et ensuite détecter à l'aide de modules dedétection DTC les retards de chaque enceinte sans fil via ces signaux. Lerésultat qui découle de cette détection (retard mesuré) peut faire l'objetd'une combinaison CMB avec l'autre paramètre d'entrée de la fonction CMB(le signal à émettre). Ainsi, lorsque le flux est émis (vers l'enceinte δΡΚ, surla figure 3) après une détection de retard, le signal envoyé à l'enceinte SPK,est déjà resynchronisé en fonction du retard détecté.
Selon une mise en oeuvre possible, le dispositif DEV superpose au signalaudio que représente un flux émis par chaque enceinte sans fil un signal h,de fréquence f, égale à fref+i*df, où fref est une fréquence de référence et dfest un incrément de fréquence, fref et df étant des constantes; et i est lenuméro de l'enceinte sans fil SPKi considérée (recevant un signalsupplémentaire h,). Ce signal h, est par exemple le signal représenté par lafonction t—>sin(2*TT*fi*t). Selon une mise en oeuvre possible, fref se situe audessus du spectre acoustique audible et en dessous de la fréquencemaximale pouvant être générée par les hauts parleurs d'entrée de gammedu marché. L'entier i est par exemple compris entre 0 et le nombred'enceintes moins 1. La fréquence fref est par exemple comprise entre16kHz et 20kHz. Quant à l'incrément de fréquence df, il est par exemplecompris entre 100Hz et 400Hz. Ainsi, on associe par exemple à cinqenceintes des signaux supplémentaires respectifs à 18kHz, 18,2kHz,18,4kHz, 18,6kHz et 18,8kHz.
Chaque signal supplémentaire h, est par exemple émis pendant 300mspuis interrompu pendant 300ms, puis à nouveau émis pendant 300ms, etc.Ceci revient à appliquer une modulation d'amplitude du signalsupplémentaire h, par un signal carré valant alternativement 0 pendant 300ms et 1 pendant 300ms. En effet si le signal supplémentaire h, était émisde façon continue, il serait très difficile de détecter un retard supérieur à lapériode du signal 1/f,, qui est très courte (au maximum 1/18kHz=56ps dansl'exemple des cinq enceintes précité). Dans l'exemple considéré, il estpossible de détecter un retard d'une durée maximale de 2*300ms soit 0,6s.
De façon plus élaborée, chaque signal supplémentaire h, peut être émisde façon continue, mais être modulé en amplitude à basse fréquence parune fonction périodique, strictement positive, et, pour simplifier les calculs,affine par morceaux. Par exemple, chaque signal supplémentaire h, peutêtre modulé en amplitude par une fonction triangle de fréquence 0,1 Hz,variant entre 0,5 et 1. Ainsi, selon l'amplitude du signal supplémentaire h,reçu, il est possible de déterminer le retard (dans l'exemple considéré leretard maximal détecté est un retard de 1/0,1 Hz=10s).
La figure 4 illustre une technique d'harmonisation selon un mode deréalisation de l'invention. En réponse à un identifiant ID reçu d'une enceintesans fil, le procédé consulte la base de donnée DB et extrait le gain(atténuation ou amplification selon que le gain est inférieur ou supérieur à 1)à appliquer (gains G0,i etc.). Au lieu de diffuser directement un signal Xi(t), leprocédé commence par appliquer à ce signal une fonction de fenêtrageWND. Le procédé applique ensuite une transformée de Fourier discrèteDFT, afin de pouvoir appliquer les gains souhaités. Par exemple, le procédéapplique les gains respectifs GOi, Gii, ... Gnî à des portions de spectrerespectives du signal Xi(t). Ces portions de spectre sont par exemple [fmin,fmin+(fmax"fmin)/N[, [fmin+(fmax"fmin)/N, fmin+2 (fmax"fmin)/N[ ... [fmin+(N-1) (fmax" fmin)/N, fmax], où fmin et fmax représentent les fréquences minimale etmaximale du spectre utilisé pour le signal Xi(t). Ensuite, une fois le gainappliqué, le procédé passe à nouveau en domaine temporel en pratiquantune transformé de Fourier inverse iDFT. Bien entendu, les gains appliquéspeuvent être supérieurs à 1 comme ils peuvent être inférieurs à 1. Il peutdonc s'agir d'une amplification au sens strict (gains supérieur à 1) ou d'uneatténuation au sens strict (gain inférieur à 1).
La figure 5 illustre une technique d'ajustement de l'amplitude des bassesselon un mode de réalisation de l'invention. La technique est comparable àcelle de la figure 4, mais elle n'inclut pas l'étape de détection. Aprèsfenêtrage WND et application d'une transformée de Fourrier discrète DFT,le procédé ajuste l'amplitude des basses selon un modèle ne dépendantpas de l'enceinte considérée, puis applique une transformée de Fourrierinverse. Dans l'exemple de la figure 5, le spectre est divisé en deux partiesseulement (basses fréquences et hautes fréquences) et le gain (fixe) n'estdonc appliqué qu'à une seule portion de spectre (la portion dite bassesfréquences). Selon une mise en oeuvre possible, les basses fréquencessont définies comme les fréquences audibles inférieures à 100Hz.
La figure 6 illustre une communication entre un profil A2DP' selon unmode de réalisation de l'invention utilisé par un dispositif maître dit "Source"(qui correspond à un dispositif émettant un flux audio) et un profil A2DPconventionnel utilisé par un dispositif Sink. Le dispositif Sink correspond parexemple à une enceinte Bluetooth, étant entendu qu'une enceinte Bluetoothpeut comprendre plusieurs SEPs Sink (plusieurs SEPs Sink peuvent donccorrespondre à une même enceinte Bluetooth, chaque SEP Sink pouvantalors correspondre notamment à un codée respectif parmi tous les codéessupportés par cette enceinte Bluetooth).
En pratique, les piles Bluetooth des fabricants de puces Bluetoothn’introduisent qu’un seul SEP Source par codée et par puce Bluetooth. Il estdonc impossible de connecter plusieurs dispositifs audio (enceintes parexemple) à un téléphone portable, pour un codée donné.
Le profil A2DP' se distingue précisément du profil A2DP par une briqueAVDTP' utilisée en lieu et place de la brique AVDTP. La brique AVDTP'fournit toutes les fonctions de la brique AVDTP mais en plus permet uneconnexion point à multipoints synchronisée.
La figure 7 illustre un système comprenant au moins trois enceintesBluetooth SPKi, SPK2 et SPKn associées chacune à un SEP Sink respectifSPEs-i, SEPS2, SEPsn (comme évoqué précédemment, chaque enceinteSPKi pourrait être associée à plusieurs SEPs Sink plutôt qu'à un seul SEPSink SEPsî, mais pour simplifier seul le SEP Sink effectivement utilisé estreprésenté). Le système comprend également un dispositif DEV' de pilotaged'enceintes Bluetooth selon une mise en oeuvre possible de l'invention. Ledispositif DEV' comprend une puce Bluetooth BC'. Cette puce Bluetooth BC'stocke un unique SEP USEP l'identifiant. Cette puce Bluetooth BC' établitune liaison point à multipoints LNK' avec les trois enceintes Bluetooth SPKi,SPK2 et SPKN, via des SEP respectifs SEPSi, SEPS2 et SPEsn.
La figure 8 illustre un système comprenant au moins trois enceintesBluetooth SPKi, SPK2 et SPKn associées chacune à un SEP Sink respectifSPEs-i, SEPS2, SEPsn (comme évoqué précédemment, chaque enceinteSPKi pourrait être associée à plusieurs SEPs Sink plutôt qu'à un seul SEPSink SEPsî, mais pour simplifier seul le SEP Sink effectivement utilisé estreprésenté). Le système comprend également un dispositif DEV de pilotaged'enceintes Bluetooth selon une mise en oeuvre possible de l'invention. Ledispositif DEV comprend une puce Bluetooth BC. Cette puce Bluetooth BCstocke au moins trois SEPs SEP1; SEP2 et SEPN qui simulent trois pucesBluetooth distinctes (mais il s'agit de puces Bluetooth virtuelles car enréalité il n'y en a qu'une). La puce Bluetooth BC établit une liaison point àmultipoints LNK avec les au moins trois enceintes Bluetooth SPK1; SPK2 etSPKN, mais du point de vue du standard Bluetooth, cette liaison LNKsemble être un ensemble de trois (au moins) liaisons point à point. En effet,le SEP SEPi est connecté à un SEP SEPsî de l'enceinte SPKi, le SEPSEP2 est connecté à un SEP SEPS2 de l'enceinte SPK2 et le SEP SEPN estconnecté à un SEP SEPsn de l'enceinte SPKN.
Un premier mode de réalisation se rapporte à un dispositif DEV depilotage de dispositifs multimédia sans fil. Les dispositifs multimédia sans fil sont par exemple des enceintes SPKi, SPK2, SPKn. Mais un dispositifmultimédia sans fil peut également être par exemple un téléphone portablecomprenant un haut parleur pouvant faire office d'enceinte et comprenantégalement un écran apte à diffuser une vidéo. Un dispositif multimédia sansfil peut également être une télévision comprenant une interface sans fil telleque WiFi ou Bluetooth, un ordinateur comprenant une carte réseau sans fil(WiFi, Bluetooth, etc.), ou encore une tablette WiFi ou Bluetooth. Ledispositif de pilotage DEV est par exemple un dispositif dédié, ou alors unmodule additionnel optionnel à fixer sur l'un des dispositifs multimédia (parexemple sur l'une des enceintes sans fil). Le dispositif de pilotage DEV peutégalement être, par exemple, un ordinateur, un téléphone portable ouencore une tablette.
Un circuit de communication sans fil BC du dispositif DEV est agencépour recevoir depuis chaque dispositif multimédia sans fil un identifiant dedispositif multimédia sans fil. Ceci compense le fait que les dispositifsmultimédia sont a priori inconnus, en fournissant une identification.L'identifiant ne vise pas nécessairement à reconnaître l'instance dedispositif multimédia sans fil. Il suffit qu'il permette de reconnaître le type dedispositif multimédia sans fil. Ainsi, si plusieurs dispositifs multimédia sansfil sont exactement du même modèle, ils peuvent tous être identifiés par unmême identifiant. Une enceinte Bluetooth (ou plus généralement undispositif Bluetooth) fournit automatiquement un identifiant lorsqu'il seconnecte à un dispositif maître. Il n'est donc pas nécessaire de modifierl'enceinte Bluetooth (une enceinte Bluetooth de l'état de l'art convient pourl'invention).
Le dispositif DEV comprend un circuit d'accès DBC à une base dedonnées DB de dispositifs multimédia sans fil, agencé pour obtenir à partirde ladite base de données, les caractéristiques de chaque dispositifmultimédia sans fil dont le circuit de communication sans fil a reçu unidentifiant. Ces caractéristiques peuvent comprendre notamment lesdifférents protocoles supportés par le dispositif multimédia sans fil, afin quele dispositif de pilotage choisisse le protocole le plus approprié. Unpréalable à la mise en oeuvre du premier mode de réalisation consiste donc à recenser les différents types de dispositifs multimédia sans fil existants etleur identifiant, à déterminer leurs caractéristiques pertinentes, et à lesenregistrer dans une base de données.
Le circuit DEV comprend un circuit de séparation SEC d'un flux audioprincipal en autant de flux multimédia séparés que le circuit decommunication sans fil a reçu d'identifiants de dispositifs multimédia sansfil. Par exemple, le flux multimédia est ou comprend un flux audio principal,et le flux audio principal comprend plusieurs flux distincts multiplexés (parexemple voie stéréo gauche et voie stéréo droite), et la séparation consisteà extraire chacun de ces deux flux. Selon une variante très simple, laséparation consiste à dupliquer en autant d'exemplaires que nécessaire unflux unique qui a été reçu. Mais selon une variante plus complexe, ledispositif DEV est agencé pour recréer à partir d'un flux unique, ou à partirde quelques flux, un nombre plus important de flux. Par exemple le circuitde séparation peut recréer un environnement multi-canal (son 5.1 parexemple) à partir d'un seul canal (par traitement de signal).
Le circuit DEV comprend un circuit d'attribution AC de chaque fluxmultimédia séparé à un dispositif multimédia sans fil respectif. Selon unemise en oeuvre possible, le circuit d'attribution est invoqué en premier, et cen'est qu'une fois les flux attribués que ces flux sont extraits (séparés) du fluxprincipal. Alternativement le circuit DEV commence par séparer les flux àl'aide du circuit de séparation SEC, et dans un deuxième temps il alloue cesflux séparés.
Le circuit DEV comprend un circuit de synchronisation SYC des fluxmultimédia séparés en fonction de caractéristiques des dispositifsmultimédia sans fil dont le circuit de communication sans fil a reçu unidentifiant. Comme expliqué dans la description de la figure 3, cettesynchronisation peut s'appuyer sur des signaux ajoutés et analysés à l'aided'un microphone, mais ceci représente une complexité accrue et un surcoût.D'autres techniques sont également concevables.
Selon un deuxième mode de réalisation, les caractéristiques de chaquedispositif multimédia sans fil SPKi, SPK2, SPKn, d'un dispositif de pilotagede dispositifs multimédia sans fil selon le premier mode de réalisationcomprennent une latence dudit dispositif multimédia. Le circuit desynchronisation SYC est agencé pour décaler temporellement latransmission d'un flux multimédia séparé à destination d'un dispositifmultimédia sans fil en fonction de sa latence. Ce deuxième mode deréalisation supprime l'une des deux causes principales dedésynchronisation, à savoir la différence de latence interne. Lasynchronisation proposée est une synchronisation que l'on peut qualifier destatique, dans la mesure où elle s'appuie sur des caractéristiques statiquestelles que la latence du dispositif multimédia. Cette latence est définie parexemple comme le temps qui s'écoule entre l'instant où le dispositifmultimédia sans fil reçoit un flux et l'instant auquel ce flux est effectivementrestitué par le dispositif multimédia sans fil. Ce temps est fixe pour lesenceintes sans fil. Différents dispositifs multimédia sans fil présententdifférentes latences et la synchronisation statique en tient compte poursupprimer les décalages temporels liés à ces différences de latences.
Une autre cause possible de désynchronisation est liée à la perte deconnexion entre le dispositif de pilotage de dispositifs multimédia sans fil etau moins un dispositif multimédia sans fil. Il s'agit là d'unedésynchronisation que l'on peut qualifier de dynamique dans la mesure oùelle dépend du contexte particulier dans lequel le flux multimédia considéréest restitué (parasites, interférences, introduction d'un objet gênant latransmission sans fil, déplacement d'un dispositif multimédia portable horsdu champ du dispositif de pilotage DEV, etc.). Dans ces circonstances, ledispositif multimédia sans fil qui perd la connexion avec le dispositif depilotage se trouve désynchronisé des autres dispositifs multimédia sans fillorsqu'il retrouve la connexion avec le dispositif de pilotage. En effet, cedispositif multimédia sans fil reçoit en principe ces mêmes paquets perdusalors même qu'en même temps des paquets ultérieurs sont envoyés auxautres dispositifs multimédia sans fil. Afin d'éviter ce type dedésynchronisations, une première technique consiste à ne jamais réémettre les paquets de flux multimédia perdus. Mais dans des circonstances danslesquelles la réémission de tels paquets perdus aurait été possible, cecidégrade inutilement la qualité de la restitution du flux multimédia.Cependant, c'est utile dans certaines circonstances. Par exemple, certainsdispositifs multimédia sans fil ne disposent que de possibilités protocolaireslimitées. Par exemple, ils peuvent supporter un protocole basique ne gérantque l'émission de paquets, et ne vérifiant pas si les paquets émis sontarrivés à destination et sont arrivés intègres, et a fortiori ne tentant pas deréémettre les paquets perdus (ignorant l'existence de pertes de paquets). Ilspeuvent aussi supporter un protocole fiable, qui n'admet pas la moindreperte de paquet (dès qu'une perte ou altération est détectée, le paquet estréémis). Mais un tel protocole fiable est susceptible de bloquer lacommunication si le dispositif multimédia sans fil n'est pas joignable, car iltente à l'infini de réémettre les paquets perdus. Si la base de donnéeindique qu'un dispositif multimédia sans fil ne supporte qu'un protocolebasique et un protocole fiable des types précités, le dispositif de pilotagechoisit selon une mise en oeuvre possible le protocole basique, quitte àprendre le risque de perdre des paquets, afin de préserver lasynchronisation (un paquet désynchronisé est souvent plus gênant qu'uneabsence de paquet).
Selon un troisième mode de réalisation, un dispositif DEV de pilotage dedispositifs multimédia sans fil selon l'un des premier et deuxième modes deréalisation est agencé, lorsqu'un paquet de flux multimédia à destinationd'un dispositif multimédia sans fil est perdu, pour renvoyer ledit paquet deflux multimédia audit dispositif multimédia sans fil. Chaque dispositifmultimédia sans fil comprend une mémoire tampon. Le circuit desynchronisation SYC est agencé pour déterminer un taux de remplissagede la mémoire tampon BUFj, BUF2 et BUFN d'au moins un dispositifmultimédia sans fil SPKi, SPK2, SPKn, et pour déterminer une duréemaximale pendant laquelle le dispositif de pilotage de dispositifs multimédiasans fil peut renvoyer un paquet de flux multimédia perdu à un dispositifmultimédia sans fil en fonction du taux de remplissage de la mémoire tampon de l'au moins un dispositif multimédia sans fil.
Il s'agit là d'une synchronisation dynamique, qui résout le problèmeprécité de perte de connexion. Le dispositif de pilotage tente tout d'abord deretransmettre les paquets éventuellement perdus. Mais s'il n'y parvient pas,au lieu de bloquer le système, le dispositif de pilotage DEV cesse, passéune certaine durée seuil (déterminée dynamiquement), de tenter deretransmettre les données multimédia qui ne parviennent pas à passer. Encontrepartie, il y a potentiellement perte de données (des portions du fluxmultimédia peuvent être définitivement perdues).
Afin de déterminer un taux de remplissage de la mémoire tampon BUFi,BUF2 et BUFN de chaque dispositif multimédia sans fil SPK1; SPK2, SPKN,le dispositif de pilotage DEV estime par exemple le temps de lecture restantsur cette mémoire. Lorsque, à un instant tO, le dispositif de pilotage DEVenvoie une durée T de flux multimédia correspondant à n octets à unpremier dispositif multimédia sans fil, il attend confirmation de la réceptionde ces n octets par ce premier dispositif multimédia sans fil. Le dispositif depilotage considère alors, à un instant t appartenant à [tO; tO+T], qu'ilsubsiste dans la mémoire tampon du premier dispositif multimédia sans filune durée de flux multimédia égale à tO+T-t. Ainsi, à un instant t, ledispositif de pilotage peut, pendant une durée tO+T-t, de tenter de renvoyerdes paquets perdus par un deuxième dispositif multimédia sans fil sansrisquer de bloquer la diffusion du premier dispositif multimédia sans fil. Aubout d'une durée tO+T-t, il faut absolument que le premier dispositifmultimédia sans fil ait reçu une suite du flux multimédia qu'il diffuse. Adéfaut, le premier dispositif multimédia sans fil interromprait sa diffusionfaute de données. Le dispositif de pilotage cesse donc de tenter deréémettre des paquets perdus lorsqu'il détermine selon la méthode précitéequ'une telle réémission serait de nature à bloquer la diffusion d'un autredispositif multimédia sans fil. Le cas échéant, si de la bande passanteredevient disponible alors que le deuxième dispositif multimédia sans fil n'apas fini de jouer le contenu de sa mémoire tampon (d'après une estimationdu type précité), une nouvelle tentative de transmission du paquet perdupeut intervenir.
Grâce à ces dispositions, en présence d'une perte de connexionsuffisamment courte, la diffusion du flux multimédia sur tous les dispositifsmultimédia sans fil reste synchronisée. En cas de perte de connexion troplongue, la diffusion est interrompue sur les dispositifs multimédia sans filaffectés par la perte de connexion, mais la diffusion se poursuitnormalement sur les autres dispositifs multimédia sans fil.
Selon une mise en oeuvre possible, le dispositif de pilotage privilégiel'émission des paquets les plus récents. Lorsque des dispositifs multimédiaayant perdu la connexion avec le dispositif de pilotage retrouvent leurconnexion, ils reçoivent des paquets synchronisés avec les autresdispositifs multimédia, et non les paquets qui ont été perdus auparavant.
Selon un quatrième mode de réalisation, un dispositif de pilotage dedispositifs multimédia sans fil selon l'un des premier au troisième modes deréalisation comprend un circuit d'harmonisation HAC des flux multimédiaséparés en fonction de caractéristiques des dispositifs multimédia sans fildont le circuit de communication sans fil a reçu un identifiant. Lescaractéristiques de chaque dispositif multimédia sans fil comprennent uneréponse fréquentielle dudit dispositif multimédia sans fil pour chaque bandede fréquences d'un ensemble de bandes de fréquences, le circuitd'harmonisation étant agencé pour ajuster l'amplitude de chaquecomposante fréquentielle d'un flux multimédia séparé à destination d'undispositif multimédia sans fil en fonction de la réponse fréquentielle duditdispositif multimédia sans fil pour ladite composante fréquentielle. Parexemple, si la réponse fréquentielle pour la plage de fréquences [1000Hz;2000Hz] est -3dB, l'amplitude du signal transmis au dispositif multimédiasans fil considéré, dans la bande [1000Hz; 2000Hz], peut être amplifiée de3dB afin de compenser. Un flux multimédia peut comprendre descomposantes fréquentielles dans le spectre audible, que l'on peut souhaiterharmoniser à la manière d'un equalizer (terme anglais parfois traduit parégaliseur ou correcteur de timbre). Mais un flux multimédia peut égalementcomprendre, par exemple, des composantes fréquentielles dans le spectre visible, que l'on peut vouloir harmoniser entre différents dispositifsmultimédia sans fil. Par exemple, il peut être souhaitable qu'une mêmevidéo présente notamment les mêmes luminance et chrominanceslorsqu'elle est diffusée sur différents dispositifs multimédia sans fil. Ainsi,lorsque le dispositif de pilotage DEV découvre qu'un dispositif multimédiasans fil consistant en une enceinte sans fil n'est pas très performant dansune certaine bande de fréquences, que cette enceinte atténue plus qu'ellene le devrait, il est possible d'amplifier le signal diffusé dans cette bande defréquences.
Selon un cinquième mode de réalisation, un procédé de pilotage dedispositifs multimédia sans fil comprend une réception REC, par un circuitde communication sans fil, depuis chaque dispositif multimédia sans filSPKi, SPK2, SPKn, d'un identifiant de dispositif multimédia sans fil IDi, ID2,IDN. Selon une mise en oeuvre possible, le circuit de communication sans filest une puce Bluetooth. Selon une mise en oeuvre, le circuit decommunication sans fil est un ensemble composé d'un processeur associéà une mémoire stockant un programme d'ordinateur approprié. Selon uneautre mise en oeuvre, le circuit de communication est une puce électroniquedédiée, qui est par exemple un FPGA ou tout autre circuit approprié, ycompris un circuit ad hoc conçu sur mesure. Selon une variante, le procédéest mis en oeuvre partiellement par une puce électronique dédiée telle queles puces dédiées précitées, et partiellement par un processeur exécutantun programme d'ordinateur approprié.
Le procédé comprend une obtention OBT, par un circuit d'accès à unebase de données DB de dispositifs multimédia sans fil sans fil, decaractéristiques LAT1; LAT2, LATN de chaque dispositif multimédia sans fildont un identifiant IDi, ID2, IDn a été reçu par le circuit de communicationsans fil BC. Selon une mise en oeuvre, le circuit d'obtention est un ensemblecomposé d'un processeur associé à une mémoire stockant un programmed'ordinateur approprié. Selon une autre mise en oeuvre, le circuit d'obtentionest une puce électronique dédiée, qui est par exemple un FPGA ou tout autre circuit approprié, y compris un circuit ad hoc conçu sur mesure. Selonune variante, l'invention est mise en oeuvre partiellement par une puceélectronique dédiée telle que les puces dédiées précitées, et partiellementpar un processeur exécutant un programme d'ordinateur approprié.
Le procédé comprend une séparation SPR, par un circuit de séparationde flux, d'un flux multimédia principal en autant de flux multimédia séparésque le circuit de communication sans fil a reçu d'identifiants de dispositifsmultimédia sans fil. Selon une mise en oeuvre, le circuit de séparation SPRest un ensemble composé d'un processeur associé à une mémoire stockantun programme d'ordinateur approprié. Selon une autre mise en oeuvre, lecircuit de séparation est une puce électronique dédiée, qui est par exempleun FPGA ou tout autre circuit approprié, y compris un circuit ad hoc conçusur mesure. Selon une variante, l'invention est mise en oeuvre partiellementpar une puce électronique dédiée telle que les puces dédiées précitées, etpartiellement par un processeur exécutant un programme d'ordinateurapproprié.
Le procédé comprend une attribution ATT, par un circuit d'attribution, dechaque flux multimédia séparé à un dispositif multimédia sans fil respectif.Selon une mise en oeuvre, le circuit d'attribution ATT est un ensemblecomposé d'un processeur associé à une mémoire stockant un programmed'ordinateur approprié. Selon une autre mise en oeuvre, le circuitd'attribution est une puce électronique dédiée, qui est par exemple unFPGA ou tout autre circuit approprié, y compris un circuit ad hoc conçu surmesure. Selon une variante, l'invention est mise en oeuvre partiellement parune puce électronique dédiée telle que les puces dédiées précitées, etpartiellement par un processeur exécutant un programme d'ordinateurapproprié.
Le procédé comprend une synchronisation SYN, par un circuit desynchronisation, des flux multimédia séparés en fonction de caractéristiquesdes dispositifs multimédia sans fil dont le circuit de communication sans fil areçu un identifiant. Selon une mise en oeuvre, le circuit de synchronisationest un ensemble composé d'un processeur associé à une mémoire stockant un programme d'ordinateur approprié. Selon une autre mise en oeuvre, lecircuit de synchronisation est une puce électronique dédiée, qui est parexemple un FPGA ou tout autre circuit approprié, y compris un circuit adhoc conçu sur mesure. Selon une variante, l'invention est mise en oeuvrepartiellement par une puce électronique dédiée telle que les puces dédiéesprécitées, et partiellement par un processeur exécutant un programmed'ordinateur approprié.
Selon une mise en oeuvre possible, le circuit de communication sans fil,le circuit de d'accès, le circuit de séparation, le circuit d'attribution et lecircuit de synchronisation partagent un même processeur, voire une mêmepuce mémoire (dans ce dernier cas, la puce mémoire peut stocker àdifférentes adresses des programmes d'ordinateurs spécifiques à chacunde ces circuits).
Selon un sixième mode de réalisation, les caractéristiques de chaquedispositif multimédia sans fil d'un procédé de pilotage d'enceintes sans filselon le cinquième mode de réalisation, comprennent une latence LAT1;LAT2, LATn dudit dispositif multimédia sans fil SPK1; SPK2, SPKN. Le circuitde synchronisation décale temporellement la transmission d'un fluxmultimédia séparé à destination d'un dispositif multimédia sans fil enfonction de sa latence.
Selon un septième mode de réalisation un procédé de pilotaged'enceintes sans fil selon l'un des cinquième et sixième modes deréalisation est agencé pour que lorsqu'un paquet de flux multimédia (parexemple un paquet de flux audio) à destination d'un dispositif multimédiasans fil est perdu, le procédé renvoie (étape RSND) ledit paquet de fluxmultimédia audit dispositif multimédia sans fil. Chaque dispositif multimédiasans fil comprenant une mémoire tampon, le circuit de synchronisationdétermine DET un taux de remplissage de la mémoire tampon d'au moinsun dispositif multimédia sans fil, et détermine une durée maximale pendant laquelle le dispositif de pilotage de dispositifs multimédia sans fil peutrenvoyer un paquet de flux multimédia perdu à un dispositif multimédia sansfil en fonction du taux de remplissage de la mémoire tampon de l'au moinsun dispositif multimédia sans fil.
Selon un huitième mode de réalisation, un procédé de pilotage dedispositifs multimédia sans fil selon l'un des cinquième au septième modesde réalisation harmonise, avec un circuit d'harmonisation HRM, des fluxmultimédia séparés en fonction de caractéristiques des dispositifsmultimédia sans fil dont le circuit de communication sans fil a reçu unidentifiant. Les caractéristiques de chaque dispositif multimédia sans filcomprennent une réponse fréquentielle dudit dispositif multimédia sans filpour chaque bande de fréquences d'un ensemble de bandes defréquences. Le circuit d'harmonisation ajuste l'amplitude de chaquecomposante fréquentielle d'un flux multimédia séparé à destination d'undispositif multimédia sans fil en fonction de la réponse fréquentielle duditdispositif multimédia sans fil pour ladite composante fréquentielle.
Selon une mise en oeuvre, le circuit d'harmonisation est un ensemblecomposé d'un processeur associé à une mémoire stockant un programmed'ordinateur approprié. Selon une autre mise en oeuvre, le circuitd'harmonisation est une puce électronique dédiée, qui est par exemple unFPGA ou tout autre circuit approprié, y compris un circuit ad hoc conçu surmesure. Selon une variante, l'invention est mise en oeuvre partiellement parune puce électronique dédiée telle que les puces dédiées précitées, etpartiellement par un processeur exécutant un programme d'ordinateurapproprié.
Selon une mise en oeuvre possible, le circuit de communication sans fil,le circuit de d'accès, le circuit de séparation, le circuit d'attribution, le circuitde synchronisation et le circuit d'harmonisation partagent un mêmeprocesseur, voire une même puce mémoire (dans ce dernier cas, la pucemémoire peut stocker à différentes adresses des programmes d'ordinateursspécifiques à chacun de ces circuits).
Selon un neuvième mode de réalisation, un programme d'ordinateurcomprend une série d'instructions qui, lorsqu'elles sont exécutées par unprocesseur, mettent en oeuvre un procédé selon l'un des cinquième auhuitième modes de réalisation. Ce programme d'ordinateur est par exempleécrit dans un langage bas niveau tel qu'un langage assembleur, ou dans unlangage de plus haut niveau et davantage portable, tel que le langage C.Selon une mise en oeuvre possible, le programme d'ordinateur est divisé enplusieurs modules. Selon une mise en oeuvre possible, les différentsmodules sont tous écrits dans le même langage, par exemple le langage Cou l'assembleur. Selon une alternative, certains modules sont écrits dansdes langages différents, par exemple certains modules sont écrits enlangage C, d'autres en langage assembleur. Selon une mise en oeuvrepossible, tous les modules sont stockés dans une même mémoire. Selonune alternative, certains modules sont stockés dans des mémoiresdistinctes.
Selon un dixième mode de réalisation, un support de stockage nontransitoire lisible par ordinateur stocke un programme d'ordinateur selon leneuvième mode de réalisation.
Selon une mise en oeuvre possible, le support de stockage est une cléUSB, une carte SD ou une carte micro SD. Selon une variante, le supportde stockage est une carte mémoire quelconque. Selon une autre variante,le support de stockage est une puce mémoire qui a vocation à être montéesur un circuit électronique. Il s'agit par exemple d'une mémoire EEPROM,ROM, ou encore Flash. Selon une variante possible, le support de stockageest un support magnétique (par exemple du type disque dur) ou encoreoptique (par exemple du type CD ou DVD).
Un onzième mode de réalisation se rapporte à un dispositif (par exempleDEV ou DEV') de pilotage de dispositifs multimédia Bluetooth, le dispositif de pilotage comprenant une puce Bluetooth (par exemple BC ou BC').
Les dispositifs multimédia Bluetooth sont par exemple des enceintesBluetooth. Par enceinte Bluetooth, on désigne tout dispositif Bluetoothrenfermant au moins un haut-parleur agencé pour diffuser un sonperceptible simultanément par plusieurs êtres humains. Il peut s'agir parexemple d'une enceinte acoustique pour chaîne Hi-fi, ou encore d'untéléphone portable muni d'un haut parleur prévu pour être audible parplusieurs personnes, dans la mesure où c'est ce haut parleur qui est pilotépar le dispositif de pilotage. Plus précisément, on entend par "sonperceptible simultanément par plusieurs êtres humains" un son perceptible(au sens où son contenu peut-être distingué) par tout être humain dotéd'une ouïe normale placé à une distance d'au moins un mètre de l'enceinte,en présence d'un bruit ambiant correspondant à celui d'une conversation,soit environ 40 dB SPL. Un casque audio, un écouteur intra auriculaire ouencore un écouteur de téléphone ne sont donc pas des enceintes au sensde la présente demande, puisqu'il faut les appliquer dans ou contre l'oreillepour percevoir les sons émis.
Selon une mise en oeuvre possible, les dispositifs multimédia Bluetoothsont des écouteurs Bluetooth. De tels écouteurs sont par exempleconnectés avec une télévision et nécessitent d’être synchronisés entre euxen plus d’être synchronisés avec un flux vidéo diffusé sur la télévision.
Chacun des dispositifs multimédia Bluetooth peut être, plusgénéralement, une télévision Bluetooth, un écran Bluetooth, un téléphoneportable Bluetooth, un ordinateur portable ou de bureau Bluetooth, unetablette Bluetooth, une chaîne Hi-fi Bluetooth, une autoradio Bluetooth, ouencore un baladeur numérique Bluetooth.
Le dispositif de pilotage DEV ou DEV' est par exemple une télévisionBluetooth, un écran Bluetooth, un téléphone portable Bluetooth, unordinateur portable ou de bureau Bluetooth, une tablette Bluetooth, unechaîne Hi-fi Bluetooth, une autoradio Bluetooth, ou encore un baladeurnumérique Bluetooth.
La puce Bluetooth (par exemple BC ou BC' sur les figures) est agencéepour mettre en oeuvre un profil A2DP modifié (noté A2DP' sur la figure 1) defaçon à créer une liaison (par exemple LNK ou LNK') point à multipointsdepuis ladite puce Bluetooth vers plusieurs dispositifs multimédia BluetoothSPKi, SPK2, SPKn. La puce Bluetooth du dispositif de pilotage est agencéepour diffuser plusieurs flux multimédia liés les uns aux autres à destinationchacun d'un dispositif multimédia Bluetooth respectif parmi lesdits plusieursdispositifs multimédia Bluetooth en s'appuyant sur un usage non bloquantde Bluetooth. Par flux multimédia "liés les uns aux autres", on entend queles flux multimédia se rapportent à une même situation (par exemple unemême scène, ou une même musique), mais peuvent néanmoins êtredifférents. Par exemple, les flux multimédia peuvent être six flux audiocorrespondant chacun à l'un des canaux 5.1 d'un enregistrement audio, ouencore peuvent être plusieurs vidéos d'une même scène, filmées en mêmetemps mais de points de vue différents. Le dispositif de pilotage est parexemple agencé pour émettre un flux audio (ou plus généralementmultimédia) via une liaison sans fil de type Bluetooth. Par exemple, il stockeou relaie un flux multimédia comprenant au minimum un canal audio. Parexemple, il stocke des fichiers MP3, ou se connecte à un serveur (tel qu'unserveur Youtube®) à partir duquel il télécharge un flux qu'il retransmet aufur et à mesure, simultanément, via Bluetooth, à plusieurs dispositifsmultimédia Bluetooth.
En s'appuyant sur un usage non bloquant de Bluetooth au lieu d'unusage bloquant utilisé par défaut en A2DP, le dispositif de pilotage évite despertes de synchronisation. Par usage non bloquant de Bluetooth, on entendtout paramétrage de Bluetooth (par un mode Bluetooth et/ou par d'autresparamètres Bluetooth) qui évite de bloquer la puce Bluetooth du dispositifde pilotage de dispositifs multimédia Bluetooth. Un usage non bloquant deBluetooth est donc un usage de Bluetooth qui évite de forcer la puceBluetooth à réémettre un paquet non reçu tant que celui-ci n'a pas été reçu,et qui évite également de la forcer à réémettre un tel paquet au-delà d'uninstant auquel au moins un dispositif multimédia Bluetooth n'a plus dedonnées en mémoire tampon à cause par exemple des tentatives de réémission infructueuses du paquet, qui monopolisent les communicationsBluetooth. Un usage non bloquant correspond à un ensemble deparamètres (FTO, QoS, Mode, Extended Flow features) et non uniquementà un mode (tel que le mode SM) au sens du standard Bluetooth. Il s'agit parexemple du mode "Flow Control" ou de tout mode pour lequel le paramètre"Flush Timeout" est fixé selon le standard Bluetooth pour empêcher touteretransmission. Un usage bloquant est a contrario un usage qui conduit parexemple à réémettre des données tant qu’elles ne sont pas reçues, ou quiconduit à réémettre des données alors qu'un dispositif multimédia Bluetoothdavantage prioritaire attendait lui aussi des données et ne les a pas reçuesà cause dudit usage (il est alors bloqué). L'usage bloquant est utilisé dansl'art antérieur car il évite des pertes occasionnelles de données (en cas decoupure prolongée pendant une durée supérieure à un seuil donné l'usagebloquant ne permet pas d'éviter des pertes de données). Dans l'hypothèseoù l'on adapte Bluetooth pour permettre une diffusion point à multipoints,employer un usage non bloquant évite le risque qu'un dispositif multimédiaBluetooth devienne inaccessible et empêche toute transmission de donnéesà l'ensemble des dispositifs multimédia Bluetooth. Un dispositif multimédiaBluetooth peut devenir inaccessible par exemple parce qu'il a été déplacéhors de portée de la puce Bluetooth du dispositif de pilotage DEV, ou parcequ'il contient une batterie qui s'est vidée, ou pour toute autre raison.
Les paramétrages L2CAP par défaut de Bluetooth rappelés enintroduction ne conviennent pas à la mise en place d’une liaisonsynchronisée A2DP d’un dispositif Bluetooth maître vers plusieursdispositifs Bluetooth esclaves. En effet si l’un des liens établis entre lemaître et un esclave (par exemple une enceinte) est configuré avec un"Flush Timeout" infini, et si l’enceinte sort du champ Bluetooth ou si elle estalimentée par une batterie qui s’est vidée, alors les données serontcontinuellement renvoyées vers celle-ci qui, ne les recevant jamais,bloquera toute autre transmission de données vers les autres dispositifsesclaves (les données étant envoyées de façon séquentielle). Par ailleurs,si le paramètre "Flush Timeout" est défini par défaut, le renvoi des donnéessur une enceinte pourrait entraîner un décalage temporel entre celle-ci et les autres. En effet, au moment où une enceinte sortie du champ Bluetoothdu dispositif Bluetooth maître reviendrait dans ce champ, elle poursuivrait ladiffusion du flux à partir de l'instant auquel elle s'était arrêtée en sortant dece champ.
Selon une mise en oeuvre possible, le dispositif de pilotage de dispositifsmultimédia Bluetooth est agencé pour déterminer automatiquement, à partirdes différentes configurations supportées par les piles Bluetooth desdispositifs multimédia Bluetooth, le paramétrage à adopter pour chaquecanal L2CAP (correspondant à un lien logique entre la puce Bluetooth dudispositif de pilotage d'enceintes Bluetooth et un dispositif multimédiaBluetooth) de façon à garder une liaison synchronisée entre le dispositif depilotage de dispositifs multimédia Bluetooth et les différents dispositifsmultimédias esclaves. Les paramètres L2CAP de chacun des dispositifsmultimédia peuvent être différents (ils peuvent dépendre descaractéristiques de ces dispositifs multimédia, de leur aptitude à supportercertains protocoles, etc.).
Selon une mise en oeuvre possible, le dispositif de pilotage de dispositifsmultimédia Bluetooth est agencé pour configurer l’ensemble des "FlushTimeout" pour les différents canaux L2CAP à la valeur définie par lestandard Bluetooth (à savoir 1, mais cela pourrait varier suivant lesimplémentations) pour qu’aucune retransmission ne soit effectuée. Laliaison ainsi obtenue est non fiable au sens où les erreurs ou pertes detransmission ne sont pas rattrapées, mais assure une synchronisation aprèsperte éventuelle de paquets.
Selon une mise en oeuvre possible, la modification du profil A2DPconsiste à modifier la brique AVDTP utilisée par le profil A2DP, par exemplede l'une des façons indiquées ci-dessous. Afin de réaliser une briqueAVDTP' correspondant à une brique AVDTP modifiée, il est possiblenotamment d'utiliser une implémentation libre telle que l'implémentationdénommée BlueZ (bien connue de l'homme du métier), conçue pour mettreen oeuvre la technologie Bluetooth sur des systèmes d'exploitation de typeLinux, et disponible sous licence GNU GPL. L'implémentation BlueZ est devenue une mise en œuvre Bluetooth de référence pour Linux et a étéintégrée au noyau Linux.
Selon un douzième mode de réalisation, la puce Bluetooth d'un dispositifde pilotage de dispositifs multimédia Bluetooth selon le onzième mode deréalisation est agencée, lorsqu'un paquet de flux multimédia qu'elle atransmis à destination d'un dispositif multimédia Bluetooth est perdu, pourrenvoyer ledit paquet de flux multimédia audit dispositif multimédiaBluetooth. La puce Bluetooth étant agencée pour déterminer un taux deremplissage d'une mémoire tampon d'au moins un dispositif multimédiaBluetooth SPK1; SPK2, SPKN et pour déterminer une durée maximalependant laquelle elle peut renvoyer le paquet de flux multimédia perdu audispositif multimédia Bluetooth en fonction du taux de remplissage de lamémoire tampon de l'au moins un dispositif multimédia Bluetooth.
Selon une mise en œuvre possible, cette durée maximale correspond àla mémoire tampon la moins remplie parmi les mémoires tampon de tousles autres dispositifs multimédia Bluetooth, dont il faut déduire le tempsnécessaire pour transmettre une portion suffisante de flux multimédia. Onne prend alors pas en compte le contenu de la mémoire tampon dudispositif multimédia Bluetooth qui a perdu un paquet.
Selon une autre mise en œuvre, cette durée maximale correspond à lamémoire tampon la moins remplie parmi les mémoires tampon de tous lesdispositifs multimédia Bluetooth (y compris celui qui a perdu le paquet), dontil faut déduire le temps nécessaire pour transmettre une portion suffisantede flux multimédia. En effet, si le dispositif multimédia Bluetooth qui a perdule paquet court le risque d'arriver à court de données de flux multimédia àjouer, il peut être considéré plus approprié d'abandonner la tentative deretransmission du paquet perdu qui de toute façon serait restitué de façonretardée et donc désynchronisée des autres dispositifs multimédiaBluetooth.
Selon une autre mise en œuvre, la puce Bluetooth est agencée pour identifier des dispositifs multimédia Bluetooth pour lesquels il n'est pas utilede vérifier le taux de remplissage de la mémoire tampon. Par exemple, lapuce Bluetooth peut exclure un nombre n de dispositifs multimédiaBluetooth dont elle a alimenté les mémoires tampon en dernier, si elle peuten déduire qu'il existe nécessairement d'autres dispositifs multimédiaBluetooth dont la mémoire tampon est moins remplie et qui vont déterminerla durée maximale précitée.
Selon une autre mise en oeuvre, la puce Bluetooth est agencée pourmémoriser un identifiant du dispositif multimédia Bluetooth dont elle aalimenté la mémoire tampon depuis le plus longtemps. Lorsqu'un paquet estperdu, la puce Bluetooth ne vérifie alors que la mémoire tampon de cedispositif multimédia Bluetooth dont elle a alimenté la mémoire tampondepuis le plus longtemps.
Selon une mise en oeuvre possible, le dispositif de pilotage est agencépour transmettre des portions de flux audio d'environ 14ms (ce quicorrespond à la durée d'un bloc de flux audio encodé par le codée SBC).Selon une mise en oeuvre possible, le dispositif de pilotage pilote quatredispositifs multimédia Bluetooth, et la transmission d'une portion d'environ14ms prend environ 1,3ms. Il faut donc environ 4*1,3ms soit environ 5,2mspour transmettre environ 14ms de flux aux quatre dispositifs multimédiaBluetooth, ce qui laisse environ 14ms-5,2ms soit environ 8,8ms durantlesquelles le dispositif de pilotage peut identifier les paquets mal ou nontransmis et les réémettre.
Selon une mise en oeuvre possible, le dispositif de pilotage de dispositifsmultimédia Bluetooth est agencé pour configurer le "Flush Timeout" dechaque canal L2CAP en fonction de l’état de remplissage des mémoirestampon des dispositifs multimédia Bluetooth, qu'il doit au préalable estimerpar exemple par l'une des méthodes précitées.
Selon une mise en oeuvre possible, la puce Bluetooth d'un dispositif depilotage de dispositifs multimédia Bluetooth selon le onzième mode de réalisation est agencée pour générer un SEP unique pour piloter tous lesdispositifs multimédia Bluetooth. Plus précisément, le profil A2DP du SEPSource (la puce Bluetooth) est modifié, par exemple en substituant unebrique AVDTP conventionnelle par une brique AVDTP' modifiée. Lamodification consiste à supprimer les restrictions empêchant un SEPSource de se connecter à plus d'un SEP Sink. Or le standard Bluetoothn'implique pas de faire vérifier, au niveau d'un SEP Sink, que le SEPSource avec lequel il dialogue ne dialogue pas également avec un autreSEP Sink. Il s'avère que l'on peut donc techniquement, à partir d'un mêmeSEP Source, diffuser des flux multimédia (en particulier audio) versplusieurs SEPs Sink depuis une même puce Bluetooth.
Le standard Bluetooth n'autorisant pas une communication d'un SEPSource à plusieurs SEPs Sinks, la présente mise en oeuvre constitue unesorte d'extension au standard Bluetooth, extension qui ne génère pas dedifficultés dans la mesure où le standard Bluetooth n'est pas prévu pourdétecter une telle extension.
Bien entendu, il est possible de prévoir dans le dispositif de pilotage dedispositifs multimédia Bluetooth plusieurs puces Bluetooth agencéeschacune pour générer un SEP unique pour piloter les dispositifs multimédiaBluetooth gérés respectivement par chacune d'elles. Par exemple, une puceBluetooth numéro 1 pourrait gérer les dispositifs multimédia numéros 1 à 5,une puce Bluetooth numéro 2 pourrait gérer les dispositifs multimédianuméros 6 à 10 et une puce Bluetooth numéro 3 pourrait gérer lesdispositifs multimédia numéros 11 à 15. En effet, le débit maximum d'unepuce Bluetooth limite le nombre de dispositifs multimédia qu'elle peutpiloter, et si le nombre de dispositifs multimédia dépasse un seuil donné,ajouter une puce Bluetooth permet de piloter des dispositifs multimédiasupplémentaires simultanément.
Selon un treizième mode de réalisation, la puce Bluetooth d'un dispositifde pilotage de dispositifs multimédia Bluetooth selon le onzième ou ledouzième mode de réalisation est agencée pour générer plusieurs SEP pour piloter les dispositifs multimédia Bluetooth.
Selon une mise en oeuvre avantageuse, la puce Bluetooth génère unSEP Source distinct pour chaque SEP Sink (correspondant à chaquedispositif multimédia Bluetooth qu'elle doit piloter). Il s'agit là d'unealternative de la mise en oeuvre précitée, dans laquelle la puce Bluetoothest davantage conforme au standard Bluetooth. En effet, on a bien enapparence des liens point à point, et non un lien point à multipoints. Mais ils'agit bien sûr d'un artifice, qui consiste à générer une multiplicité de SEPsSource virtuels dans une même puce Bluetooth pour simuler une multiplicitéde dispositifs Source là où il n'y a en réalité qu'une seule puce Bluetooth.
Bien entendu, il est possible de prévoir dans le dispositif de pilotage dedispositifs multimédia Bluetooth plusieurs puces Bluetooth agencéeschacune pour générer autant de SEPs Source que de dispositifs multimédiaBluetooth gérés respectivement par chacune d'elles. Par exemple, une puceBluetooth numéro 1 pourrait gérer les dispositifs multimédia Bluetoothnuméros 1 à 5 à l'aide de SEPs Source respectifs SEPj à SEP5, une puceBluetooth numéro 2 pourrait gérer les dispositifs multimédia Bluetoothnuméros 6 à 10 à l'aide de SEPs Source respectifs SEP6 à SEPi0 et unepuce Bluetooth numéro 3 pourrait gérer les dispositifs multimédia Bluetoothnuméros 11 à 15 à l'aide de SEPs Source respectifs SEPu à SEP15. Eneffet, le débit maximum d'une puce Bluetooth limite le nombre de dispositifsmultimédia qu'elle peut piloter, et si le nombre de dispositifs multimédiadépasse un seuil donné, ajouter une puce Bluetooth permet de piloter desdispositifs multimédia supplémentaires simultanément. Le nombre de SEPsSource générés par une puce Bluetooth n'influe pas la bande passantedisponible dans cette puce Bluetooth, qui reste la même mais est partagéeentre ces différents SEPs Source. Selon une mise en oeuvre possible, lapuce Bluetooth crée un maximum de 7 SEPs sources afin de gérer lesdispositifs multimédia Bluetooth qu'elle pilote en utilisant un piconet. Unpiconet est un réseau comprenant de 1 à 8 dispositifs Bluetooth, parmilesquels un unique dispositif Bluetooth maître (c'est-à-dire Source) etjusqu'à 7 dispositifs Bluetooth esclaves (c'est-à-dire Sink), comme c'estspécifié par le standard Bluetooth. La limitation à 7 dispositifs Sink par dispositif Source provient de l'adressage Bluetooth qui identifie chaquedispositif Bluetooth esclave à l'aide de trois bits, la combinaison 000 étantréservée à un mode spécifique dénommé « Connectionless Broadcast »(diffusion sans connexion, en anglais).
Selon un quatorzième mode de réalisation, la puce Bluetooth d'undispositif de pilotage de dispositifs multimédia Bluetooth selon l'un desonzième au treizième modes de réalisation est agencée pour piloter jusqu'àcinq dispositifs multimédia Bluetooth, en utilisant un codée SBC. Par "piloterjusqu'à cinq dispositifs multimédia Bluetooth", on entend que quel que soitle flux audio SBC diffusé, il est possible de diffuser ce flux sur cinqenceintes. S'il y a moins de cinq enceintes, c'est a fortiori possible.
Un flux audio stéréo de qualité dite qualité CD est échantillonné à44,1 kHz et échantillonne le signal audio sur 16 bits. A chaque seconde,44100 échantillons de 16 bits sont donc fournis pour la voie gauche et44100 autres échantillons de 16 bits sont fournis pour la voie droite. Ledébit brut d'un tel flux est donc de 44100*2*16 bit/s soit un peu plus de1,4 Mbit/s. Un tel débit est très important, et il est donc utile de lecompresser afin de réduire la bande passante nécessaire lors d'unetransmission, en particulier une transmission Bluetooth dont le débit n'estpas très élevé. Pour effectuer cette compression, on utilise des codées. Lecodée SBC est un codée très simple et très efficace. On entend par efficaceque le codée SBC ne nécessite que très peu de ressources mémoire et deressource processeur pour fonctionner. Ceci est très utile pour les pucesBluetooth, qui sont souvent limitées en mémoire en puissance de calcul. Lecodée SBC est par ailleurs gratuit. Il est également avantageux car trèsrépandu, et assure ainsi une grande interopérabilité. Cependant, il estassez peu performant du point de vue du taux de compression obtenu et dela qualité audio. Le débit binaire d'un flux audio encodé par un codée SBCest au maximum de 372 kbit/s (dans certains cas, SBC génère un débitbinaire plus faible, notamment pour s'adapter à la bande passantedisponible, et permet ainsi de piloter le cas échéant plus de cinq dispositifs multimédia Bluetooth). Mais des codées plus performants existent. Parexemple un codée AAC génère un flux audio compressé d'environ192 kbit/s de qualité sensiblement équivalente à celle d'un flux SBC à372 kbit/s. Les codées apt-X permettent eux aussi des performancesaméliorées (débit plus faible à qualité équivalente), mais ne sont pasgratuits.
La bande passante Bluetooth pour des dispositifs compatibles EDR(acronyme d'origine anglaise signifiant "Enhanced Data Rate" soit débit dedonnées augmenté) comme les enceintes Bluetooth conventionnelles estde 2,1 Mbit/s. Il est ainsi possible de faire passer au minimum cinq fluxencodés par un codée SBC (à 372 kbit/s maximum) dans la bande passantedisponible.
Selon une mise en oeuvre possible, la puce Bluetooth utilise un codéeAAC, ce qui permet en théorie de transmettre dix (quasiment onze) fluxencodés en AAC à 192 kbit/s. Il est néanmoins avantageux, selon une miseen oeuvre possible, de limiter le nombre de flux AAC à sept afin de pouvoirmettre en place un piconet selon le standard Bluetooth (qui limite le nombrede dispositifs esclaves à 7). Selon d'autres alternatives, d'autres codéessont utilisés, et permettent de transmettre jusqu'à sept flux encodés, oumoins si le débit du flux encodé est supérieur à 300 kbit/s (dans ce cas lenombre de flux encodés possibles est égal au rapport de 2100000 par ledébit d'un flux encodé exprimé en bit/s).
Un quinzième mode de réalisation se rapporte à un procédé de pilotagede dispositifs multimédia Bluetooth par une puce Bluetooth. La puceBluetooth met en oeuvre un profil A2DP modifié (noté A2DP') de façon àcréer une liaison point à multipoints depuis ladite puce Bluetooth versplusieurs dispositifs multimédia Bluetooth, la puce Bluetooth diffusantplusieurs flux multimédia liés les uns aux autres à destination chacun d'undispositif multimédia Bluetooth respectif parmi lesdits plusieurs dispositifsmultimédia Bluetooth, en s'appuyant sur un usage non bloquant deBluetooth.
Selon une mise en oeuvre possible, la puce Bluetooth comprend unprocesseur et exécute un programme d'ordinateur adapté pour mettre enoeuvre un profil A2DP' de façon à créer une liaison point à multipointsdepuis ladite puce Bluetooth vers plusieurs dispositifs multimédia Bluetooth,la puce Bluetooth diffusant plusieurs flux multimédia liés les uns aux autresà destination chacun d'un dispositif multimédia Bluetooth respectif parmilesdits plusieurs dispositifs multimédia Bluetooth, en s'appuyant sur unusage non bloquant de Bluetooth.
Selon une mise en oeuvre alternative, c'est un dispositif de pilotage dedispositifs multimédia Bluetooth comprenant ladite puce Bluetooth quicomprend également un processeur et exécute un programme d'ordinateuradapté pour mettre en oeuvre un profil A2DP' de façon à créer une liaisonpoint à multipoints depuis ladite puce Bluetooth vers plusieurs dispositifsmultimédia Bluetooth, la puce Bluetooth diffusant plusieurs flux multimédialiés les uns aux autres à destination chacun d'un dispositif multimédiaBluetooth respectif parmi lesdits plusieurs dispositifs multimédia Bluetooth,en s'appuyant sur un usage non bloquant de Bluetooth.
Dans les deux mises en oeuvre précitées le programme d'ordinateur eststocké dans une mémoire (par exemple de type EEPROM, Flash ou encoreROM). Cette mémoire peut être implantée dans la puce Bluetooth ou dansle dispositif de pilotage de dispositifs multimédia Bluetooth, hors de la puceBluetooth. Selon une variante, le programme d'ordinateur est stocké enpartie dans la puce Bluetooth, et en partie dans le dispositif de pilotage dedispositifs multimédia Bluetooth. Selon une variante, le dispositif de pilotagede dispositifs multimédia Bluetooth et la puce Bluetooth comprennentchacun au moins un processeur distinct, et exécutent chacun une partie duprogramme d'ordinateur, qui est stocké soit en un seul lieu (puce mémoireunique) soit de façon distribuée sur plusieurs puces mémoire (par exempleune puce mémoire de la puce Bluetooth et une puce mémoire du dispositifde pilotage de dispositifs multimédia Bluetooth).
Selon une autre mise en oeuvre, le procédé est mis en œuvre non paspar un programme d’ordinateur mais par une puce électronique dédiée, qui est par exemple un FPGA ou tout autre circuit approprié, y compris uncircuit ad hoc. Selon une variante, le procédé est mis en oeuvrepartiellement par une puce électronique dédiée telle qu'une puce dédiéeprécitées, et partiellement par un processeur exécutant un programmed'ordinateur approprié.
Selon un seizième mode de réalisation, la puce Bluetooth d'un procédéde pilotage de dispositifs multimédia Bluetooth selon le quinzième mode deréalisation, lorsqu'un paquet de flux multimédia que la puce Bluetooth atransmis à destination d'un dispositif multimédia Bluetooth est perdu,renvoie ledit paquet de flux multimédia audit dispositif multimédia Bluetooth,et détermine un taux de remplissage d'une mémoire tampon de chaquedispositif multimédia Bluetooth SPKi, SPK2, SPKn, pour en déduire unedurée maximale pendant laquelle elle peut renvoyer le paquet de fluxmultimédia perdu au dispositif multimédia Bluetooth en fonction du taux deremplissage de la mémoire tampon des dispositifs multimédia Bluetooth.
Selon un dix-septième mode de réalisation, la puce Bluetooth d'unprocédé de pilotage de dispositifs multimédia Bluetooth selon le quinzièmeou le seizième mode de réalisation génère plusieurs SEPs SEP1; SEP2, ...SEPn pour piloter les dispositifs multimédia Bluetooth SPK1; SPK2, ... SPKN.
Selon un dix-huitième mode de réalisation, la puce Bluetooth d'unprocédé de pilotage dispositifs multimédia Bluetooth selon l'un desquinzième au dix-septième modes de réalisation pilote cinq dispositifsmultimédia Bluetooth en utilisant un codée SBC.
Un dix-neuvième mode de réalisation se rapporte à un programmed'ordinateur comprenant une série d'instructions qui, lorsqu'elles sontexécutées par un processeur, mettent en oeuvre un procédé selon l'un des quinzième au dix-huitième modes de réalisation. Ce programmed'ordinateur est par exemple écrit dans un langage bas niveau tel qu'unlangage assembleur, ou dans un langage de plus haut niveau et davantageportable, tel que le langage C. Selon une mise en oeuvre possible, leprogramme d'ordinateur est divisé en plusieurs modules. Selon une mise enoeuvre possible, les différents modules sont tous écrits dans le mêmelangage, par exemple le langage C ou l'assembleur. Selon une alternative,certains modules sont écrits dans des langages différents, par exemplecertains modules sont écrits en langage C, d'autres en langage assembleur.Selon une mise en oeuvre possible, tous les modules sont stockés dans unemême mémoire. Selon une alternative, certains modules sont stockés dansdes mémoires distinctes.
Un vingtième mode de réalisation se rapporte à un support de stockagenon transitoire lisible par ordinateur, stockant un programme d'ordinateurselon le dix-neuvième mode de réalisation. Selon une mise en oeuvrepossible, le support de stockage est une clé USB, une carte SD ou unecarte micro SD. Selon une variante, le support de stockage est une cartemémoire quelconque. Selon une autre variante, le support de stockage estune puce mémoire qui a vocation à être montée sur un circuit électronique.Il s'agit par exemple d'une mémoire EEPROM, ROM, ou encore Flash.Selon une variante possible, le support de stockage est un supportmagnétique (par exemple du type disque dur) ou encore optique (parexemple du type CD ou DVD). L’invention ne se limite pas aux formes de réalisation décrites ci-avant àtitre d’exemples. Les mémoires utilisables couvrent tout type de mémoire.
Les modes de réalisation décrits en relation avec le dispositif de pilotagede dispositifs multimédia sans fil peuvent être transposés aux procédés depilotage de dispositifs multimédia sans fil, ainsi qu’aux programmesd’ordinateur et aux supports de stockage du programme selon des modes de réalisation de l’invention, et réciproquement. De plus, les premier audixième modes de réalisation peuvent être combinés avec les onzième auvingtième modes de réalisation. Par exemple, il est possible de prévoir,dans les onzième au vingtième modes de réalisation, une interrogation debase de données telle que prévue dans le premier mode de réalisation afinde reconnaître les caractéristiques des dispositifs multimédia Bluetooth, parexemple leurs latences. Inversement, il est possible de prévoir, parexemple, que les premier au dixième modes de réalisation mettent enoeuvre un protocole sans fil Bluetooth modifié selon l'une quelconque desmanières énoncées dans les onzième au vingtième modes de réalisation.

Claims (5)

  1. REVENDICATIONS
    1. Dispositif (DEV) de pilotage de dispositifs multimédia sans fil (SPKi,SPK2, SPKN) comprenant: - un circuit de communication sans fil (BC), agencé pour recevoir depuischaque dispositif multimédia sans fil un identifiant de dispositif multimédiasans fil; - un circuit d'accès (DBC) à une base de données (DB) de dispositifsmultimédia sans fil, agencé pour obtenir à partir de ladite base de données,des caractéristiques de chaque dispositif multimédia sans fil dont le circuitde communication sans fil a reçu un identifiant; - un circuit de séparation (SEC) d'un flux multimédia principal en autantde flux multimédia séparés que le circuit de communication sans fil a reçud'identifiants de dispositifs multimédia sans fil; - un circuit d'attribution (AC) de chaque flux multimédia séparé à undispositif multimédia sans fil respectif; - un circuit de synchronisation (SYC) des flux multimédia séparés enfonction des caractéristiques des dispositifs multimédia sans fil obtenues àpartir de la base de données (DB).
  2. 2. Dispositif de pilotage de dispositifs multimédia sans fil selon larevendication 1, dans lequel les caractéristiques de chaque dispositifmultimédia sans fil (SPKt, SPK2, SPKn) comprennent une latence duditdispositif multimédia, le circuit de synchronisation (SYC) étant agencé pourdécaler temporellement la transmission d'un flux multimédia séparé àdestination d'un dispositif multimédia sans fil en fonction de sa latence. 3. Dispositif de pilotage de dispositifs multimédia sans fil selon l'une des revendications précédentes, agencé, lorsqu'un paquet de flux multimédia àdestination d'un dispositif multimédia sans fil est perdu, pour renvoyer leditpaquet de flux multimédia audit dispositif multimédia sans fil, dans lequel,chaque dispositif multimédia sans fil comprenant une mémoire tampon, lecircuit de synchronisation (SYC) est agencé pour déterminer un taux deremplissage de la mémoire tampon (BUFi, BUF2, BUFN) d'au moins undispositif multimédia sans fil (SPKî, SPK2, SPKn), et pour déterminer unedurée maximale pendant laquelle le dispositif de pilotage de dispositifsmultimédia sans fil peut renvoyer un paquet de flux multimédia perdu à undispositif multimédia sans fil en fonction du taux de remplissage de lamémoire tampon de l'au moins un dispositif multimédia sans fil.
  3. 4. Dispositif de pilotage de dispositifs multimédia sans fil selon l'une desrevendications précédentes, comprenant un circuit d'harmonisation (HAC)des flux multimédia séparés en fonction de caractéristiques des dispositifsmultimédia sans fil dont le circuit de communication sans fil a reçu unidentifiant, les caractéristiques de chaque dispositif multimédia sans filcomprenant une réponse fréquentielle dudit dispositif multimédia sans filpour chaque bande de fréquences d'un ensemble de bandes defréquences, le circuit d'harmonisation étant agencé pour ajuster l'amplitudede chaque composante fréquentielle d'un flux multimédia séparé àdestination d'un dispositif multimédia sans fil en fonction de la réponsefréquentielle dudit dispositif multimédia sans fil pour ladite composantefréquentielle. 5. Procédé de pilotage de dispositifs multimédia sans fil comprenant: une réception (REC), par un circuit de communication sans fil, depuischaque dispositif multimédia sans fil (SPKi, SPK2, SPKn), d'un identifiant dedispositif multimédia sans fil (IDi, ID2, IDN); une obtention (OBT), par un circuit d'accès à une base de données (DB)de dispositifs multimédia sans fil, de caractéristiques (LAÏ!, LAT2, LATN) de chaque dispositif multimédia sans fil dont un identifiant (IDi, ID2, IDN) a étéreçu par le circuit de communication sans fil (BC); une séparation (SPR), par un circuit de séparation de flux, d'un fluxmultimédia principal en autant de flux multimédia séparés que le circuit decommunication sans fil a reçu d'identifiants de dispositifs multimédia sansfil; une attribution (ATT), par un circuit d'attribution, de chaque fluxmultimédia séparé à un dispositif multimédia sans fil respectif; une synchronisation (SYN), par un circuit de synchronisation, des fluxmultimédia séparés en fonction des caractéristiques des dispositifsmultimédia sans fil obtenues à partir de la base de données (DB).
  4. 6. Procédé de pilotage de dispositifs multimédia sans fil selon larevendication 5, dans lequel les caractéristiques de chaque dispositifmultimédia sans fil comprennent une latence (LATt, LAT2, LATn) duditdispositif multimédia sans fil (SPK!, SPK2, SPKN), et dans lequel le circuitde synchronisation décale temporellement la transmission d'un fluxmultimédia séparé à destination d'un dispositif multimédia sans fil enfonction de sa latence. 7. Procédé de pilotage de dispositifs multimédia sans fil selon l'une desrevendications 5 et 6, dans lequel, lorsqu'un paquet de flux multimédia àdestination d'un dispositif multimédia sans fil est perdu, le procédé renvoie(RSND) ledit paquet de flux multimédia audit dispositif multimédia sans fil,et dans lequel, chaque dispositif multimédia sans fil comprenant unemémoire tampon, le circuit de synchronisation détermine (DET) un taux deremplissage de la mémoire tampon d'au moins un dispositif multimédia sansfil, et détermine une durée maximale pendant laquelle le dispositif depilotage de dispositifs multimédia sans fil peut renvoyer un paquet de fluxmultimédia perdu à un dispositif multimédia sans fil en fonction du taux de remplissage de la mémoire tampon de l'au moins un dispositif multimédiasans fil.
  5. 8. Procédé de pilotage de dispositifs multimédia sans fil selon l'une desrevendications 5 à 7, dans lequel un circuit d'harmonisation harmonise(HRM) des flux multimédia séparés en fonction de caractéristiques desdispositifs multimédia sans fil dont le circuit de communication sans fil areçu un identifiant, les caractéristiques de chaque dispositifs multimédiasans fil comprenant une réponse fréquentielle dudit dispositif multimédiasans fil pour chaque bande de fréquences d'un ensemble de bandes defréquences, le circuit d'harmonisation ajustant l'amplitude de chaquecomposante fréquentielle d'un flux multimédia séparé à destination d'undispositif multimédia sans fil en fonction de la réponse fréquentielle duditdispositif multimédia sans fil pour ladite composante fréquentielle. 9. Programme d'ordinateur comprenant une série d'instructions qui,lorsqu'elles sont exécutées par un processeur, mettent en œuvre unprocédé selon l'une des revendications 5 à 8. 10. Support de stockage non transitoire lisible par ordinateur, stockant unprogramme d'ordinateur selon la revendication 9.
FR1657074A 2016-07-22 2016-07-22 Pilotage de dispositifs multimedia connectes Active FR3054393B1 (fr)

Priority Applications (9)

Application Number Priority Date Filing Date Title
FR1657074A FR3054393B1 (fr) 2016-07-22 2016-07-22 Pilotage de dispositifs multimedia connectes
CN201780045037.8A CN109565662B (zh) 2016-07-22 2017-07-19 控制连接的多媒体装置
KR1020197001972A KR20190034206A (ko) 2016-07-22 2017-07-19 연결된 멀티미디어 장치 제어
EP17182172.1A EP3273620B1 (fr) 2016-07-22 2017-07-19 Commande de dispositifs multimédia connectés
PCT/EP2017/068278 WO2018015459A1 (fr) 2016-07-22 2017-07-19 Commande de dispositifs multimédias connectés
CN202211458391.2A CN115942288A (zh) 2016-07-22 2017-07-19 控制连接的多媒体装置
JP2019524517A JP7246307B2 (ja) 2016-07-22 2017-07-19 接続されたマルチメディアデバイスの制御
US15/655,551 US10158985B2 (en) 2016-07-22 2017-07-20 Controlling connected multimedia devices
JP2022143417A JP7426448B2 (ja) 2016-07-22 2022-09-09 接続されたマルチメディアデバイスの制御

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
FR1657074A FR3054393B1 (fr) 2016-07-22 2016-07-22 Pilotage de dispositifs multimedia connectes
FR1657074 2016-07-22

Publications (2)

Publication Number Publication Date
FR3054393A1 FR3054393A1 (fr) 2018-01-26
FR3054393B1 true FR3054393B1 (fr) 2019-08-16

Family

ID=57796408

Family Applications (1)

Application Number Title Priority Date Filing Date
FR1657074A Active FR3054393B1 (fr) 2016-07-22 2016-07-22 Pilotage de dispositifs multimedia connectes

Country Status (7)

Country Link
US (1) US10158985B2 (fr)
EP (1) EP3273620B1 (fr)
JP (2) JP7246307B2 (fr)
KR (1) KR20190034206A (fr)
CN (2) CN115942288A (fr)
FR (1) FR3054393B1 (fr)
WO (1) WO2018015459A1 (fr)

Families Citing this family (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP6631087B2 (ja) * 2015-08-19 2020-01-15 ヤマハ株式会社 制御端末、オーディオシステムおよびオーディオ機器制御プログラム
US9886234B2 (en) * 2016-01-28 2018-02-06 Sonos, Inc. Systems and methods of distributing audio to one or more playback devices
EP3319331B1 (fr) * 2016-11-04 2020-01-29 Nagravision S.A. Transmission de flux de données audio
CN109450490B (zh) * 2018-11-02 2019-11-19 南京中感微电子有限公司 一种音频数据通信设备及系统
US11233836B2 (en) * 2019-05-31 2022-01-25 Apple Inc. Concurrent audio streaming to multiple wireless audio output devices
US11871069B2 (en) 2019-07-26 2024-01-09 Lg Electronics Inc. Multimedia service providing device and multimedia service providing method
CN110996305B (zh) * 2019-11-12 2024-01-05 宇龙计算机通信科技(深圳)有限公司 连接蓝牙设备的方法、装置、电子设备及介质
FR3108817B1 (fr) * 2020-03-26 2022-03-04 Safran Procédé de communication selon un protocole TDMA entre un dispositif maître et au moins un dispositif esclave
US20220329959A1 (en) * 2021-04-07 2022-10-13 Steelseries Aps Apparatus for providing audio data to multiple audio logical devices
US11895468B2 (en) * 2022-01-31 2024-02-06 Harman International Industries, Incorporated System and method for synchronization of multi-channel wireless audio streams for delay and drift compensation

Family Cites Families (16)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20070110074A1 (en) * 2004-06-04 2007-05-17 Bob Bradley System and Method for Synchronizing Media Presentation at Multiple Recipients
CN100391148C (zh) * 2004-07-23 2008-05-28 赵志勇 通过无线网络实现多媒体播放的系统及其方法
KR100657314B1 (ko) * 2005-05-04 2006-12-20 삼성전자주식회사 멀티미디어 스트리밍 송신 장치 및 방법
FR2920930B1 (fr) 2007-09-06 2010-04-16 Parrot Systeme synchronise de distribution et de traitement de signaux,notamment de signaux audio dans un reseau d'enceintes sans fil
CN104539343B (zh) * 2008-01-02 2019-01-04 交互数字技术公司 Wtru、在wtru中使用的方法及网络节点
US9083474B2 (en) * 2008-04-25 2015-07-14 Qualcomm Incorporated Multimedia broadcast forwarding systems and methods
CN101465910B (zh) * 2009-01-12 2012-10-03 华为终端有限公司 基于移动终端的立体声播放控制方法、终端与系统
JP2010258967A (ja) * 2009-04-28 2010-11-11 Toshiba Corp 電子機器および電子機器の制御方法並びに電気音響変換器
US20120066711A1 (en) * 2009-08-24 2012-03-15 Novara Technology, LLC Virtualized home theater service
JP2012090164A (ja) * 2010-10-21 2012-05-10 Funai Electric Co Ltd Avアンプ
US20130311298A1 (en) * 2012-05-18 2013-11-21 General Instrument Corporation Targeted audio stream
US9088406B2 (en) * 2012-07-29 2015-07-21 Qualcomm Incorporated Frame sync across multiple channels
US9348824B2 (en) * 2014-06-18 2016-05-24 Sonos, Inc. Device group identification
US10097874B2 (en) * 2014-06-27 2018-10-09 Qualcomm Incorporated System and method for monitoring media stream buffers of media output devices in order to synchronize media content output
CN105488053B (zh) * 2014-09-17 2019-04-09 阿里巴巴集团控股有限公司 一种信息匹配方法及装置
CN104637505B (zh) * 2014-12-31 2017-06-16 小米科技有限责任公司 音频播放方法及装置

Also Published As

Publication number Publication date
JP2019531670A (ja) 2019-10-31
JP2022188042A (ja) 2022-12-20
CN109565662B (zh) 2022-11-29
KR20190034206A (ko) 2019-04-01
CN109565662A (zh) 2019-04-02
JP7246307B2 (ja) 2023-03-27
EP3273620A1 (fr) 2018-01-24
EP3273620B1 (fr) 2022-09-07
US10158985B2 (en) 2018-12-18
JP7426448B2 (ja) 2024-02-01
FR3054393A1 (fr) 2018-01-26
CN115942288A (zh) 2023-04-07
US20180027368A1 (en) 2018-01-25
WO2018015459A1 (fr) 2018-01-25

Similar Documents

Publication Publication Date Title
FR3054393B1 (fr) Pilotage de dispositifs multimedia connectes
US11659333B2 (en) Controlling dual-mode Bluetooth low energy multimedia devices
FR3054399A1 (fr) Pilotage de dispositifs multimedia bluetooth
US11800284B2 (en) Bluetooth device and method for controlling a plurality of wireless audio devices with a Bluetooth device
JP7302006B2 (ja) Bluetoothデバイスを操作するための方法
US11089496B2 (en) Obtention of latency information in a wireless audio system
Bhalla et al. Unraveling bluetooth le audio

Legal Events

Date Code Title Description
PLFP Fee payment

Year of fee payment: 2

PLSC Publication of the preliminary search report

Effective date: 20180126

PLFP Fee payment

Year of fee payment: 3

PLFP Fee payment

Year of fee payment: 4

PLFP Fee payment

Year of fee payment: 5

PLFP Fee payment

Year of fee payment: 6

TP Transmission of property

Owner name: GOOGLE LLC, US

Effective date: 20211220

PLFP Fee payment

Year of fee payment: 7

PLFP Fee payment

Year of fee payment: 8