Brevet FR3076145A1 — publié le 20190628

DOMAINE TECHNIQUE DE L'INVENTION La présente invention vise un dispositif de synchronisation temporelle de dispositifs communicant sur un réseau de données, un procédé de synchronisation temporelle de dispositifs communicant sur un réseau de données et l'utilisation d'un régulateur PID pour asservir en temps une synchronisation temporelle d'un réseau mettant en oeuvre le protocole NTP. Elle s'applique, notamment, à la synchronisation de flux audio. ÉTAT DE LA TECHNIQUE Dans le domaine de la synchronisation temporelle entre dispositifs présents sur un réseau, on connaît des techniques de synchronisation par utilisation d'une trame sur un réseau Wi-Fi (marque déposée) mettant en oeuvre une trame de balisage (beacon frame, en anglais). Ces techniques, toutefois, présentent l'inconvénient de ne permettre la synchronisation qu'entre dispositifs connectés à un même point d'accès. Les dispositifs réseaux peuvent être de type Ethernet et Wifi. Dans un même réseau, il peut y avoir des appareils en Wifi et en Ethernet. La couche de transport Wifi ayant des délais de transmission variables, les protocoles classiques, tels le NTP, ne sont pas assez précis pour synchroniser finement, c'est-à-dire avec un décalage maximum de 10 microsecondes environ, deux appareils. On connaît, par ailleurs, des techniques utilisant protocole NTP (Network Time Protocol, traduit par protocole de temps réseau) qui permet une synchronisation entre dispositifs. En plus de ce problème de précision de synchronisation, il existe des problèmes de synchronisation dans le contexte particulier de la synchronisation de lecture de son à partir d'une horloge commune et partagée. Toutefois, aucune de ces deux techniques n'est assez précise et stable pour permettre la lecture synchrone d'un fichier audio par deux dispositifs. En effet, ces 2 deux techniques induisent généralement une latence supérieure à cinquante millisecondes entre dispositifs, ce que l'oreille humaine remarque. OBJET DE L'INVENTION 5 La présente invention vise à remédier à tout ou partie de ces inconvénients. À cet effet, selon un premier aspect, la présente invention vise un procédé de synchronisation temporelle de dispositifs communicant sur un réseau de données, qui comporte : - une étape d'émission, par un dispositif primaire, dit « serveur de temps », d'un 10 signal de synchronisation temporelle comportant une information représentative d'une date d'émission dudit signal, - une étape de réception, par au moins un dispositif secondaire, dit « déclencheur », dudit signal de synchronisation, - une étape de comparaison, par chaque dit dispositif secondaire, d'une 15 information représentative d'une date de réception du signal reçu et de l'information représentative d'une date d'émission du signal pour estimer une valeur de délai de transmission, - une étape de filtrage statistique de valeurs de délai de transmission estimées, - une étape de détermination, par chaque dit dispositif secondaire, d'une valeur 20 d'horloge déterminée en fonction de la valeur de délai de transmission et de la date d'émission du signal de synchronisation reçu, puis, de manière itérative : - une étape d'émission, par un dispositif primaire, d'un signal comportant un flux sonore à restituer et une date de restitution, 25 - une étape de réception, par au moins un dispositif secondaire, dudit signal, - une étape d'estimation, par au moins un dispositif secondaire, d'une date de lecture du flux sonore en fonction de l'horloge dudit dispositif secondaire et d'une valeur de consigne d'un régulateur PID déterminée, - une étape de lecture, par au moins un dispositif secondaire, du flux audio à la date de lecture estimée, - une étape de comparaison, par au moins un dispositif secondaire, entre la date de restitution du flux audio et la date de lecture estimée dudit flux audio, une étape de détermination, par chaque dit dispositif secondaire, d'une valeur de consigne d'un régulateur PID à consigne variable en fonction de la différence entre la 3 date de restitution du flux audio et la date de lecture estimée dudit flux audio. Grâce à ces dispositions, l'effet statistique du régulateur PID permet de créer un effet élastique de synchronisation rendant la synchronisation plus précise et plus stable. Dans des modes de réalisation, le procédé objet de la présente invention 5 comporte : une étape de comparaison, par chaque dit déclencheur, entre, d'une part, la date de restitution et, d'autre part, une information d'horloge actuelle dudit déclencheur et si la date de restitution est supérieure à la date d'horloge actuelle, une étape 10 d'ajustement de la durée du signal audio. Ces modes de réalisation permettent de compenser une divergence entre différences horloges. Dans des modes de réalisation, au cours de l'étape d'ajustement, l'échantillonnage du signal audio est modifié en fonction de la différence entre la date 15 de restitution et la date d'horloge actuelle du déclencheur. Ces modes de réalisation permettent d'ajuster la durée de lecture du signal audio dynamiquement. Dans des modes de réalisation, le procédé objet de la présente invention comporte : 20 une étape d'élection d'un dispositif, parmi une pluralité de dispositifs présents sur le réseau de données, une étape d'enregistrement, par le dispositif élu, aussi appelé « maitre », d'une information de configuration du réseau et une étape de transmission, du maitre vers un dispositif, d'une information de 25 configuration du réseau enregistrée. Dans des modes de réalisation, l'information de configuration du réseau est une information représentative pour chaque dispositif du réseau : d'un rôle dans la distribution du flux sonore, d'un rôle dans la restitution du flux sonore, 30 d'un volume de restitution et/ou d'un canal du flux à restituer. Dans des modes de réalisation, le procédé objet de la présente invention comporte : 4 - une étape de communication, d'un dispositif différent du maitre vers le maitre, d'une modification d'information de configuration, - une étape de validation de la mise à jour par le maitre, - une étape de mise à jour de l'information de configuration du réseau par le 5 maitre et - une étape de transmission, du maitre vers au moins un autre dispositif, de l'information de configuration mise à jour. Selon un deuxième aspect, la présente invention vise un dispositif de synchronisation temporelle de dispositifs communicant sur un réseau de données, 10 qui comporte : - un moyen d'émission, par un dispositif primaire, dit « serveur de temps », d'un signal de synchronisation temporelle comportant une information représentative d'une date d'émission dudit signal, - un moyen de réception, par au moins un dispositif secondaire, dit 15 REVENDICATIONS1. Procédé (100) de synchronisation temporelle de dispositifs communicant sur un réseau de données, caractérisé en ce qu'il comporte : - une étape (105) d'émission, par un dispositif primaire, dit « serveur de temps », d'un signal de synchronisation temporelle comportant une information représentative d'une date d'émission dudit signal, - une étape (110) de réception, par au moins un dispositif secondaire, dit « déclencheur », dudit signal de synchronisation, - une étape (115) de comparaison, par chaque dit dispositif secondaire, d'une information représentative d'une date de réception du signal reçu et de l'information représentative d'une date d'émission du signal pour estimer une valeur de délai de transmission, - une étape (116) de filtrage statistique de valeurs de délai de transmission estimées, - une étape (120) de détermination, par chaque dit dispositif secondaire, d'une valeur d'horloge déterminée en fonction de la valeur de délai de transmission et de la date d'émission du signal de synchronisation reçu, puis, de manière itérative : - une étape (121) d'émission, par un dispositif primaire, d'un signal comportant un flux sonore à restituer et une date de restitution, - une étape de réception, par au moins un dispositif secondaire, dudit signal, - une étape (122) d'estimation, par au moins un dispositif secondaire, d'une date de lecture du flux sonore en fonction de l'horloge dudit dispositif secondaire et d'une valeur de consigne d'un régulateur PID déterminée, - une étape (123) de lecture, par au moins un dispositif secondaire, du flux audio à la date de lecture estimée, - une étape (124) de comparaison, par au moins un dispositif secondaire, entre la date de restitution du flux audio et la date de lecture estimée dudit flux audio, - une étape (125) de détermination, par chaque dit dispositif secondaire, d'une valeur de consigne d'un régulateur PID à consigne variable en fonction de la différence entre la date de restitution du flux audio et la date de lecture estimée dudit flux audio. 16 2. Procédé (100) selon la revendication 1, qui comporte : une étape (135) de comparaison, par chaque dit déclencheur, entre, d'une part, la date de restitution et, d'autre part, une information d'horloge actuelle dudit déclencheur et 5 si la date de restitution est supérieure à la date d'horloge actuelle, une étape (140) d'ajustement de la durée du signal audio. 3. Procédé (100) selon la revendication 2, dans lequel, au cours de l'étape (140) d'ajustement, l'échantillonnage du signal audio est modifié en fonction de la 10 différence entre la date de restitution et la date d'horloge actuelle du déclencheur. 4. Procédé (100) selon l'une des revendications 1 à 3, qui comporte : une étape (145) d'élection d'un dispositif, parmi une pluralité de dispositifs présents sur le réseau de données, 15 une étape (150) d'enregistrement, par le dispositif élu, aussi appelé « maitre », d'une information de configuration du réseau et une étape (155) de transmission, du maitre vers un dispositif, d'une information de configuration du réseau enregistrée. 20 5. Procédé (100) selon la revendication 4, dans laquelle l'information de configuration du réseau est une information représentative pour chaque dispositif du réseau : d'un rôle dans la distribution du flux sonore, d'un rôle dans la restitution du flux sonore, d'un volume de restitution et/ou 25 d'un canal du flux à restituer. 6. Procédé (100) selon l'une des revendications 4 ou 5, qui comporte : une étape (160) de communication, d'un dispositif différent du maitre vers le maitre, d'une modification d'information de configuration, 30 une étape (165) de validation de la mise à jour par le maitre, une étape (170) de mise à jour de l'information de configuration du réseau par le maitre et une étape (175) de transmission, du maitre vers au moins un autre dispositif, de l'information de configuration mise à jour. 17 7. Dispositif (200) de synchronisation temporelle de dispositifs communicant sur un réseau de données, caractérisé en ce qu'il comporte : - un moyen (205) d'émission, par un dispositif (210) primaire, dit « serveur de temps », d'un signal de synchronisation temporelle comportant une 5 information représentative d'une date d'émission dudit signal, - un moyen (215) de réception, par au moins un dispositif (220) secondaire, dit « déclencheur », dudit signal de synchronisation, - un moyen (225) de comparaison, par chaque dit dispositif secondaire, d'une information représentative d'une date de réception du signal reçu et de 10 l'information représentative d'une date d'émission du signal pour estimer une valeur de délai de transmission, - un moyen (226) de filtrage statistique de valeurs de délai de transmission estimées, - un moyen (230) de détermination, par chaque dit dispositif secondaire, d'une 15 valeur d'horloge déterminée en fonction de la valeur de délai de transmission et de la date d'émission du signal de synchronisation reçu, puis, de manière itérative : - un moyen (205) d'émission, par un dispositif primaire, d'un signal comportant un flux sonore à restituer et une date de restitution, 20 - un moyen (215) de réception, par au moins un dispositif secondaire, dudit signal, - un moyen (232) d'estimation, par au moins un dispositif secondaire, d'une date de lecture du flux sonore en fonction de l'horloge dudit dispositif secondaire et d'une valeur de consigne d'un régulateur PID déterminée, 25 - un moyen (233) de lecture, par au moins un dispositif secondaire, du flux audio à la date de lecture estimée, - un moyen (234) de comparaison, par au moins un dispositif secondaire, entre la date de restitution du flux audio et la date de lecture estimée dudit flux audio, 30 - un moyen (235) de détermination, par chaque dit dispositif secondaire, d'une valeur de consigne d'un régulateur PID à consigne variable en fonction de la différence entre la date de restitution du flux audio et la date de lecture estimée dudit flux audio.