Procédé d'accès à un service, notamment un portail web, par un terminal de restitution d'un flux multimédia.
1. DOMAINE DE L'INVENTION
Le domaine de l'invention est celui de la télévision numérique (DTV, pour
« Digital TeleVision » en anglais).
Dans un système de télévision numérique, un flux de transport multimédia est distribué par câble, satellite, voie hertzienne terrestre ou ADSL («Asymmetric Digital Subscriber Line » en anglais). Le flux de transport multimédia contient un ou plusieurs programmes (aussi appelés services), ainsi que des tables de signalisation. Chaque programme (service) est constitué d'un ou plusieurs flux élémentaires (flux vidéo, flux audio, flux de données). Le flux de transport multimédia est diffusé vers les utilisateurs (clients finaux) qui possèdent un terminal de restitution spécifique (aussi appelé décodeur ou encore récepteur de télévision numérique) qui est soit intégré à un téléviseur numérique, soit fourni sous la forme d'un dispositif (appelé « Set-top box ») annexe au téléviseur numérique.
Plus précisément, l'invention concerne une technique d'accès à un service (notamment mais non exclusivement un portail web) par un terminal de restitution d'un flux multimédia.
La présente invention s'applique notamment, mais non exclusivement, dans le cas d'un flux de transport multimédia conforme aux normes MPEG-2 TS (« Moving Picture Experts Group - 2 Transport Stream » en anglais) et DVB (« Digital Video Broadcasting » en anglais).
2. ARRIÈRE-PLAN TECHNOLOGIQUE
On s'attache plus particulièrement dans la suite de ce document à décrire la problématique existant dans le cas d'un accès à un portail web par un terminal de restitution d'un flux multimédia (problématique à laquelle ont été confrontés les inventeurs de la présente demande de brevet). L'invention ne se limite bien sûr pas à ce cas particulier d'application, mais présente un intérêt pour l'accès à n'importe quel service (par exemple une page web) par un terminal de restitution d'un flux multimédia.
Il existe à ce jour plusieurs techniques permettant d'accéder à un portail web à partir d'un terminal de restitution d'un flux multimédia.
Une première technique connue consiste à utiliser un téléviseur connecté à Internet (on parle également de « télévision connectée ») et proposant un accès à un portail web multimédia (avec émissions TV, vidéos, musiques, informations pratiques, actualités...) grâce à une touche d'accès direct sur le boîtier de télécommande du téléviseur. L'appui sur cette touche génère une requête http vers l'adresse URL du portail (cette adresse URL est codée en dur dans le téléviseur connecté).
Une deuxième technique connue consiste, dans le cas où un décodeur (« Set-top box ») est relié au téléviseur numérique, à utiliser le boîtier de télécommande du décodeur. Typiquement, l'accès à un portail se fait à partir d'une requête http vers l'adresse URL du portail, suite à la saisie, sur le boîtier de télécommande du décodeur, d'un numéro de canal associé au portail désiré. Ainsi, l'utilisateur peut accéder à plusieurs portails, chaque portail étant associé à un numéro de canal distinct.
Un inconvénient commun aux première et deuxième techniques connues est qu'elles ne permettent pas un accès contextuel à un portail, c'est-à-dire un accès à un portail spécifique à la chaîne (programme, service) en cours de visualisation. En effet, le portail auquel permet d'accéder la première technique connue est toujours le même (pour un téléviseur donné), quelle que soit la chaîne de télévision (programme, service) regardée sur le téléviseur. Par ailleurs, la liste d'un ou plusieurs portails auxquels l'utilisateur peut accéder avec la deuxième technique connue dépend du contenu du flux multimédia reçu par le décodeur (« Set-top box ») mais n'est pas liée à la chaîne de télévision (programme, service) regardée sur le téléviseur.
Une troisième technique connue est basée sur une technologie de télévision interactive, définie par exemple dans la norme HBBTV (pour « Hybrid Broadcast Broadband TV » en anglais) qui prévoit, pour les téléviseurs connectés et les décodeurs (« Set-top box »), d'ajouter des informations à afficher sur l'écran du téléviseur pendant que l'utilisateur regarde un programme de télévision (chaîne de télévision). Ces informations sont soit disponibles directement dans le flux multimédia (informations transmises par diffusion, ou « broadcast » en anglais), soit délivrées via une connexion (voie de retour) entre le terminal de l'utilisateur (téléviseur connecté ou décodeur) et un
serveur du diffuseur ou d'un tiers opérant en relation avec le diffuseur (informations transmises via un accès point à point, ou « broadband » en anglais). Ceci doit permettre, à terme, de couvrir tous les usages généralement offerts par les télévisions connectées : télévision de rattrapage (« catch-up TV » en anglais, vidéo à la demande (VOD, pour « Video On Demand » en anglais), publicité interactive, personnalisation, votes, jeux, réseaux sociaux, guide des programmes...
Un terminal HBBTV (c'est-à-dire compatible avec la norme HBBTV) possède une architecture logicielle comprenant généralement un logiciel système au-dessus duquel s'exécute un intergiciel de télévision interactive (« iTV middleware » en anglais).
Au sein de intergiciel de télévision interactive, on distingue généralement : un module de gestion d'applications interactives (incluant un navigateur), un module de gestion des tables et un module de gestion des carrousels d'objets.
Lors du déploiement d'une application interactive donnée, associée à un programme donné (chaîne de télévision), le diffuseur transmet (au sein d'un flux multimédia) le programme donné comprenant :
• des flux élémentaires audio et/ou vidéo,
• des tables décrivant ces flux élémentaires (tables PAT (« Program Allocation Table ») et PMT (« Program Map Table ») notamment),
• des constituants (code logiciel notamment, codé par exemple en HTML, sous forme de page Web) d'une application interactive donnée, transmise par exemple au sein d'un carrousel d'objets codé selon la norme DSM CC (« Digital Storage Media Command and Control » en anglais),
• une table AIT (Application Information Table »), identifiant toutes les applications interactives disponibles pour le programme donné (y inclus l'application interactive donnée), ainsi que la manière dont ces applications interactives sont disponibles (carrousel d'objets en l'espèce pour l'application interactive donnée).
A la réception de ce programme donné, le terminal HBBTV affiche les flux audio et vidéo (grâce aux tables les décrivant). Par ailleurs, au sein de l'intergiciel de télévision interactive : le module de gestion des tables traite la table AIT et détecte
qu'un code logiciel de l'application interactive donnée a été transmis dans un carrousel d'objets ; le module de gestion des carrousels reçoit et ré-assemble les constituants de l'application interactive donnée ; et le module de gestion des applications gère l'application interactive donnée (réassemblée par le module de gestion des carrousels). Comme chaque application interactive, cette dernière peut par exemple prendre l'un des états suivants : téléchargée (« loaded »), en pause (« paused »), active (« active ») ou détruite (« destroyed »).
Dans une variante du déploiement d'une application interactive donnée, le programme donné (diffusé) ne comprend pas les constituants de l'application interactive donnée, mais la table AIT précise une adresse URL où peut être obtenue l'application interactive donnée. Au sein de l'intergiciel de télévision interactive du terminal HBBTV, on a alors les actions suivantes : le module de gestion des tables traite la table AIT et obtient cette adresse URL ; le navigateur du module de gestion des applications envoie une requête à cette adresse URL, afin de recevoir l'application interactive donnée ; et le module de gestion des applications gère l'application interactive donnée.
Les règles de gestion actuelles prévoient qu'une seule application interactive à la fois peut être affichée sur l'écran du téléviseur (elle peut se superposer à la vidéo du programme TV courant, mais pas au contenu d'une autre application interactive). En outre, les procédures d'installation et de démarrage sont conçues pour fonctionner entièrement automatiquement, sans interaction de l'utilisateur.
Pour accéder à un portail web à partir d'un terminal HBBTV, la norme HBBTV actuelle propose le premier fonctionnement technique suivant (basé sur la variante précitée dans laquelle la table AIT précise une adresse URL où peut être obtenue l'application interactive donnée) :
· le diffuseur d'un programme (chaîne de télévision) émet, dans une table AIT
(« Application Information Table » en anglais) de son flux, une adresse URL particulière (qui est, en reprenant la terminologie ci-dessus, celle d'une application interactive (dont le rôle est ici de permettre l'accès à un portail), mais n'est pas celle du portail lui-même) ;
• quand le terminal HBBTV détecte cette adresse URL particulière, il émet automatiquement vers un serveur une première requête d'accès à cette adresse URL particulière ;
• en réponse à cette première requête, le serveur envoie au terminal HBBTV l'application interactive demandée, qui est une première page dont l'exécution sur le navigateur du terminal provoque l'affichage (sur l'écran du téléviseur) d'une fenêtre contenant un message ou un logo (petit point rouge par exemple) indiquant à l'utilisateur qu'un portail (ou service quelconque) est disponible et l'invitant à y accéder en appuyant sur une touche particulière (par exemple la touche « OK ») du boîtier de télécommande du terminal HBBTV ;
• si l'utilisateur appuie sur cette touche particulière, le terminal HBBTV émet vers le serveur une deuxième requête d'accès à l'adresse URL du portail ;
• en réponse à cette deuxième requête, le serveur envoie au terminal HBBTV le portail demandé, qui est une deuxième page dont l'exécution sur le navigateur du terminal provoque l'affichage (sur l'écran du téléviseur) d'éléments (fenêtres, menus...) proposant un ou plusieurs services à l'utilisateur.
Pour accéder à un portail web à partir d'un terminal HBBTV, la norme HBBTV actuelle propose également le deuxième fonctionnement technique suivant (basé sur le mode de base précité dans lequel la table AIT précise qu'un code logiciel de l'application interactive donnée a été transmis dans un carrousel d'objets véhiculé par le flux) :
• le diffuseur d'un programme émet, dans une table ΑΓΓ de son flux, une commande d'extraction d'une application interactive particulière dans un carrousel d'objets (en reprenant la terminologie ci-dessus, cette application interactive particulière comprend une fonction d'accès à un portail, mais n'est pas le portail lui-même) ;
• quand le terminal HBBTV détecte cette commande d'extraction, il retrouve automatiquement l'application interactive demandée, qui est une première page (transmise dans le flux) dont l'exécution sur le navigateur du terminal provoque l'affichage (sur l'écran du téléviseur) d'une fenêtre contenant un message ou un logo (petit point rouge par exemple) indiquant à l'utilisateur qu'un portail (ou
service quelconque) est disponible et l'invitant à y accéder en appuyant sur une touche particulière (par exemple la touche « OK ») du boîtier de télécommande du terminal HBBTV ;
• si l'utilisateur appuie sur cette touche particulière, le terminal HBBTV émet vers le serveur une requête d'accès à l'adresse URL du portail ;
• en réponse à cette requête, le serveur envoie au terminal HBBTV le portail demandé, qui est une deuxième page dont l'exécution sur le navigateur du terminal provoque l'affichage (sur l'écran du téléviseur) d'éléments (fenêtres, menus...) proposant un ou plusieurs services à l'utilisateur.
Dans chacun des premier et deuxième fonctionnements techniques précités, proposés dans la norme HBBTV actuelle, après que le portail a été affiché sur l'écran du téléviseur, le couple terminal HBBTV - téléviseur permet ensuite de naviguer dans un contenu web mis à disposition (sur un ou plusieurs serveurs) et seulement dans celui-ci (possibilité de proposer des pages web sélectionnées, en mode consultation uniquement). Le diffuseur garde la maîtrise du contenu web rendu accessible (le contenu affiché est entièrement contrôlé par le diffuseur et en général contextuel au programme en cours). L'utilisateur peut quitter à tout moment le mode interactif (navigation dans le contenu web) pour revenir à son programme de télévision.
Un avantage des premier et deuxième fonctionnements précités de la norme HBBTV actuelle est qu'ils permettent un accès contextuel à un portail, c'est-à-dire un accès à un portail spécifique à la chaîne (programme) en cours de visualisation sur l'écran du téléviseur.
En revanche, ils présentent l'inconvénient de ne pas pouvoir associer à un même programme :
• une application interactive classique (par « classique » on entend « ne visant pas à offrir un accès à un portail »), et
• une application interactive particulière proposant un accès à un portail (selon le mode de base ou la variante précités).
En effet, si c'était le cas, chaque application interactive étant démarrée automatiquement et une seule application interactive pouvant être affichée à la fois (voir règles précitées), le démarrage de l'application interactive particulière (proposant l'accès
à un portail) conduirait automatiquement à la fermeture de l'application interactive classique (application de jeu ou de vote par exemple).
Il est important de noter que dans le premier fonctionnement précité, il n'est pas possible d'insérer directement l'adresse URL du portail dans la table AIT. En effet, cela conduirait le terminal HBBTV à émettre automatiquement vers le serveur une requête d'accès à l'adresse URL du portail, et sur réponse du serveur provoquerait l'affichage non conditionné du portail à l'écran du téléviseur (en superposition de la vidéo de l'émission TV courante, voire à la place de celle-ci).
De même, dans le deuxième fonctionnement précité, il n'est pas possible d'insérer directement dans la table AIT une commande d'extraction du portail (le portail étant dans ce cas transmis dans un carrousel d'objets, dans le flux). En effet, cela conduirait le terminal HBBTV à afficher automatiquement et de manière non conditionnée le portail à l'écran du téléviseur (en superposition de la vidéo de l'émission TV courante, voire à la place de cellle-ci).
Un autre inconvénient des premier et deuxième fonctionnements précités est qu'ils génèrent une gêne visuelle pour l'utilisateur. En effet, à chaque fois que l'utilisateur zappe sur une chaîne de télévision (programme) associée à une application interactive particulière proposant un accès à un portail, cela conduit à l'affichage (en superposition du programme TV courant) d'une fenêtre contenant un message ou un logo indiquant à l'utilisateur qu'un accès à un portail est possible en appuyant sur une touche (touche « OK » par exemple) du boîtier de télécommande du terminal HBBTV.
Un autre inconvénient du premier fonctionnement précité est qu'il génère des requêtes inutiles et donc une gestion non optimale de la bande passante du réseau via lequel sont connectés le terminal HBBTV et le serveur. En effet, si après affichage de la fenêtre contenant l'invitation à accéder au portail, l'utilisateur décide de ne pas accéder au portail, alors la première requête vers le serveur ainsi que l'envoi par le serveur de la première page (dont l'exécution sur le navigateur du terminal provoque l'affichage de cette invitation à accéder au portail) ont été transmis inutilement.
3. EXPOSÉ DE L'INVENTION
Dans un mode de réalisation particulier de l'invention, il est proposé un procédé d'accès à un service par un terminal de restitution d'un flux multimédia. Ledit terminal effectue les étapes suivantes :
réception du flux multimédia ;
détection, dans le flux multimédia, d'une information d'accès à un service ; stockage de ladite information d'accès ;
association de ladite information d'accès à un élément d'interface homme- machine prédéfini; et
en cas d'interaction d'un utilisateur avec ledit élément d'interface homme- machine, exécution d'une opération d'accès audit service utilisant ladite information d'accès.
Le principe général de l'invention consiste donc à insérer une information d'accès (par exemple l'adresse URL d'un portail) directement dans le flux, et à prévoir dans le terminal de restitution un mécanisme de traitement particulier de cette information d'accès (ce traitement particulier réalisant une détection, un stockage et une association de cette information d'accès à un élément d'interface homme-machine).
Ainsi, cette information d'accès n'est pas traitée par le terminal de restitution comme une application interactive classique et sa réception ne provoque aucun affichage gênant sur l'écran du téléviseur (en superposition de la vidéo de l'émission TV courante, voire à la place de celle-ci), ni aucun envoi de requête inutile vers un serveur. En outre, la réception et le traitement de cette information d'accès ne perturbe pas le traitement classique (par exemple selon la norme HBBTV, comme décrit ci-dessus), d'une application interactive classique.
L'information d'accès peut être vue comme un nouveau type d'application interactive, dédiée à un accès à un service (ce service étant par exemple un portail) et distincte des types d'applications interactives déjà connus à ce jour.
En outre, l'information d'accès étant insérée dans le flux multimédia, elle peut être changée dynamiquement, notamment lorsque le contenu du flux multimédia change : ainsi cette information peut être contextuelle, c'est-à-dire propre au contenu couramment diffusé via ce flux multimédia.
Par ailleurs, l'élément d'interface homme machine peut être choisi indépendamment du contenu diffusé via le flux multimédia : cet élément est unique, commun par exemple à toutes les chaînes de télévision et/ou tous les contenus diffusés via ce flux multimédia et donc facilement mémorisable par l'utilisateur qui peut à tout moment interagir sur cet élément afin de déterminer si un accès à un service est proposé pour le contenu qu'il reçoit via ce flux multimédia.
Enfin, l'information d'accès étant insérée dans le flux multimédia, elle peut à tout moment être modifiée ou mise à jour par le dispositif qui génère ce flux multimédia. Cette information d'accès peut aussi bien être propre à une chaîne de télévision ou bien propre à un contenu (émission, film, etc) en cours de diffusion via cette chaîne de télévision. Chaque prestataire de service générant un ensemble de contenus audiovisuels diffusé via ce flux multimédia peut donc personnaliser à souhait cette information d'accès en fonction de ce qu'il souhaite proposer à un instant donné à l'utilisateur du terminal récepteur de ce flux multimédia.
Enfin, l'invention est applicable aussi bien à la diffusion de flux vidéo, de flux audiovisuels que de flux audio sans vidéo dès lors que ces flux sont transportés sous un format de transport permettant le codage de l'information d'accès et son extraction par un terminal récepteur.
Selon une caractéristique particulière, ledit service est un portail d'accès à au moins un autre service.
De cette façon, on permet au diffuseur d'une chaîne TV numérique (programme), de proposer son portail en direct.
Selon une caractéristique particulière, l'information d'accès est :
- soit une adresse de connexion à un serveur mettant en œuvre ledit service dans un réseau de communication, ladite opération comprend un envoi d'une requête de connexion audit serveur utilisant ladite adresse de connexion ;
- soit une commande d'extraction d'un code logiciel d'une application interactive, inséré dans ledit flux multimédia et comprenant une fonction d'accès audit service, ladite opération comprenant une exécution dudit code logiciel.
Ainsi, le concept proposé peut être utilisé quelle que soit la nature de l'information d'accès transmise dans le flux.
Selon une caractéristique particulière, ledit élément d'interface homme-machine est une touche dudit terminal ou une touche d'un boîtier de télécommande associé audit terminal.
Ainsi, une touche unique permet à l'utilisateur d'accéder à un service (par exemple un portail) de la chaîne TV en cours de visualisation. Par exemple, si l'on se trouve sur le canal de TF1, on accédera directement sur le portail de TF1 lors de l'appui de cette touche. Idem, si on se trouve sur France2 ou tout autre chaîne de TV qui souhaite proposer son propre portail (offrant ses propres services : jeux, votes, etc).
Selon une caractéristique particulière, en cas d'interaction d'un utilisateur avec ledit élément d'interface homme-machine, si aucune information d'accès n'a été détectée, ledit terminal effectue une étape d'inhibition de l'exécution de ladite opération.
Ainsi, on évite un accès non approprié à un service (par exemple un portail) non lié à la chaîne TV en cours de visualisation.
Selon une caractéristique particulière, en cas d'interaction d'un utilisateur avec ledit élément d'interface homme-machine, si aucune information d'accès n'a été détectée, ledit terminal fournit une information relative à l'impossibilité d'exécuter ladite opération.
L'information relative à l'impossibilité d'exécuter ladite opération est par exemple un message d'erreur et/ou un message d'information sur l'absence d'information d'accès.
Ainsi, à défaut d'information contraire, l'utilisateur sait qu'il peut accéder à un service (par exemple un portail) non lié à la chaîne TV en cours de visualisation.
Selon une caractéristique particulière, l'information d'accès est insérée dans une table de signalisation, comprise dans ledit flux multimédia, cette table de signalisation comprenant un champ de description de valeur prédéterminée indiquant que cette table de signalisation comprend une information d'accès.
Ainsi, on réutilise avantageusement la notion existante de tables de signalisation comprises dans les flux multimédia.
Selon une caractéristique particulière, ledit flux multimédia comprend plusieurs tables de signalisation comprenant chacune une information d'accès, chaque dite table de signalisation possédant un numéro de version. L'information d'accès incluse dans
une dite table de signalisation est ignorée, dans ladite étape de détection d'une information d'accès, si la table de signalisation considérée possède un numéro de version égal ou antérieur à celui d'une dite table de signalisation reçue antérieurement.
Ceci permet de simplifier les traitements effectués par le terminal de restitution.
Selon une caractéristique particulière, le flux multimédia est codé conformément à la norme MPEG-2 TS. La table de signalisation comprend une information d'accès est une table AIT, pour « Application Information Table » en anglais, d'un type particulier indiquant qu'elle comprend une information d'accès. L'étape de détection comprend les étapes suivantes : détection de la table ΑΓΓ dudit type particulier, et lecture de l'information d'accès comprise dans la table AIT dudit type particulier.
On facilite donc la mise en œuvre de la technique proposée en s 'appuyant sur la table AIT et plus précisément en proposant un nouveau type de table AIT (non prévu dans les versions actuelles des normes DVB et HBBTV).
Selon une caractéristique particulière, la table AIT dudit type particulier est définie, dans une table PMT, pour « Program Map Table », par :
un identifiant de paquet de transport (PID) ;
un champ « stream_type » prenant la valeur 0x05 ; et
un descripteur « application_signalling_descriptor() » dont un champ « applicationjype » prend une valeur prédéterminée spécifique audit type particulier de table ΑΓΓ.
Il s'agit donc simplement de définir un nouveau type de table AIT, utilisée selon la technique proposée pour permettre l'accès à un service (un portail par exemple) spécifique à la chaîne TV en cours de visualisation.
Selon une caractéristique particulière, pendant l'accès audit service, ledit terminal effectue une étape d'inhibition de l'exécution de toute application interactive identifiée dans une table AIT reçue ne possédant pas ledit type particulier.
Par exemple, tant que l'opération d'accès est en cours d'exécution, par exemple tant que l'utilisateur navigue au sein du portail (ou au sein d'un domaine accessible via le portail), cette session de navigation ne peut pas être interrompue inopinément par une application interactive (classique) transmise par le contenu multimédia en cours (et que l'utilisateur a quitté pour accéder au portail).
Selon une caractéristique particulière, le flux multimédia comprend au moins deux contenus multimédia distincts dont un contenu multimédia courant. Ledit terminal effectue les étapes suivantes :
détection, pour au moins un contenu multimédia compris dans le flux multimédia, d'une information d'accès à un service ;
stockage d'une information d'accès détectée en association avec une identification du contenu multimédia pour lequel cette information d'accès a été détectée ; et
association audit élément d'interface homme-machine de l'information d'accès détectée pour le contenu multimédia courant via ledit flux multimédia ;
en outre, à chaque changement de contenu multimédia courant, le terminal réitère l'étape d'association audit élément d'interface homme-machine de l'information d'accès stockée pour le contenu multimédia courant.
Selon une caractéristique particulière du procédé d'accès, le flux multimédia comprend au moins deux contenus multimédia distincts dont un contenu multimédia courant, ledit terminal effectue les étapes de détection et de stockage d'une information d'accès pour chacun desdits contenus multimédia, et à chaque changement de contenu multimédia courant, le terminal réitère l'étape d'association audit élément d'interface homme-machine de l'information d'accès stockée pour le contenu multimédia courant.
Par contenu multimédia courant, on entend celui sélectionné par l'utilisateur et affiché sur téléviseur (ou celui sélectionné par défaut, dans le cas par exemple de la chaîne affichée au démarrage).
Ainsi, lorsqu'au moins deux contenus multimédia distincts sont diffusés (successivement ou simultanément) via le flux multimédia (par exemple deux chaînes de télévision, ou bien deux émissions diffusées via une même chaîne de télévision), il est possible de gérer une information d'accès en association avec chacun de ces contenus.
Par exemple, quand l'utilisateur zappe d'une chaîne TV à une autre (changement de chaîne de télévision courante), le terminal de restitution gère plus rapidement le changement de l'information d'accès en ce qu'il a déjà mémorisé pour la chaîne nouvellement sélectionnée une information d'accès propre à cette chaîne (par exemple l'adresse URL d'un portail associé à la chaîne nouvellement sélectionnée).
L'information d'accès propre à une chaîne est par exemple mémorisée quand l'utilisateur sélectionne cette chaîne avec le boîtier de télécommande du terminal. Les informations d'accès associées aux différentes chaînes sont dans ce cas mémorisées une par une, au fur et à mesure du zapping de l'utilisateur. Dans une variante, plusieurs informations d'accès, associées chacune à une chaîne distincte, sont mémorisées en même temps, indépendamment du zapping de l'utilisateur, par exemple lors d'une capture de la liste des chaînes multiplexées au sein du flux multimédia. En d'autres termes, dans cette variante, on détecte, dans le flux, des informations d'accès associées à différentes chaînes, mais seule l'information d'accès associée à la chaîne courante (celle en cours de visualisation sur le téléviseur) est associée à l'élément d'interface homme- machine (« touche Portail » par exemple).
Selon une caractéristique particulière, le procédé d'accès comprend les étapes suivantes :
détection, dans le flux multimédia, d'une commande de suppression ; et suppression de ladite association après détection de ladite commande de suppression.
Dans un autre mode de réalisation de l'invention, il est proposé un procédé de génération d'un flux multimédia à transmettre à un terminal de restitution, caractérisé en ce qu'il comprend une étape d'insertion dans le flux multimédia d'une information d'accès à un service, ladite information d'accès étant destinée à être :
- détectée par le terminal de restitution suite à la réception du flux multimédia,
- associée par le terminal de restitution à un élément d'interface homme-machine et
- utilisée par le terminal de restitution, en cas d'interaction d'un utilisateur avec ledit élément d'interface homme-machine, pour exécuter une opération d'accès audit service.
Dans un autre mode de réalisation de l'invention, il est proposé un produit programme d'ordinateur qui comprend des instructions de code de programme pour la mise en oeuvre du procédé précité (dans l'un quelconque de ses différents modes de réalisation), lorsque ledit programme est exécuté sur un ordinateur.
Dans un autre mode de réalisation de l'invention, il est proposé un médium de stockage lisible par ordinateur, stockant un programme d'ordinateur comprenant un jeu
d'instructions exécutables par un ordinateur pour mettre en œuvre le procédé précité (dans l'un quelconque de ses différents modes de réalisation).
Dans un autre mode de réalisation de l'invention, il est proposé un terminal de restitution d'un flux multimédia comprenant :
- des moyens de réception du flux multimédia ;
des moyens de détection, dans le flux multimédia, d'une information d'accès à un service ;
des moyens de stockage de ladite information d'accès ;
des moyens d'association de ladite information d'accès à un élément d'interface homme-machine prédéfini ; et
des moyens, activés en cas d'interaction d'un utilisateur avec ledit élément d'interface homme-machine, d'exécution d'une opération d'accès audit service utilisant ladite information d'accès.
Dans un autre mode de réalisation de l'invention, il est proposé un dispositif de génération d'un flux multimédia à transmettre à un terminal de restitution, caractérisé en ce qu'il comprend des moyens d'insertion dans le flux multimédia d'une information d'accès à un service, ladite information d'accès étant destinée à être :
- détectée par le terminal de restitution suite à la réception du flux multimédia,
- associée par le terminal de restitution à un élément d'interface homme-machine et - utilisée par le terminal de restitution, en cas d'interaction d'un utilisateur avec ledit élément d'interface homme-machine, pour exécuter une opération d'accès audit service.
Dans un autre mode de réalisation de l'invention, il est proposé un signal véhiculant un flux multimédia, destiné à être transmis vers un terminal de restitution. Le le flux multimédia comprend une information d'accès à un service, ladite information d'accès étant destinée à être :
- détectée par le terminal de restitution suite à la réception du flux multimédia,
- associée par le terminal de restitution à un élément d'interface homme-machine et
- utilisée par le terminal de restitution, en cas d'interaction d'un utilisateur avec ledit élément d'interface homme-machine, pour exécuter une opération d'accès audit service.
4. LISTE DES FIGURES
D'autres caractéristiques et avantages de l'invention apparaîtront à la lecture de la description suivante, donnée à titre d'exemple indicatif et non limitatif, et des dessins annexés, dans lesquels :
la figure 1 présente un synoptique d'un système selon un mode de réalisation particulier de l'invention ; et
la figure 2 présente un diagramme de séquence montrant un exemple de cinématique du traitement d'une information d'accès à un portail par le système de la figure 1.
5. DESCRIPTION DÉTAILLÉE
Sur toutes les figures du présent document, les éléments et étapes identiques sont désignés par une même référence numérique.
Dans la suite de la description, on suppose à titre d'exemple non limitatif que le flux de transport multimédia est conforme aux normes MPEG-2 TS et DVB.
On présente maintenant, en relation avec la figure 1, un système selon un mode de réalisation particulier de l'invention. Ce système comprend :
• une régie de diffusion 1, gérée par un diffuseur et permettant de diffuser un flux de transport multimédia 2 via un réseau de diffusion 3 (par une ou plusieurs des technologies suivantes : câble, satellite, voie hertzienne terrestre ou ADSL) ;
• une pluralité de décodeurs (aussi appelés terminaux de restitution ou « Set-top box ») 4 (dans un souci de simplification de la figure 1, un seul décodeur y est représenté), recevant le flux de transport multimédia 2 ;
• un téléviseur 5 connecté au décodeur 4 (dans une variante, le terminal de restitution est intégré au téléviseur et c'est le téléviseur qui est connecté au réseau Internet 7) ;
• un boîtier de télécommande 6 associé au décodeur 4 ;
• un serveur web 8, avec lequel peut communiquer le décodeur 4, via un réseau de communication 7 (le réseau Internet par exemple). Le serveur d'application 8 est optionnellement relié à la régie de diffusion 1 (via une liaison quelconque). Dans la suite de la description, on suppose à titre d'exemple non limitatif que le diffuseur du flux de transport multimédia 2 souhaite proposer un accès direct à un service, par exemple un portail web hébergé par le serveur web 8, ce service étant
spécifique à un contenu particulier diffusé via ce flux multimédia, par exemple à une chaîne de télévision. Il s'agit par exemple de proposer un accès direct au portail « OrangeReplay » (dont l'adresse URL est « http://www.orange_replay.fr ») qui est spécifique à la chaîne de télévision Orange.
Il est clair cependant que l'invention n'est pas limitée à cet exemple et s'applique dans tous les cas où l'on souhaite proposer un accès direct à un service (pas obligatoirement un portail) qui est d'une part accessible via un réseau de communication (le réseau Internet par exemple) auquel est connecté un terminal de restitution (décodeur ou téléviseur connecté), et d'autre part spécifique à un contenu diffusé au sein d'un flux de transport multimédia.
Le principe de fonctionnement peut être résumé comme suit. Afin de proposer un accès direct à un service (au portail web) spécifique à un contenu (une chaîne de télévision particulière) du flux de transport multimédia 2, la régie de diffusion 1 comprend des moyens permettant d'insérer dans le flux multimédia 2, et plus précisément dans une table de signalisation particulière, une information d'accès à ce service, cette information d'accès étant par exemple une adresse de connexion au serveur 8 mettant en œuvre ce service, adresse qui peut être codée sous forme d'URL. Le décodeur 4, qui reçoit via le flux multimédia une chaîne de télévision particulière, restituée sur le téléviseur 5 et visualisée par un utilisateur, extrait l'information d'accès présente dans le flux 2 et l'associe à un élément d'interface homme-machine du décodeur. Cet élément est par exemple une touche du boîtier de télécommande du décodeur, qui est dédiée à ce type d'accès à un service. Cette touche sera nommée par la suite « touche Portail ». Dès lors, à tout moment cet utilisateur peut, en appuyant sur la « touche Portail », accéder au portail web défini par le diffuseur de cette chaîne de télévision particulière, au moyen d'une interface utilisateur affichée sur le téléviseur 5 (en superposition sur ou en remplacement de la vidéo de la chaîne de télévision en cours de visualisation). L'utilisateur peut se déconnecter à tout moment du portail (ou du domaine de navigation web - c'est-à-dire un ensemble de pages web - accessible à partir du portail), par exemple en appuyant à nouveau sur la même « touche Portail ». Dans ce cas, il revient sur la même chaîne de télévision (celle associée au portail que quitte l'utilisateur), c'est-à-dire visualise à nouveau sur le téléviseur 5 uniquement la vidéo de
la chaîne de télévision sur laquelle il se trouvait lorsqu'il a appuyé la première fois sur la « touche Portail ».
Il existe plusieurs moyens de transmettre l'information d'accès à un service dans un flux de transport conforme à la norme MPEG2-TS. On peut par exemple définir une table de signalisation privée ou utiliser une table de signalisation DVB déjà existante.
On présente maintenant un mode de réalisation particulier dans lequel on s'appuie sur la table AIT (« Application Information Table ») définie dans la norme DVB. Plus précisément, on propose un nouveau type de table AIT, appelée ci-après « table AIT Portail » qui contient une information d'accès à un service.
On rappelle brièvement l'utilisation, telle que prévue dans la norme DVB, des tables de signalisation PAT (« Program Allocation Table »), PMT (« Program Map Table ») et AIT.
La table PAT véhicule la liste de tous les programmes (services) présents dans le flux MPEG2-TS. Chaque programme listé est identifié par un numéro de programme (16 bits) et est associé à l'identifiant (ou PID, pour « Packet Identifier ») des paquets de transport véhiculant la sous-table PMT correspondant à ce programme.
La table PMT décrit les composantes de chaque programme (service), en associant à chaque composante l'identifiant (PID) des paquets de transport qui véhiculent cette composante. Le flux MPEG2-TS comprend une sous-table PMT par programme. Les composantes d'un programme sont les flux élémentaires (flux élémentaire vidéo, flux élémentaire audio...) et des tables de signalisation (notamment la table AIT).
Donc, la table PMT d'un programme donné fournit notamment l'identifiant (PID) des paquets de transport qui véhiculent la table ΑΓΓ associée à ce programme donné. Une table AIT est diffusée pour chaque programme (service) du flux MPEG2-TS qui véhicule une ou plusieurs applications interactives, et renseigne les caractéristiques de cette ou ces applications interactives.
Dans une table PMT, chaque composante d'un programme est décrite notamment par un champ de description « streamjype » qui indique le type de composante. Pour une composante de type « table AIT », la valeur du champ
« streamjype » est égale à 0x05 et elle est associée à un descripteur « application_signalling_descriptor ». Ce descripteur est défini comme suit :
application_signalling_descriptor()
{
descriptor_tag
descriptor_length
for( i=0; i<N; i++ )
{
reserved_future_use
applicationjype
reserved_future_use
AIT_version_number
}
}
Le champ de description « applicationjype » permet de préciser le type d'application interactive pour la table AIT concernée (c'est-à-dire le type de la ou les applications interactives dont les caractéristiques sont renseignées par la table AIT concernée). Il prend par exemple une première valeur pour indiquer un type d'application interactive conforme à la norme HBBTV, une deuxième valeur pour indiquer un type d'application interactive conforme à la norme MHP (« Mulimedia
Home Platform »), etc.
Dans mode de réalisation particulier de l'invention, on propose qu'une valeur prédéterminée (comprise par exemple dans la plage des valeurs privées ou non réservées) du champ de description « applicationjype » soit associée à un nouveau type d'application interactive, permettant ainsi de définir un nouveau type de table AIT
(« table AIT Portail ») permettant de transporter une information d'accès à un service (par exemple l'adresse URL d'un portail) et de gérer le mode d'accès à ce service au moyen de cette information d'accès.
On évite ainsi tout conflit, à la réception (côté décodeur), entre une table AIT classique (c'est-à-dire renseignant sur les caractéristiques d'une ou plusieurs applications
interactives conformes à la norme HBBTV ou MHP) et une « table AIT Portail » selon la présente invention.
On présente maintenant un exemple de réalisation de la « table AIT Portail » selon l'invention. La « table AIT Portail » contient un ensemble de descripteurs décrivant la nature de l'information d'accès à un service mais aussi le mode d'accès à ce service, fonction de la nature de cette information d'accès. Les descripteurs sont :
• un descripteur donnant des informations sur la nature de l'information d'accès et le mode d'accès, nommé « application_descriptor », qui contient les informations relatives au profil de l'application. On distingue par exemple deux profil : le premier indique que le portail est transmis selon la technique de carrousel d'objets, et le second indique que seule l'adresse URL du portail est transmise ; et
• un descripteur donnant des informations relatives à l'information d'accès, nommé « transport_protocol_descriptor », qui contient l'adresse URL du portail (si le descripteur « application_descriptor » indique le second profil) ou une commande d'extraction du portail dans un carrousel d'objets (si le descripteur « application_descriptor » indique le premier profil).
Plus précisément, si le descripteur « application_descriptor » indique le second profil, le descripteur « transport_protocol_descriptor» est le suivant :
transport_protocol_descriptor()
{
descriptor_tag = 0x02
descriptor_length
protocol_id = 0x03
transport_protocol_label
for(i=0; i<N; i++)
{
selector_byte = ' littp ://www . oran ge replay.fr' '
}
}
Le champ « descriptor_tag » vaut 0x02 par définition dans la norme, puisqu'il s'agit d'un descripteur de type « transport protocol descripteur». C'est ce qui permet au terminal de l'identifier en tant que tel.
Le champ « protocoljd » prend par exemple la valeur 0x03, afin d'indiquer que l'information « selector byte » est du type URL.
Le champ « selector byte » contient une adresse de connexion au serveur mettant en œuvre le service proposé, en l'occurrence l'adresse URL du portail.
Pour définir, un objet carrousel, le champ « protocol jd » prend une valeur prédéterminée, afin d'indiquer que l'information « selector byte » est du type URL.
On décrit maintenant, en relation avec la figure 2, un exemple de cinématique du traitement d'une information d'accès à un portail par le système de la figure 1.
On suppose dans cet exemple que l'information d'accès est une URL de portail et est transmise dans une « table AIT Portail » selon l'invention (voir description ci- dessus).
Le décodeur 4 (cf figure 1) comprend plusieurs blocs fonctionnels (aussi appelés modules), et notamment :
• un module 41 de décodage/démultiplexage du flux 2, permettant de détecter la présence d'une « table AIT Portail » ;
• un module 42 de lecture de « table AIT Portail », permettant d'extraire, de stocker ou supprimer une information d'accès (adresse URL ou autre) contenue dans une « table AIT Portail » ;
• un module 43 d'accès au portail ; et
• un module 44 de gestion de la « touche Portail » du boîtier de télécommande du décodeur.
Chacun des blocs fonctionnels (modules) du décodeur 4 se réalise 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). Dans le cas où un bloc fonctionnel est réalisé sur une machine de calcul reprogrammable, le programme correspondant (c'est-à-dire la séquence d'instructions) peut être stocké dans
un médium de stockage amovible (tel que par exemple une disquette, un CD-ROM ou un DVD-ROM) ou non, ce médium de stockage étant lisible partiellement ou totalement par un ordinateur ou un processeur.
L'exemple de cinématique est maintenant décrit en détail. On suppose dans cet exemple que la chaîne de télévision Orange veut donner accès à son portail « OrangeReplay » (dont l'adresse URL est « http://www.orange replay.fr »).
Sur la figure 2, les différentes étapes sont représentées par des flèches associées chacune à une référence numérique.
Dans l'étape 21, la régie de diffusion 1 insère dans le flux une « table ΑΓΓ Portail » associée à la chaîne de télévision Orange et contenant l'adresse URL du portail de cette chaîne.
Dans l'étape 22, la régie de diffusion 1 diffuse le flux qui est reçu par le module 41 de décodage/démultiplexage (compris dans le décodeur 4).
Dans l'étape 23, lors d'un zapping sur la chaîne Orange, le module 41 de décodage/démultiplexage décode et démultiplexe le flux afin de détecter une « table AIT Portail » associée à la chaîne Orange.
Si le module 41 de décodage/démultiplexage a détecté une « table AIT Portail », il en informe le module 42 de lecture de « table AIT Portail », dans l'étape 24.
Dans l'étape 25, le module 42 de lecture démultiplexe la « table AIT Portail » associée à la chaîne Orange (si le numéro de version de cette table est différent de celui d'une « table AIT Portail » reçue antérieurement) et en extrait, puis stocke, l'adresse URL du portail.
Dans l'étape 26, le module 42 de lecture transmet cette adresse URL au module 43 d'accès au portail.
Dans l'étape 27, le module 43 d'accès au portail associe cette adresse URL à la « touche Portail » et active le module 44 de gestion de la « touche Portail ». Une association entre l'information d'accès (l'adresse URL) et l'élément d'interface homme machine (la « touche Portail ») est ainsi mémorisée par le module 43 d'accès au portail, en vue d'une utilisation ultérieure de cette information d'accès en cas d'interaction sur l'élément d'interface homme machine concerné.
Lorsque plusieurs éléments d'interface homme machine sont susceptibles d'être concernés, une identification de l'élément d'interface homme machine est mémorisée en association avec l'information d'accès.
Dans l'étape 28, si le module 44 de gestion de la « touche Portail » a détecté un appui sur cette touche, il en informe le module 43 d'accès au portail.
Dans l'étape 29a, le module 43 d'accès au portail obtient l'information d'accès (adresse URL) mémorisée en association avec l'élément d'interface homme-machine (« touche Portail ») pour lequel une interaction a été détectée. Puis le module 43 d'accès au portail utilise l'information d'accès pour exécuter une opération d'accès : le module 43 d'accès au portail envoie une requête http au serveur 8 comprenant l'information d'accès mémorisée, afin d'accéder au portail identifié par cette information d'accès et de permettre une navigation de l'utilisateur sur ce portail.
En parallèle, dans l'étape 29b, le module 43 d'accès au portail envoie une commande au module 41 de décodage/démultiplexage afin que ce dernier inhibe l'exécution de toute application interactive décrite / contenue dans une table AIT classique, de sorte qu'aucune application interactive, de type HBBTV ou MHP par exemple, ne soit exécutée par le décodeur tant que l'utilisateur accède au portail, c'est-à- dire navigue sur le portail ou sur un domaine de navigation web - c'est-à-dire un ensemble de pages web - accessible à partir du portail et défini par le diffuseur de la chaîne Orange).
Si le module 41 de décodage/démultiplexage n'a pas reçu une « table AIT Portail » contenant une information d'accès, il en informe le module 43 d'accès au portail, dans l'étape 30.
Dans l'étape 31, le module 43 d'accès au portail désactive le module 44 de gestion de la « touche Portail » et affiche à l'écran du téléviseur un message ou un logo indiquant que la « touche Portail » n'est pas activée.
Dans un mode de réalisation particulier, pour permettre une gestion plus rapide de l'accès aux portails associés aux différentes chaînes de télévision, les adresses URL des différents portails sont stockées en mémoire cache, par le décodeur, au fur et à mesure que l'utilisateur change de chaînes. En d'autres termes, au moment de la réception via le flux diffusé, d'une chaîne de télévision donnée, l'information d'accès,
sous forme d'adresses URL du portail associé à cette chaîne est sauvegardée par le décodeur en association avec une identification de la chaîne (par exemple un numéro de canal via lequel cette chaîne est diffusée). L'information d'accès associée à une chaîne est ainsi conservée en mémoire, même lorsqu'un changement de chaîne est effectué et que la chaîne courante est différente de la chaîne pour laquelle la précédente information d'accès a été mémorisée. L'information d'accès qui sera utilisée, suite à une interaction sur un élément d'interface homme machine, sera alors celle mémorisée en association avec la chaîne couramment visualisée par l'utilisateur.
Ainsi, à chaque zapping (changement de chaîne visualisée par l'utilisateur sur l'écran du téléviseur), le décodeur peut immédiatement associer à la « touche portail » l'adresse URL du portail associé à la nouvelle chaîne en cours de visualisation. Ceci évite d'attendre la réception de l'information d'accès pour la nouvelle chaîne courante.
Ce principe d'association est applicable plus généralement à la diffusion via un flux multimédia de plusieurs contenus multimédia distincts, par exemple les contenus provenant de deux sources distinctes : diffusés via deux chaînes de télévision distinctes comme décrit ci-dessus, ou bien plus généralement via deux services distincts de transmission de contenu audio et/ou vidéo (radio, service de vidéo à la demande, service de télévision de rattrapage, etc).
Dans chaque cas, le décodeur recevant le flux multimédia stocke une information d'accès reçue pendant la diffusion du contenu considéré en association avec une identification du contenu couramment diffusé et/ou de la source de ce contenu. Cette identification est composée par exemple du numéro de canal de la chaîne de télévision ou d'un identifiant de service de transmission de contenu audio et/ou ou tout autre mode d'identification disponible (par exemple une identification d'une fonction activée pour accéder à ce contenu du type « activer le canal x», « accéder au service VOD », etc).
Ensuite, à chaque changement de source / de contenu multimédia couramment diffusé, que ce changement soit demandé par l'utilisateur ou prévu par le fonctionnement du décodeur, le décodeur identifie le contenu et/ou la source du contenu nouvellement sélectionné (en recherchant par exemple quelle est la chaîne de télévision couramment sélectionnée ou quel est le service de transmission de contenu audio et/ou vidéo couramment sélectionné ou une identification d'une fonction activée pour accéder
à ce contenu) puis réitère l'étape d'association à la « touche portail » de l'information d'accès enregistrée pour ce contenu et/ou cette source.
Ce principe d'association est applicable également lorsque deux contenus distincts sont diffusés successivement via le flux multimédia tout en faisant partie d'une même chaîne de télévision ou du même service de transmission de contenu audio et/ou vidéo. Dans ce cas, le contenu peut être identifié au moyen de métadonnées ou données de programmation du contenu (titre du contenu, auteur, heure de début de diffusion, etc).
Dans un mode de réalisation, il est prévu d'envoyer dans le flux multimédia une table AIT comprenant une commande de suppression pour supprimer une association préalablement mémorisée entre le contenu couramment diffusé (par exemple, chaîne de télévision courante ou l'émission courante / vidéo / contenu audio diffusée via cette chaîne de télévision ou via un service de diffusion de contenu audio / vidéo) via le flux multimédia et l'élément d'interface homme machine (« touche Portail »). Dés réception d'une telle commande, le module 41 de décodage/démultiplexage en informe le module 42 de lecture de « table AIT Portail » qui supprime l'association mémorisée. Puis le module 43 désactive le module 44 de gestion de la « touche Portail ».
Il peut en outre être prévu d'interrompre tout accès en cours au service pour lequel l'association mémorisée est supprimée. Il est ainsi possible d'interdire l'accès à un service à tout moment.