PROCEDE DE FOURNITURE D'UN SERVICE MULTIMEDIA A LA
DEMANDE, PLATE-FORME DE SERVICE, PROGRAMME ET DECODEUR
POUR LA MISE EN ŒUVRE DU PROCEDE
La présente invention concerne la fourniture de services multimédia à la demande par l'intermédiaire de réseaux de télécommunication. Un domaine d'application particulier en est celui de la télévision numérique dans lequel un standard répandu est MPEG2.
La norme système MPEG2 définit deux types de flux numériques multiplexes: les flux de transport (TS, "Transport Stream") et les flux de programme (PS, "Program Stream"). Un "programme" est défini comme un ensemble de flux élémentaires corrélés temporellement, c'est-à-dire portant chacun des informations à restituer par rapport à une base de temps commune. Un flux PS porte un seul programme sous forme de paquets de longueur relativement importante et éventuellement variable. Les flux de programme (PS) sont généralement utilisés pour le stockage de programmes sur disque. Les flux de transport (TS) se composent de paquets de longueur fixe appartenant à un ou plusieurs programmes, et sont utilisés pour la transmission ou la diffusion sur des réseaux.
Ces flux multiplexes TS, PS sont construits à partir de flux élémentaires paquétisés (PES, "Packetized Elementary Stream"). Les flux élémentaires bruts (ES, "Elementary Stream") directement issus du codage vidéo ou audio sont d'abord mis sous forme de paquets PES de longueur variable. Les flux PES sont ensuite segmentés pour constituer les paquets TS ou PS à multiplexer.
La norme MPEG2 est utilisée dans plusieurs systèmes de distribution de contenus multimédia, notamment le DVD ("Digital Versatile Disc") et le DVB ("Digital Video Broadcast").
Le DVD est un disque support d'enregistrement optique sur lequel les programmes sont enregistrés dans des fichiers dits VOB ("Video Object Block") qui correspondent à des paquets de flux PS. Des fichiers dits IFO sont
également enregistrés sur le disque et contiennent les informations sur les chapitres, les pistes de sous-titres et les pistes son. Les fichiers IFO permettent d'offrir à l'utilisateur des éléments de navigation et d'interactivité, notamment pour le choix des langues ou des sous-titres, parfois pour le choix des angles de la caméra, pour l'accès au menu principal et aux menus intermédiaires, pour avancer ou reculer dans les chapitres du programme, etc. Le DVD contient aussi des fichiers dits BUP, qui sont des sauvegardes des fichiers IFO.
Dans un DVD, le contenu multimédia (VOB), incluant le son, les images et les sous-titres, est donc dissocié de l'arborescence (IFO) entre les différents menus. L'interactivité du DVD repose sur l'affichage de la séquence vidéo. Les fichiers IFO permettent de sélectionner les portions de vidéo à restituer en fonction des actions déclenchées par l'utilisateur, en général à l'aide de sa télécommande. La succession des différentes portions vidéo crée l'interactivité par le biais d'une arborescence de navigation. Le lecteur DVD possède cinq registres de 16 bits pour stocker d'éventuelles informations permettant d'agir sur l'arborescence suivie dans le fichier IFO en fonction des choix antérieurs.
Les séquences vidéo d'un DVD sont encodées conformément à la norme MPEG2. La compression MPEG2 consiste à découper la séquence vidéo en blocs d'images appelés GOP ("Group of Picture") d'une durée approximative de douze images. Il s'y ajoute la ou les composantes audio, les sous-titres éventuels et les autres données, entre autres pour la navigation. Ces différents forment ce qu'on appelle un VOBU ("Video Object Unit"), qui est donc un sous-ensemble de la séquence vidéo. Un chapitre est un "programme" constitué de "cellules", elles mêmes constituées de VOBUs. Un film composé de plusieurs chapitres est une succession de "programmes" appelée aussi PGC ("Program Chain"). Un DVD peut être vu comme une succession de PGC avec une structure de commande, codée dans les fichiers IFO, permettant de les enchaîner ou de naviguer parmi ces PGC.
L'interactivité offerte par un DVD comporte la capacité de naviguer parmi des séquences vidéo. A chaque fin de cellule, une commande est insérée permettant au décodeur de déterminer la prochaine action à exécuter.
L'i interactivité est contenue dans des PES spécifiques à la norme DVD. En particulier, la définition des boutons présentés à l'écran se trouve dans un paquet spécial appelé PCI ("Présentation Control Information"). Ce paquet PCI se trouve toujours (qu'il y ait ou non des boutons à afficher) dans le premier secteur de chaque VOBU, c'est-à-dire dans ses 2048 premiers octets. On y trouve une table pouvant contenir la définition d'un nombre maximum de 36 boutons. Cette définition correspond à la structure de données suivante:
• les coordonnées x, y du bouton;
• un numéro de table parmi trois tables possibles fournissant la couleur et le contraste suivant l'état du bouton (activé ou non);
• un indicateur "Action auto" qui permet d'activer le bouton dès qu'il est sélectionné (il est alors inutile d'appuyer sur la touche ENTER de la télécommande);
• le numéro des boutons suivants pour la navigation; • enfin une commande exécutée lors de l'activation du bouton, en relation avec le fichier IFO.
A la lecture du DVD, un démultiplexeur de flux PS sépare les PES audio, les PES vidéo et les PES contenant les descriptions de sous-titres, ainsi que les paquets PCI pour les descriptions de boutons d'interactivité. Une fonction de superposition ("overlay") permet d'afficher plusieurs plans vidéo en superposition, notamment la vidéo et les sous-titres, le fond d'une page de menu et les boutons, etc.
Sur un DVD, les sous-titres sont enregistrés sous forme d'images qui sont affichées en superposition sur le flux vidéo par le lecteur. Les sous-titres se trouvent dans des paquets PS privés d'en-tête 0x000001 BA qui contiennent des paquets PES d'entêté 0x000001 BD. Il y a jusqu'à trente-deux sous-titres possibles repérés des identifiants respectifs (SID, "subtitle identifier").
Un PES de sous-titres se compose de la taille du paquet suivi des données et enfin de données de contrôle consistant en une liste de séquences de contrôle. Ces séquences de contrôle appelées "subpicture display control séquences" ou SP_DCSQ sont des tables chaînées de commandes où on
- A -
trouve:
• un délai d'attente avant la prochaine séquence;
• un pointeur sur le prochain SP_DCSQ; si ce pointeur désigne le SP_DCSP courant c'est le dernier de la séquence de sous-titres; • une série de commandes parmi neuf commandes possibles.
La "sous-image" représentant le sous-titre est codée sur deux bits par pixel (O = fond, 1 = motif, 2 = 1 er niveau d'emphase, 3 = 2ΘmΘ niveau d'emphase2). Le flux contient une table qui associe à chacune de ces quatre valeurs un numéro de couleur dans la palette du PGC et un niveau de contraste.
Le DVB est une norme pour la diffusion de la télévision numérique. Les flux sont diffusés au format TS, qui permet d'envoyer plusieurs programmes dans une bande passante donnée. L'utilisateur reçoit ainsi un "bouquet" de chaînes et des tables décrivant des informations telles que noms des chaînes, noms des programmes en cours, etc. Ces tables permettent à l'utilisateur de sélectionner localement les chaînes à afficher.
Un flux TS a une structure simple et générique. Une table est composée de sous-tables, elles même composées de sections. Chaque section est composée d'un en-tête puis d'une liste de descripteurs ou "tags" (éléments unitaires d'information). Le flux TS transporte des paquets PES audio et vidéo compatibles MPEG2, et aussi des tables dites PSI ("Program Spécifie Information") contenant de la signalisation. Ces tables PSI comprennent une PAT ("Programme Association Table") décrivant chaque service physiquement présent sur le TS, une PMT ("Program Map Table ") pour chaque service physiquement présent sur le TS et enfin une CAT ("Conditional Access Table") pour le contrôle d'accès.
D'autres tables spécifiques au DVB en mode MPEG2 TS permettent au décodeur de naviguer à travers les services. Certaines sont obligatoires:
- NIT ("Network Information Table"), indiquant l'ensemble des transpondeurs et des services rendus accessibles à l'abonné par un opérateur;
- SDT ("Service Description Table") renseignant sur les services présents sur un multiplex;
- EIT ("Event Information Table") donnant des informations sur les événements en cours ou les suivants (nom de l'émission, nom des invités, heure de début, durée, etc.) sur les services du multiplex;
- TDT, ("Time and Date Table") donnant la date et l'heure universelles,
et d'autres optionnelles. Enfin il existe des tables privées transportées entre autres pour les applications interactives
Le DVB est utilisé pour distribuer la télévision numérique sur des réseaux de télécommunication, notamment de type ADSL ("Asymmetric Digital Subscriber Une"). Dans cette application, il est en général prévu un flux TS par chaîne (flux SPTS, "Single Program Transport Stream"), le cryptage étant réalisé au niveau TS. Pour visualiser du contenu, il faut que le décodeur de l'utilisateur reçoive un flux TS.
Les services de vidéo à la demande (VOD, "Video On Demand") utilisent aussi la norme DVB. Dans cette application, le réseau de télécommunication supporte le Protocole Internet (IP), et les flux TS sont diffusés en mode point à point. Une fois que la transmission du programme demandé a commencé, l'utilisateur peut disposer de fonctionnalités de lecture, de pause et d'avance ou retour rapide. Ces fonctionnalités correspondent à des déplacements par rapport à la position courante dans le flux de transport.
L'interactivité des services de VOD reste actuellement très limitée. En particulier, il n'est pas possible de faire afficher les boutons des menus prévus sur un DVD en leur associant les actions correspondantes. Les PES spécifiques à la norme DVD qui contiennent les éléments d'interactivité ne sont pas gérés par le décodeur qui n'est généralement n'est compatible qu'avec le DVB.
Aujourd'hui, certaines offres de VOD comportent, après la transmission du programme demandé, l'envoi d'un disque DVD chez l'utilisateur. Celui-ci pourra alors bénéficier de l'interactivité du DVD, mais pas au moment de sa
première visualisation du programme. En outre, une telle offre a pour inconvénient de requérir que le contenu soit envoyé deux fois à l'utilisateur, sous deux formes différentes.
Pour qu'un client d'un service de VOD visualise un contenu vidéo sous- titré, il est actuellement nécessaire que les sous-titres soient incrustés dans la partie vidéo du flux SPTS. Ceci augmente considérablement les capacités de stockage et/ou de traitement requises au niveau du serveur de VOD. En outre, cela fait perdre l'interactivité du sous-titrage disponible sur un DVD.
L'invention propose un procédé de fourniture d'un service multimédia à la demande à partir de sources de données multimédia comprenant chacune au moins un flux de programme. Selon l'invention, le procédé comprend les étapes suivantes:
- convertir un flux de programme d'au moins une source en un flux de transport; - extraire du flux de programme des paquets décrivant des éléments superposables à une composante vidéo du flux de transport;
- transmettre le flux de transport vers un terminal d'utilisateur suivant un premier canal par l'intermédiaire d'un réseau de télécommunication;
- en réponse à la réception d'une requête en provenance du terminal d'utilisateur par l'intermédiaire du réseau de télécommunication, convertir au moins un des paquets décrivant des éléments superposables en au moins une page de données et retourner la page de données vers le terminal d'utilisateur suivant un second canal par l'intermédiaire du réseau de télécommunication, ledit second canal étant distinct du premier canal; et
- à réception de la page de données au terminal d'utilisateur, récupérer les éléments superposables et les afficher en superposition avec la composante vidéo du flux de transport.
Dans un mode de réalisation, les éléments superposables comprennent des boutons de menus interactifs décrits dans des paquets de données d'interactivité extraits du flux de programme. La page de données
contient alors de préférence une représentation des boutons de menus interactifs ainsi qu'une indication d'actions respectivement associées à ces boutons, obtenues dans les paquets de données d'interactivité extraits du flux de programme. En réponse à la sélection d'un bouton interactif au terminal d'utilisateur, une nouvelle requête pourra ainsi être envoyée à la plate-forme de VOD pour déclencher l'action associée au bouton en question.
Dans ce mode de réalisation, le procédé permet d'émuler des fonctions d'interaction multimédia d'un premier type sur une architecture de transmission d'un second type, non prévue pour supporter de telles fonctions. Les fonctions d'interaction multimédia du premier type peuvent notamment être celles offertes par un DVD, tandis que l'architecture du second type peut être celle du DVB. Ces deux systèmes, non compatibles entre eux, partagent tout de même le niveau PES de la norme MPEG2, ce qui permet la conversion du flux de programme en un flux de transport à l'aide de démultiplexeurs et multiplexeurs MPEG2 classiques.
Le premier canal est typiquement un canal DVB, tandis que le second canal (distinct du premier canal) est un canal de données de type HTTP ou analogue. De manière générale, le flux de transport et les paquets d'éléments superposables sont transmis, respectivement, dans un premier canal et un second canal car ils sont décorrélés puisqu'ils sont mis dans des formats de transports distincts (respectivement flux de transport et pages de données) même s'ils sont transportés par le même réseau (par exemple un réseau de type ADSL).
Dans un autre mode de réalisation, les éléments superposables comprennent des sous-titres. De préférence, la page de données contient alors au moins un sous-titre associé à un index temporel d'affichage respectif. Elle peut aussi contenir un script pour commander l'envoi automatique d'une nouvelle requête suite au décodage du dernier sous-titre représenté dans la page. Les sous-titres sont ainsi transmis dans des pages de données sans avoir besoin d'être incrustés dans le flux vidéo avant envoi.
Le procédé permet avantageusement d'exploiter à distance le contenu
interactif d'un film (multi-angle, sous-titres, chapitrage, ...), le contenu interactif d'un DVD (bonus, jeux, making of, bande annonces, ...), tous les types de jeux existant sur DVD, tous les types de contenu ludoéducatifs existant sur DVD et généralement tous les types de contenu tirant parti de l'interactivité offerte par le système DVD.
Un autre aspect de l'invention se rapporte à une plate-forme de service pour la fourniture d'un service multimédia à la demande à partir de sources de données multimédia comprenant chacune au moins un flux de programme. Cette plate-forme comprend: des moyens de conversion d'un flux de programme d'au moins une source en un flux de transport; des moyens d'extraction, dans le flux de programme, de paquets décrivant des éléments superposables à une composante vidéo du flux de transport; des moyens de transmission du flux de transport vers un terminal d'utilisateur suivant un premier canal par l'intermédiaire d'un réseau de télécommunication; des moyens de réception de requêtes en provenance du terminal d'utilisateur par l'intermédiaire du réseau de télécommunication; des moyens pour convertir au moins un des paquets décrivant des éléments superposables en au moins une page de données en réponse à la réception d'une requête en provenance du terminal d'utilisateur; et des moyens pour retourner la page de données vers le terminal d'utilisateur suivant un second canal par l'intermédiaire du réseau de télécommunication.
Un autre aspect encore de l'invention se rapporte à un programme informatique pour installation dans une plate-forme de service pour la fourniture d'un service multimédia à la demande à partir de sources de données multimédia comprenant chacune au moins un flux de programme. Le programme comprend des instructions pour commander les étapes suivantes lors d'une exécution du programme par une unité de traitement de la plateforme:
- transmettre vers un terminal d'utilisateur, suivant un premier canal par l'intermédiaire d'un réseau de télécommunication, un flux de transport obtenu par conversion d'un flux de programme d'au moins une source;
- extraire du flux de programme des paquets décrivant des éléments superposables à une composante vidéo du flux de transport;
- en réponse à la réception d'une requête en provenance du terminal d'utilisateur par l'intermédiaire du réseau de télécommunication, convertir au moins un des paquets décrivant des éléments superposables en au moins une page de données et retourner la page de données vers le terminal d'utilisateur suivant un second canal par l'intermédiaire du réseau de télécommunication.
L'invention concerne également un décodeur de télévision numérique adapté à la mise en œuvre du procédé ci-dessus, et comprenant:
- une interface de communication avec une plate-forme de fourniture de service multimédia à la demande par l'intermédiaire d'un réseau de télécommunication;
- des moyens pour recevoir suivant un premier canal un flux de transport représentant un programme demandé par un utilisateur, décoder le flux de transport et restituer le programme demandé; et
- des moyens pour recevoir suivant un second canal des pages de données comprenant des représentations de boutons de menus interactifs et/ou de sous-titres et afficher lesdits boutons et/ou sous-titres en superposition avec une composante vidéo du flux de transport.
D'autres particularités et avantages de la présente invention apparaîtront dans la description ci-après d'exemples de réalisation non limitatifs, en référence aux dessins annexés, dans lesquels :
- la figure 1 est un schéma synoptique d'un exemple de plate-forme de service VOD selon l'invention;
- la figure 2 est un schéma synoptique simplifié d'un exemple de décodeur de télévision numérique selon l'invention; et
- la figure 3 est un schéma synoptique d'un autre exemple de plate-forme de service VOD selon l'invention.
En référence à la figure 1 , une plate-forme de service 1 comprend une interface réseau 2 pour communiquer avec des terminaux d'utilisateurs. Le
réseau de télécommunications employé est par exemple un réseau IP sur ADSL
La plate-forme de service selon l'invention exploite des contenus interactifs disponibles sur des supports d'enregistrement 3 de type DVD ou analogue. Dans la réalisation illustrée par la figure 1 , une étape préliminaire du procédé consiste à enregistrer les contenus des DVD 3 dans une base de données 4 de la plate-forme, stockée sur des disques durs. Pour chaque disque DVD, la base de données 4 mémorise l'intégralité des fichiers VOB, qui contiennent des paquets de flux PS, ainsi que les fichiers d'informations d'interactivité (IFO) correspondants et leurs sauvegardes (BUP).
La plate-forme 1 comporte en outre un serveur de vidéo à la demande (VOD) 5. De façon classique, le serveur 5 est adapté pour présenter aux utilisateurs, à travers un serveur web 8, une interface graphique qui leur permet de sélectionner les contenus demandés et de réaliser les transactions correspondantes. Le serveur 5 gère les sessions de VOD des différents utilisateurs et pilote la lecture des fichiers audio et vidéo correspondant aux contenus demandés par les utilisateurs, ainsi que les éventuels fichiers de sous-titres. Dans le cas présent, ces fichiers sont enregistrés dans la base de données 4 au format PS, et le serveur de VOD 5 doit donc être adapté pour effectuer l'adressage du flux au format PS.
Le serveur web 8 dialogue avec les utilisateurs à travers l'interface réseau 2, typiquement sous la forme de pages HTML ("HyperText Mark-up
Language"). On notera que d'autres standards peuvent être employés pour les échanges entre la plate-forme 1 et les terminaux des utilisateurs, par exemple à l'aide de formats flash.
Le flux PS dont la lecture est commandée par le serveur 5 est soumis à un remultiplexeur MPEG2 6 qui le convertit en un flux TS monoprogramme (SPTS) adapté à la transmission DVB. L'opération de remultiplexage MPEG2 est classique. Les paquets PES sont extraits du flux PS avec les marqueurs temporels correspondants, puis ceux-ci sont exploités pour multiplexer les paquets PES en un flux TS. Le remultiplexeur 6 se compose ainsi:
- d'un démultiplexeur de flux PS 6A qui sépare les différents flux PES;
- d'un filtre 6B qui extrait les paquets PES contenant les données d'interactivité ainsi que certains paquets PES éventuels contenant des sous-titres; - d'un multiplexeur de flux TS 6C qui assemble le flux TS à partir des flux
PES audio et vidéo lus et en y insérant les tables MPEG nécessaires à la transmission en DVB.
Le flux TS ainsi construit est transmis à l'utilisateur concerné par l'intermédiaire de l'interface 2 et du réseau de télécommunications.
Les paquets PES extraits par le filtre 6B sont soumis à un convertisseur 9 dont le rôle est convertir ces paquets en pages HTML (flash ou autre...) qui seront éventuellement transmises via le serveur 8 pour être affichées chez l'utilisateur.
La figure 2 montre schématiquement le décodeur DVB 10 dont est équipé un utilisateur. Son interface réseau 1 1 récupère le flux TS reçu, et le fournit au module 12 de démultiplexage et de décodage MPEG2. Ce module 12 restitue les signaux audio et vidéo qui sont fournis au téléviseur 20 de l'utilisateur. Dans le cadre de la présente invention, le module de démultiplexage et de décodage 12 peut être standard.
L'interface d'utilisateur comporte typiquement une télécommande infrarouge 21 qui, selon les actions de l'utilisateur, envoie différents signaux captés par un détecteur infrarouge 13 du décodeur 10.
Le décodeur 10 comporte une couche logicielle de communication 14, généralement basée sur une application de type navigateur HTML pour communiquer avec le serveur web 8 de la plate-forme de service 1 (un interpréteur de type flash ou autre peut aussi être utilisé en variante). Le navigateur 14 est informé de certains signaux de commande d'utilisateur captés par le détecteur 13. De tels signaux se rapportent par exemple à des commandes de pause/lecture ou d'avance/retour rapide, que le navigateur 14 traduit en des requêtes HTML transmises via l'interface 1 1 et le réseau de télécommunications selon le protocole HTTP ("HyperText Transfer Protocol").
Ces requêtes transportent des commandes interprétées au niveau du serveur de VOD 5 pour donner lieu à des modifications correspondantes de la lecture du flux multimédia dans la base de données 4.
Avantageusement, les commandes d'utilisateur que le navigateur 14 du décodeur 10 répercute dans des requêtes HTML transmises sur le réseau, comprennent également des commandes d'interaction qui sont en relation avec les informations d'interactivité rencontrées dans les DVD. Ainsi, des commandes telles que des changements de chapitre ou des commandes sélectionnables à partir de menus DVD affichés à l'écran donnent lieu à rémission de requêtes HTML spécifiques qui seront interprétées par un module
7 ajouté au serveur de VOD dans la plate-forme de service 1. L'utilisateur a ainsi la possibilité de naviguer dans l'arborescence des menus du DVD qu'il est en train de visualiser.
Le module interpréteur 7 analyse les commandes d'interaction reçues dans les requêtes HTML en relation avec le fichier IFO, stocké dans la base de données 4, qui correspond à la séquence vidéo en cours de transmission.
L'interpréteur IFO 7 est similaire à celui que l'on rencontre habituellement dans les lecteurs DVD. Pour chaque session de DVD en cours pour un utilisateur, il alloue notamment une zone de mémoire pour émuler les cinq registres de 16 bits stockant les informations qui permettent d'agir sur l'arborescence suivie dans le fichier IFO en fonction des choix antérieurs.
Ainsi, chaque commande de l'utilisateur peut être interprétée pour piloter l'adressage du flux en cours de lecture selon le chapitrage du DVD, pour sélectionner des fichiers audio ou de sous-titres correspondant à des langues choisies par l'utilisateur, pour sélectionner des portions de vidéo correspondant à des angles de caméra choisis par l'utilisateur, pour sélectionner des PES associés à l'affichage d'un menu,...
En fonction du résultat de l'interprétation des commandes, le serveur de VOD 5 commande la lecture en mémoire du flux PS à fournir au remultiplexeur 6.
HTTP est un protocole basé sur un schéma requête - réponse. Un
client qui envoie une requête à un serveur attend une réponse qui lui indique si sa requête a été prise en compte, traitée avec succès, en cours de traitement etc.. Dans une réalisation de l'invention, la plate-forme de VOD 1 ne renvoie pas immédiatement une réponse à la requête envoyée par le navigateur 14 du décodeur, ou sinon une réponse provisoire lui indiquant que la requête est en cours de traitement par le serveur. La requête fait l'objet d'une temporisation pour laisser à la plate-forme le temps d'effectuer les traitements requis.
L'interpréteur 7 détermine alors la position sur laquelle doit se positionner le serveur de VOD 5. Une commande est envoyée au serveur de VOD donnant pour l'abonné, le programme diffusé la position à partir de laquelle la diffusion est reprise. A partir de cette nouvelle position, le flux au format PS (DVD) est envoyé au démultiplexeur 6. Celui-ci génère d'une part un flux au format TS (DVB) approprié à la diffusion sur IP de programme audiovisuel. Parallèlement, les données d'interactivité extraites par le filtre 6B sont récupérées par le convertisseur 9, de même que les éventuels fichiers de sous-titres.
Si la commande entrée par l'utilisateur doit donner lieu à l'affichage d'un menu, l'interpréteur 7 commande le convertisseur 9 pour qu'il génère une page HTML, incluant la description des boutons et des actions qui leur sont associées. Cette page est fournie au serveur web 8 qui génère alors la réponse à la requête du décodeur avec la page web dans le corps de la réponse. Ce message est envoyé dans le canal de données et non pas dans le flux DVB. Le navigateur 14 du décodeur 10 interprète la page retournée et affiche son contenu, y compris les images associées, en superposition du flux vidéo reçu sur le canal DVB (module d'overlay 15 de la figure 2). Les actions suivantes de l'utilisateur à l'aide de sa télécommande 21 seront alors analysées par le navigateur 14 en relation avec les actions associées aux boutons pour déclencher, si nécessaire, de nouvelles requêtes HTTP vers la plate-forme.
Un procédé analogue est employé pour faire afficher les sous-titres éventuellement sélectionnés par l'utilisateur.
Dans un premier temps, un menu de sélection de sous-titres est affiché
de la manière décrite ci-dessus. En réponse à la sélection de l'une des langues de sous-titrage par l'utilisateur, le navigateur 14 envoie à la plate-forme 1 une requête HTTP que l'interpréteur 7 analyse pour récupérer la langue sélectionnée. L'identifiant de sous-titre (SID) correspondant à cette langue est inclus dans une commande envoyée au filtre 6B du remultiplexeur 6 afin que celui-ci extraie flux PS lu sous le contrôle du serveur de VOD 5 les paquets PES correspondant aux sous-titres à afficher. Ces paquets sont fournis au convertisseur 9 pour qu'il construise à la volée des pages HTML. Chaque page ainsi générée contient un certain nombre de sous-images de sous-titres à afficher pendant la séquence vidéo, ces sous-images ayant été décodées par le convertisseur 9. Les sous-titres contenus dans une même page sont chacun associés à un index temporel respectif inclus dans la page (dans la norme HTML, un tel index permet de n'afficher qu'une partie d'une page à l'instant pointé). Cet index correspond au délai d'attente indiqué dans le SP_DCSQ de telle sorte que le sous-titre est affiché à l'instant désiré.
A réception d'une telle page, le navigateur HTML 14 du décodeur 10 récupère les sous-images et les affiche en superposition (module d'overlay 15) aux instants indiqués dans la page.
Lorsqu'il arrive à la dernière séquence incluse dans une page HTML, le convertisseur 9 insère un script dans la page (par exemple du javascript). Ce script est interprété en local par le navigateur 14 pour générer une nouvelle requête HTTP vers le serveur web 8, demandant la prochaine page avec les sous-titres suivants à afficher. Ceci permet d'avoir une gestion simple au niveau du serveur appliquant le filtrage des PES, évitant d'avoir à conserver un contexte pour chacun des abonnés utilisant la fonctionnalité de sous-titrage.
La figure 3 illustre une autre architecture possible de la plate-forme de service VOD selon l'invention. Dans cette plate-forme 30, le remultiplexage du flux PS, lu sur un DVD 3, en un flux TS est effectué non pas en temps réel pendant une session de VOD, mais dans la phase préliminaire d'enregistrement du contenu du disque 3. Il y a donc une moins forte contrainte de rapidité sur le remultiplexeur MPEG2 31.
Les flux multimédias sont donc enregistrés au format TS dans la base de données 32 de la plate-forme 30. L'adressage du flux utilisé dans les fichiers IFO du DVD doit être modifié afin de tenir compte du réagencement du flux. Cette modification est effectuée par un module d'adaptation 33 en parallèle avec l'opération de remultiplexage. Les fichiers IFO adaptés sont enregistrés dans la base de données 32 en relation avec les séquences correspondantes du flux TS.
L'interpréteur IFO 34 de la plate-forme 30 exploite alors les fichiers IFO adaptés afin d'adresser au serveur de VOD 35 les paramètres d'adressage du flux TS mémorisé. Dans ce mode de réalisation, le serveur de VOD 35 peut être de type classique pour piloter la lecture en mémoire de flux TS.
Le filtre du remultiplexeur 31 extrait du flux PS les paquets PES contenant les données d'interactivité ainsi que ceux contenant des sous-titres pour qu'ils soient enregistrés dans la base de données 32 en relation avec les séquences correspondantes du flux TS. Chaque PES de sous-titre est enregistré en association avec son identifiant SID. Pour l'envoi de pages HTML contenant un ou plusieurs sous-titres, l'interpréteur IFO 34 commande la lecture des fichiers PES associés au SID récupéré dans la requête HTTP issue du décodeur pour qu'ils soient fournis au convertisseur 9. Le même fonctionnement s'applique pour la construction des pages de boutons de menu.
Le mode de réalisation de la figure 3 a pour avantages de permettre d'utiliser un serveur de VOD du marché et d'éviter l'opération de remultiplexage en temps réel, qui est relativement coûteuse en capacité de calcul.
En pratique, dans l'un ou l'autre des modes de réalisation décrits, l'invention pourra être implémentée au moyen de programmes informatiques exécutés par un ou plusieurs processeurs de la plate-forme de service 1 , 30 et conçus pour compléter les fonctionnalités du serveur de VOD 5, 35.
L'invention a été décrite ci-dessus dans le cadre des standards DVD et DVB. Naturellement, elle n'est pas limitée à ces standards. L'invention est notamment applicable à tous types de supports d'enregistrement de contenus interactifs (HD-DVD, BIu Ray,...).
D'autre part, l'équipement d'utilisateur peut avoir des formes très diverses. Par exemple, le décodeur 10 peut faire partie d'un microordinateur dont l'écran et la carte son servent à la restitution du contenu multimédia et dont l'interface utilisateur (clavier, souris, etc.) sert à la saisie des commandes d'interaction.