Brevet FR2930098A1 — publié le 20091016

Procédé de transmission simplifié d'un flux de signaux entre un émet- teur et un appareil électronique. Domaine technique de l'invention La présente invention concerne un procédé de transmission d'un flux de signaux entre un émetteur et un appareil électronique, ledit appareil électronique étant destiné à restituer les signaux en temps réel. L'appareil élec- tronique considéré est par exemple un décodeur de télévision numérique. L'invention a essentiellement pour but de proposer une solution pour transférer un flux de signaux, comportant une pluralité de composantes, de-puis un émetteur, par exemple de type serveur, vers un appareil électronique, par exemple de type décodeur de télévision numérique, sans incorporer dans le flux de signaux de données de synchronisation entre les différentes composantes constituant le flux de signaux. Le domaine de l'invention est, d'une façon générale, celui de la télévision numérique. L'invention sera plus particulièrement décrite dans le cadre des décodeurs recevant un flux de signaux via le réseau Internet, décodeurs qui seront désignés par la suite comme décodeurs IP, mais la mise en oeuvre du procédé selon l'invention n'est pas limitée à ce type de décodeurs. La présente invention trouve, d'une manière générale, une application directe sur tous les appareils recevant des signaux susceptibles d'être soumis à un phénomène de gigue, et qui sont destinés à restituer lesdits signaux en temps réel. Dans le domaine de la télévision numérique, des décodeurs de télévision numérique sont utilisés, notamment afin d'accéder à un ensemble de chaînes de télévision qui sont transmises cryptées et qui sont décryptées au sein du décodeur. Les décodeurs de télévision sont des organes interfaces entre des systèmes de transmission de signaux de télévision, notamment de signaux de télévision numérique au format MPEG et DVB, et des moniteurs de visualisation. Les signaux échangés sont le plus souvent des signaux numériques, mais un décodeur peut aussi avoir des facultés de traitement de signaux analogiques. Les moyens de transmission qui diffusent les émissions de télévision vers ces décodeurs sont soit des moyens de transmission aériens classiques, soit des câbles coaxiaux, voire optiques, soit des satellites de réémission qui desservent une région, soit encore le réseau Internet. Le décodeur comporte des moyens de réception pour recevoir les signaux émis et des moyens de formatage pour transformer les signaux reçus en des signaux applicables directement sur les organes de commande du dispositif de visualisation. Le procédé selon l'invention s'applique de manière avantageuse au traitement des données, transmises dans un flux de signaux, qui doivent être restituées en temps réel ; de telles données sont émises en continu, de façon non périodique, dans le flux de signaux. D'une façon générale, la restitution, ou lecture, en continu est un principe utilisé pour la récupération des signaux de télévision sur Internet ; un tel principe de récupération, ou restitution per- met la lecture d'un flux audio ou vidéo à mesure qu'il est diffusé ; c'est ce principe de restitution qui est utilisé pour le visionnage des services de télé-vision, ou pour la visualisation de contenus accessibles en "vidéo à la de-mande" (VoD). Un tel principe de restitution s'oppose ainsi à la diffusion par téléchargement qui nécessite de récupérer l'ensemble des données d'un ex- trait vidéo avant de pouvoir le restituer. Ainsi, comme illustré à la figure 1, des paquets 100 de données, par exemple audio et/ou vidéo (désignés comme paquets AN), sont émis par un encodeur 101 vers un serveur 102 chargé de diffuser lesdits paquets de données sur le réseau Internet 103, jusqu'à leur réception par des dispositifs de réception 104 de type décodeurs IP, ou tout autre type de dispositif de restitution de données audio-vidéo connecté au réseau, par exemple un terminal mobile tel qu'un téléphone ou un assistant personnel. Arrière-plan technologique de l'invention Dans les procédés de l'état de la technique habituellement mis en oeuvre pour la transmission d'un flux de signaux entre un serveur et un dé-codeur de télévision numérique, le flux de signaux est constitué d'une plurali- té de composantes multiplexées, et incorpore des données de synchronisation des différentes composantes. D'une manière générale, les composantes considérées sont essentiellement de trois types : - des composantes vidéo, transportant les informations relatives aux images à afficher ; - des composantes audio, transportant les informations relatives aux sons à restituer ; - des données autres qui peuvent constituer de manière générale, en tout type de données privées, de données textuelles destinées à être affi- chées sur les images affichées ; il peut s'agir par exemple de sous-titres dé-finis selon la norme DVB (pour � Digital Video Broadcasting � en anglais) mais aussi de données utilisant la norme télétexte (qui peuvent elles-mêmes, par exemple, être transportées sur des paquets DVB). Ces différentes composantes sont mémorisées, après réception, dans l'appareil électronique destiné à les restituer. Au minimum, les différentes composantes sont mémorisées dans une mémoire tampon, ou buffer, qui permet notamment de gérer certains problèmes de gigue. Le temps de mémorisation est alors de l'ordre de la seconde, ou de quelques secondes. Dans le cas d'un flux IPTV propre, le temps de mémorisation considéré est inférieur à la seconde. Dans d'autres exemples, les différentes composantes peuvent être mémorisées dans un module de mémoire de type disque dur, dans l'optique d'être décodées ultérieurement ; les applications associées à ce type de mémorisation ne sont alors pas des applications de type "temps réel". Les différentes composantes sont habituellement transportées de manière multiplexée dans un flux de signaux utilisant par exemple la norme DVB, ou la norme MPEG2 ; le flux est ensuite, après réception par l'appareil électronique, démultiplexé par un démultiplexeur de l'appareil électronique considéré, et les différentes composantes sont transmises respectivement à des modules élémentaires de décodage réalisant soit un décodage audio, soit un décodage vidéo, soit un décodage "texte" pour les données de sous-titrage. Les composantes transmises aux différents modules élémentaires de décodage peuvent être destinées à être restituées de manière synchrone. Ceci est par exemple le cas des informations audio et vidéo qui sont liées entre elles par des informations de synchronisation temporelles ; de telles informations de synchronisation temporelles sont connues sous le sigle PTS (� Presentation Time Stamps� en anglais �) ; elles sont également parfois désignées comme "horodatages de présentation". L'exploitation de ces informations de synchronisation temporelle, combinée à la mise à jour d'une horloge locale du décodeur, connue sous le sigle STC (� System Time Clock � en anglais) au moyen de signaux de référence temporelle, transmis dans le flux de signaux, connus sous le sigle PCR (pour � Program Clock Reference � en anglais) permet d'afficher des images de façon synchrone avec la restitution du son. Les références temporelles PCR sont insérées dans le flux de signaux multiplexés en synchronisme avec une horloge qui cadence, au niveau de l'encodeur, le codage des don-nées. Elles permettent de générer, au sein du décodeur, les informations temporelles STC. Les horodatages de présentation PTS permettent de synchroniser la présentation des paquets de données par rapport aux informations temporelles STC. Bien que le décodage vidéo et le décodage audio soient des processus séparés, chaque paquet vidéo et chaque paquet audio est ainsi synchronisé avec l'horloge STC de sorte qu'ils sont présentés à un même instant déterminé. En d'autres termes, les paquets vidéo et les paquets audio sont chacun synchronisés avec l'horloge STC et sont donc synchronisés entre eux. Cette méthode est bien connue et implémentée dans les décodeurs numériques. Un tel système de synchronisation fonctionne correctement dans les procédés de transmission entre un encodeur et un appareil électronique de restitution de signaux lorsqu'il n'existe pas de problèmes de gigue lors de la transmission considérée. La gigue est un phénomène de fluctuation, de type glissement de phase ou dispersion temporelle, des signaux reçus par exem- ple par le décodeur, lesdits signaux pouvant arriver avec un retard plus ou moins important en fonction d'aléas rencontrés lors de leur transmission. Une des conséquences du phénomène de gigue est donc que des paquets Audio ou Vidéo peuvent arriver plus ou moins rapidement, et que des erreurs peu-vent être observées lors de la récupération des données. Dans de tels procédés, sans gigue, l'appareil électronique peut consi- dérer les signaux de référence PCR comme fiables, car ils n'ont pas été affectés par un quelconque phénomène de gigue pendant leur transport. Mais dès qu'un phénomène de gigue intervient dans la transmission du flux de signaux, comme c'est le cas notamment dans les réseaux IP, les valeurs des signaux de référence PCR ne sont plus exploitables pour procéder à une synchronisation des différentes composantes du flux de signaux. Description générale de l'invention C'est un objet de l'invention de répondre au problème qui vient d'être mentionné. Dans l'invention, on propose une solution pour s'affranchir de l'influence néfaste de la présence d'un phénomène de gigue sur les signaux de référence temporelle PCR transmis au travers d'un réseau de télécommunication, de manière à pouvoir restituer sans dysfonctionnement, en temps réel, les différentes composantes constituant le flux de signaux. A cet effet, on prévoit, dans l'invention, de s'affranchir de l'utilisation de tels signaux de synchronisation, L'invention concerne donc essentiellement un procédé de transmission, via un réseau de communication, d'un flux de signaux entre un émetteur et au moins un équipement de réception de signaux destinés à être restitués en temps réel, notamment de type décodeur de télévision numérique, ledit flux de signaux comportant une pluralité de composantes, avec au moins une première composante et une deuxième composante, chaque composante correspondant à un type de données spécifique, caractérisé en ce que le procédé comporte notamment les différentes étapes consistant à : - déterminer, pour au moins la première composante et la deuxième compo- sante, respectivement une première durée de restitution et une deuxième durée de restitution ; - déterminer un écart de durée de restitution en calculant une différence entre la première durée de restitution et la deuxième durée de restitution ; - émettre depuis l'émetteur vers l'équipement de réception, la première composante et la deuxième composante en respectant l'écart de durée de resti- tution déterminé, la composante dont la durée de restitution est la plus impor- tante étant émise en premier. Outre les caractéristiques principales qui viennent d'être mentionnées le procédé selon l'invention peut également présenter une ou plusieurs des caractéristiques complémentaires ci-dessous, considérées individuellement ou selon toutes les combinaisons techniquement possibles : - chaque durée de restitution déterminée pour une composante considérée est augmentée, avant l'étape de détermination de l'écart de durée de restitution, d'une durée de mémorisation dans une mémoire tampon de l'équipement de réception observée pour la composante considérée. -l'étape consistant à déterminer, pour au moins la première composante et la deuxième composante, respectivement la première durée de restitution et la deuxième durée de restitution comporte les différentes opérations consistant à, pour chaque composante considérée : - exécuter une opération de décodage élémentaire d'un paquet de données 20 de la composante considérée ; - mesurer la durée de l'opération de décodage élémentaire ; - adopter comme durée de restitution la durée de l'opération de décodage élémentaire. - l'étape consistant à déterminer, pour au moins la première compo- 25 sante et la deuxième composante, respectivement la première durée de res- titution et la deuxième durée de restitution est réalisée au sein de l'émetteur. - l'opération de décodage élémentaire fait intervenir une chaîne de dé-codage élémentaire identique à une chaîne de décodage élémentaire pré-sente dans l'équipement de réception. 30 - le réseau de communication est un réseau de communication dans lequel un phénomène de gigue est observé. - le réseau de communication est un réseau de type réseau IP. - l'émetteur est un équipement de type serveur. - la première composante, respectivement la deuxième composante, comporte des paquets de données correspondant à des données audio, respectivement des données vidéo. - le flux de signaux comporte au moins une troisième composante, dite composante textuelle, correspondant à des données de sous-titrages, et en ce que le procédé comporte les différentes étapes consistant à : - déterminer, pour chacune des composantes une durée de restitution ; - déterminer un écart de durée de restitution en calculant une différence en- tre les différentes durées de restitution déterminées ; - émettre, depuis l'émetteur vers l'équipement de réception, les différentes composantes en respectant les écarts de durée de restitution déterminés, les composantes étant émises, selon un ordre déterminé par la valeur des durées de restitution, de la composante présentant la durée de restitution la plus importante, à la composante présentant une durée de restitution la moins importante. Brève description des figures D'autres caractéristiques et avantages de l'invention ressortiront clai- rement de la description qui en est donnée ci-dessous, à titre indicatif et nullement limitatif, en référence aux différentes figures annexées qui montrent : - à la figure 1, déjà décrite, une représentation schématique d'une transmission via le réseau Internet d'un flux de signaux entre un encodeur et un dispositif de type décodeur ; - à la figure 2, une représentation schématique du fonctionnement d'un émetteur et d'un dispositif récepteur intervenant dans un exemple de mise en oeuvre du procédé selon l'invention ; et - à la figure 3, une représentation schématique illustrant l'envoi de paquets de données avec un mode de mise en oeuvre du procédé selon l'invention. Description des formes de réalisation préférées de l'invention Les éléments apparaissant sur différentes figures conservent, sauf précision contraire, les mêmes références. La figure 2 montre le serveur 102, qui comporte essentiellement une mémoire tampon 201 pour recevoir, et mémoriser provisoirement, le flux de signaux émis depuis l'encodeur 101. Le flux de signaux est constitué de plusieurs composantes, chacune des composantes correspondant à un type de données destinées à être restituées en temps réel dans l'invention. Dans l'exemple illustré, on a représenté une première composante Cl, correspondant à des données de type audio (A), et une deuxième composante C2, correspondant à des données de type vidéo (V). Le flux de signaux peut être transmis depuis l'encodeur 101 vers le serveur 102 de manière multiplexée ; le serveur 102 procède alors à un démultiplexage, au moyen d'un démultiplexeur non représenté, pour dissocier les différentes composantes du flux de signaux. On peut ainsi procéder, pour chaque composante considérée, à une opération de décodage élémentaire au sein du serveur 102. Par opération de décodage élémentaire, on désigne une opération de décodage de données, spécifiques à une composante préalablement déterminée, faisant intervenir des fonctions spécifiques au décodage des données considérées. L'opération de décodage élémentaire permet ainsi de déterminer le temps nécessaire pour, à partir des données qui seront reçues par le décodeur, disposer de données qui seront effectivement restituées par le décodeur. Ce temps nécessaire est appelé durée de restitution. Par exemple, pour les données vidéo, le décodage élémentaire des données fait intervenir une chaîne de décompression de données codées selon la norme MPEG2. Ainsi, dans l'invention, on fait subir, à chaque composante destinée à être restituée en temps réel par le décodeur 104, une opération de décodage élémentaire spécifique à la composante considérée. Dans l'exemple représenté, les données audio subissent une opération de décodage élémentaire 202, et les données vidéo subissent une opération de décodage élémentaire 203. Les opérations de décodage élémentaire sont réalisées au moyen d'applications spécifiques mémorisées dans une mémoire de programmes du serveur 102. L'exécution, à partir d'un ou plusieurs paquets de données d'une composante considérée, des opérations de décodage élémentaires permet de déterminer, pour chacune des composantes, la durée de restitution considérée. Ainsi, pour la composante audio, on obtient une première durée de restitution Ti, qui est mémorisée dans un premier élément de mémoire 204, et pour la composante vidéo, on obtient une deuxième durée de restitution T2, qui est mémorisée dans un deuxième élément de mémoire 205. Les opérations qui viennent d'être décrites sont condensées dans une phase 301 dite phase de calcul, visible à la figure 3, où des paquets de données audio, référencés Al à A4, et des paquets de données vidéo, référencés V1 à V4, sont représentés, mémorisés dans la mémoire tampon 201 du serveur 102. Chaque paquet de données audio Ai, i étant un entier naturel variant de 1 à 4, est représenté au-dessus d'un paquet de données vidéo Vi, pour illustrer le fait que chaque paquet de données audio Ai est destiné à être restitué, par le décodeur 104, en même temps que le paquet de données vidéo Vi. Pour qu'une telle restitution synchrone soit possible, on propose, dans l'invention, afin de ne plus utiliser les signaux de référence temporelle PCR, d'observer un décalage temporel dans l'envoi des différentes composantes depuis le serveur 102. Le décalage temporel est établi à partir des différentes durées de restitution qui ont été déterminées. Dans la pratique, il est égal, pour deux composantes considérées, à la différence, en valeur absolue, entre les deux durées de restitution T2 et Ti. Ainsi, par exemple, pour une première durée de restitution Ti égale à 50 millisecondes, et pour une deuxième durée de restitution T2 égale à 200 millisecondes, le décalage temporel est de 150 millisecondes, comme représenté à la figure 3 dans une phase d'émission 302. Lorsque les paquets de données arrivent au sein du décodeur 104, ils subissent de nouveau une opération de décodage élémentaire, référencée 202' pour la composante audio, et 203' pour la composante vidéo, identique aux opérations de décodage élémentaire 202 et 203 qui avaient été réalisées au sein du serveur 102. Dans l'exemple considéré, les données vidéo sont ainsi reçues en premier par le décodeur 104. Les données audio arrivent ensuite ; le décalage observé dans les instants de réception au sein du décodeur est alors compensé par les durées de restitution différentes, de sorte que, à l'issue d'une phase de restitution 303, chaque donnée audio Ai est effectivement restituée en même temps que la donnée vidéo Vi qui lui est associée. Les données des différentes composantes reçues par le décodeur 104 sont avantageusement préalablement mémorisées dans une mémoire tampon dudit décodeur. Ainsi, dans un mode de mise en oeuvre particulier du procédé selon l'invention, notamment lorsque les temps de mise en attente sont différents d'une composante à l'autre, on prévoit d'ajouter, pour chaque composante considérée, ledit temps de mise en attente à la durée de restitution préalablement déterminée, cette opération étant réalisée avant d'établir le décalage temporel à observer dans l'envoi des différentes composantes. Le procédé qui vient d'être décrit est bien évidemment généralisable avec d'autres composantes, notamment relatives aux données désignées plus haut comme "données autres", notamment les données de sous-titrage. Bien entendu, l'invention n'est pas limitée au mode de mise en oeuvre qui vient d'être décrit. Notamment, dans un mode de mise en oeuvre particulier, les différen- tes durées de restitution sont calculées au sein de l'équipement récepteur, et sont communiquées, via le réseau de communication ou par tout autre moyen, par l'équipement de réception considéré au serveur ; ce dernier prend alors en considération les durées de restitution transmises par le dé-codeur pour déterminer les écarts à appliquer entre les différentes compo- santes. Dans un autre mode de mise en oeuvre particulier, les paquets de données audio et vidéo sont transmis via des flux de transport différents au récepteur. L'émetteur tient dès lors compte aussi des délais de transport différents. En outre, l'invention est susceptible de s'appliquer à d'autres types de terminaux de réception de paquets de données tels que des terminaux 5 mobiles, de type téléphone ou assistant personnel. REVENDICATIONS1. Procédé de transmission, via un réseau de communication (103), d'un flux de signaux entre un émetteur (102) et au moins un équipement de réception (104) de signaux destinés à être restitués en temps réel, notamment de type décodeur de télévision numérique, ledit flux de signaux comportant une pluralité de composantes (A, V), avec au moins une première composante (A) et une deuxième composante (V), chaque composante cor- respondant à un type de données spécifique, caractérisé en ce que le procédé comporte notamment les différentes étapes consistant à : - déterminer (301), pour au moins la première composante (A) et la deuxième composante (V), respectivement une première durée de restitution (Ti) et une deuxième durée de restitution (T2) ; - déterminer un écart de durée de restitution en calculant une différence entre la première durée de restitution (Ti) et la deuxième durée de restitution (T2) ; - émettre (302) depuis l'émetteur (102) vers l'équipement de réception (104), la première composante (A) et la deuxième composante (V) en respectant l'écart de durée de restitution déterminé, la composante dont la du-rée de restitution est la plus importante étant émise en premier. 2. Procédé selon la revendication précédente caractérisée en ce que chaque durée de restitution déterminée pour une composante considérée est augmentée, avant l'étape de détermination de l'écart de durée de restitution, d'une durée de mémorisation dans une mémoire tampon de l'équipement de réception observée pour la composante considérée. 3. Procédé selon l'une au moins des revendications précédentes caractérisé en ce que l'étape consistant à déterminer, pour au moins la première composante (A) et la deuxième composante (V), respectivement lapremière durée de restitution (Ti) et la deuxième durée de restitution (T2), comporte les différentes opérations consistant à, pour chaque composante considérée : - exécuter (202 ; 203) une opération de décodage élémentaire d'un 5 paquet de données de la composante considérée ; - mesurer la durée de l'opération de décodage élémentaire ; - adopter comme durée de restitution la durée de l'opération de décodage élémentaire. 10 4. Procédé selon la revendication précédente caractérisé en ce que l'étape consistant à déterminer, pour au moins la première composante et la deuxième composante, respectivement la première durée de restitution et la deuxième durée de restitution est réalisée au sein de l'émetteur. 15 5. Procédé selon l'une au moins des revendications 3 ou 4 caractérisé en ce que l'opération de décodage élémentaire fait intervenir une chaîne de décodage élémentaire identique à une chaîne de décodage élémentaire pré-sente dans l'équipement de réception. 20 6. Procédé selon l'une au moins des revendications précédentes caractérisé en ce que le réseau de communication (103) est un réseau de communication dans lequel un phénomène de gigue est observé. 7. Procédé selon l'une au moins des revendications précédentes ca-25 ractérisé en ce que le réseau de communication (103) est un réseau de type réseau IP. 8. Procédé selon l'une au moins des revendications précédentes caractérisé en ce que l'émetteur (102) est un équipement de type serveur. 9. Procédé selon l'une au moins des revendications précédentes caractérisé en ce que la première composante, respectivement la deuxième 30composante, comporte des paquets de données correspondant à des don-nées audio, respectivement des données vidéo. 10. Procédé selon l'une au moins des revendications précédentes ca- ractérisé en ce que le flux de signaux comporte au moins une troisième composante, dite composante textuelle, correspondant à des données de sous-titrages, et en ce que le procédé comporte les différentes étapes consistant à : - déterminer, pour chacune des composantes une durée de restitution ; - déterminer un écart de durée de restitution en calculant une différence entre les différentes durées de restitution déterminées ; - émettre, depuis l'émetteur vers l'équipement de réception, les différentes composantes en respectant les écarts de durée de restitution déterminés, les composantes étant émises, selon un ordre déterminé par la valeur des durées de restitution, de la composante présentant la durée de restitution la plus importante, à la composante présentant une durée de restitution la moins importante.