Brevet FR2956269A1 — publié le 20110812

Outil de simulation du comportement d'un terminal recevant un signal transmis sous la forme de paquets de données en mode continu L'invention concerne un outil de simulation du comportement d'un 5 termina recevant un signal transmis sous a forme de paquets de données en mode continu. La transmission en mode continu (en anglais : streaming) permet à un internaute de tire un fichier (audio ou vidéo) pratiquement en temps réel, sans avoir à attendre ta fin de la transmission de l'ensemble des données constituant 10 ce fichier. Elle s'oppose ainsi au téléchargement classique qui nécessite de récupérer l'ensemble des données d'un morceau de musique ou d'une séquence vidéo avant de pouvoir l'écouter ou la regarder, Les variations (en anglais : jitter) de la durée de transmission à travers un réseau de transmission de paquets de données peuvent provoquer des 15 interruptions dans ta restitution du son (coupures) ou de (a vidéo (image figée). Pour éviter ces interruptions, les données sont inscrites et lues en continu dans une mémoire tampon, dans le terminal récepteur. Elles sont rapidement transférées à un logiciel lecteur (pour restituer un son ou une séquence vidéo), tes données stockées en mémoire tampon étant remplacées continuellement par 20 de nouvelles données. La durée de stockage en mémoire tampon est variable ; elle est calculée dynamiquement de façon à compenser les variations de a durée de transmission affectant les données reçues par te terminal. La durée de stockage maximale dans une telle mémoire tampon est de l'ordre de quatre à huit secondes. 25 La transmission en mode continu est particulièrement adaptée à la diffusion d'un contenu dont ta taille totale, ou la durée de lecture, ne rendraient pas pratique le téléchargement préalable du fichier entier avant sa lecture, Elle permet un accès plus rapide au contenu diffusé et permet donc ta diffusion en direct ou en léger différé. De ce fait, elle est très utilisée pour la 30 diffusion de contenus vidéo et musicaux via Internet. La lecture en mode continu fonctionne selon te protocole client-serveur. Le contenu est mis à disposition sur un serveur. Le client souhaitant accéder au contenu envoie une requête pour en récupérer une petite partie, à l'endroit du contenu où il souhaite commencer ta lecture. Les données reçues en réponse sont placées dans ta mémoire tampon. Lorsqu'il y a suffisamment de données dans cette mémoire pour permettre de tire correctement le début du fichier audio ou vidéo, la lecture démarre. En arrière-plan, l'écriture du flux de données dans la mémoire tampon se poursuit afin d'alimenter sans cesse (a mémoire tampon avec la suite du fichier. Les transmissions et communications entre serveur et client peuvent utiliser tes protocoles suivants : RTP, RTSP (standards normalisés par l'IETF) ou MMS (propriétaire Microsoft) ou RTMP (propriétaire Adobe Systems). Le protocole de transmission attribue un numéro d'ordre et une étiquette temporelle (heure de capture et d'échantillonnage) à chaque paquet de donnée au moment de sa transmission. A ta réception, le logiciel lecteur utilise te numéro d'ordre et/ou l'étiquette temporelle pour retire tes paquets, dans ta mémoire tampon, dans le bon ordre ; et il utilise les étiquettes temporelles pour retire chaque paquet à un instant tel que te délai entre ta capture du paquet et sa lecture dans ta mémoire tampon est égale à une constante, par exemple dix secondes, qui est choisie au moins égale à la variation de retard maximale que l'on souhaite pouvoir compenser. La taille de la mémoire tampon est donc choisie en fonction de la variation de retard maximale que t'on souhaite pouvoir compenser. Elle est différente selon les lecteurs. Cette taille détermine, pour te début de la transmission, ta durée pendant laquelle te son ou la vidéo n'est pas restitué ; et, à la fin de ta transmission, ta durée pendant laquelle le son ou ta vidéo continue à être restitué, après interruption de ta transmission. En raison des latences créées par ta transmission, tes opérations de codage/décodage effectuées sur les signaux, et te délai variable de stockage dans ta mémoire tampon, un retard de 5 à 35 secondes (voire plus) peut intervenir entre le signal émis par une source et le signal restitué par le lecteur. Le but de l'invention est de proposer un outil de simulation du comportement d'un terminal recevant un signal vidéo transmis en mode continu. Il doit permettre d'analyser la qualité de la vidéo que restituerait un terminal donné s'il était connecté à un site donné via un réseau donné. lt doit permettre de faire cette analyse pour un grand nombre de terminaux différents sans disposer de ces terminaux, mals en connaissant tes caractéristiques de chaque terminal : capacité de ta mémoire tampon, et procédé de récupération en cas d'assèchement de ta mémoire tampon. Ces terminaux sont par exempte des téléphones portables aptes à recevoir des vidéos en mode continu. Cet outil doit permettre de prévoir quels terminaux donneront une restitution correcte dans un réseau donné, ou permet de prévoir quelle capacité de mémoire devra être installée dans un futur terminal pour obtenir un niveau de qualité donné dans un réseau donné. Un second but de l'invention est d'obtenir te résultat de cette analyse rapidement, c'est-à-dire sans attendre pendant toute ta durée de 5 à 35 secondes (voire plus) qui peut intervenir entre le début de ta transmission et le début de ta restitution par un lecteur. L'objet de l'invention est un outil de simulation du comportement d'un terminal recevant un signal transmis sous la forme de paquets en mode continu, caractérisé en ce qu'il comporte : - des moyens pour simuler une mémoire tampon destinée à stocker des paquets en associant chaque paquet à une première étiquette temporelle indiquant l'instant où a été capturé et échantillonné une portion de signal, ces moyens comportant des paramètres réglables pour définir ta capacité de ta mémoire tampon et définir des règles pour ta récupération consécutive à un assèchement de la mémoire tampon, - et des moyens pour simuler un lecteur lisant dans cette mémoire 25 tampon, comportant : -- des moyens pour calculer pour chaque paquet reçu un instant théorique où il devrait être restitué par cette mémoire tampon, en respectant l'ordre et ta cadence définis par tes premières étiquettes temporelles ; 30 -- des moyens pour calculer un instant où devra être restitué réellement te premier paquet à restituer juste après te démarrage de ta lecture juste après une période de récupération consécutive à un assèchement de la mémoire tampon, en fonction de règles de fonctionnement prédéterminées pour ta mémoire tampon à simuler ; -- et des moyens pour calculer, pour chaque paquet suivant le premier paquet à restituer juste après le démarrage de la lecture ou juste après une période de récupération, un instant où il devra être restitué réellement par cette mémoire tampon, en respectant l'ordre et ta cadence définis par tes premières étiquettes temporelles. L'outil ainsi caractérisé permet de simuler aisément le comportement de toutes sortes de terminaux parce qu'il comporte des moyens pour simuler une mémoire tampon, qui comportent des paramètres réglables pour définir la capacité de la mémoire tampon et définir des règles pour la récupération consécutive à un assèchement de la mémoire tampon. Dans des modes de réalisation préférés, l'outil selon l'invention comprend une ou plusieurs des caractéristiques suivantes : Il comporte en outre des moyens pour simuler une transmission de 20 paquets de données à travers un réseau de transmission de paquets de données en mode continu. Ces moyens pour simuler une transmission de paquets de données à travers un réseau de transmission de paquets de données en mode continu comportent : 25 - des moyens pour stocker une collection de paquets de test en associant à chaque paquet une première étiquette temporelle indiquant l'instant où a été capturé et échantillonné une portion de signal, et une seconde étiquette temporelle indiquant à quel instant ce paquet est sorti d'un réseau qui est à simuler ; 30 - et des moyens pour fournir chaque paquet de cette collection auxdits moyens pour simuler une mémoire tampon, en retardant ce paquet avec un retard relatif qui est égal de la différence entre ka deuxième étiquette temporelle et la première étiquette temporelle associées à ce paquet. Les moyens pour calculer pour chaque paquet reçu un instant théorique où il devrait être restitué par cette mémoire tampon, en respectant t'ordre et la cadence définis par les premières étiquettes temporelles, comportent des moyens pour additionner une constant à ta valeur de la première étiquette temporelle associée à ce paquet. Les moyens pour calculer, pour chaque paquet suivant le premier paquet à restituer juste après te démarrage de la lecture ou juste après une période de récupération, un instant où devra être restitué réellement par cette mémoire tampon, en respectant l'ordre et la cadence définis par les premières étiquettes temporelles, comportent des moyens pour calculer cet instant selon la formule : tg + (tp tpg) où tpB est l'instant d'affichage théorique calculé pour ledit premier paquet, où tp1 est l'instant d'affichage théorique calculé pour le paquet considéré, et où tg est l'instant où a (re)commencé la restitution, tg étant réactualisé chaque fois que ta restitution redémarre après un assèchement de la mémoire tampon. 20 L'invention sera mieux comprise et d'autres caractéristiques apparaîtront à l'aide de ta description ci-dessous et des figures t'accompagnant : - La figure 1 représente deux graphes qui illustrent l'effet des variations de durée de transmission des paquets de données, et l'effet régulateur d'une 25 mémoire tampon. - La figure 2 représente un exemple de réalisation et d'utilisation de l'outil selon t'invention. La figure 3 représente fonctionnellement un exemple de réalisation de la mémoire tampon de l'outil selon t'invention. 30 - La figure 4 représente un diagramme temporel qui illustre le fonctionnement de cet exempte de réalisation lorsque tes variations de durée de transmission sont telles que la mémoire tampon ne s'assèche pas. - La figure 5 représente un diagramme temporel qui illustre le fonctionnement de cet exempte de réalisation lorsque tes variations de durée de transmission sont telles que la mémoire tampon s'assèche pendant un certain temps. Sur ta figure 1, t'axe des abscisses représente le temps exprimé en secondes, et l'axe des ordonnées représente un nombre des paquets de données reçus à un instant donné, compté à partir d'un instant O. Le chaînage entre les points de chaque graphe correspond à l'ordre des paquets. Le graphe 1 illustre ta réception de paquets à a sortie d'un réseau de transmission de paquets de données utilisant le protocole Internet et te protocole de transport de données en temps réel RTP (Reat-time Transport Protoco ) normalisé par ta norme RFC 3550. Une première partie du graphe 1 est assez régulière car la durée de transmission à travers ce réseau a été à peu près constante. Une seconde partie 3 du graphe 1 est irrégulière, elle montre que ta durée de transmission a beaucoup fluctué, à tette point que certains paquets arrivent en désordre. Le graphe 2 illustre l'effet régulateur d'une mémoire tampon en montrant la sortie des paquets à ta sortie d'une mémoire tampon lorsqu'elle ne s'assèche jamais. L'ensemble du graphe 2 est régulier car tes paquets sont lus dans ta mémoire tampon à une cadence constante et en respectant l'ordre initial des paquets. En particulier, ta seconde partie 4 du graphe 2, qui correspond aux paquets de ta partie 3 du graphe 1, ne comporte aucune discontinuité ni désordre. Cet effet de régulation est obtenu parce que ta durée maximale de stockage dans ta mémoire a été choisie suffisante pour compenser les variations maximales de la durée de transmission. Si ce n'était pas te cas, il y aurait des interruptions du flot de paquets, dues à un assèchement de la mémoire tampon. La figure 2 représente un exempte de réalisation et d'utilisation de l'outil selon l'invention. utilise une source vidéo 21 pour créer une collection de paquets de données de test. C'est, dans cet exemple, un site web accessible via le réseau Internet 22, et qui émet un flot de paquets de données en mode continu, par exemple au format MPEG2TS, avec te protocole de transport RTP classique. Les paquets sortent du réseau Internet 22 de manière asynchrone. Ils sont affectés par des variations du temps de transmission, et des désordres. A la sortie du réseau Internet 22, les paquets sont reçus par un exemple de réalisation 26 de l'outil selon l'invention. Cet exemple de réalisation 26 comporte une mémoire de stockage 23 et des moyens de commande de tecture/écriture (non représentés) couplés à cette mémoire 23 et permettant de simuler à volonté une transmission de paquets de données à travers un réseau de transmission de paquets de données en mode continu. Un utilisateur de l'outil peut ainsi simuler une pluralité de transmissions successives et identiques. Les paquets de données destinés à constituer des paquets de test sont d'abord inscrits dans ta mémoire de stockage 23, en étant chacun associé avec une première étiquette temporelle dite de capture parce qu'elle a été attribuée au moment de la capture et de l'échantillonnage d'une portion d'image, conformément au protocole RTP. D'autre part, chaque paquet inscrit dans la mémoire de stockage 23 est associé à une deuxième étiquette temporelle dite de réception parce qu'elle est attribuée au moment de la sortie du réseau 20 Internet 22, par les moyens de commande de lecture/écriture (non représentés) couplés à cette mémoire 23. Des paquets sont ainsi enregistrés continument pendant un quart d'heure par exempte. Ils seront relus plus tard, par les moyens de commande de lecture/écriture (non représentés) couplés à cette mémoire de stockage 23, en reconstituant, grâce aux premières et deuxièmes étiquettes 25 temporelles, les mêmes variations de durée de transmission que pendant la transmission réelle. Les paquets enregistrés dans ta mémoire de stockage 23 constituent une collection de paquets de test qui permettra de tester différentes simulations de mémoire tampon, donc de tester virtuellement différents terminaux, en ayant 30 rigoureusement les mêmes paquets de test, avec les mêmes variations de durée de transmission, et les mêmes désordres, pour tous les tests. D'autre part, la mémoire de stockage 23 est avantageuse parce qu'elle permet d'obtenir le résultat de l'analyse rapidement, une fois que le stockage a été fait : Il n'y a pas besoin d'attendre pendant toute la durée de 5 à 35 secondes (voire plus) qui peut intervenir entre te début d'une transmission réelle et le début de la restitution par un lecteur classique. En effet, la simulation et l'affichage peuvent démarrer quasi-instantanément dés tors que tous tes paquets sont déjà tous disponibles dans ta mémoire de stockage 23. Un dispositif de simulation 24 est relié à la sortie de ta mémoire de stockage 23. Il simule une mémoire tampon vidéo et une mémoire tampon audio 10 afin de tester te comportement de différents terminaux, en permettant de faire varier les paramètres de ta mémoire tampon vidéo simulée et de la mémoire tampon audio simulée : capacité de cette mémoire, et paramètres du comportement de récupération dans te cas d'un assèchement de chaque mémoire tampon. Les fonctions du dispositif de simulation 24 sont réalisées par 15 simulation logicielle. Le dispositif de simulation 24 reçoit une suite de paquets lus dans ta mémoire de stockage 23, avec les même variations de débit et tes mêmes désordres que s'ils étaient reçus directement du réseau de transmission de données 22. Les mémoires tampons simulées sont associées à des moyens de 20 commande de lecture qui relisent les paquets, en régulant leur flux, et restituent un signal vidéo et un signal audio, séparément, à un dispositif 25 d'affichage et de reproduction sonore. Par exemple, outil selon l'invention est réalisé sous la forme d'un logiciel exécuté sur un ordinateur personnel, et le dispositif 25 est constitué par 25 l'écran et les haut-parleurs de cet ordinateur personnel. La figure 3 représente fonctionnellement un exemple de réalisation du dispositif de simulation 24 de l'outil selon l'invention. R comporte : - Un module logiciel démultiplexeur 31 qui reçoit les paquets de données 30 affectés de variations du temps de transmission, et de désordres, fournis par la mémoire de stockage 23. Ce module 31 extrait de chaque paquet de données reçu, des données vidéo et des données audio. Il constitue des flux séparés : un flux de paquets de données vidéo et un flux de paquets de données audio. - Un module logiciel 32 génère un premier signal d'horloge qui est un signal de période constante égal à la période moyenne de réception des paquets par le module démultiplexeur 31. Le flux de paquets de données vidéo et te flux de paquets de données audio sont synchronisés sur ce signal d'horloge. - Un module logiciel 33 simule une mémoire tampon vidéo permettant de stocker tes paquets de données vidéo. Tous ses paramètres sont réglables. - Un module logiciel 34 simule une mémoire tampon audio permettant de stocker tes paquets de données audio. Tous ses paramètres sont réglables. - Un module logiciel 35 simule un lecteur multimédia, permettant de restituer en synchronisme un signal vidéo et un signal audio exploitables par le dispositif de restitution 25. Pour chaque paquet vidéo, il détermine l'instant tD où devra être restitué ce paquet vidéo ainsi que le paquet audio correspondant. associe cet instant tD à ces deux paquets respectivement dans le module logiciel 33 qui simule une mémoire tampon vidéo, et dans le module logiciel 34 qui simule une mémoire tampon audio. Lorsque l'instant tD arrive, le module logiciel 35 relit ces deux paquets et les fournit au dispositif de restitution 25. Un module logiciel 36 qui est une machine d'états collaborant avec le 20 module 35 pour simuler les états d'un lecteur multimédia. Dans un exemple de réalisation simple, il a deux états : Arrêt ou Lecture. il passe de l'état Lecture à l'état Arrêt en cas d'assèchement de la mémoire tampon vidéo, ou en fin de test. Il passe de t'état Arrêt à l'état Lecture au démarrage du test, c'est à dire dés que le niveau de remplissage de ta mémoire tampon a atteint une valeur 25 prédéterminée (réglable), ou lors de ta récupération après un assèchement de la mémoire tampon vidéo 33. Il reçoit un signal fourni par te module logiciel 33 qui simule une mémoire tampon vidéo, ce signal indiquant s'il y a un assèchement de la mémoire tampon vidéo. La possibilité d'assèchement de ta mémoire audio simulée par le module 34 n'est pas prise en compte car elle est beaucoup moins 30 probable qu'un assèchement de ta mémoire vidéo. - Un module logiciel 37 génère un second signal d'horloge pour te module logiciel 35 et pour te module logiciel 36, à partir des étiquettes temporelles de capture qui sont extraites des paquets arrivant à L'entrée du module logiciel démuttiplexeur 31. Dans d'autres exemples de réalisation, on peut prendre en compte aussi le risque d'assèchement de la mémoire audio. L'évènement de basculement de l'état lecture à arrêt de la machine d'état est alors une condition du type - mémoire vidéo vide ou mémoire audio vide ». La figure 4 représente un diagramme temporel qui illustre 10 fonctionnement de cet exemple de réalisation pour une première suite de paquets où les variations de durée de transmission sont telles que [a mémoire tampon vidéo 33 ne s'assèche pas. La première ligne représente les instants tc auxquels les paquets sont émis dans le réseau de transmission. La deuxième Ligne représente les instants tR où ces mêmes paquets sont reçus à la sortie du 15 réseau. Comme cela été mentionné au-dessus, ils seront relus plus tard, dans la mémoire de stockage 23, en reconstituant, grâce aux premières et deuxièmes étiquettes temporelles associées à ces paquets, les mêmes variations de durée de transmission que pendant la transmission réelle. Cette deuxième ligne représente donc aussi les instants où ces mêmes paquets sont transmis de la 20 sortie de la mémoire de stockage 23, à l'entrée de L'outil 24 tors de la simulation. Une suite de portions d'image sont capturées et échantillonnées aux instants tco, tci respectivement. Une suite continue de paquets de données correspondant est émise à l'entrée du réseau 22. Ces paquets sont reçus à 25 l'entrée de l'outil 24 avec des retards variables, à des instant tRO, ..., 41, éventuellement en désordre. Le module 35 qui simule un lecteur multimédia calcule pour chaque paquet un instant théorique tp où te paquet devrait être lu dans la mémoire tampon 33 et être affiché par le dispositif 25. L'instant tc et l'instant tp correspondant sont séparés d'un intervalle fixe INT. L'instant tp est 30 calculé en ajoutant à l'instant de capture et d'échantillonnage tc une constante INT qui est choisie supérieure à la variation maximale de la durée de transmission à travers le réseau, qu'on souhaite compenser au moyen de la 2956269 Il mémoire tampon. Bien entendu, la capacité de ta mémoire tampon vidéo 33 est choisie en fonction de cette constante INT, de sorte qu'elle ne se sature pas. Par exempte, te premier paquet de cette suite est reçu à l'instant tRo et il devrait être tu théoriquement à un instant tpo = tco+ INT, tco étant indiqué par ta première étiquette temporelle associée à ce paquet et le dernier paquet de cette suite est reçu à l'instant tRi et il devrait être lu théoriquement à un instant Tpi = tcl+ INT, tci étant indiqué par ta première étiquette temporelle associée à ce dernier paquet. La troisième ligne représente tes instants to où sont réellement restitués les paquets au dispositif 25 d'affichage et de reproduction sonore. Pour cette première suite de paquets, il n'y a pas d'assèchement de ta mémoire tampon, donc te calcul des instants de restitution réels est trivial : Le premier paquet est restitué à un instant toc' = tpo et le dernier paquet est restitué à un instant tDl = tPl. On peut remarquer que ta durée Dl de ta suite restituée et bien égale à ta durée de ta suite émise à l'entrée du réseau 22, bien que la suite reçue ait une durée légèrement différente à cause de aléas sur la durée de transmission. La figure 5 représente un diagramme temporel qui illustre le fonctionnement de ce même exempte de réalisation lorsque les variations de durée de transmission sont telles que ta mémoire tampon vidéo 33 s'assèche pendant un certain temps. Dans ta continuité de ta première suite de portions d'image, une seconde suite de portions d'images commence à être capturée et échantillonnée à t'instant tu. Une seconde suite continue de paquets de données correspondant est émise à t'entrée du réseau 22. Mais c'est te moment où te réseau 22 subit une congestion qui retarde beaucoup la transmission. Pendant un intervalle C aucun paquet n'est reçu, et ta mémoire tampon vidéo 33 arrive à s'assécher. It en résulte un intervalle F où t'image se fige sur le dispositif 25, parce qu'aucun paquet n'est restitué pendant cet intervalle F. Cet intervalle F est plus long que l'intervalle C parce que, Lorsque les paquets arrivent de nouveau, il y a une période de récupération pendant Laquelle la mémoire tampon 33 doit accumuler un certain nombre de paquets en réserve avant que la restitution puisse redémarrer. Ce temps de récupération est fonction des règles choisies pour ta gestion de la mémoire tampon vidéo 33 en cas d'assèchement. La seconde suite de portions d'image est capturée et échantillonnée aux instants tC2, ..., tO respectivement. Les paquets de données correspondant sont reçus avec des retards variables, à des instant tR3, éventuellement en désordre. Comme précédemment, le module 35 qui simule un lecteur multimédia calcule pour chaque paquet un instant théorique tp où te paquet devrait être tu dans ta mémoire tampon 33 et être affiché par le dispositif 25. L'instant tc et l'instant tp correspondant sont séparés d'un intervalle fixe INT. L'instant tp est calculé en ajoutant à t'instant de capture et d'échantillonnage tc une constante INT qui est choisie supérieure à ta variation maximale de la durée de transmission à travers le réseau, qu'on souhaite compenser au moyen de ta mémoire tampon. Par exempte, le premier paquet de cette seconde suite est reçu à l'instant et il devrait être lu théoriquement à un instant tp2 tC2+ INT ; le dernier paquet de cette suite est reçu à t'instant tR3 et il devrait être lu théoriquement à un instant tp3 = tc3+ INT ; où to et tc2 sont donnés par les premières étiquette temporelles. Pour le i-ème paquet de cette seconde suite, le module 35 calcule t'instant de lecture et d'affichage théorique tp; selon la formule : tpi o+ INT où tc; est donné par ta première étiquette temporelle du paquet considéré. La troisième ligne représente tes instants tD où sont réellement restitués tes paquets au dispositif 25 d'affichage et de reproduction sonore. Pour cette seconde suite, te premier paquet est restitué à un instant tD2 et te dernier paquet est restitué à un instant tD3. Ces instants sont respectivement différents des instants théoriques tp2 et tp3 parce que tes paquets ne sont pas disponibles à temps pour tes restituer en respectant ces instants théoriques. Pour déterminer l'instant tD où un paquet donné doit réellement être restitué, te module 35 calcule tout d'abord t'instant tB où pourra reprendre réellement la restitution, en fonction des règles choisies pour la gestion de la mémoire tampon en cas d'assèchement (La lecture des paquets ne recommence qu'à la fin de la période de récupération en cours F). L'instant tB est constitué, dans cet exemple, par l'instant tD2 calculé pour affichage réel du premier paquet de la seconde suite, en fonction des règles choisies pour la gestion de la mémoire tampon vidéo 33 en cas d'assèchement. Le module 35 calcule ensuite un instant d'affichage réel tD pour chaque paquet suivant, en prenant pour référence l'instant tB où est restitué et affiché réellement te premier paquet de ta seconde suite. Pour le i-ème paquet de cette seconde suite, le module 35 calcule l'instant d'affichage réel tDi selon ta formule : tDi = tB + (tpi tpB) où tpB est l'instant d'affichage théorique calculé pour te premier paquet de cette seconde suite (c'est-à-dire te premier paquet restitué après la période de récupération), et où tpi est l'instant d'affichage théorique calculé pour le paquet considéré. tpB = tC2 + INT et tpi = tci + INT et tB est nommé t62 dans cet exemple, donc : tDi= t62 + (tCi -tC2) temporelles. où to et tC2 sont donnés par les premières étiquette Dans l'exemple considéré, la restitution redémarre à un instant tB2 qui est égal à l'instant d'affichage réel tD2 calculé pour le premier paquet de la seconde suite. L'instant d'affichage réel pour le dernier paquet de ta seconde suite est donc : tD3 = + (tp3 -tp2) OÙ tp2 = tC2 + INT et tp3 = tC3 + INT, tri et tC2 étant donnés par les premières étiquette temporelles. Cette formule de calcul tDi = t6 + (tPj - tpB) est valable aussi dans te cas où il n'y a pas d'assèchement, si on considère que t6 est l'instant où a commencé ou recommencé la restitution. Dans l'exemple de la figure 4 (démarrage sans qu'il y ait eu un assèchement), l'instant tB est l'instant d'affichage réel tDl calculé pour le premier paquet de la première suite. 5 Le module logiciel 36 qui simule les états d'un lecteur multimédia mémorise deux informations temporelles : -- tB qui est l'instant où a (re)commencé ta restitution, ce paramètre tB étant réactualisé chaque fois que la restitution redémarre après un assèchement de ta mémoire tampon, tp2 qui est t'instant théorique d'affichage calculé pour te premier paquet par lequel a (re)commencé ta restitution en cours. REVENDICATIONS1) Outil de simulation du comportement d'un terminal recevant un signal transmis sous ta forme de paquets en mode continu, caractérisé en ce qu'il comporte : - des moyens (33) pour simuler une mémoire tampon destinée à stocker des paquets en associant chaque paquet à une première étiquette temporelle (tci) indiquant l'instant où a été capturé et échantillonné une portion de signal, ces moyens comportant des paramètres réglables pour définir ta capacité de la mémoire tampon et définir des règles pour la récupération consécutive à un assèchement de ta mémoire tampon, - et des moyens (35-37) pour simuler un lecteur lisant dans cette mémoire tampon, comportant : -- des moyens (35) pour calculer pour chaque paquet reçu un instant théorique (tpi) où il devrait être restitué par cette mémoire tampon, en respectant l'ordre et la cadence définis par les premières étiquettes temporelles ; -- des moyens (35) pour calculer un instant (tB) où devra être restitué réellement te premier paquet à restituer juste après le démarrage de la lecture ou juste après une période de récupération consécutive à un assèchement de la mémoire tampon, en fonction de règles de fonctionnement prédéterminées pour la mémoire tampon à simuler ; -- et des moyens (35) pour calculer, pour chaque paquet suivant le premier paquet à restituer juste après te démarrage de la lecture ou juste après une période de récupération, un instant (tm) où il devra être restitué réellement par cette mémoire tampon, en respectant l'ordre et cadence définis par les premières étiquettes temporelles. 2) Outil de simulation selon la revendication 1 caractérisé en ce qu'il comporte en outre des moyens (23) pour simuler une transmission de paquets de données à travers un réseau de transmission de paquets de données en mode continu. 3) Outil de simulation selon la revendication 2 caractérisé en ce que lesdits moyens (23) pour simuler une transmission de paquets de données à travers un réseau de transmission de paquets de données en mode continu comportent : - des moyens pour stocker une collection de paquets de test en associant à chaque paquet une première étiquette temporelle (tu) indiquant l'instant où a été capturé et échantillonné une portion de signal, et une seconde étiquette temporelle (tpi) indiquant à quel instant ce paquet est sorti d'un réseau qui est à simuler ; - et des moyens pour fournir chaque paquet de cette collection auxdits moyens (33) pour simuler une mémoire tampon, en retardant ce paquet avec un retard relatif qui est égal de la différence entre la deuxième étiquette temporelle (tRi) et la première étiquette temporelle (tci) associées à ce paquet. 4) Outil de simulation selon la revendication 1 caractérisé en ce que lesdits moyens (35) pour calculer pour chaque paquet reçu un instant théorique (tpi) où il devrait être restitué par cette mémoire tampon, en respectant l'ordre et la cadence définis par les premières étiquettes temporelles (tci), comportent des moyens pour additionner une constant (INT) à la valeur de ta première étiquette temporelle (tci) associée à ce paquet. Outil de simulation selon la revendication 1 caractérisé en ce que les moyens (35) pour calculer, pour chaque paquet suivant le premier paquet à restituer juste après le démarrage de la lecture ou juste après une période de récupération, un instant (tDi) où devra être restitué réellement par cette mémoire tampon, en respectant l'ordre et la cadence définis par les premières étiquettes temporelles (tci comportent des moyens pour calculer cet instant selon la formule : tDi = + (tpi - pB)où tpB est l'instant d'affichage théorique calculé pour ledit premier paquet, où tpi est l'instant d'affichage théorique calculé pour le paquet considéré, et où est l'instant où a (re)commencé ta restitution, tB étant réactualisé chaque fois que ta restitution redémarre après un assèchement de la mémoire tampon.5