Brevet FR3096541A1 — publié le 20201127

Description Titre de l'invention : Procédé de gestion du téléchargement progressif adaptatif (HAS) d'un contenu numérique diffusé en temps réel, gestionnaire, terminal lecteur de flux multimédia et programme d'ordinateur correspondants. Domaine technique de l'invention [0001] Le domaine de l'invention est celui des contenus multimédias numériques, à savoir les contenus audio et/ou vidéo numériques, en particulier les contenus diffusés en temps réel ou en direct (« LIVE » en anglais). Plus précisément, l'invention concerne l'optimisation de la gestion du téléchargement progressif adaptatif (HAS) dans le cadre d'une visualisation d'un contenu numérique diffusé en temps réel quelles que soient les variations des conditions réseau, notamment en termes de bande passante. Art antérieur [0002] L'accès à un contenu multimédia, tel que la télévision ou la vidéo à la demande, depuis un réseau de type Internet, est possible aujourd'hui, pour la plupart des terminaux de restitution, notamment lorsqu'ils appartiennent à un réseau de communication local, tel qu'un réseau domestique. [0003] Le terminal émet généralement une requête à destination d'un serveur, en indiquant le contenu choisi et il reçoit en retour un flux de données numériques relatives à ce contenu. Dans le cadre d'un réseau de communication local, une telle requête transite par la passerelle d'accès au réseau, par exemple la passerelle résidentielle. [0004] Le terminal est adapté pour recevoir ces contenus numériques sous forme de données multimédia et pour en faire une restitution. Cette restitution consiste à fournir au niveau du terminal le contenu numérique sous une forme accessible à l'utilisateur. Par exemple, des données reçues correspondant à une vidéo sont généralement décodées, puis restituées au niveau du terminal sous la forme d'un affichage dc la vidéo correspondante avec sa bande-son associée. Dans la suite, par souci de simplification, on assimilera le contenu numérique à une vidéo et la restitution par le terminal, ou consommation par l'utilisateur du terminal, à une visualisation ou lecture sur l'écran du terminal. [0005] La diffusion de contenus numériques sur Internet est souvent basée sur des protocoles client-serveur de la famille HTTP (de l'anglais « Hyper Text Transport Protocol »). En particulier, le téléchargement en mode progressif des contenus numériques, aussi appelé streaming, permet de transporter et consommer les données en temps réel, c'est-à-dire que les données numériques sont transmises sur le réseau et 2 restituées par le terminal au fur et à mesure de leur arrivée. Le terminal reçoit et stocke une partie des données numériques dans une mémoire tampon avant de les restituer. Ce mode de distribution est particulièrement utile quand le débit dont dispose l'utilisateur n'est pas garanti pour le transfert en temps réel de la vidéo. [0006] Le téléchargement progressif adaptatif, en anglais HTTP Adaptative Streaming, d'abréviation HAS, permet de surcroît de diffuser et recevoir des données suivant différentes qualités correspondant par exemple à différents débits. Ces différentes qualités sont décrites dans un fichier de paramètres disponible en téléchargement sur un serveur de données, par exemple un serveur de contenus. Quand le terminal de restitution souhaite accéder à un contenu, cc fichier de description permet de sélectionner le bon format pour le contenu à consommer en fonction de la bande passante disponible ou des capacités de stockage et de décodage du terminal de restitution. Cc type de technique permet notamment de tenir compte des variations de bande passante sur la liaison entre le terminal de restitution et le serveur de contenus. [0007] Il existe plusieurs solutions techniques pour faciliter la distribution d'un tel contenu en streaming, comme par exemple les solutions propriétaires Microsoft® Smooth Streaming, Apple® HLS, Adobe® HTTP Dynamic Streaming, ou encore la norme MPEG-DASH de l'organisme ISO/IEC qui sera décrite ci-après. Ces méthodes proposent d'adresser au client un ou plusieurs fichiers de description intermédiaires, appelés aussi documents ou manifestes, contenant les adresses des différents segments aux différentes qualités du contenu multimédia. [0008] Ainsi, la norme MPEG-DASH (pour l'anglais "Dynamic Adaptive Streaming over HTTP", en français « diffusion en flux adaptatif dynamique sur HTTP ») est un standard de format de diffusion audiovisuelle sur Internet. Il se base sur la préparation du contenu en différentes présentations de qualité et débit variables, découpées en segments de courte durée (de l'ordre de quelques secondes), également appelés chunks ». Chacun de ces segments est rendu disponible individuellement au moyen d'un protocole d'échange. Le protocole principalement ciblé est le protocole HTTP, mais d'autres protocoles (par exemple FTP) peuvent également être utilisés. L'organisation des segments et les paramètres associés sont publiés dans un manifeste au format XML. [0009] Le principe sous-jacent à cette norme est que le client MPEG-DASH effectue une es- timation de la bande passante disponible pour la réception des segments, et, en fonction du remplissage de son tampon de réception, choisit, pour le prochain segment à charger, une représentation dont le débit : - assure la meilleure qualité possible, - et permet un délai de réception compatible avec le rendu ininterrompu du contenu. [0010] Ainsi, pour s'adapter à la variation des conditions réseau, notamment en termes de 3 bande passante, les solutions existantes de téléchargement adaptatif permettent au terminal de restitution de passer d'une version du contenu encodée à un certain débit, à une autre encodée à un autre débit, au cours du téléchargement. En effet, chaque version du contenu est divisée en segments de même durée. Pour permettre une restitution en continu du contenu sur le terminal, chaque segment doit atteindre le terminal avant son instant programmé de restitution. La qualité perçue associée à un segment augmente avec la taille du segment, exprimée en bits, mais dans le même temps, des segments plus gros requièrent un temps de transmission plus important, et donc présentent un risque accru de ne pas être reçus à temps pour une restitution en continu du contenu. [0011] Le terminal de restitution doit donc trouver un compromis entre la qualité globale du contenu, et sa restitution ininterrompue, en sélectionnant avec soin le prochain segment à télécharger, parmi les différents débits d'encodage proposés. Il existe pour ce faire différents algorithmes de sélection de la qualité du contenu en fonction de la bande passante disponible, qui peuvent présenter des stratégies plus ou moins agressives, ou plus ou moins sécuritaires. [0012] En d'autres termes, afin d'assurer une certaine fluidité lors de la lecture, si la bande passante disponible ne permet pas d'accéder à la meilleure qualité diffusée, le terminal de restitution va utiliser des flux de données de moins bonne qualité. Cette technique permet ainsi de proposer la meilleure qualité vidéo possible tout en garantissant une lecture ou visualisation du contenu numérique fluide. [0013] La consommation de contenus numériques en téléchargement progressif adaptatif (HAS) tend à se démocratiser. Elle est notamment utilisée par de nombreux services de streaming (en français, diffusion en mode continu, ou lecture en continu), mais également par certains décodeurs TV, ou set-top-box, qui l'utilisent pour accéder à des contenus délinéarisés, tels que la vidéo à la demande (VOD), la diffusion en différé de programmes télévisuels (Replay), ou encore les offres de type Network PVR (pour Network Personal Video Recorder », i.e. un service d'enregistrement des contenus numériques, effectué par le fournisseur de contenus lui-même plutôt qu'au domicile de l'utilisateur final). [0014] En outre, d'autres dispositifs tels que des appareils lecteurs de flux multimédia en temps réel accèdent également aux contenus numériques en mode de téléchargement adaptatif progressif pour des contenus télévisuels en temps réel (ou LIVE). C'est le cas par exemple de l'appareil ChromecastO développé par Google0, ou de la CléTVO d'Orange®. De tels appareils se branchent classiquement sur le port HDMI d'un téléviseur et communiquent, par connexion Wi-Fi®, avec un autre appareil du réseau de communication domestique connecté à un réseau de communication étendu de type Internet (passerelle résidentielle, ordinateur, téléphone intelligent de type smartphone, tablette...), afin de restituer, sur le téléviseur, le contenu multimédia reçu par une application logicielle compatible. On désignera par la suite ces appareils sous la désignation générique de Clef HDM1. [0015] Dans la suite, par souci de simplification, on assimilera le ternie « terminal de res- titution » à l'association d'un lecteur de flux multimédia en temps réel (comme par exemple une CléTV® d'OrangeC)) et d'un terminal permettant de visualiser le contenu (comme par exemple un téléviseur). Dans un autre exemple, le terminal de restitution correspond à l'association entre une set-top box (STB), intégrant un lecteur de flux multimédia en temps réel, et un téléviseur. [0016] Même si la technique de téléchargement en HAS a pour avantage d'optimiser la qualité globale du contenu numérique diffusé en LIVE en fonction d'une contrainte de bande passante disponible, elle n'est pas dépourvue d'inconvénients. En effet, le téléchargement en HAS ne permet pas nativement de laisser le choix à l'utilisateur de la qualité de restitution du contenu, qui est systématiquement optimisée, en fonction de contraintes de ressources du terminal lecteur de flux multimédia, pour permettre une restitution en temps réel du contenu (par exemple, un programme télévisuel). [0017] En particulier, pour certains contenus diffusés en LIVE, on peut imaginer que l'utilisateur souhaite accéder à la meilleure qualité de débit possible afin de bénéficier par exemple d'un contenu numérique en haute définition (HD), et ceci quelles que soient les contraintes de bande passante. C'est notamment le cas par exemple lorsque l'utilisateur possède un terminal proposant une résolution Haute Définition (HD), c'est-à-dire une résolution d'écran au minium de 720p soit 1 280 x 720 pixels. Certains téléviseurs HD peuvent proposer, pour les meilleurs téléviseurs, une résolution d'affichage de 1920 x 1080 pixels (« Full HD »), ou bien une résolution de 3840 x 2160 pixels, soit quatre fois le « Full HD » (téléviseurs « Ultra HD »). [0018] Ainsi, lorsque la bande passante est limitée, le téléchargement en HAS ne permet pas à l'utilisateur de visualiser un contenu LIVE à la meilleure qualité possible afin de profiter pleinement de la qualité d'affichage de son téléviseur HD par exemple. Il en ressort que la qualité d'expérience de l'utilisateur concernant la visualisation d'un contenu LIVE sur un écran HD n'est pas optimale. [0019] 11 existe donc un besoin d'une technique de gestion du téléchargement progressif adaptatif (HAS) d'un contenu numérique diffusé en temps réel, qui ne présente pas ces différents inconvénients de l'art antérieur. Notamment, il existe un besoin d'une telle technique qui permette d'améliorer la qualité d'expérience de l'utilisateur lors de la visualisation de contenus LIVE, notamment, mais non exclusivement, sur un écran HD. Présentation de l'invention [0020] L'invention répond à ce besoin en proposant un procédé de gestion du téléchargement progressif adaptatif (HAS) d'un contenu numérique diffusé en temps réel, au sein d'un terminal lecteur de flux multimédia. Un tel procédé comprend une obtention d'un fichier de description du contenu numérique, comprenant une liste de segments temporels à télécharger du contenu associés chacun à plusieurs débits d'encodage du contenu, et une détermination d'un débit d'encodage des segments temporels à télécharger pour une restitution en temps réel du contenu, en fonction d'une contrainte de ressource du terminal. [0021] Selon l'invention, si le débit d'encodage déterminé est inférieur à un débit d'encodage maximum proposé dans le fichier de description, alors le procédé met en oeuvre une sélection d'une option : - de téléchargement des segments temporels au débit d'encodage déterminé et de restitution du contenu en temps réel ; ou - de téléchargement des segments temporels à un débit d'encodage supérieur au débit d'encodage déterminé et de restitution différée du contenu. [0022] Ainsi, l'invention repose sur une approche tout à fait nouvelle et inventive du télé- chargement progressif adaptatif de contenu numérique diffusé en temps réel, ou LIVE, en proposant d'offrir la possibilité à l'utilisateur de visualiser le contenu numérique en différé, plutôt qu'en temps réel, afin de bénéficier d'une restitution avec un meilleur niveau de qualité, et ainsi lui offrir une meilleure qualité d'expérience lors de la visualisation de ces contenus LIVE. [0023] Pour cela, selon la technique HAS classique, le terminal lecteur de flux multimédia détermine, en fonction de la bande passante disponible, le débit d'encodage des segments temporels du contenu diffusé en LIVE à télécharger. Si ce débit d'encodage est inférieur au débit d'encodage maximum des segments temporels proposé dans le fichier de description, alors le procédé selon l'invention offre la possibilité de choisir parmi deux options de téléchargement et de restitution du contenu diffusé en LIVE. [0024] La première option correspond à un téléchargement des segments temporels au débit d'encodage déterminé et une restitution du contenu en temps réel. En effet, l'utilisateur peut souhaiter ne pas attendre avant de visualiser le contenu LIVE et se contenter de le visualiser à la qualité disponible, quelle qu'elle soit, si par exemple, il dispose de peu de temps et que ce contenu n'a qu'un intérêt limité pour lui, ou ne nécessite pas une haute qualité de restitution. Classiquement, afin d'assurer une fluidité lors de la lecture, le terminal va alors utiliser des flux de données et des « chunks » de moins bonne qualité, si la bande passante disponible ne permet pas d'accéder à la meilleure qualité proposée dans le fichier manifeste. [0025] Toutefois, pour permettre à l'utilisateur de visualiser un contenu LIVE avec une qualité de restitution supérieure à celle que permet la bande passante disponible, la seconde option offre la possibilité de regarder en différé ce contenu LIVE. Ainsi, si 6 l'utilisateur possède un téléviseur HD et souhaite visualiser un film diffusé en LIVE ou son émission télévisuelle préférée en profitant pleinement de la qualité de résolution de son écran de téléviseur, cette seconde option est avantageuse : la restitution du contenu se fait alors en différé afin de permettre une restitution fluide et de meilleure qualité du contenu diffusé en LIVE, durant toute la durée de cc dernier. [0026] Avantageusement, cette seconde option permet d'améliorer la qualité d'expérience de l'utilisateur, notamment s'il souhaite profiter de la HD de son écran pour la visualisation d'un contenu LIVE. [0027] Selon une première caractéristique de l'invention, la sélection de l'une de ces deux options tient compte d'une information contextuelle. [0028] Selon un premier aspect, cette information contextuelle résulte d'un choix exprimé par un utilisateur via une interface du terminal. [0029] Ainsi, l'utilisateur peut sélectionner, par exemple via l'interface du terminal de res- titution, s'il souhaite choisir l'option de télécharger à la meilleure qualité possible quelle que soit la bande passante, et de visualiser en différé le contenu LIVE. Cc choix peut s'opérer contenu par contenu. Il peut également être exprimé par l'utilisateur lors d'une phase de pré-configuration du service de diffusion de contenus. [0030] Selon une autre caractéristique, cette information contextuelle tient compte d'une composante contextuelle appartenant au groupe comprenant : - une nature du contenu, - une durée du contenu, - un horaire de diffusion du contenu, - une programmation d'un enregistrement du contenu. [0031] Ainsi, on peut sélectionner un téléchargement à une meilleure qualité et une res- titution en différé, ou une restitution en direct à la qualité disponible, en fonction de la nature de contenu, (par exemple un film ou série, une émission télévisuelle comme par exemple le journal télévisuel), d'horaire ou de programmation d'enregistrement. Cette sélection peut être configurée par l'utilisateur lors d'une phase de pré-configuration, et être opérée à la volée par le terminal lecteur de flux multimédia. Elle peut également être opérée par le terminal lecteur de flux multimédia, selon une pré-configuration effectuée par le fournisseur de service. [0032] La pré-configuration de cette option se fait par exemple via une interface utilisateur proposant un menu déroulant. [0033] Selon un aspect de l'invention, l'option de téléchargement des segments temporels à un débit d'encodage supérieur au débit d'encodage déterminé et de restitution différée du contenu comprend : - une phase de pré-stockage de segments temporels au débit d'encodage supérieur dans une mémoire tampon du terminal, pendant une durée de pré-stockage ; 7 - une phase conjointe de stockage de segments temporels au débit d'encodage supérieur et de restitution différée du contenu à partir de segments temporels extraits de la mémoire tampon, débutant à l'issue de la durée de pré-stockage. [0034] La durée de pré-stockage est déterminée de façon que la mémoire tampon soit vide à la fin de la restitution différée. [0035] Avantageusement, afin d'assurer une lecture en continu du contenu LIVE, lorsque l'utilisateur souhaite le visualiser à la meilleure qualité possible, le lecteur de flux numérique va dans un premier temps mettre en pause la restitution du contenu et remplir sa mémoire tampon (ou « buffcr » en anglais) avec les segments temporels du contenu LIVE à un débit d'encodage supérieur au débit d'encodage déterminé en fonction de la disponibilité en bande passante. [0036] Cette phase de remplissage de la mémoire tampon se fait tant que le lecteur de flux n'a pas stocké en mémoire suffisamment de contenu, ou segments temporels, pour assurer ensuite une lecture fluide. [0037] Une fois que le lecteur de flux a mis en mémoire tampon, ou stocké, suffisamment de segments temporels du contenu, le lecteur de flux passe alors dans une phase de restitution différée, c'est-à-dire, en mode lecture du contenu. Cette restitution différée s'opère conjointement avec le stockage en mémoire tampon des segments temporels suivants du contenu. [0038] Ainsi, pendant la lecture, on consomme la vidéo mise en mémoire tampon et on continue à télécharger des segments temporels représentatifs de la vidéo diffusée, de façon à continuer à remplir la mémoire tampon. [0039] Selon un autre aspect de l'invention, la détermination de la durée de pré-stockage tient compte d'au moins un paramètre appartenant au groupe comprenant : - le débit d'encodage supérieur, - une durée du contenu, - un débit instantané de téléchargement du terminal. [0040] La durée du contenu numérique est obtenue par le terminal par interrogation d'un serveur de guides de programmes diffusés en temps réel. [0041] Ainsi, ces paramètres permettent de déterminer la durée de pré-stockage nécessaire afin de stocker suffisamment de segments à une qualité supérieure pour une restitution différée en continu du contenu. [0042] Dans un mode de réalisation particulier de l'invention, on détermine au moins deux durées de pré-stockage pour au moins deux débits d'encodage supérieurs au débit d'encodage déterminé. Le choix de l'utilisateur comprend une sélection, via l'interface, de l'une des au moins deux durées de pré-stockage. [0043] Avantageusement, l'utilisateur peut choisir parmi plusieurs options de durée de pré- stockage en fonction de ses préférences ou besoins. 8 [0044] Dans un mode de réalisation particulier, le débit supérieur est le débit d'encodage maximum proposé dans le fichier de description. [0045] L'utilisateur peut alors visualiser à la meilleure qualité proposée un contenu numérique LIVE en téléchargement HAS de son choix, quelle que soit la disponibilité en bande passante. [0046] L'invention concerne également un produit programme d'ordinateur comprenant des instructions de code de programme pour la mise en oeuvre d'un procédé de gestion du téléchargement progressif adaptatif (HAS), tel que décrit précédemment, lorsqu'il est exécuté par un processeur. [0047] L'invention vise également un support d'enregistrement lisible par un ordinateur sur lequel est enregistré un programme d'ordinateur comprenant des instructions de code de programme pour l'exécution des étapes du procédé de gestion du téléchargement progressif adaptatif (FIAS) selon l'invention tel que décrit ci-dessus. [0048] Un tel support d'enregistrement peut être n'importe quelle entité ou dispositif capable de stocker le programme. Par exemple, le support peut comporter un moyen de stockage, tel qu'une ROM, par exemple un CD ROM ou une ROM de circuit micro-électronique, ou encore un moyen d'enregistrement magnétique, par exemple une clé USB ou un disque dur. [0049] D'autre part, un tel support d'enregistrement peut être un support transmissible tel qu'un signal électrique ou optique, qui peut être acheminé via un câble électrique ou optique, par radio ou par d'autres moyens, de sorte que le programme d'ordinateur qu'il contient est exécutable à distance. Le programme selon l'invention peut être en particulier téléchargé sur un réseau par exemple le réseau Internet. [0050] Alternativement, le support d'enregistrement peut être un circuit intégré dans lequel le programme est incorporé, le circuit étant adapté pour exécuter ou pour être utilisé dans l'exécution du procédé de contrôle d'affichage précité. [0051] L'invention concerne encore un dispositif de gestion de téléchargement progressif adaptatif (HAS) d'un contenu numérique diffusé en temps réel, au sein d'un terminal lecteur de flux multimédia, comprenant : - un module d'obtention d'un fichier de description du contenu numérique, comprenant une liste de segments temporels à télécharger du contenu associés chacun à plusieurs débits d'encodage du contenu, - un module de détermination d'un débit d'encodage des segments temporels à télécharger pour une restitution en temps réel du contenu, en fonction d'une contrainte de ressource du terminal. [0052] Ce dispositif comprend en outre un module de sélection d'une option : - de téléchargement des segments temporels au débit d'encodage déterminé et de restitution du contenu en temps réel ; ou 9 - de téléchargement des segments temporels à un débit d'encodage supérieur au débit d'encodage déterminé et de restitution du contenu en différé. [0053] Un tel module de sélection est activé lorsque le débit d'encodage déterminé est inférieur à un débit d'encodage maximum proposé dans le fichier de description. [0054] Enfin, l'invention concerne également un terminal lecteur de flux multimédia, comprenant un dispositif de gestion du téléchargement progressif adaptatif (HAS) tel que décrit précédemment. [0055] Le dispositif de gestion, le lecteur de flux multimédia et le programme d'ordinateur correspondants précités présentent au moins les mêmes avantages que ceux conférés par le procédé de gestion du téléchargement progressif adaptatif (HAS) selon les différents modes de réalisation de la présente invention. Brève description des figures [0056] D'autres buts, caractéristiques et avantages de l'invention apparaîtront plus clairement à la lecture de la description suivante, donnée à titre de simple exemple illustratif, et non limitatif, en relation avec les figures, parmi lesquelles : [0057] [fig.11 : présente une architecture de téléchargement progressif basée sur l'utilisation du streaming adaptatif selon un mode de réalisation de l'invention ; [0058] [fig.21 : illustre de façon schématique la structure matérielle d'un terminal lecteur de flux multimédia intégrant un dispositif de gestion de téléchargement progressif adaptatif selon un mode de réalisation de l'invention ; [0059] [fig.3A] : illustre un exemple de mise en oeuvre d'un procédé de gestion du télé- chargement progressif adaptatif (HAS) d'un contenu numérique diffusé en LIVE par un terminal lecteur de flux multimédia de la figure 2 associé à un terminal client ; [0060] [fig.3131 : représente un exemple de sélection d'un segment d'un contenu numérique diffusé en LIVE lors de la mise en oeuvre d'un procédé de gestion du téléchargement progressif adaptatif (HAS) d'un contenu numérique diffusé en LIVE selon la figure 3A par le terminal lecteur de flux numérique de la figure 2 ; [0061] [fig.41 : illustre de façon schématique la mise en oeuvre d'une option de télé- chargement des segments temporels à un débit d'encodage supérieur à un débit d'encodage déterminé en fonction d'une contrainte de ressource, et de restitution en différé du contenu numérique diffusé en LIVE; [0062] [fig.5A] : illustre un exemple d'affichage d'un message de demande de sélection d'un temps d'attente avant reprise de la restitution du contenu numérique diffusé en LIVE selon un mode de réalisation de l'invention ; [0063] [fig.5B] : illustre un exemple d'affichage d'un message de demande de sélection d'un temps d'attente avant reprise de la restitution du contenu numérique diffusé en LIVE selon un mode de réalisation de l'invention ; 100641 Ifie.5C1: illustre un autre exemple d'affichage d'un message de demande de sélection d'un temps d'attente avant reprise de la lecture du contenu numérique diffusé en LIVE selon un mode de réalisation ; [0065] [fig-6] : illustre un exemple d'affichage d'un message de demande de sélection d'une option de téléchargement et de restitution d'un contenu numérique diffusé en LIVE selon un mode de réalisation de l'invention ; [0066] [fig.7] : illustre un exemple d'interface de pré-configuration des options de télé- chargement du contenu selon un mode de réalisation de l'invention. Description détaillée de l'invention [0067] Le principe général de l'invention repose, dans le cadre d'un téléchargement progressif adaptatif de type I-IAS, sur l'offre d'une possibilité de visualiser, en différé, un contenu numérique diffusé en temps réel, ou LIVE, comme par exemple une émission télévisuelle ou un film diffusé en direct, afin de permettre à un utilisateur de bénéficier d'une meilleure qualité de restitution. [0068] Plus particulièrement, l'invention consiste à proposer plusieurs options de télé- chargement et de restitution des segments temporels du contenu. Ainsi, lorsque le débit d'encodage des segments temporels du contenu diffusé en LIVE est inférieur à un débit d'encodage, par exemple le débit maximal proposé dans le fichier de description de cc contenu, notamment lorsque le débit instantané de téléchargement du terminal lecteur de flux ne permet pas de télécharger les segments à la meilleure qualité proposée, alors on peut choisir, en fonction d'une information contextuelle : - soit de télécharger les segments temporels à un débit d'encodage réduit, déterminé en fonction de la contrainte de ressource du terminal lecteur de flux multimédia, pour une restitution en temps réel ; - soit de télécharger les segments temporels à un débit d'encodage supérieur à ce débit, mais pour une restitution différée. [0069] Dans le cadre des contenus diffusés en LIVE en téléchargement dit 11AS, l'invention permet donc notamment à l'utilisateur de choisir de visualiser un contenu numérique diffusé en LIVE, soit en temps réel mais à un débit d'encodage éventuellement limité par la bande passante disponible, soit en différé mais avec une qualité de restitution et une résolution supérieure. [0070] L'utilisateur n'est alors plus dépendant des règles du téléchargement en HAS, mais peut, s'il le souhaite, choisir d'imposer le téléchargement des segments temporels à une qualité supérieure, malgré une bande passante limitée, au prix cependant d'une restitution différée du contenu. [0071] Ainsi, l'utilisateur peut regarder son émission télévisuelle préférée à une qualité su- périeure et ainsi, par exemple, profiter pleinement de la qualité de résolution de son 11 écran de téléviseur, si celui-ci offre une qualité HD ou supérieure. A l'inverse, il peut choisir de regarder en direct le journal télévisé, pour lequel la qualité de restitution lui importe moins. [0072] On présente désormais, en relation avec la figure 1, une architecture de télé- chargement progressif basée sur l'utilisation du streaming adaptatif selon l'invention. [0073] Le terminal 3, par exemple un téléphone intelligent de type « smartphone », le terminal 4, par exemple un ordinateur portable, et le terminal 8, par exemple une clef HDMI connectée à un téléviseur 5, se trouvent dans cet exemple situés dans un réseau local (LAN, 10) piloté par une passerelle domestique 6. Le contexte du réseau local est donné à titre d'exemple et pourrait être transposé aisément à un réseau Internet de type « best effort », un réseau d'entreprise, etc. [0074] Un serveur de contenus numériques LIVE en HAS, référencé 2, se trouve selon cet exemple dans le réseau étendu (WAN, 1) mais il pourrait indifféremment être situé dans le réseau local (LAN, 10), par exemple dans la passerelle domestique 6 ou tout autre équipement capable d'héberger un tel serveur de contenus. Le serveur de contenus LIVE en HAS 2 reçoit par exemple des chaînes de contenus de télévision numérique en provenance d'un réseau de télévision diffusée, non représenté, et les met à disposition des terminaux clients. [0075] Les terminaux client 3, 4 et 8 peuvent entrer en communication avec le serveur de contenus LIVE en HAS 2 pour recevoir un ou plusieurs contenus (films, documentaires, séquences publicitaires, etc.). [0076] 11 est fréquent, dans ce contexte client-serveur, de recourir, pour échanger les données entre les terminaux clients 3, 4 et 8 et le serveur 2, à une technique de téléchargement progressif adaptatif, en anglais « adaptive streaming », abrégé en HAS basée sur le protocole HTTP. Ce type de technique permet notamment d'offrir une bonne qualité de contenus à l'utilisateur en tenant compte des variations de bande passante qui peuvent se produire sur la liaison entre le terminal client 3, 4 et 8 et la passerelle de services 6, ou entre cette dernière et le serveur de contenus LIVE en HAS 2. [0077] Classiquement, différentes qualités peuvent être encodées pour le même contenu d'une chaîne, correspondant par exemple à différents débits. Plus généralement, on parlera de qualité pour se référer à une certaine résolution du contenu numérique (résolution spatiale, temporelle, niveau de qualité associée à la compression vidéo et/ ou audio) avec un certain débit. Chaque niveau de qualité est lui-même découpé sur le serveur de contenus en segments temporels (ou « fragments » de contenu, en anglais chunks », ces trois mots étant utilisés indifféremment dans l'ensemble de ce document). [0078] La description de ces différentes qualités et de la segmentation temporelle associée, 12 ainsi que les fragments de contenu, sont décrits pour le terminal client et mis à sa disposition via leurs adresses Internet (URI : Universal Ressource Identifier). L'ensemble de ces paramètres (qualités, adresses des fragments, etc.) est en général regroupé dans un fichier de paramètres, dit fichier de description. On notera que ce fichier de paramètres peut être un fichier informatique ou un ensemble d'informations descriptives du contenu, accessible à une certaine adresse. [0079] Les terminaux 3, 4 et 8 possèdent leurs propres caractéristiques en ternies de capacité de décodage, d'affichage, etc. Dans un contexte de téléchargement adaptatif progressif, ils peuvent adapter leurs requêtes pour recevoir et décoder le contenu demandé par l'utilisateur à la qualité qui leur correspond au mieux. Dans notre exemple, si les contenus sont disponibles aux débits 500 kb/s (kilobits par seconde) (Résolution 1, ou niveau 1, noté Dl). 1000 kb/s (D2), 2000 kb/s (D3) et que le terminal client dispose d'une bande passante de 3000 kb/s, il peut demander le contenu à n'importe quel débit inférieur à cette limite, par exemple 2000 kb/s. De manière générale, on note « Ci @Dj » le contenu numéro i avec la qualité j (par exemple le Hème niveau Dj de qualité décrit dans le fichier de description). [0080] La passerelle de service 6 est dans cet exemple une passerelle domestique qui assure le routage des données entre le réseau étendu 1 et le réseau local 10, gère les contenus numériques en assurant notamment leur réception en provenance du réseau et leur décodage grâce aux décodeurs que l'on suppose ici intégrés à la passerelle 6 ou aux terminaux clients 3, 4 et 8. En variante, les décodeurs peuvent se trouver ailleurs dans le réseau étendu 1 ou local 10, notamment au niveau d'un élément de type STB (de l'anglais Set-Top-Box) (non représenté) associé à un téléviseur. [0081] Dans cet exemple, pour visualiser un contenu, le terminal 3, 4 ou 8 interroge tout d'abord la passerelle de service 6 pour obtenir une adresse du document de description 7 du contenu (par exemple, CI) souhaité. La passerelle de service 6 répond en fournissant au terminal l'adresse du fichier de description 7. Dans la suite, on supposera que ce fichier est un fichier de type manifeste selon la norme MPEG-DASH (noté « C.mpd ») et on se réfèrera indifféremment, selon le contexte, à l'expression fichier de description » ou « manifeste ». [0082] Alternativement, ce fichier peut être récupéré directement auprès d'un serveur Internet local ou externe au réseau local, ou se trouver déjà sur la passerelle de service ou sur le terminal au moment de la requête. [0083] Un exemple de fichier manifeste (MPD) conforme à la norme MPEG-DASH et comportant la description de contenus disponibles dans trois qualités différentes (Ni = 512 kb/s, N2 = 1024 kb/s, N3 = 2048 kb/s) des contenus fragmentés est présenté en Annexe 1. Ce fichier manifeste simplifié décrit des contenus numériques dans une syntaxe XML (de l'Anglais « eXtended Markup Language»), comprenant une liste de 13 contenus sous forme de fragments classiquement décrits entre une balise ouvrante ( ) et une balise fermante ( ). La découpe en fragments permet notamment de s'adapter finement aux fluctuations de la bande passante. Chaque fragment correspond à une certaine durée (champ « duration ») avec plusieurs niveaux de qualité et permet de générer leurs adresses (URL - Uniform Resource Locator). Cette génération est faite dans cet exemple à l'aide des éléments « BaseURL » (« HTTP://server.com») qui indique l'adresse du serveur de contenus et « SegmentURL » qui liste les parties complémentaires des adresses des différents fragments : - « Cl 512kb 1.mp4 » pour le premier fragment du contenu « Cl » à 512 kilobits par seconde (« kb ») au format MPEG-4 (« mp4 »), - « Cl 512kb 2.mp4 » pour le second fragment, - etc. [0084] Une fois qu'elle dispose des adresses de fragments correspondant au contenu souhaité, la passerelle de service 6 procède à l'obtention des fragments via un téléchargement à ces adresses. On notera que ce téléchargement s'opère ici, traditionnellement, au travers d'une URL HTTP, mais pourrait également s'opérer au travers d'une adresse universelle (URI) décrivant un autre protocole (dvb://monsegmentdecontenu par exemple). [0085] On suppose ici que la clef HDMI 8 est connectée au téléviseur 5 par branchement sur le port HDMI de ce dernier, et est utilisée pour restituer, sur l'écran du téléviseur 5, un programme télévisuel diffusé en direct, comme par exemple un film, une série, une émission télévisuelle, une séquence publicitaire etc... Par la suite, on désigne ce programme télévisuel sous le nom de contenu LIVE Cl. Un tel contenu LIVE Cl est décrit dans un fichier manifeste 7. [0086] Dans cet exemple, la clef HDMI 8 est connectée en WiFi® directement à la passerelle résidentielle 6. En variante, la clef HDMI 8 pourrait également être connectée en WiFi0 à un autre périphérique nomade du réseau domestique, par exemple à l'ordinateur portable 4 ou au téléphone intelligent 3, par l'intermédiaire duquel elle pourrait accéder au réseau de communication étendu 1. [0087] La clef HDMI 8 peut également être pilotée par l'utilisateur au moyen du téléphone intelligent 3, sur lequel est installée une application logicielle de commande de la clef HDMI 8. [0088] Les fragments de contenu obtenus par la passerelle résidentielle 6 sont par exemple transmis en WiFi0 à la clef HDMI 8, qui pilote leur affichage sur l'écran du téléviseur 5, pour restitution à l'utilisateur. [0089] La figure 2 représente une architecture d'un terminal lecteur de flux multimédia 9, ou lecteur de flux 9, selon un mode de réalisation de l'invention, intégré par exemple à 14 la passerelle 6 ou aux terminaux 3,4, ou 8 de la figure 1. En variante, ce lecteur de flux est intégré au niveau d'un élément de type STB associé à un téléviseur (non représenté). [0090] Il comprend, classiquement, des mémoires M associées à un processeur CPU. Les mémoires peuvent être de type ROM (de « Read Only Memory ») ou RAM (de l'anglais « Randorn Access Menzory ») ou encore Flash. Le lecteur de flux multimédia 9 comprend un module de téléchargement progressif adaptatif HAS apte à demander un téléchargement progressif de l'un des contenus à l'une des qualités proposées dans un fichier dc description 7. Ce fichier de description 7 peut être enregistré par exemple dans les mémoires M du lecteur de flux multimédia 9 ou se trouver à l'extérieur. [0091] Le lecteur de flux multimédia 9 comprend en outre un module SEL de sélection d'une option de téléchargement et de restitution d'un contenu LIVE Cl. Ce module SEL est apte à, d'une part, déterminer si le débit d'encodage déterminé en fonction de la bande passante est inférieur à un débit d'encodage maximum proposé dans le fichier de description, et d'autre part, opérer une sélection, en fonction d'une information contextuelle, d'une option : - de téléchargement des segments temporels au débit d'encodage déterminé en fonction de la bande passante et de restitution du contenu en temps réel (par la suite dite première option) ; ou - de téléchargement des segments temporels à un débit d'encodage supérieur au débit d'encodage déterminé et de restitution différée du contenu (par la suite dite seconde option). [0092] Dans le cadre de la seconde option, le module SEL pilote alors le module de télé- chargement progressif adaptatif HAS, afin de forcer ce dernier à demander le téléchargement des segments temporels de qualité supérieure. Le module SEL est également capable de piloter la restitution en différé du contenu LIVE Cl, par exemple sur le téléviseur 5. [0093] Le choix de la première ou de la seconde option peut être effectué par l'utilisateur du terminal 9, au travers d'une interface dédiée, et ce, contenu par contenu. [0094] Il peut également être pré-configuré par l'utilisateur, au travers de cette interface, par exemple en fonction de la nature du contenu, ou de son horaire de diffusion (par exemple, le journal télévisé doit toujours suivre la première option, et être diffusé en temps réel, au détriment de sa qualité de restitution, mais les documentaires animaliers doivent être restitués en qualité maximale, même si leur restitution doit pour cela être différée). [0095] Cette pré-configuration peut également être opérée par le fournisseur du service HAS, par exemple l'opérateur de la passerelle domestique 6, au moins pour certains types de contenus ou certains contextes : par exemple, pour un contenu LIVE dont l'utilisateur a programmé un enregistrement, le choix de la seconde option peut être adopté par défaut, pour permettre une amélioration de la qualité de l'expérience utilisateur lors de la restitution différée du contenu. [0096] Afin de permettre à l'utilisateur de faire un choix quant aux options de télé- chargement et de restitution des segments temporels du contenu Cl, le module SEL interagit donc avec une interface utilisateur INTF du lecteur de flux multimédia 9. Cette interface utilisateur propose par exemple l'affichage d'une fenêtre pop-up sur l'écran du téléviseur 5 ou des terminaux 3 et 4, proposant, au choix, la restitution en direct à une qualité modérée, ou la restitution différée avec une qualité supérieure. De préférence, cette seconde option s'accompagne d'une indication donnée à l'utilisateur du temps d'attente escompté avant le début de la restitution différée du contenu. [0097] En effet, dans le cadre de la seconde option, le module SEL est également apte à dé- terminer une durée de pré-stockage, dans la mémoire tampon du lecteur de flux multimédia 9, des segments temporels de qualité supérieure à télécharger. [0098] Cette durée de pré-stockage correspond au temps de pause minimum de la lecture, pour que celle-ci se fasse ensuite de manière fluide tout au long de la restitution du contenu. A l'issue de cette durée de pré-stockage, on est assuré que suffisamment de segments temporels aient été mémorisés, pour que la restitution différée du contenu puisse débuter, sans être ensuite interrompue jusqu'à la fin du contenu. [0099] Le lecteur (le flux multimédia 9 selon l'invention peut aussi contenir d'autres modules (non représentés) comme un disque dur pour le stockage des fragments vidéo, un module de contrôle d'accès aux contenus, un module de traitement des commandes reçues d'une tablette, d'un Smartphone, ou d'une télécommande, grâce à laquelle l'utilisateur peut en contrôler le fonctionnement, etc. [0100] On notera que le terme module peut correspondre aussi bien à un composant logiciel qu'à un composant matériel ou un ensemble de composants matériels et logiciels, un composant logiciel correspondant lui-même à un ou plusieurs programmes ou sous-programmes d'ordinateur ou de manière plus générale à tout élément d'un programme apte à mettre en oeuvre une fonction ou un ensemble de fonctions telles que décrites pour les modules concernés. De la même manière, un composant matériel correspond à tout élément d'un ensemble matériel (ou hardware) apte à mettre en oeuvre une fonction ou un ensemble de fonctions pour le module concerné (circuit intégré, carte à puce, carte à mémoire, etc.). [0101] Plus généralement, un tel lecteur de flux 9 comprend une mémoire vive (par exemple une mémoire RAM), une unité de traitement équipée par exemple d'un processeur CPU, et pilotée par un programme d'ordinateur, représentatif du module de gestion du téléchargement progressif adaptatif HAS, stocké dans une mémoire morte (par 16 exemple une mémoire ROM ou un disque dur). A l'initialisation, les instructions de code du programme d'ordinateur sont par exemple chargées dans la mémoire vive avant d'être exécutées par le processeur CPU de l'unité de traitement. La mémoire vive contient notamment le fichier de description manifeste 7. Le processeur de l'unité de traitement pilote la comparaison de la qualité d'encodage des segments temporels à télécharger avec le débit d'encodage maximal proposé par le fichier de description 7, l'affichage de fenêtres pop-up ou d'un menu déroulant sur l'écran du téléviseur 5 ou des terminaux 3 ou 4, la sélection en fonction d'une information contextuelle : - d'une option de téléchargement des segments temporels à un débit d'encodage limité, déterminé en fonction de la contrainte de ressource, pour une restitution en temps réel ; ou - d'une option de téléchargement des segments temporels à un débit d'encodage supérieur au débit déterminé en fonction de la contrainte de ressource, mais pour une restitution en différé ; et l'émission de commandes correspondantes vers le module client HAS. [0102] La figure 2 illustre seulement une manière particulière, parmi plusieurs possibilités, de réaliser le lecteur de flux 9, afin qu'il effectue les étapes du procédé détaillé ci-après, en relation avec les figures 3A et 3B (dans l'un quelconque des différents modes de réalisation, ou dans une combinaison de ces modes de réalisation). En effet, ces étapes peuvent être réalisées indifféremment sur une machine de calcul reprogrammable (un ordinateur PC, un processeur DSP ou un microcontrôleur) exécutant un programme comprenant une séquence d'instructions, ou sur une machine de calcul dédiée (par exemple un ensemble de portes logiques comme un FPGA ou un ASIC, ou tout autre module matériel). [0103] On présente désormais, en relation avec la figure 3A, un exemple de mise en oeuvre d'un procédé de gestion du téléchargement progressif adaptatif (HAS) d'un contenu numérique diffusé en LIVE selon l'invention. [0104] Dans cet exemple, l'utilisateur souhaite accéder à un contenu diffusé en LIVE et en http Adaptive Streaming » (HAS), comme une émission télévisuelle, une série ou un film, sur son téléviseur 5 connecté à une clé HDMI 8 intégrant un lecteur de flux multimédia 9 selon la figure 2. Le lecteur de flux multimédia 9 comprend un module SEL de sélection, en fonction d'une information contextuelle, d'une option de téléchargement et de restitution du contenu diffusé en LIVE, un module HAS et une interface utilisateur INTF. La clé HDMI 8 peut être pilotée via une télécommande ou via une application logicielle de commande d'un téléphone intelligent 3. [0105] Afin de visualiser un contenu diffusé en LIVE, l'utilisateur, via le terminal de res- titution 30, i.e. association du téléviseur 5 et de la clé HDMI 8 formant lecteur de flux 9 par exemple, envoie au cours d'une étape 301 une requête, qui transite par la 17 passerelle 6, indiquant le contenu choisi au serveur de contenu LIVE en HAS 2. [0106] Dans une étape 302, le serveur de contenu LIVE en HAS 2 envoie en réponse à cette requête un flux de données représentatif du contenu choisi. Le serveur de contenu LIVE en HAS 2 expose un contenu LIVE Cl sous forme de fragments Cl i@Dj encodés à différents débits d'encodage Dj, où l'indice i désigne un identifiant temporel, ou position, du fragment CleDj. Le lecteur de flux 9 commence alors à récupérer les segments temporels du contenu LIVE Cl. [0107] Ce flux de données est récupéré par le module HAS du lecteur de flux multimédia 9, par exemple la clé HDMI 8, qui en pilote la restitution sur le téléviseur 5 pour une visualisation par l'utilisateur. [0108] Selon l'art antérieur, le module HAS est chargé de venir récupérer les fragments auprès du serveur de contenu LIVE en HAS 2 en choisissant la qualité vidéo Dj en fonction de la ressource réseau disponible. On ne décrit pas ici plus en détail la façon dont le module client HAS choisit le débit d'encodage du prochain fragment vidéo à télécharger : il existe en effet de nombreux algorithmes permettant d'opérer ce choix, dont les stratégies sont plus ou moins sécuritaires ou agressives. On rappelle cependant que, le plus souvent, le principe général de tels algorithmes repose sur le téléchargement d'un premier fragment au débit d'encodage le plus faible proposé dans le manifeste, et sur l'évaluation du temps de récupération de ce premier fragment. Sur cette base, le module client HAS évalue si, en fonction de la taille du fragment et du temps mis pour le récupérer, les conditions réseau permettent de télécharger le fragment suivant à un débit d'encodage plus élevé. Certains algorithmes reposent sur une augmentation progressive du niveau de qualité des fragments de contenu téléchargés ; d'autres proposent des approches plus risquées, avec des sauts clans les niveaux des débits d'encodage des fragments successifs. [0109] Au cours d'une étape non représentée, le module HAS récupère le fichier manifeste 7 afin de découvrir les fragments disponibles du contenu diffusé en LIVE Cl, et les différentes qualités vidéo Dj associées. [0110] Dans une étape 303, le module SEL du lecteur de flux 9 détermine si le débit d'encodage des segments temporels du contenu téléchargés en HAS, est inférieur à un débit d'encodage maximum proposé dans le fichier de description du contenu LIVE Cl. [0111] En d'autres termes, le module SEL détecte par exemple qu'il ne peut pas accéder à la meilleure qualité du contenu LIVE CI, la vitesse de téléchargement n'étant pas suffisante pour lire en temps réel le contenu LIVE Cl à la meilleure qualité proposée. [0112] Dans ce cas, le lecteur de flux 9, via le module SEL qui interagit avec une interface utilisateur INTF, propose alors à l'utilisateur de sélectionner son choix préféré, c'est-à-dire : soit accéder au contenu sans mise en mémoire tampon préalable, mais 18 dans une qualité limitée, ou au contraire lui indiquer que s'il met sa lecture en pause pendant un temps de remplissage de la mémoire tampon (« Tbuffcring »), correspondant à une durée de pré-stockage de segments temporel à un débit supérieur, il pourra ensuite visualiser le contenu LIVE dans une qualité supérieure. En variante, plusieurs qualités de restitution distinctes du contenu, associées à plusieurs durées de pré-stockage distinctes de segments dans la mémoire tampon, peuvent être proposées à l'utilisateur. [0113] Ainsi, lorsque le module SEL du lecteur de flux 9 détecte que le débit d'encodage des segments temporels déterminé en fonction de la disponibilité de la bande passante est inférieur à un débit d'encodage proposé dans le fichier de description 7, le débit maximal dans notre exemple, alors le module SEL propose de sélectionner en fonction d'une information contextuelle une option : - de téléchargement des segments temporels au débit d'encodage déterminé et de restitution du contenu en temps réel (première option); ou - de téléchargement des segments temporels à un débit d'encodage supérieur au débit d'encodage déterminé et de restitution du contenu en différé (seconde option). [0114] En d'autres termes, le module SEL, via une interface utilisateur INTF propose à l'utilisateur de choisir s'il souhaite opter pour une restitution en temps réel avec une qualité de segments temporels limitée, ou pour une restitution en différé avec une qualité de segments temporels de qualité supérieure. [0115] La première option permet d'avoir une lecture en temps réel fluide du contenu LIVE Cl grâce à l'adaptation du débit d'encodage en fonction de la bande passante proposée par le téléchargement en HAS. La qualité vidéo du contenu LIVE Cl est donc imposée à l'utilisateur par le téléchargement en HAS. [0116] Au contraire, si l'utilisateur souhaite accéder à une qualité vidéo supérieure, sans pour autant disposer de la bande passante nécessaire permettant d'assurer une lecture fluide, la seconde option lui permet de s'affranchir de cette adaptation de la qualité vidéo en téléchargement HAS. [0117] L'utilisateur peut par exemple décider de choisir la seconde option s'il souhaite profiter pleinement de la qualité de résolution de l'écran sur lequel il visualise le contenu LIVE Cl. C'est le cas lorsque la visualisation du contenu LIVE Cl se fait par exemple sur un téléviseur HD. [0118] Le procédé de gestion du téléchargement en HAS selon l'invention, permet à l'utilisateur d'outrepasser les règles du téléchargement en HAS et forcer le téléchargement à une qualité de débit supérieure, voir à la qualité de débit maximale proposée dans le fichier de description. Ainsi, l'utilisateur peut visualiser un contenu LIVE Cl à une qualité supérieure et profiter de la HD sur son téléviseur 5 par exemple. [0119] Dans un exemple illustré par la suite en relation avec la figure 3B, le contenu LIVE 19 Cl est par exemple proposé sous forme de fragments avec un premier débit d'encodage Dl = 500 kb/s, un deuxième débit d'encodage D2 = 1000 kb/s, un troisième débit d'encodage D3 = 2000 kb/s, etc. [0120] Lorsque l'utilisateur choisit la première option, c'est-à-dire dans un mode de fonc- tionnement classique du HAS, le module HAS opère le téléchargement par exemple, des fragments successifs Cli@D 1 (soit le premier fragment temporel à un débit d'encodage de 500 kb/s), puis C12@t2 (soit le deuxième fragment temporel à un débit d'encodage de 1000 kb/s) cet... [0121] Dans cet exemple, la bande passante ne permet pas de télécharger les segments temporels à la meilleure qualité proposée, c'est-à-dire à un débit d'encodage maximal de 5000kb/s. Dans cc cas, le module HAS opère le téléchargement d'un premier fragment Cli@D1 (soit le premier fragment temporel à un débit d'encodage de 500 kb/s), puis du fragment suivant C12@D2 (soit le deuxième fragment temporel à un débit d'encodage de 1000 kb/s), puis finalement les fragments suivants au même débit d'encodage. [0122] Les différents fragments téléchargés par le module client HAS sont transmis au té- léviseur 5 via la clef HDMI 8 par exemple pour leur restitution à l'utilisateur. [0123] L'algorithme mis en oeuvre par le module client HAS pour déterminer quel fragment à quel débit d'encodage doit être téléchargé en mode de fonctionnement normal (c'est-à-dire en dehors des périodes où il est piloté par le module SEL de sélection d'une option de téléchargement et de restitution) peut être l'un des algorithmes déjà existants de l'art antérieur. Cet algorithme ne sera donc pas décrit ici plus en détail. [0124] Lorsque l'utilisateur choisit la seconde option, c'est-à-dire dans un mode de fonc- tionnement où l'utilisateur décide de visualiser le contenu LIVE Cl en différé, mais à une qualité supérieure, le module SEL pilote le module HAS qui opère le téléchargement par exemple, des fragments successifs Cl I@D1 (soit le premier fragment temporel à un débit d'encodage de 500 kb/s), puis CE@D5 (soit le deuxième fragment temporel à un débit d'encodage de 5000 kb/s). Ainsi, l'utilisateur, en choisissant de regarder en différé à une qualité supérieure, force le téléchargement des fragments de qualité supérieure, c'est-à-dire à un débit d'encodage compris entre 1000kb/s et 5000kb/s. [0125] Dans une variante, le débit d'encodage supérieur est le débit maximal proposé dans le fichier de description, à savoir 5000kb/s dans cet exemple. Afin d'assurer la lecture en continu du contenu LIVE Cl à une qualité supérieure, quelle que soit la disponibilité de la bande passante, la restitution du contenu se fait non plus en temps réel, mais en différé. [0126] On présente désormais en lien avec la figure 4 un exemple de mise en oeuvre de l'option de téléchargement des segments temporels à un débit d'encodage supérieur à un débit d'encodage déterminé en fonction d'une contrainte de ressource, et de restitution en différé du contenu LIVE (seconde option). [0127] Cette seconde option se déroule en deux phases. Elle comprend tout d'abord une phase de pré-stockage (PH PSTOCK) des segments temporels au débit d'encodage supérieur choisi par l'utilisateur dans la mémoire tampon du lecteur de flux multimédia 9, pendant une durée de pré-stockage allant de TO à T1 par exemple. La restitution en temps réel du contenu est alors interrompue pendant cette phase de pré-stockage (lecture du contenu en pause). Puis, lorsque suffisamment de segments temporels sont mis en mémoire, c'est-à-dire stockés dans la mémoire tampon, pour assurer une lecture fluide du contenu Cl, la lecture du contenu peut reprendre (phase allant dc Tl à T2). [0128] Dans le cadre de la seconde option, afin d'assurer la fluidité de la restitution différée du contenu LIVE Cl, le module SEL du lecteur de flux multimédia 9 détermine la durée Tl-TO de pré-stockage des segments temporels dans la mémoire tampon du lecteur de flux multimédia 9. [0129] Cette durée de pré-stockage est déterminée en tenant compte : - du débit d'encodage des segments temporels à télécharger, - du débit instantané de téléchargement du terminal, c'est-à-dire la contrainte de ressource, comme la disponibilité de la bande passante, - de la durée du contenu. [0130] Cette durée du contenu Cl est déterminée lors d'une étape 304 illustrée en figure 3A au cours de laquelle le lecteur de flux récupère sur le serveur des guides de programmes 21 l'heure de fin du contenu CI en cours de diffusion. [0131] Dans une variante, le lecteur de flux 9 récupère un guide de programmes dont il extrait ensuite l'heure de fin du contenu LIVE Cl. Cette heure de fin permet de calculer, en fonction de la durée du contenu CI, la quantité de segments temporels à mettre en mémoire tampon avant de lancer la lecture différée. En effet, dans un mode de réalisation particulier de l'invention, on détermine cette durée de pré-stockage de façon à ce que la mémoire tampon soit vide à la fin de la restitution différée du contenu CI. [0132] A l'issue de cette durée de pré-stockage débute une phase ultérieure conjointe (PH_LECT) de stockage de segments temporels au débit d'encodage supérieur choisi et de restitution différée du contenu à partir de segments temporels extraits de la mémoire tampon. Cette phase comprend donc une restitution des segments temporels stockés dans la mémoire tampon en parallèle du téléchargement de segments temporels suivants. [0133] Compte tenu des contraintes de ressource du terminal lecteur de flux multimédia, la vitesse de téléchargement des segments temporels est inférieure à la vitesse de res- 21 titution du contenu. [0134] En d'autres termes, lors de la lecture, la mémoire tampon se vide progressivement car la vitesse de récupération du contenu est inférieure à la vitesse de vidage de la mémoire tampon. [0135] Ainsi, pendant la lecture, on consomme la vidéo mise en mémoire tampon et on continue à télécharger des segments temporels représentatifs de la vidéo diffusée, de façon à continuer à remplir la mémoire tampon. [0136] La reprise de la lecture du contenu Cl, à l'instant Tl, n'est autorisée qu'à partir du moment où l'on a stocké suffisamment de segments temporels dans la mémoire tampon pour assurer une lecture fluide du contenu au débit d'encodage choisi, jusqu'à la fin du contenu et cc, compte tenu du débit instantané de téléchargement du terminal. [0137] Dans cet exemple, après identification par le module SEL d'un problème de temps d'accès aux segments temporels de meilleure qualité possible proposée dans le fichier de description 7, le lecteur de flux 9 met la lecture du contenu en pause et stocke en mémoire tampon des segments temporels du contenu Cl qui est diffusé. Cette mise en mémoire tampon se fait tant que l'on n'a pas stocké en mémoire suffisamment de segments temporels pour assurer ensuite une lecture fluide. Une fois que le terminal a stocké en mémoire tampon suffisamment de segments du contenu, le terminal lecteur de flux passe alors en mode lecture différée. Au cours de la restitution différée du contenu déjà stocké en mémoire tampon, on continue à téléchargcr les segments temporels suivants du contenu LIVE CI. [0138] Lorsque la mémoire tampon est complètement vide à la fin de la lecture, le lecteur de flux passe alors en mode classique de streaming adaptatif. [0139] Dans l'exemple illustré en figure 4, le débit instantané de téléchargement mesuré par le terminal lecteur de flux 9 est de 5Mb/s. La qualité maximale du contenu LIVE CI disponible dans le fichier de description 7, i.e. le débit d'encodage maximum des segments temporels du contenu Cl, est 7Mb/s. Après récupération de l'heure de fin du programme LIVE en cours de diffusion, le lecteur de flux 9 détermine que le contenu CI (par exemple un film) doit se terminer dans 60 min [0140] Le lecteur de flux 9 doit stocker en mémoire tampon une certaine quantité de contenu avant de lancer la lecture différée. Dans cet exemple on a : - Tbuffering : le temps de mise en mémoire tampon entre TO et Ti, également appelé durée de pré-stockage (PH_PSTOCK) ; - Tplaying : le temps de lecture différée du contenu Cl entre Tl et T2 (PH_LECT), c'est-à-dire la durée du contenu à lire, dans cet exemple 60min. [0141] Au cours de la phase de pré-stockage, le volume de contenu qui peut être mémorisé dans la mémoire tampon du terminal lecteur de flux multimédia 9 est égal à Tbuffering x 5Mb/s. [0142] Au cours de la phase ultérieure conjointe de stockage et de restitution différée du contenu, de durée Tplaying, un volume de contenu est stocké dans la mémoire tampon (à savoir les segments temporels suivants) à 5Mb/s, pendant qu'un autre volume de contenu est extrait de cette mémoire tampon (à savoir le contenu restitué en différé à l'utilisateur) à 7Mb/s. Le volume de contenu résultant est égal à Tplaying x (5Mb/s-7Mb/s). [0143] Dans un mode de réalisation préféré de l'invention, on vise de commencer la lecture quand la mémoire tampon est juste suffisamment remplie pour arriver avec une mémoire tampon vide en fin de lecture. [0144] On a donc : [0145] 5 x Tbuffering -2 x Tplaying =0. [0146] On en déduit que : [0147] Tbuffering = 2 x Tplaying /5 [0148] Le temps de remplissage minimum de la mémoire tampon avant de pouvoir autoriser la lecture du contenu pour assurer une lecture dans la qualité la plus élevée tout au long du contenu est donc de manière générale : [0149] Tbuffering = ((MaxRate - DownloadRate) / DownloadRate) ContentLength [0150] avec : - « MaxRate » qui est le débit maximal d'encodage du contenu, récupéré dans le fichier de description 7. Dans cet exemple le MaxRate est de 7 Mb/s. - « DownloadRate » qui est le débit de téléchargement, c'est-à-dire la bande passante disponible du réseau de communication, mesuré par le lecteur de flux 9. Dans cet exemple le DownloadRate est de 5Mb/s - « ContentLength » qui est la durée du contenu récupérée sur le serveur guide des programmes LIVE 21. Dans cet exemple ContentLength est de 60 min [0151] On notera que le débit d'encodage maximum MaxRate peut être remplacé dans la formule par un autre débit, inférieur à ce débit d'encodage maximum, mais supérieur au débit d'encodage autorisé selon la technologie HAS classique par la contrainte de ressource du terminal, par exemple SupRate. [0152] Ainsi, dans l'exemple ci-avant, la durée de pré-stockage des segments temporels de qualité supérieure dans la mémoire tampon, c'est-à-dire le temps de pause ou d'attente avant de reprendre la lecture du contenu, est de : [0153] Tbuffering = ((7-5)/5)*60 = 24min [0154] L'utilisateur doit donc attendre 24 min avant de lancer la lecture différée du contenu à la meilleure qualité possible pour une lecture fluide tout au long de la restitution. [0155] Dans un mode de réalisation de l'invention, l'utilisateur se voit donc proposer, sur l'interface INTF, un choix entre : - une restitution en direct du contenu Cl à 5Mb/s ; 23 - une restitution différée du contenu Cl à 7Mb/s, disponible après un temps d'attente de 24 minutes. [0156] Il est également possible de proposer par exemple une solution intermédiaire, à savoir une restitution différée du contenu Cl à 6Mb/s, disponible après un temps d'attente de 12 minutes. En fonction de ses contraintes personnelles et de ses préférences, l'utilisateur peut choisir l'une de ces trois options, via l'interface INTF. [0157] On présente désormais en lien avec la figure 5A un exemple d'affichage d'un message d'offre d'options de téléchargement à l'utilisateur. [0158] Dans l'exemple en lien avec la figure 4, après avoir sélectionné la seconde option de téléchargement du contenu Cl à une qualité supérieure et de restitution différée, le module SEL détermine que la durée de pré-stockage des segments temporels pour assurer la lecture fluide du contenu à la qualité d'encodage maximale est par exemple de 24 min, ou de 12 min à une qualité d'encodage intermédiaire, mais supérieure à la qualité de restitution classiquement offerte en HAS. [0159] Le module SEL, via l'interface utilisateur INTF, propose à l'utilisateur de choisir l'une des options de téléchargement suivantes : - restitution du contenu Cl en direct à 5Mb/s (« Lecture vidéo : en direct à 5Mb/s »); - restitution différée du contenu Cl au bout de 12 minutes à 6Mb/s (« Lecture vidéo : dans 12 min à 6Mb/s »); - restitution différée du contenu Cl au bout de 24 minutes à la qualité d'encodage maximale possible, soit 7Mb/s (« Lecture vidéo : dans 24 min à 7Mb/s »); [0160] Cette proposition peut se faire par exemple par l'affichage d'un message sous forme d'une fenêtre pop-up sur l'écran de l'utilisateur. L'utilisateur choisit, par exemple par action sur la télécommande associée au téléviseur 5, celle de ces trois options qui lui convient le mieux. [0161] Dans cet exemple, l'utilisateur considère que le temps d'attente de 24 min lui convient. Il va donc poursuivre la lecture du contenu LIVE Ci à la qualité maximale proposée par le fichier de description, ici 7 Mb/s. après 24 min de pause. [0162] Dans un autre exemple, l'utilisateur estime que ce temps d'attente est trop long pour lui (par exemple parce qu'il doit quitter son domicile dans 1h15) et décide donc de choisir une restitution différée de 12 minutes du contenu CI, à la qualité intermédiaire de 6Mb/s, ce qui constitue un bon compromis entre ses contraintes personnelles (il aura fini de visionner Ci dans 1h12) et la qualité de restitution du contenu. Dans ce cas, la restitution se fait à une qualité inférieure à la qualité maximale proposée dans le fichier de description, mais supérieure à la qualité de restitution en direct du contenu. [0163] Ce choix d'une restitution en direct ou en différé peut s'opérer contenu par contenu, ou résulter d'une pré-configuration, qui peut être opérée par l'utilisateur lui-même, ou par le fournisseur de service. Une telle pré-configuration est décrite plus en détail dans 24 la suite en relation avec la figure 6. [0164] Dans un tel contexte de pré-configuration d'une restitution différée pour un contenu donné, on peut cependant imaginer que l'utilisateur soit informé du temps d'attente avant le début de la restitution, afin de lui offrir par exemple le choix de renoncer à cette option. [0165] La figure 5B présente un exemple d'affichage d'un message d'information cor- respondant. [0166] Dans cet exemple, le message affiché sur l'écran, par exemple sous la forme d'une fenêtre pop-up via une interface utilisateur, informe l'utilisateur que la restitution du contenu Cl ne débutera qu'à l'issue d'un temps d'attente de 24 minutes. L'utilisateur, par exemple grâce à une télécommande ou via une application dédiée sur son smartphone, peut choisir de respecter cette pré-configuration et d'attendre 24 minutes, ou de renoncer à l'obtention d'une qualité maximale, et d'opter pour une restitution en direct du contenu Cl. [0167] Dans un autre exemple, présenté en lien avec la figure 5C, il est possible d'afficher sur l'interface utilisateur un message demandant à l'utilisateur d'indiquer combien de temps il est prêt à attendre avant le début de la restitution différée du contenu Cl. L'utilisateur peut décider d'entrer manuellement par exemple à l'aide d'une télécommande ou son smartphone via une application dédiée au pilotage de l'interface utilisateur, une durée de pré-stockage dans la mémoire tampon, avant lancement de la restitution différée. Le lecteur de flux multimédia calcule alors, sur la base de cette information saisie, la qualité d'encodage maximale des segments temporels de contenu qu'il peut télécharger pour satisfaire cette contrainte, et lance la restitution différée du contenu, au plus tard à l'issue de la durée saisie par l'utilisateur. [0168] L'affichage des messages illustrés en figures 5A à 5C peut, dans un mode de réa- lisation être précédé de l'affichage d'un message tel qu'illustré en figure 6, signalant à l'utilisateur la possibilité de sélectionner au moins l'option de téléchargement des segments temporels à un débit d'encodage supérieur au débit d'encodage déterminé et de restitution en différé. [0169] L'interface utilisateur INTF sous contrôle du module SEL, affiche au niveau de l'interface utilisateur un message sous la forme par exemple d'une fenêtre pop-up qui apparaît sur l'écran. Dans cet exemple, le message signale que le contenu actuellement en cours de visualisation n'est pas à la meilleure qualité disponible, et que l'utilisateur peut, s'il le souhaite, regarder en différé à une qualité supérieure. Le choix de l'une ou l'autre des première et seconde options par l'utilisateur, se fait à chaque affichage de message, c'est-à-dire pour chaque contenu en cours de visualisation. [0170] 11 est possible de mettre en place une interface utilisateur qui permette de configurer ces choix et ne pas le faire contenu par contenu. 101711 On présente désormais en lien avec la figure 7 un exemple d'interface de pré- configuration des options de téléchargement du contenu selon un mode de réalisation de l'invention. Dans ce mode de réalisation, le choix de l'une ou l'autre des première et seconde options est pré-configuré en fonction d'une ou plusieurs composantes contextuelles. Par exemple, ce choix est actif uniquement pour certains contenus de type film et non actif pour d'autres contenus comme les sports, les informations etc., au choix de l'utilisateur. [0172] Cette composante contextuelle peut être choisie parmi : - une nature de contenu numérique, comme par exemple un film, une série, une émission télévisuelle comme le journal télévisé, les sports, un documentaire etc.... - un horaire de restitution du contenu numérique, - une durée de contenu, - une programmation d'un enregistrement récurrent de contenu numérique. [0173] Ainsi, l'utilisateur peut en fonction par exemple de la nature du contenu décider s'il veut que tous les contenus de cc type soient regardés systématiquement à la meilleure qualité possible, ce qui implique qu'ils soient parfois regardés en différé, en fonction de la disponibilité de la bande passante. [0174] Dans une variante, l'utilisateur peut configurer le lecteur de flux 9 pour que tous les contenus diffusés à un horaire donné, soient visualisés en différé à la meilleure qualité possible. [0175] Dans une autre variante, l'utilisateur pendant la configuration de la programmation d'un enregistrement d'un contenu Cl peut configurer que cet enregistrement sera fait à la meilleure qualité possible. Ainsi, l'enregistrement du contenu LIVE ne subit pas les fluctuations de la bande passante. [0176] Dans une autre variante, l'utilisateur peut décider de configurer que tous les films soient visualisés en différé à la meilleure qualité possible sauf ceux diffusés à un horaire trop tardif car la visualisation en différé ne permet pas de terminer de visualiser le film à un horaire décent pour l'utilisateur. [0177] Le choix de l'utilisateur de visualiser un contenu LIVE Cl en temps réel à une qualité limitée (première option) ou bien en différé à la meilleure qualité possible (seconde option) se fait par exemple via une interface utilisateur proposant sous forme de menu déroulant de sélectionner une catégorie, un horaire et/ou une programmation d'enregistrement pour lesquels il souhaite opter pour la seconde option 2. ANNEXE 1: exemple de fichier manifest [0178] 26 e?xtriE varie eIVIP xm!rES:xsE,-"http:,';'ives.ve3.6.E2400 XM , 3qstarn e' xmln suniun peg :DASH:sc hen a P D;201 I " xsi Eschern aL6ttaflonr,l'urn;r6peg:DASH;schema:M P32011 DASH-MPO,x,sd" type.'dyname' proffles","u peg:dash: prefi leisoff- Five:201 kr> server,c0m/c/BaseUea> ' e'ontereu 01r; c/SegmentBase> ment.UM dunation=1'10"> netnURL media-t1..512kb...1.mp4 cSeenentUflE., rned!a-' Cl ..5lsb...2,mp4ni:» 4Sr?..qrnentist> ' nem) Cl à N2,-,1024kb , -ciSegmentBase.> act.-..EnEenlUsE duEation,"10">, cSegme rEflJEU, n'ide 'a="C I _204,,akb 1 ,mphri>, criSegmend.ïst> tonlenti 02 A N12,512m3-..> .(SiEErdntliRL. C2...512kb rnpe c.-15e9 MEI ntLiet> c?-- Contenu C2 à Na, 024Aity - -> dund1orE="10"> Conienu C2 à N5-aallekb --> ereesE-1> 'd;Ezdtion sourdelia=t2_1S. kbitf0_20 lkbit_dash.mp4"/> n'eau: MUGI duratior62'10a> cSegrnentUnt. rnedia-t1.. 04-akbit c../SeQ mem Lit,t= ciSee.jrne-ntUnt> 4kbit.'.dash...rnp47> 27 REVENDICATIONS[Revendication 1] Procédé de gestion du téléchargement progressif adaptatif (H AS) d'un contenu numérique (Cl) diffusé en temps réel, au sein d'un terminal lecteur de flux multimédia (9), comprenant : - une obtention d'un fichier de description (7) dudit contenu numérique (Cl ), comprenant une liste dc segments temporels à télécharger dudit contenu associés chacun à plusieurs débits d'encodage dudit contenu (C 1 ), - une détermination d'un débit d'encodage desdits segments temporels à télécharger pour une restitution en temps réel dudit contenu (Cl), en fonction d'une contrainte de ressource dudit terminal (9), caractérisé en ce que, si ledit débit d'encodage déterminé est inférieur à un débit d'encodage maximum proposé dans ledit fichier de description, ledit procédé met en oeuvre une sélection d'une option : - de téléchargement desdits segments temporels audit débit d'encodage déterminé et de restitution dudit contenu (Cl) en temps réel ; ou - de téléchargement desdits segments temporels à un débit d'encodage supérieur audit débit d'encodage déterminé et de restitution différée dudit contenu (C1). [Revendication 2] Procédé de gestion selon la revendication 1, caractérisé en ce que ladite sélection tient compte d'une information contextuelle. [Revendication 3] Procédé de gestion selon la revendication 2, caractérisé en ce que ladite information contextuelle résulte d'un choix exprimé par un utilisateur via une interface dudit terminal (9). [Revendication 4] Procédé de gestion selon lune quelconque des revendications 2 et 3, ca- ractérisé en ce que ladite information contextuelle tient compte d'une composante contextuelle appartenant au groupe comprenant : - une nature dudit contenu (Cl) ; - une durée dudit contenu (Cl) ; - un horaire de diffusion dudit contenu (Cl) ; - une programmation d'enregistrement dudit contenu (Cl). [Revendication 5] Procédé de gestion selon lune quelconque des revendications 1 à 4, ca- ractérisé en ce que ladite option de téléchargement desdits segments temporels à un débit d'encodage supérieur audit débit d'encodage déterminé et de restitution différée dudit contenu (Cl) comprend : - une phase de pré-stockage de segments temporels audit débit d'encodage supérieur dans une mémoire tampon dudit terminal (9), 28 [Revendication 6] [Revendication 7] [Revendication 8] [Revendication 9] [Revendication 10] pendant une durée de pré-stockage ; - une phase conjointe de stockage de segments temporels audit débit d'encodage supérieur et de restitution différée dudit contenu (Cl) ) à partir de segments temporels extraits de ladite mémoire tampon, débutant à l'issue de ladite durée de pré-stockage ; et en ce que ladite durée de pré-stockage est déterminée de façon que ladite mémoire tampon soit vide à la fin de ladite restitution différée. Procédé de gestion selon la revendication 5, caractérisé en ce qu'une détermination de ladite durée de pré-stockage tient compte d'au moins un paramètre appartenant au groupe comprenant : - ledit débit d'encodage supérieur ; - une durée dudit contenu (Cl) ; - un débit instantané de téléchargement dudit terminal (9). Procédé de gestion selon la revendication 6, caractérisé en ce que ladite durée dudit contenu (Cl) est obtenue par ledit terminal (9) par interrogation d'un serveur de guides de programmes diffusés en temps réel. Procédé de gestion selon les revendications 3 et 5, caractérisé en ce qu'on détermine au moins deux durées de pré-stockage pour au moins deux débits d'encodage supérieurs audit débit d'encodage déterminé, et en ce que ledit choix de l'utilisateur comprend une sélection, via ladite interface, de l'une desdites au moins deux durées de pré-stockage. Procédé de gestion selon l'une quelconque des revendications 1 à 7, caractérisé en ce que ledit débit supérieur est ledit débit d'encodage maximum proposé dans ledit fichier de description. Dispositif de gestion du téléchargement progressif adaptatif (HAS) d'un contenu numérique diffusé (C1) en temps réel, au sein d'un terminal lecteur de flux multimédia (9), comprenant : - un module d'obtention d'un fichier de description dudit contenu numérique (Cl), comprenant une liste de segments temporels à télécharger dudit contenu (Cl) associés chacun à plusieurs débits d'encodage dudit contenu (C1), - un module de détermination d'un débit d'encodage (lesdits segments temporels à télécharger pour une restitution en temps réel dudit contenu (C1), en fonction d'une contrainte de ressource dudit terminal (9), caractérisé en ce qu'il comprend un module de sélection d'une option : - de téléchargement (lesdits segments temporels audit débit d'encodage déterminé et de restitution dudit contenu (Cl) en temps réel ; ou 29 [Revendication 11] - de téléchargement desdits segments temporels à un débit d'encodage supérieur audit débit d'encodage déterminé et de restitution différée dudit contenu (C1), [Revendication 12] et en ce que ledit module de sélection est activé si ledit débit d'encodage déterminé est inférieur à un débit d'encodage maximum proposé dans ledit fichier de description. Produit programme d'ordinateur comprenant des instructions de code de programme pour la mise en oeuvre d'un procédé selon l'une quelconque des revendications 1 à 9, lorsqu'il est exécuté par un processeur. Terminal lecteur de flux multimédia en temps réel, caractérisé en ce qu'il comprend un dispositif de gestion du téléchargement progressif adaptatif (HAS) d'un contenu numérique (Cl) diffusé en temps réel selon la revendication 10.