<Desc/Clms Page number 1>
Décodeur de télévision numérique et procédé d'édition d'une liste de programmes de télévision au moyen d'un tel décodeur
La présente invention a pour objet un décodeur de signaux numériques de télévision et un procédé d'édition d'une liste de programmes de télévision au moyen d'un tel décodeur. L'invention est destinée à la télévision dite numérique, que des signaux pour celle-ci soient transmis par un câble (dans des bandes de fréquence de 45 à 862 MHz), par un satellite (dans des bandes de fréquence à l'émission de 10,3 à 12,8 GHz), ou par voie terrestre (dans des bandes de 45 à 862 MHz). Le but de l'invention est de simplifier la constitution par un utilisateur d'une liste de programmes de télévision qu'il souhaite regarder.
Typiquement un récepteur de télévision numérique comporte un décodeur de signaux numériques relié par ailleurs à un dispositif de visualisation. Le décodeur comporte des moyens de réception pour recevoir les signaux émis et des moyens de formatage pour transformer les signaux reçus en des signaux applicables directement sur les organes de commande du dispositif de visualisation. Pour un tube cathodique, il s'agit par exemple des commandes appliquées sur les organes de balayage et sur les différents canons à électrons produisant des pixels de couleur sur l'écran.
Le formatage se réalise en respectant pour chacune des images à représenter des tables de paramètres. On distingue les tables dites SI, System Information-Information Système-qui, dans la norme DVB, représente un titre d'un programme de télévision diffusé, une heure de début, une heure de fin, ainsi que différentes caractéristiques. Le contenu des tables SI intéresse particulièrement l'utilisateur car elles conduisent à afficher des informations qui permettent à cet utilisateur de choisir le programme de télévision qu'il veut visualiser. D'autres tables dites PSI Program Specific Information-Information Spécifique de Programme-décrite dans la norme MPEG sont des tables fonctionnelles d'identification de paquets vidéo, audio ou de données. Elles représentent en définitive le protocole de transmission et l'architecture des paquets numériques transmis ainsi que leur signification. Les tables PSI servent à afficher les images d'un programme de télévision visualisé.
Dans la télévision numérique, il est prévu que les signaux de paramètre soient transmis dans le flux (c'est à dire avec le signal vidéo lui-même) dans
<Desc/Clms Page number 2>
des paquets de données. Les paquets de données transmis sont arrangés en sections, les sections comportant classiquement 1024 octets et dans certains cas 4096 octets. Les paquets d'une même table ne sont pas nécessairement groupés dans une même section. Ils peuvent être répartis dans des sections successives, entrelacées avec des paquets d'informations relatifs à d'autres tables, ou au signal vidéo, audio, de données ou autre. Dans chaque section, des identifiants permettent d'attribuer les paquets de données à des tables particulières parmi d'autres. En réception, un décodeur ne sait pas à priori comment sont répartis les paquets de données mais il connaît le découpage des sections. Le décodeur doit donc lire l'identifiant dans chaque section et réorganiser les données pour les affecter aux bonnes tables. Toutes les tables sont éditées par les opérateurs de télévision ou les gestionnaires de média de transport, sont incorporées dans le flux de cet opérateur, et sont acheminées vers les utilisateurs par les différents médias.
La figure 1 montre une représentation des différents médias de transmission. Elle permet par ailleurs de figer le vocabulaire utilisé dans le domaine. Des moyens d'émission réception comportant des satellites, des câbles ou des dispositifs de rediffusion terrestre constituent des réseaux de transmission. Pour chaque média de transmission, il existe une table NIT, Network Information Table-Table d'information de Réseau, qui indique le nom du réseau, le numéro du réseau, et pour chacun des multiplexes du réseau, des transpondeurs quand il s'agit de liaison par satellite, des informations telles que fréquence de modulation, position orbitale de bits, polarisation etc... Des informations similaires sont contenues dans les tables NIT des médias de transmission câble ou terrestre. Dans ces derniers cas, respectivement, les arrivées de câble et les réémetteurs forment les multiplexes de ces réseaux.
Les informations contenues dans les tables NIT sont des paramètres physiques permettant essentiellement à un décodeur de se caler en fréquence pour capter chaque multiplex. Chaque table NIT comporte, pour un transpondeur désigné, une liste de services véhiculés par le transpondeur.
Cette liste est normalement limitée, quelquefois à huit services, du fait de la limitation de bande passante réservée pour un transpondeur. Par service on entend classiquement ce que les utilisateurs appellent une chaîne de télévision. Par exemple une chaîne de télévision est un organisme qui met en oeuvre des moyens pour diffuser au cours de la journée des programmes de télévision,
<Desc/Clms Page number 3>
successifs les uns aux autres. Néanmoins les services peuvent être des services uniquement audio ou des services de données ou autres.
Chaque service est ainsi identifié dans la table NIT par un triplet représentant une information dite Original Network Id (ontwkjd)-Identification de réseau origine. Un service est encore identifié par l'information Transport Stream Id (tsjd)-Identification de multiplex, typiquement cette information désigne un des transpondeurs en relation avec le satellite. Enfin le service est identifié par une information dite Service Id (svc~id)-Identification de Service, qui sera en pratique un numéro attribué par un opérateur qui gère le satellite à la transmission de ce service. Dans le message correspondant à la table NIT le décodeur récupère essentiellement le triplet selon la norme DVB ainsi que les paramètres physiques (PSI) du transpondeur.
Pour sa part, chaque transpondeur émet une table SDT qui comporte des sous-tables. Chaque sous-table décrit chacun des services qui sont véhiculés par le transpondeur. Ces services peuvent faire partie des services distribués par un transpondeur ou par un autre transpondeur. Ceci est identifié à partir de la table NIT.
En ce qui concerne les transpondeurs, chacun diffuse en outre une table dite PAT, Program Association-Table des programmes associés, table qui elle-même donne une liste de tables PMT, Program Map Table-Table des composants des programmes, qui sont associées à chacun des services.
Au niveau des services, on trouvera des tables dites EIT, Event Information Table-Table d'événements, et les tables PMT. Les tables EIT se réfèrent à chaque service, à partir de son triplet d'identification selon la norme DVB, et indiquent pour chaque programme de télévision diffusé par ce service l'heure de début, la durée ou l'heure de fin, le statut, ainsi que d'autres informations. Les tables EIT sont par ailleurs dédoublées en ElTp et EiTf pour représenter une table correspondant à l'instant présent (p), et ainsi qu'une autre table correspondant à un instant suivant (f, following). Les deux tables E) Tp et EiTf sont de même structure mais possèdent chacune un identifiant renseignant sur leur qualité.
En pratique, dans le flux des sections de paquets, les tables NIT, SDT et EIT sont transmises par parties imbriquées dans le temps selon les normes.
Elles possèdent des identifiants dans le flux égaux respectivement à 0x0010, 0x0011, et 0x0012 complétés par l'information tsjd.
<Desc/Clms Page number 4>
En définitive toute une architecture de tables est ainsi distribuée, en particulier selon la norme EN 300 468 V1. 3. 1 et le but du décodeur est de reconstruire toutes les tables pour disposer des informations de réglage ainsi que des informations à montrer en visualisation pour les utilisateurs.
En effet, une image diffusée sur un dispositif de visualisation recevant des signaux selon ce qui a été décrit ci-dessus peut être complétée par des informations montrables concernant le numéro de la chaîne ou en pratique du service, le nom du programme de télévision, le caractère crypté du programme de télévision, ainsi que son heure de début et son heure de fin. Cette dernière indication peut par ailleurs être remplacées par un index fluctuant dans le temps montrant d'une manière intuitive le temps déjà écoulé pour le programme de télévision et le temps restant à diffuser. Par ailleurs, ces informations montrables comportent les indications correspondant à un programme de télévision suivant avec, encore une fois, le nom du programme de télévision, l'heure de début, l'heure de fin ainsi que diverses informations (titre d'un film, nom des acteurs) et des caractéristiques, présence d'un carré blanc ou autre, caractère crypté et ou payant. Les informations montrables ne sont pas systématiquement juxtaposées à côté de l'image. Elles peuvent être affichées à la demande par l'utilisateur en appuyant sur une touche particulière de sa télécommande.
La norme MPEG2 permet de multiplexer plusieurs programmes de télévision dans un même Transport Stream (TS) ou canal. Cette norme est complétée par la norme DVB qui permet la constitution et le zapping, ou changement de chaîne, sur plusieurs transpondeurs au sein d'un même et unique réseau. Les programmes sont repérés par un triplet (ontwkjd, tsjd, et svcjd). Chaque opérateur diffuse donc une signalisation plus ou moins complète permettant la constitution d'une liste de services accessibles à partir d'une connexion unique sur un transpondeur. Dans ce cadre, les paramètres de connexion sont soit saisis par l'utilisateur, à l'écran, soit figés dans le décodeur.
Afin de permettre à un utilisateur de récupérer une liste complète de tous les services diffusés sur tous les réseaux et quels que soient les opérateurs, un balayage (dit aussi scanning) a été mis en place. Il se traduit par une succession de visites de transpondeurs permettant de récupérer des paramètres de services de plusieurs réseaux, et non plus par une installation
<Desc/Clms Page number 5>
unique. Le principe du balayage est le suivant. On analyse une plage de fréquence avec les différents paramètres associés (débit, symbole etc...). Pour trouver tous les pics de fréquence accessibles. Sur chacun des pics on récupère la liste de services diffusés par les opérateurs. On analyse ensuite les tables SI sensées décrire une liste de services à l'aide des descripteurs selon la norme DVB. On analyse ensuite les tables PSI qui permettent d'élaborer des listes de services sans que l'opérateur ait besoin de les décrire dans les tables SI. Au passage on mémorise le contenu des tables SDT et EIT.
Le problème à résoudre avec la présente invention est celui de pouvoir mémoriser et classer utilement toutes les informations montrables disponibles dans chacun des multiplexes auxquels peut être connecté le décodeur.
L'utilisateur reçoit ainsi de nombreuses informations dont, pour une grande part, il n'a que faire. En pratique, les informations qu'il reçoit sont le fait de l'opérateur et l'utilisateur n'a pas la possibilité d'écarter les informations inutiles notamment dans le but de gagner du temps pour l'acquisition. Notamment si beaucoup de services sont disponibles à partir d'un transpondeur, le décodeur devra acquérir toutes les tables EIT present, EIT following ainsi que les tables SDT et PMT pour tous ses programmes. Toutes ces tables occupent alors beaucoup de place en mémoire et surtout délivrent une information pléthorique.
En effet, dans un proche avenir on prévoit que le nombre de services accessibles par un décodeur sera de l'ordre de 600, et que des informations sur des programmes de télévision au moins diffusés pendant une semaine seront accessibles.
Selon l'invention, ce problème est résolu en n'autorisant le stockage de ces informations montrables dans une mémoire de données du décodeur (ou du moniteur de télévision) que si ces informations sont en rapport d'une part avec une accessibilité du décodeur au contenu en clair des programmes de télévision concernés et ou si d'autre part ces informations sont en rapport avec des thèmes d'intérêt pour le titulaire du décodeur. Ces thèmes d'intérêt sont concrétisés par des informations clés, mémorisées ou affichées à la demande, et par des mécanismes (dits critères) de comparaison des informations montrables à ces informations clés. Ces informations montrables sont bien entendu enregistrées avec leurs paramètres correspondants-lesquels paramètres permettent le réglage automatique du décodeur sur un programme de télévision concerné par ces informations montrables et montrées lorsque
<Desc/Clms Page number 6>
l'utilisateur les sélectionne avec sa télécommande.
L'invention a donc pour objet un décodeur de télévision numérique comportant un récepteur de signaux numériques de télévision, une mémoire logicielle, une mémoire de données et un processeur de traitement, caractérisé en ce que la mémoire logicielle comporte des cellules mémoires pour contenir un sous-programme de scrutation des programmes de télévision reçus ou à recevoir dans le décodeur dans lequel - on mesure une accessibilité du décodeur à ces programmes de télévision, et ou - on mesure une correspondance entre ces programmes de télévision et des critères, ces critères étant mémorisés dans la mémoire de données ou indiquées à la demande par un utilisateur, - on sélectionne des programmes de télévision en fonction de ces mesures, et - on produit une liste de propositions de programmes de télévision correspondant aux programmes de télévision sélectionnés.
Elle a également pour objet un procédé d'édition d'une liste de programmes de télévision au moyen d'un décodeur de signaux numériques de télévision dans lequel - on mesure une accessibilité du décodeur à des programmes de télévision, et ou - on mesure une correspondance entre des programmes de télévision et des critères, ces critères étant mémorisés dans une mémoire de données du décodeur ou indiquées à la demande par un utilisateur, - on sélectionne des programmes de télévision en fonction de ces mesures, et - on produit une liste de propositions de programmes de télévision correspondant aux programmes de télévision sélectionnés.
L'invention sera mieux comprise à la lecture de la description qui suit et à l'examen de la figure qui l'accompagne. Celles-ci ne sont présentées qu'à titre indicatif et nullement limitatif de l'invention. Les figures montrent : - Figure 1 : déjà commentée, l'architecture de distribution des informations à acquérir par les décodeurs ; - Figure 2 : une représentation schématique du décodeur et des étapes du procédé selon l'invention.
<Desc/Clms Page number 7>
La figure 2 montre un décodeur 1 selon l'invention. Le décodeur 1 est en relation avec un dispositif de visualisation 2 pour afficher sur l'écran de ce dispositif de visualisation des programmes de télévision radiodiffusés reçus sur une entrée 3 du décodeur. D'une manière connue l'entrée 3 peut être reliée à une antenne terrestre 4, une antenne satellite 5, et ou à un câble de télédistribution 6. L'antenne terrestre 4 est en relation radioélectrique avec un centre 7 de rediffusion, l'antenne 5 est en relation avec un satellite 8, le câble 6 est relié à un circuit 9 de diffusion d'un opérateur de télévision. L'opérateur 9 peut être par ailleurs celui qui transmet au circuit de rediffusion 7 et au satellite 8 les informations que ces derniers ont à diffuser.
Le décodeur 1 comporte dans son principe un microprocesseur 10 en relation avec des circuits de réception 11 reliés à l'entrée 3. Le microprocesseur 10 est relié au récepteur 11 ainsi qu'à une mémoire logicielle 12 et à une mémoire de données 13 par l'intermédiaire d'un bus 14. Le bus 14 peut par ailleurs être utilisé pour transmettre au dispositif de visualisation 2 les images à afficher. D'une manière connue la mémoire logicielle 12 comporte un logiciel 15 (dit ici sous-programme pour ne pas créer de confusion avec un programme de télévision) intitulé GENERAL-T9-..., et apte à mettre en oeuvre un fonctionnement connu du décodeur, une télécommande de ce décodeur, ainsi qu'une opération de balayage et de détection des paramètres de réglage, dans le flux reçu sur l'entrée 3, pour régler le décodeur 1. Ces paramètres sont mémorisés dans une zone paramètres de la table 13 au moment de leur décodage.
Dans l'invention pour résoudre les problèmes inhérents à la masse trop importante de données à mémoriser, on prévoit de munir la mémoire logicielle12 d'un sous-programme complémentaire 16 d'édition d'une liste de programmes de télévision. Selon l'invention, cette édition résultera d'une sélection parmi les paramètres et informations montrables, notamment celles contenues dans les tables EIT, de ceux qui correspondent aux programmes de télévision réellement susceptibles d'être regardés par l'utilisateur.
Notamment dans un premier test 17, le sous-programme 16 vérifiera que le programme de télévision diffusé, dont on veut mémoriser les informations montrables, est ou peut être diffusé en clair. Si la diffusion du programme de télévision concerné est en clair et gratuit, ce programme de télévision peut être candidat à la mémorisation de ses informations montrables. Si ce programme
<Desc/Clms Page number 8>
de télévision n'est pas en clair, il convient de vérifier que le décodeur comporte dans une zone 17 de sa mémoire 13 des codes secrets valides pour décrypter ce programme de télévision qui ne serait pas en clair.
Dans un exemple, ces codes secret peuvent être contenus dans une carte à puce 18 en relation par un lecteur de carte à puce 19 avec le processeur 10 par l'intermédiaire du bus 14. Le mode de connexion de la carte à puce 18 avec le décodeur 1 ainsi que son protocole de reconnaissance sont de type connu. Dans l'invention, on prévoit cependant en plus d'aller vérifier la disposition de ces codes secrets valides, même s'ils ne concernent pas un programme de télévision effectivement visualisé, quand ils concernent un programme de télévision susceptible d'être visualisé, au moment d'établir la liste des programmes de télévision qui feront partie d'un menu des programmes de télévision de la semaine (ou autre durée). Au besoin, si les codes secrets ne sont présents que dans la carte à puce, la vérification d'une accession possible (pour un programme donné de télévision) peut conduire à l'enregistrement provisoire (par exemple pour la durée d'exécution du sousprogramme 16) d'une information de vérification positive, évitant un recours trop fréquent à la carte à puce 18 lorsque des informations concernant des programmes de télévision de même type sont détectées dans le flux.
Un même type est par exemple constitué par le numéro du service, si ce service est connu pour diffuser des programmes de télévision crypté. Cette dernière information elle-même peut être déduite à la première vérification, en repérant le statut crypté du programme de télévision, et en créant un enregistrement dans une table provisoire avec le numéro de ce service. La table provisoire comporte d'une part des zones avec des numéros de service et éventuellement d'autre part des zones en regard de ces zones avec une indication selon laquelle le test d'accessibilité a été mené à bien ou non. Seuls les programmes de télévision diffusés par un service pour lequel le test a été mené à bien peuvent être candidats au menu. Les services étant en général diffusés par un opérateur sous la forme d'un bouquet (voir figure 1), il est possible de prévoir pour un bouquet entier la vérification ci-dessus, et la constitution de la table provisoire.
De la même façon, si le programme de télévision n'est pas gratuit, on pourra vérifier que le décodeur et ou la carte à puce comportent un crédit d'unités suffisant, ou qu'un paiement automatique par prélèvement bancaire est
<Desc/Clms Page number 9>
valide. Le cas échéant, la mémorisation des informations montrables est entreprise. Si aucun crédit n'est disponible, on peut prévoir de ne pas autoriser la mémorisation des informations montrables. Dans ce dernier cas on peut toutefois, en fonction d'un choix de l'utilisateur, décider de montrer quand même les informations montrables relatives aux programmes de télévision payants.
En agissant ainsi, on s'assure que seules les informations montrables correspondant à des programmes de télévision susceptibles d'être regardés sont mémorisées. On réduit ainsi la taille de la mémoire nécessaire et on facilité la consultation des informations montrables.
En plus ou, ou bien, parmi les informations montrables (et leurs paramètres associés) on sélectionne, en une étape ultérieure 20, les informations qui correspondent à des programmes de télévision pour lesquelles l'utilisateur du décodeur a marqué un intérêt. Les thèmes d'intérêt de cet utilisateur peuvent principalement être la langue de diffusion, ses goûts personnels exprimés sous forme de catégories de programmes de télévision, des heures préférées d'écoute, voire des désignations particulières de services.
Ces thèmes d'intérêt peuvent être mémorisés dans une zone 21 de la mémoire13, en particulier en utilisant une télécommande 26 adaptée (par exemple munie d'un logiciel d'affichage alphanumérique connu dit T9). En variante les thèmes d'intérêt peuvent être indiqués à la demande par l'utilisateur, notamment au moyen de sa télécommande. A l'étape 20, le microprocesseur 10 compare tous les mots mémorisés dans les informations montrables reçues et correspondant à des programmes de télévision susceptibles d'être regardés, et qui résultent de l'étape 17, aux mots clés ou aux thèmes contenus dans la zone 21 (ou l'inverse). Si la comparaison est positive, ces informations montrables (et leurs paramètres associés) sont mémorisés au cours d'une étape 22 dans une zone 23 de la mémoire 13 sous forme de proposition de programmes de télévision. Eventuellement les étapes 17 et 20 peuvent être interverties, ou bien une seule d'entre elles peut être seulement lancée. Le contenu de la zone 23 forme la matière des informations montrables par un menu (de type connu) géré par le sous-programme 15.
Après cette mémorisation 22, le sous-programme 16 lance une étape 24 de classement, par exemple pour affecter un numéro d'ordre à chaque information montrable retenue. Ce numéro d'ordre est destiné à proposer un
<Desc/Clms Page number 10>
affichage chronologique des informations montrables sélectionnées. De ce fait, le numéro d'ordre est attribué en fonction de la date (et de l'heure) de diffusion du programme de télévision concerné. Il est toutefois envisageable d'adopter un autre mode de classement, par exemple par services, ou par catégories. A titre de premier mode de classement on peut retenir le mode chronologique.
Après l'étape 24, le sous-programme 16 fait vérifier, au cours d'une étape 25, par le microprocesseur 10 que la scrutation de tous les transpondeurs, et de tous les services dans chacun d'eux, a été entreprise. Si ce n'est pas le cas, les étapes 17 et ou 20 et les suivantes sont entreprises pour un autre transpondeur. Le fait que tous les transpondeurs aient été visités se vérifie par la prise en compte des tables NIT relevées dans le flux. Ces tables sont mémorisées en mémoire 13 dans la zone paramètres. Il suffit pour chaque transpondeur, et pour chacun d'eux pour chaque service, de mémoriser, dans une zone située en regard d'un enregistrement qui lui correspond, une information de visite. Le test 25 vérifie que tous les enregistrements sont complétés par l'enregistrement de visite. Si c'est le cas, le traitement est terminé. En variante, l'étape 24 peut être exécutée après le test 25, lorsque celui-ci indique que tous les services ont été visités.
En pratique, une télécommande 26 peut être munie d'une touche spéciale R de recherche (ou d'une combinaison de touches) pour lancer le sous-programme 16. Cependant, plutôt que de laisser la charge de la scrutation à l'initiative de l'utilisateur, on peut proposer de lancer cette scrutation périodiquement, par exemple la nuit, ou plus particulièrement lorsque le décodeur détecte que son utilisateur l'a mis en veille.
Bien entendu la table 13 mise à jour est utilisée telle quelle pour paramétrer le décodeur avec les signaux de paramètres mémorisés. En effet, ceux-ci occupent la place allouée aux signaux reçus par le flux lorsque l'utilisateur zappe, change de service (de chaîne). De préférence, au moment de ce changement on peut prévoir de vérifier que les tables transportées par le flux sont conformes aux tables stockées dans la mémoire 13 et la zone 23. Si ce n'est pas le cas, on change les valeurs contenues dans la mémoire 13 et la zone 23 par des valeurs correspondantes prélevées dans le flux.
Lorsque l'utilisateur affiche le menu des programmes de télévision visibles sur l'écran 2, le sous-programme 15 lit dans la zone 23 de la mémoire 1 des informations montrables correspondant aux propositions de programmes
<Desc/Clms Page number 11>
de télévision sélectionnées. Il les affiche alors dans leur ordre de classement. D'une manière connue, l'utilisateur peut visualiser immédiatement un des programmes de télévision proposés ou prévoir un enregistrement d'un programme de télévision ultérieur.
Le décodage des signaux numériques peut être réalisé directement par le microprocesseur 10 ou, de préférence, celui-ci peut être assisté par un circuit spécialisé 27 agissant comme un coprocesseur de décodage.
Pour la scrutation, plutôt que de lancer un balayage, il est possible de raccorder le décodeur 1 à internet, par exemple au moyen d'un modem, ou par transmission interactive, et de prélever dans un site internet spécialisé toutes les informations montrables utiles. Soit toutes les informations montrables disponibles sont rapatriées dans le décodeur et celui-ci effectue les tris des étapes 17 et ou 20, soit une requête comportant les critères de la zone 21 et le contenu de la table provisoire est envoyé à ce site spécialisé qui renvoie en retour, uniquement, les informations montrables déjà sélectionnées (et éventuellement déjà triées).