FR3068561A1 - Procede de mise a disposition d'un guide electronique des programmes - Google Patents
Procede de mise a disposition d'un guide electronique des programmes Download PDFInfo
- Publication number
- FR3068561A1 FR3068561A1 FR1850666A FR1850666A FR3068561A1 FR 3068561 A1 FR3068561 A1 FR 3068561A1 FR 1850666 A FR1850666 A FR 1850666A FR 1850666 A FR1850666 A FR 1850666A FR 3068561 A1 FR3068561 A1 FR 3068561A1
- Authority
- FR
- France
- Prior art keywords
- terminal
- program guide
- electronic program
- proxy device
- electronic
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Ceased
Links
- 238000000034 method Methods 0.000 title claims description 26
- PWPJGUXAGUPAHP-UHFFFAOYSA-N lufenuron Chemical compound C1=C(Cl)C(OC(F)(F)C(C(F)(F)F)F)=CC(Cl)=C1NC(=O)NC(=O)C1=C(F)C=CC=C1F PWPJGUXAGUPAHP-UHFFFAOYSA-N 0.000 title description 4
- 230000008859 change Effects 0.000 claims description 23
- 238000012795 verification Methods 0.000 claims description 17
- 230000037430 deletion Effects 0.000 claims description 11
- 230000005540 biological transmission Effects 0.000 claims description 9
- 238000012217 deletion Methods 0.000 claims description 9
- 238000004590 computer program Methods 0.000 claims description 6
- 238000012986 modification Methods 0.000 claims description 6
- 230000004048 modification Effects 0.000 claims description 6
- 238000003860 storage Methods 0.000 claims description 6
- 230000008569 process Effects 0.000 claims description 3
- 101000622430 Homo sapiens Vang-like protein 2 Proteins 0.000 description 50
- 102100023520 Vang-like protein 2 Human genes 0.000 description 50
- 101000622427 Homo sapiens Vang-like protein 1 Proteins 0.000 description 11
- 101150110418 STB3 gene Proteins 0.000 description 11
- 102100023517 Vang-like protein 1 Human genes 0.000 description 11
- 238000004891 communication Methods 0.000 description 9
- 230000004044 response Effects 0.000 description 4
- 230000006870 function Effects 0.000 description 3
- 238000004140 cleaning Methods 0.000 description 2
- 238000012423 maintenance Methods 0.000 description 2
- 230000001960 triggered effect Effects 0.000 description 2
- 230000009471 action Effects 0.000 description 1
- 238000012550 audit Methods 0.000 description 1
- 230000008901 benefit Effects 0.000 description 1
- 230000000694 effects Effects 0.000 description 1
- 230000003203 everyday effect Effects 0.000 description 1
- 239000000284 extract Substances 0.000 description 1
- 230000002452 interceptive effect Effects 0.000 description 1
- 238000004519 manufacturing process Methods 0.000 description 1
- 238000012545 processing Methods 0.000 description 1
- 230000009897 systematic effect Effects 0.000 description 1
- 238000012360 testing method Methods 0.000 description 1
- 238000012546 transfer Methods 0.000 description 1
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N21/00—Selective content distribution, e.g. interactive television or video on demand [VOD]
- H04N21/20—Servers specifically adapted for the distribution of content, e.g. VOD servers; Operations thereof
- H04N21/23—Processing of content or additional data; Elementary server operations; Server middleware
- H04N21/231—Content storage operation, e.g. caching movies for short term storage, replicating data over plural servers, prioritizing data for deletion
- H04N21/23109—Content storage operation, e.g. caching movies for short term storage, replicating data over plural servers, prioritizing data for deletion by placing content in organized collections, e.g. EPG data repository
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N21/00—Selective content distribution, e.g. interactive television or video on demand [VOD]
- H04N21/20—Servers specifically adapted for the distribution of content, e.g. VOD servers; Operations thereof
- H04N21/25—Management operations performed by the server for facilitating the content distribution or administrating data related to end-users or client devices, e.g. end-user or client device authentication, learning user preferences for recommending movies
- H04N21/262—Content or additional data distribution scheduling, e.g. sending additional data at off-peak times, updating software modules, calculating the carousel transmission frequency, delaying a video stream transmission, generating play-lists
- H04N21/26208—Content or additional data distribution scheduling, e.g. sending additional data at off-peak times, updating software modules, calculating the carousel transmission frequency, delaying a video stream transmission, generating play-lists the scheduling operation being performed under constraints
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N21/00—Selective content distribution, e.g. interactive television or video on demand [VOD]
- H04N21/20—Servers specifically adapted for the distribution of content, e.g. VOD servers; Operations thereof
- H04N21/25—Management operations performed by the server for facilitating the content distribution or administrating data related to end-users or client devices, e.g. end-user or client device authentication, learning user preferences for recommending movies
- H04N21/262—Content or additional data distribution scheduling, e.g. sending additional data at off-peak times, updating software modules, calculating the carousel transmission frequency, delaying a video stream transmission, generating play-lists
- H04N21/26283—Content or additional data distribution scheduling, e.g. sending additional data at off-peak times, updating software modules, calculating the carousel transmission frequency, delaying a video stream transmission, generating play-lists for associating distribution time parameters to content, e.g. to generate electronic program guide data
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N21/00—Selective content distribution, e.g. interactive television or video on demand [VOD]
- H04N21/20—Servers specifically adapted for the distribution of content, e.g. VOD servers; Operations thereof
- H04N21/25—Management operations performed by the server for facilitating the content distribution or administrating data related to end-users or client devices, e.g. end-user or client device authentication, learning user preferences for recommending movies
- H04N21/262—Content or additional data distribution scheduling, e.g. sending additional data at off-peak times, updating software modules, calculating the carousel transmission frequency, delaying a video stream transmission, generating play-lists
- H04N21/26291—Content or additional data distribution scheduling, e.g. sending additional data at off-peak times, updating software modules, calculating the carousel transmission frequency, delaying a video stream transmission, generating play-lists for providing content or additional data updates, e.g. updating software modules, stored at the client
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N21/00—Selective content distribution, e.g. interactive television or video on demand [VOD]
- H04N21/40—Client devices specifically adapted for the reception of or interaction with content, e.g. set-top-box [STB]; Operations thereof
- H04N21/47—End-user applications
- H04N21/472—End-user interface for requesting content, additional data or services; End-user interface for interacting with content, e.g. for content reservation or setting reminders, for requesting event notification, for manipulating displayed content
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N21/00—Selective content distribution, e.g. interactive television or video on demand [VOD]
- H04N21/80—Generation or processing of content or additional data by content creator independently of the distribution process; Content per se
- H04N21/83—Generation or processing of protective or descriptive data associated with content; Content structuring
- H04N21/84—Generation or processing of descriptive data, e.g. content descriptors
- H04N21/8402—Generation or processing of descriptive data, e.g. content descriptors involving a version number, e.g. version number of EPG data
Landscapes
- Engineering & Computer Science (AREA)
- Multimedia (AREA)
- Signal Processing (AREA)
- Databases & Information Systems (AREA)
- Human Computer Interaction (AREA)
- Two-Way Televisions, Distribution Of Moving Picture Or The Like (AREA)
Abstract
Un dispositif mandataire met à disposition, d'au moins un terminal déclaré auprès du dispositif mandataire, un guide électronique des programmes. Lorsque le guide électronique des programmes doit être fourni audit au moins un terminal : lorsque ledit au moins un terminal dispose d'une précédente version du guide électronique des programmes, le dispositif mandataire transmet (610, 612), audit au moins un terminal, le guide électronique des programmes sous forme différentielle par rapport à ladite précédente version du guide électronique des programmes ; et lorsque ledit au moins un terminal ne dispose pas de précédente version du guide électronique des programmes, le dispositif mandataire transmet (605), audit au moins un terminal, le guide électronique des programmes sous forme complète.
Description
La présente invention concerne un procédé de mise à jour d’un guide électronique des programmes EPG (« Electronic Program Guide » en anglais).
Un guide électronique des programmes EPG est un ensemble d’informations relatives à des programmes télévisés diffusés sur des chaînes télévisées, qui permet notamment de fournir à des utilisateurs une vue des programmes télévisés en cours et à venir. Ces informations sont par exemple : un nom de programme télévisé, un horaire de début de programme télévisé, un horaire de fin de programme télévisé et/ou une durée de programme télévisé, un synopsis de programme télévisé, un identifiant de chaîne télévisée sur laquelle ledit programme télévisé est diffusé,... Le guide électronique des programmes EPG est ainsi organisé par chaîne télévisée, puis par programme télévisé au sein de chaque chaîne télévisée.
De tels guides électroniques des programmes EPG sont typiquement utilisés par des dispositifs décodeurs pour afficher des menus à leurs utilisateurs leur permettant de découvrir les programmes télévisés en cours ou à venir sur un ensemble de chaînes télévisées. De tels menus sont généralement interactifs, afin de permettre aux utilisateurs : de sélectionner un programme télévisé en cours, pour activer immédiatement le visionnage sur un écran du programme télévisé sélectionné ; de sélectionner un programme télévisé à venir, pour activer le visionnage du programme télévisé sélectionné ou un enregistrement du programme télévisé sélectionné, au moment où démarre ledit programme télévisé (programmation) ; d’effectuer des recherches de programmes télévisés (par genre, par nom, par date...)... D’autres types d’interactivités peuvent être mises en place.
Le guide électronique des programmes EPG est fourni par un serveur à un ou plusieurs terminaux, comme des dispositifs décodeurs. Plus le nombre de programmes télévisés concernés est élevé et plus le volume d’informations à transmettre depuis le serveur vers le ou les terminaux est élevé. Cela entraîne une importante consommation de bande passante entre le serveur et les terminaux à chaque mise à jour du guide électronique des programmes EPG, plus particulièrement en présence d’un grand nombre de terminaux.
Il est souhaitable de pallier ces inconvénients de l’état de la technique. Il est ainsi souhaitable de fournir une solution qui permette de limiter la consommation de bande passante entre le serveur et les terminaux à chaque mise à jour du guide électronique des programmes EPG.
A cet effet, l’invention concerne un procédé de mise à disposition d’un guide électronique des programmes à au moins un terminal déclaré auprès d’un dispositif mandataire, le procédé étant implémenté par le dispositif mandataire. Lorsqu’une nouvelle version du guide électronique des programmes doit être fournie audit au moins un terminal : lorsque ledit au moins un terminal dispose d’une précédente version du guide électronique des programmes, le dispositif mandataire transmet, audit au moins un terminal, le guide électronique des programmes sous forme différentielle par rapport à ladite précédente version du guide électronique des programmes ; et lorsque ledit au moins un terminal ne dispose pas de précédente version du guide électronique des programmes, le dispositif mandataire transmet, audit au moins un terminal, le guide électronique des programmes sous forme complète. Ainsi, grâce à la forme différentielle, la consommation de bande passante entre le dispositif mandataire et les terminaux à chaque mise à jour du guide électronique des programmes est limitée en comparaison avec une transmission systématique du guide électronique des programmes sous forme complète.
Selon un mode de réalisation particulier : le dispositif mandataire récupère le guide électronique des programmes auprès d’un serveur et stocke toute nouvelle version du guide électronique des programmes dans une base de données ; le dispositif mandataire identifie chaque changement du guide électronique des programmes entre une dite nouvelle version récupérée auprès du serveur et la dernière version stockée dans la base de données ; et le dispositif mandataire stocke dans la base de données, outre ladite nouvelle version du guide électronique des programmes, chaque changement identifié et une information d’horodatage associée.
Selon un mode de réalisation particulier, chaque transmission par le dispositif mandataire du guide électronique des programmes, que ce soit sous forme complète ou différentielle, est accompagnée de l’information d’horodatage associée.
Selon un mode de réalisation particulier, chaque transmission par le dispositif mandataire du guide électronique des programmes sous forme différentielle est en outre accompagnée de l’information d’horodatage associée à la version du guide des programmes par rapport à laquelle la forme différentielle a été déterminée.
Selon un mode de réalisation particulier, lorsqu’un terminal demande que lui soit transmise une nouvelle version du guide électronique des programmes sous forme différentielle : le dispositif mandataire reçoit du terminal une information d’horodatage associée à la précédente version du guide électronique des programmes dont dispose ledit terminal ; et pour transmettre la nouvelle version du guide électronique des programmes sous forme différentielle, le dispositif mandataire détermine si plusieurs nouvelles versions du guide électronique des programmes ont été stockées dans la base de données depuis la précédente version du guide électronique des programmes dont dispose ledit terminal, et le cas échéant, le dispositif mandataire concatène les changements opérés dans les différentes versions du guide électronique des programmes qui ont été stockées dans la base de données depuis la précédente version du guide électronique des programmes dont dispose ledit terminal.
Selon un mode de réalisation particulier, lorsqu’un terminal demande que lui soit transmise une nouvelle version du guide électronique des programmes sous forme différentielle : le dispositif mandataire vérifie s’il s’est écoulé, ou pas, plus d’une durée prédéfinie depuis l’instant représenté par l’information d’horodatage reçue ; en cas de vérification négative, le dispositif mandataire transmet, audit terminal, le guide électronique des programmes sous forme différentielle ; et en cas de vérification positive, le dispositif mandataire transmet, audit terminal, le guide électronique des programmes sous forme complète.
Selon un mode de réalisation particulier, le dispositif mandataire crée un tableau répertoriant chaque changement identifié sous forme d’objet dans un langage de description d’objets de la façon suivante : pour un ajout de chaîne télévisée, l’objet a un code descripteur spécifique d’ajout de chaîne télévisée et un argument qui comporte toutes les informations du guide électronique des programmes relatives à la chaîne télévisée en question, y compris un identifiant de ladite chaîne télévisée ; pour une suppression de chaîne télévisée, l’objet a un code descripteur spécifique de suppression de chaîne télévisée et un argument qui comporte l’identifiant de ladite chaîne télévisée ; pour un ajout de programme télévisé, l’objet a un code descripteur spécifique d’ajout de programme télévisé et un argument qui comporte toutes les informations du guide électronique des programmes relatives au programme télévisé en question, y compris un identifiant dudit programme télévisé et un identifiant de la chaîne télévisée sur laquelle ledit programme télévisé est diffusé ; pour une suppression de programme télévisé, l’objet a un code descripteur spécifique de suppression de programme télévisé et un argument qui comporte l’identifiant dudit programme télévisé et l’identifiant de la chaîne télévisée sur laquelle ledit programme télévisé était diffusé ; et pour une modification de programme télévisé, l’objet a un code descripteur spécifique de modification de programme télévisé et un argument qui comporte toutes les informations du guide électronique des programmes relatives au programme télévisé en question, y compris l’identifiant dudit programme télévisé et l’identifiant de la chaîne télévisée sur laquelle ledit programme télévisé est diffusé.
Selon un mode de réalisation particulier, lorsqu’un terminal demande que lui soit transmise une nouvelle version du guide électronique des programmes sous forme différentielle : le dispositif mandataire vérifie si transmettre le guide électronique des programmes sous forme différentielle représente un volume de données supérieur ou égal à transmettre le guide électronique des programmes sous forme complète ; en cas de vérification négative, le dispositif mandataire transmet, audit terminal, le guide électronique des programmes sous forme différentielle ; et en cas de vérification positive, le dispositif mandataire transmet, audit terminal, le guide électronique des programmes sous forme complète.
L’invention concerne également un procédé de mise à disposition d’un guide électronique des programmes à un terminal déclaré auprès d’un dispositif mandataire, le procédé étant implémenté par ledit terminal. Lorsqu’une nouvelle version du guide électronique des programmes doit être fournie audit terminal : lorsque ledit terminal dispose d’une précédente version du guide électronique des programmes, ledit terminal reçoit, dudit dispositif mandataire, le guide électronique des programmes sous forme différentielle par rapport à ladite précédente version du guide électronique des programmes ; et lorsque ledit terminal ne dispose pas de précédente version du guide électronique des programmes, ledit terminal reçoit, dudit dispositif mandataire, le guide électronique des programmes sous forme complète.
L’invention concerne également un programme d’ordinateur, qui peut être stocké sur un support et/ou téléchargé d’un réseau de communication, afin d’être lu par un processeur. Ce programme d’ordinateur comprend des instructions pour implémenter l’un ou l’autre des procédés mentionnés ci-dessus dans l’un quelconque de leurs modes de réalisation, lorsque ledit programme est exécuté par le processeur. L’invention concerne également un support de stockage d’informations stockant un tel programme d’ordinateur.
L’invention concerne également un dispositif mandataire configuré pour mettre à disposition un guide électronique des programmes à au moins un terminal déclaré auprès du dispositif mandataire. Le dispositif mandataire comporte les moyens suivants, activés lorsqu’une nouvelle version du guide électronique des programmes doit être fournie audit au moins un terminal : lorsque ledit au moins un terminal dispose d’une précédente version du guide électronique des programmes, des moyens pour transmettre, audit au moins un terminal, le guide électronique des programmes sous forme différentielle par rapport à ladite précédente version du guide électronique des programmes ; et lorsque ledit au moins un terminal ne dispose pas de précédente version du guide électronique des programmes, des moyens pour transmettre, audit au moins un terminal, le guide électronique des programmes sous forme complète.
L’invention concerne également un terminal comportant des moyens pour se déclarer auprès d’un dispositif mandataire destiné à mettre à disposition dudit terminal un guide électronique des programmes. Le terminal comporte en outre les moyens suivants activés lorsqu’une nouvelle version du guide électronique des programmes doit être fournie audit terminal : lorsque ledit terminal dispose d’une précédente version du guide électronique des programmes, des moyens pour recevoir, dudit dispositif mandataire, le guide électronique des programmes sous forme différentielle par rapport à ladite précédente version du guide électronique des programmes ; et lorsque ledit terminal ne dispose pas de précédente version du guide électronique des programmes, des moyens pour recevoir, dudit dispositif mandataire, le guide électronique des programmes sous forme complète.
L’invention concerne également un système multimédia comportant un dispositif mandataire tel que présenté ci-dessus et au moins un terminal tel que précédemment présenté ci-dessus.
Les caractéristiques de l’invention mentionnées ci-dessus, ainsi que d’autres, apparaîtront plus clairement à la lecture de la description suivante d’un exemple de réalisation, ladite description étant faite en relation avec les dessins joints, parmi lesquels :
- la Fig. 1 illustre schématiquement un système multimédia dans lequel la présente invention peut être implémentée ;
- la Fig. 2 illustre schématiquement un exemple d’architecture matérielle d’une entité du système multimédia ;
- la Fig. 3 illustre schématiquement un algorithme de mise à disposition, par un dispositif mandataire, d’une nouvelle version d’un guide électronique de programmes ;
- la Fig. 4 illustre schématiquement un premier algorithme de requête, par un terminal, d’une version à jour du guide électronique de programmes ;
- la Fig. 5 illustre schématiquement un second algorithme de requête, par un terminal, d’une version à jour du guide électronique de programmes ;
- la Fig. 6 illustre schématiquement un algorithme de sélection, par le dispositif mandataire, de données à transmettre pour répondre à la requête d’un terminal d’obtenir une version à jour du guide électronique de programmes ;
- la Fig. 7 illustre schématiquement un algorithme de mise à disposition, par un terminal, du guide électronique de programmes.
La Fig. 1 illustre schématiquement un système multimédia dans lequel la présente invention peut être implémentée. Le système multimédia comporte un serveur EPG-S 100 adapté pour mettre à disposition un guide électronique des programmes EPG pour un ensemble de chaînes télévisées. Le système multimédia comporte en outre un ou plusieurs, préférentiellement plusieurs, terminaux auxquels est destiné le guide électronique des programmes EPG. Les terminaux sont par exemple des dispositifs décodeurs adaptés pour décoder des programmes télévisés diffusés sur des chaînes télévisées via Internet IPTV (« Internet Protocole Télévision » en anglais). De tels dispositifs décodeurs sont par exemple intégrés à des écrans de télévision ou à des boîtiers décodeurs STB (« Set Top Box » en anglais). La Fig. 1 montre, de manière illustrative, trois terminaux STB1 131, STB2 132, STB3 133, sous forme de dispositifs décodeurs intégrés à des boîtiers décodeurs STB.
Le système multimédia comporte en outre un dispositif mandataire (« proxy device » en anglais) EPG-P 110 qui agit comme relais entre le serveur EPG-S 100 et les terminaux STB1 131, STB2 132, STB3 133. L’utilisation d’un dispositif mandataire entre le serveur EPG-S 100 et les terminaux STB1 131, STB2 132, STB3 133 permet de simplifier l’architecture du système multimédia lorsque plusieurs serveurs doivent fournir des informations aux terminaux STB1 131, STB2 132, STB3 133. Le dispositif mandataire EPG-P 110 collecte alors, auprès des différents serveurs, les informations requises et les distribue ensuite aux terminaux STB1 131, STB2 132, STB3 133. On évite ainsi de devoir connecter chaque terminal à chaque serveur. Un autre intérêt d’utiliser un dispositif mandataire est de pouvoir laisser un premier opérateur gérer le serveur EPG-S 100, c’est-à-dire le contenu du guide électronique des programmes EPG, et un second opérateur gérer le parc des terminaux STB1 131, STB2 132, STB3 133.
Dans une variante de réalisation, le serveur EPG-S 100 et le dispositif mandataire EPG-P 110 sont intégrés dans un même équipement serveur 115.
Chaque terminal devant recevoir le guide électronique des programmes EPG via le dispositif mandataire EPG-P 110 se déclare, au démarrage auprès du dispositif mandataire EPG-P 110. Une procédure d’authentification peut être mise en place. Cela permet notamment audit terminal de recevoir des notifications de changement du guide électronique des programmes EPG en provenance du dispositif mandataire EPG-P 110. Pour ce faire, une adresse (e.g. adresse IP) permettant de contacter le dispositif mandataire EPG-P 110 est par exemple préconfigurée dans une mémoire du terminal en question.
Le système multimédia comporte en outre une base de données DB (« DataBase » en anglais) 120, connectée au dispositif mandataire EPG-P 110. Comme décrit ci-après, la base de données DB 120 est utilisée par le dispositif mandataire EPG-P 110 pour stocker des données relatives au guide électronique des programmes EPG, permettant de transmettre le guide électronique des programmes EPG soit sous forme complète, soit sous forme différentielle.
Dans une variante de réalisation, le dispositif mandataire EPG-P 110 et la base de données DB 120 sont intégrés dans un même équipement mandataire 116.
Dans un mode de réalisation particulier, les terminaux STB1 131, STB2 132, STB3 133 communiquent avec le dispositif mandataire EPG-P 110 en utilisant le protocole MQTT (« Message Queuing Telemetry Transport » en anglais), tel que spécifié dans la norme ISO/IEC PRF 20922 (par exemple dans sa version 3.1.1 du 15 juin 2016). D’autres protocoles de communication peuvent être utilisés pour permettre aux terminaux STB1 131, STB2 132, STB3 133 de communiquer avec le dispositif mandataire EPG-P 110, préférentiellement avec acquittement et retransmission.
Dans un mode de réalisation particulier, le dispositif mandataire EPG-P 110 communique avec le serveur EPG-S 100 en utilisant le protocole HTTP (« Hypertext Transfer Protocol » en anglais) ou son dérivé HTTPS (« HTTP Secure » en anglais). D’autres protocoles de communication peuvent être utilisés pour permettre au dispositif mandataire EPG-P 110 de communiquer avec le serveur EPG-S 100, préférentiellement avec acquittement et retransmission.
La Fig. 2 illustre schématiquement un exemple d’architecture matérielle d’une entité du système multimédia. Cette entité peut correspondre, au moins en partie, au serveur EPG-S 100. Cette entité peut correspondre, au moins en partie, au dispositif mandataire EPG-P 110. Cette entité peut correspondre, au moins en partie, à un terminal, par exemple le terminal STB1 131.
L’exemple d’architecture matérielle présenté comporte, reliés par un bus de communication 210 : un processeur CPU («Central Processing Unit» en anglais) 201 ; une mémoire vive RAM (« Random Access Memory » en anglais) 202 ; une mémoire morte ROM (« Read Only Memory » en anglais) 203 ; une unité de stockage ou un lecteur de support de stockage, tel qu’un lecteur de cartes SD (« Secure Digital » en anglais) ou un disque dur HDD (« Hard Disk Drive » en anglais) 204 ; et au moins une interface de communication COM 205.
Lorsque l’architecture matérielle représente le serveur EPG-S 100, l’interface de communication COM 205 permet au serveur EPG-S 100 de communiquer avec le dispositif mandataire EPG-P 110.
Lorsque l’architecture matérielle représente le dispositif mandataire EPG-P 110, l’interface de communication COM 205 permet au dispositif mandataire EPG-P 110 de communiquer avec le serveur EPG-S 100, avec la base de données DB 120, et avec un ou plusieurs terminaux, comme les terminaux STB1 131, STB2 132, STB3 133.
Lorsque l’architecture matérielle représente un terminal, l’interface de communication COM 205 permet audit terminal de communiquer avec le dispositif mandataire EPG-P 110.
Le processeur CPU 201 est capable d’exécuter des instructions chargées dans la mémoire RAM 202 à partir de la mémoire ROM 203, d’une mémoire externe (telle qu’une carte SD), d’un support de stockage (tel que le disque dur HDD 204), ou d’un réseau de communication. Lors de la mise sous tension, le processeur CPU 201 est capable de lire de la mémoire RAM 202 des instructions et de les exécuter. Ces instructions forment un programme d’ordinateur causant la mise en œuvre, par le processeur CPU 201, de tout ou partie des algorithmes et étapes décrits ci-après en relation avec l’entité que ladite architecture matérielle représente.
Ainsi, tout ou partie des algorithmes et étapes décrits ci-après peut être implémenté sous forme logicielle par exécution d’un ensemble d’instructions par une machine programmable, telle qu’un DSP (« Digital Signal Processor » en anglais) ou un microcontrôleur ou un processeur. Tout ou partie des algorithmes et étapes décrits ci-après peut aussi être implémenté sous forme matérielle par une machine ou un composant dédié, tel qu’un FPGA (« Field-Programmable Gâte Array » en anglais) ou un ASIC (« Application-Specific Integrated Circuit » en anglais). Ainsi, chaque entité du système multimédia comporte de la circuiterie électronique adaptée pour implémenter les algorithmes et étapes décrits ci-après en relation avec ladite entité.
La Fig. 3 illustre schématiquement un algorithme de mise à disposition, par le dispositif mandataire EPG-P 110, d’une nouvelle version du guide électronique de programmes EPG.
Dans une étape 301, le dispositif mandataire EPG-P 110 détecte un événement prédéfini qui déclenche une vérification par le dispositif mandataire EPG-P 110 qu’une nouvelle version du guide électronique de programmes EPG est, ou pas, disponible auprès du serveur EPG-S 100. Par exemple, cet événement prédéfini est représentatif d’une fin d’initialisation ou d’opération de maintenance du dispositif mandataire EPG-P 110. Par exemple, cet événement prédéfini est une fin de temporisation de durée prédéfinie déclenchée lors de la dernière vérification effectuée par le dispositif mandataire EPG-P 110 auprès du serveur EPG-S 100. Notamment, dans un mode de réalisation particulier, le dispositif mandataire EPG-P 110 effectue cette vérification auprès du serveur EPG-S 100 à intervalles réguliers, par exemple toutes les cinq minutes.
Dans une étape 302, le dispositif mandataire EPG-P 110 récupère le guide électronique des programmes EPG auprès du serveur EPG-S 100.
Dans une étape 303, le dispositif mandataire EPG-P 110 applique une fonction de hachage prédéfinie sur le guide électronique des programmes EPG récupéré, afin d’obtenir un résultat de hachage. En variante de réalisation, le résultat de hachage est fourni par le serveur EPG-S 100 en complément du guide électronique des programmes EPG. Par exemple, le résultat de hachage est une empreinte numérique de type MD5 ou SHA256.
Dans une étape 304, le dispositif mandataire EPG-P 110 détermine si un changement est survenu dans le guide électronique des programmes EPG depuis la dernière vérification. Plus particulièrement, le dispositif mandataire EPG-P 110 vérifie si le résultat de hachage obtenu à l’étape 303 est identique au résultat de hachage obtenu lors de la dernière vérification. Si tel est le cas, aucun changement n’est survenu dans le guide électronique des programmes EPG, et une étape 305 est effectuée ; sinon, un changement est survenu dans le guide électronique des programmes EPG et une étape 306 est effectuée.
Dans l’étape 305, optionnelle, le dispositif mandataire EPG-P 110 effectue un nettoyage de la base de données DB 120, de sorte à en retirer d’éventuelles données périmées. Les données stockées dans la base de données DB 120 depuis plus d’une durée prédéfinie, par exemple depuis plus de sept jours, sont effacées de la base de données DB 120. Cela permet de contraindre l’espace de stockage utilisé par la base de données DB 120. Ensuite, l’étape 301 est répétée. A noter que ce nettoyage peut faire l’objet d’un processus parallèle, exécuté à intervalles réguliers, par exemple tous les jours.
Dans l’étape 306, le dispositif mandataire EPG-P 110 identifie chaque changement opéré dans le guide électronique des programmes EPG par rapport à la dernière version stockée dans la base de données DB 120. Le dispositif mandataire EPG-P 110 identifie :
- si une ou plusieurs chaînes télévisées ont été ajoutées,
- si une ou plusieurs chaînes télévisées ont été supprimées,
- si un ou plusieurs programmes télévisés ont été ajoutés,
- si un ou plusieurs programmes télévisés ont été supprimés, et
- si un ou plusieurs programmes télévisés ont été modifiés.
Dans un mode de réalisation particulier, le dispositif mandataire EPG-P 110 applique une fonction de hachage prédéfinie sur le contenu du guide électronique des programmes EPG pour chaque chaîne télévisée, ainsi que sur chaque programme télévisé. Le dispositif mandataire EPG-P 110 compare alors le résultat de hachage ainsi obtenu pour chaque chaîne télévisée avec un résultat de hachage obtenu pour ladite chaîne télévisée pour la dernière version stockée dans la base de données DB 120. Si le résultat de hachage est identique, aucun changement n’est survenu pour ladite chaîne télévisée. Si le résultat de hachage diffère, un changement est survenu dans les programmes télévisés diffusés sur ladite chaîne télévisée, et le dispositif mandataire EPG-P 110 scrute alors lesdits programmes télévisés. Le dispositif mandataire EPG-P 110 applique une fonction de hachage prédéfinie sur le contenu du guide électronique des programmes EPG pour chaque programme télévisé diffusé sur ladite chaîne télévisée. Le dispositif mandataire EPG-P 110 compare alors le résultat de hachage ainsi obtenu pour chaque programme télévisé en question avec un résultat de hachage obtenu pour ledit programme télévisé pour la dernière version stockée dans la base de données DB 120. Si le résultat de hachage est identique, aucun changement n’est survenu pour ledit programme télévisé. Si le résultat de hachage diffère, un changement est survenu dans ledit programme télévisé.
Dans une étape 307, le dispositif mandataire EPG-P 110 extrait du guide électronique des programmes EPG chaque changement identifié à l’étape 306.
Dans un mode de réalisation particulier, le dispositif mandataire EPG-P 110 crée un tableau répertoriant chaque changement identifié à l’étape 306 sous forme d’objet, dans un langage de description d’objets, par exemple JSON (« JavaScript Object Notation » en anglais) ou XML (« extensible Markup Language » en anglais), de la façon suivante :
- pour un ajout de chaîne télévisée, l’objet a un code descripteur CHANNEL ADD (code descripteur spécifique d’ajout de chaîne télévisée) et un argument qui comporte toutes les informations du guide électronique des programmes EPG relatives à la chaîne télévisée en question, y compris un identifiant de ladite chaîne télévisée ;
- pour une suppression de chaîne télévisée, l’objet a un code descripteur CHANNEL REMOVE (code descripteur spécifique de suppression de chaîne télévisée) et un argument qui comporte l’identifiant de ladite chaîne télévisée ;
- pour un ajout de programme télévisé, l’objet a un code descripteur PROGRAM ADD (code descripteur spécifique d’ajout de programme télévisé) et un argument qui comporte toutes les informations du guide électronique des programmes EPG relatives au programme télévisé en question, y compris un identifiant dudit programme télévisé et un identifiant de la chaîne télévisée sur laquelle ledit programme télévisé est diffusé ;
- pour une suppression de programme télévisé, l’objet a un code descripteur PROGRAM REMOVE (code descripteur spécifique de suppression de programme télévisé) et un argument qui comporte l’identifiant dudit programme télévisé et l’identifiant de la chaîne télévisée sur laquelle ledit programme télévisé était diffusé ; et
- pour une modification de programme télévisé, l’objet a un code descripteur PROGRAM CHANGED (code descripteur spécifique de modification de programme télévisé) et un argument qui comporte toutes les informations du guide électronique des programmes EPG relatives au programme télévisé en question, y compris l’identifiant dudit programme télévisé et l’identifiant de la chaîne télévisée sur laquelle ledit programme télévisé est diffusé.
Dans une étape 308, le dispositif mandataire EPG-P 110 stocke dans la base de données DB 120 : le guide électronique des programmes EPG dans sa version complète récupérée à l’étape 302 ; chaque changement identifié à l’étape 307 ; et une information d’horodatage associée.
Dans une étape 309, le dispositif mandataire EPG-P 110 met à disposition des terminaux STB1 131, STB2 132, STB3 133 la version du guide électronique des programmes EPG stockée à l’étape 308. Cette version est disponible sur requête desdits terminaux STB1 131, STB2 132, STB3 133, soit sous forme complète, soit sous forme différentielle, comme détaillé ci-après.
Dans un mode de réalisation particulier, le dispositif mandataire EPG-P 110 transmet dans cette étape 309, aux terminaux qui lui sont connectés, le guide électronique des programmes EPG sous forme différentielle. En d’autres termes, le dispositif mandataire EPG-P 110 transmet dans cette étape 309, aux terminaux qui lui sont connectés, uniquement les changements apportés au guide électronique des programmes EPG depuis la dernière version qui avait été stockée dans la base de données DB 120. Typiquement, le dispositif mandataire EPG-P 110 notifie chaque changement identifié à l’étape 306 sous forme d’un objet JSON tel que décrit cidessus. Le dispositif mandataire EPG-P 110 adjoint l’information d’horodatage associée à ce ou ces changements, ainsi que préférentiellement l’information d’horodatage de la dernière version qui avait été stockée dans la base de données DB 120. L’information d’horodatage de ladite dernière version permet à chaque terminal de déterminer par rapport à quelle version du guide électronique des programmes EPG le ou les changements notifiés s’appliquent, et ainsi de déterminer si ledit terminal a manqué un ou plusieurs changements intermédiaires, auquel cas ledit terminal est alors en mesure de requérir ces changements intermédiaires auprès du dispositif mandataire EPG-P 110.
La Fig. 4 illustre schématiquement un premier algorithme de requête, par un terminal, d’une version à jour du guide électronique de programmes. Considérons à titre illustratif que l’algorithme de la Fig. 4 est exécuté par le terminal STB1 131.
Dans une étape 401, le terminal STB1 131 s’initialise ou se réinitialise.
Dans une étape 402, le terminal STB1 131 vérifie si ledit terminal STB1 131 dispose, ou pas, d’une version du guide électronique des programmes EPG précédemment obtenue. Si ledit terminal STB1 131 dispose d’une version du guide électronique des programmes EPG précédemment obtenue, une étape 403 est effectuée ; sinon, une étape 406 est effectuée, pendant laquelle le terminal STB1 131 requiert auprès du dispositif mandataire EPG-P 110 que lui soit transmise la dernière version complète du guide électronique des programmes EPG.
Dans l’étape 403, le terminal STB1 131 récupère l’information d’horodatage associée à ladite version du guide électronique des programmes EPG précédemment obtenue.
Dans une étape 404, optionnelle, le terminal STB1 131 vérifie si ladite version du guide électronique des programmes EPG précédemment obtenue est, ou pas, trop ancienne. En d’autres termes, le terminal STB1 131 détermine s’il s’est écoulé plus d’une durée prédéfinie, par exemple sept jours, depuis l’instant représenté par l’information d’horodatage récupérée à l’étape 403. Si tel est le cas, la dernière version complète du guide électronique des programmes EPG doit être obtenue auprès du dispositif mandataire EPG-P 110, et l’étape 406 est effectuée ; sinon, une étape 405 est effectuée.
Dans l’étape 405, le terminal STB1 131 requiert auprès du dispositif mandataire EPG-P 110 que lui soit transmise, sous forme différentielle, la dernière version du guide électronique des programmes EPG. Le terminal STB1 131 transmet au dispositif mandataire EPG-P 110 l’information d’horodatage associée à la dernière version du guide électronique des programmes EPG stockée par ledit terminal STB1 131 (à savoir, l’information d’horodatage récupérée à l’étape 403).
Suite à l’exécution de l’algorithme de la Fig. 4, le terminal STB1 131 se met en attente d’une réponse du dispositif mandataire EPG-P 110.
La Fig. 5 illustre schématiquement un second algorithme de requête, par un terminal, d’une version à jour du guide électronique de programmes. Il est considéré que l’algorithme de la Fig. 4 a été précédemment exécuté et qu’une version du guide électronique des programmes EPG est déjà stockée en mémoire du terminal en question. Considérons à titre illustratif que l’algorithme de la Fig. 4 est exécuté par le terminal STB1 131.
Dans une étape 501, le terminal STB1 131 détecte un événement prédéfini qui déclenche une vérification par le terminal STB1 131 qu’une nouvelle version du guide électronique de programmes EPG est, ou pas, disponible auprès du dispositif mandataire EPG-P 110. Par exemple, cet événement prédéfini est représentatif d’une fin d’opération de maintenance du terminal STB1 131. Par exemple, cet événement prédéfini est une action utilisateur dans un menu graphique affiché par le terminal STB1 131. Par exemple, cet événement prédéfini est une fin de temporisation de durée prédéfinie déclenchée lors de la dernière vérification effectuée par le terminal STB1 131 auprès du dispositif mandataire EPG-P 110. Notamment, dans un mode de réalisation particulier, le terminal STB1 131 effectue cette vérification auprès du dispositif mandataire EPG-P 110 à intervalles réguliers, par exemple toutes les heures.
Dans une étape 502, le terminal STB1 131 récupère l’information d’horodatage associée à la version du guide électronique des programmes EPG précédemment obtenue et stockée en mémoire du terminal STB1 131.
Dans une étape 503, le terminal STB1 131 requiert auprès du dispositif mandataire EPG-P 110 que lui soit transmise, sous forme différentielle, la dernière version du guide électronique des programmes EPG. Le terminal STB1 131 transmet au dispositif mandataire EPG-P 110 l’information d’horodatage associée à la dernière version du guide électronique des programmes EPG stockée par ledit terminal STB 1 131 (à savoir, l’information d’horodatage récupérée à l’étape 502).
Suite à l’exécution de l’algorithme de la Fig. 5, le terminal STB1 131 se met en attente d’une réponse du dispositif mandataire EPG-P 110.
La Fig. 6 illustre schématiquement un algorithme de sélection, par le dispositif mandataire EPG-P 110, de données à transmettre pour répondre à la requête d’un terminal d’obtenir une version à jour du guide électronique de programmes EPG. L’exécution de l’algorithme de la Fig. 6 par le dispositif mandataire EPG-P 110 fait suite à l’exécution de l’algorithme de la Fig. 4 ou de la Fig. 5 par un terminal, tel que le terminal STB 1131.
Dans une étape 601, le dispositif mandataire EPG-P 110 reçoit, en provenance d’un terminal, une demande de transmission de la dernière version disponible du guide électronique des programmes EPG. Cette demande émane de l’exécution de l’étape 405, 406 ou 503. La demande inclut une information d’horodatage associée à la dernière version du guide électronique des programmes EPG à disposition du terminal en question.
Dans une étape 602, le dispositif mandataire EPG-P 110 détermine si la demande concerne la dernière version du guide électronique des programmes EPG sous forme complète ou sous forme différentielle. Si la demande concerne la dernière version du guide électronique des programmes EPG sous forme complète, une étape
605 est effectuée, pendant laquelle le dispositif mandataire EPG-P 110 transmet au terminal en question la dernière version du guide électronique des programmes EPG sous forme complète ; sinon, une étape 603 est effectuée.
Dans l’étape 603, le dispositif mandataire EPG-P 110 récupère l’information d’horodatage associée à la dernière version du guide électronique des programmes EPG à disposition du terminal en question, telle qu’incluse dans la demande reçue à l’étape 601.
Dans une étape 604, le dispositif mandataire EPG-P 110 vérifie si ladite dernière version du guide électronique des programmes EPG précédemment à disposition du terminal en question est, ou pas, trop ancienne. En d’autres termes, le dispositif mandataire EPG-P 110 détermine s’il s’est écoulé plus d’une durée prédéfinie, par exemple 7 jours, depuis l’instant représenté par l’information d’horodatage récupérée à l’étape 603. Si tel est le cas, la dernière version complète du guide électronique des programmes EPG doit être transmise au terminal en question, et l’étape 605 est effectuée ; sinon, une étape 606 est effectuée.
Dans l’étape 606, le dispositif mandataire EPG-P 110 identifie, à partir de l’information d’horodatage récupérée à l’étape 603, chaque mise à jour ultérieure du guide électronique des programmes EPG. Le dispositif mandataire EPG-P 110 scrute la base de données DB 120 pour déterminer si une ou plusieurs versions plus récentes du guide électronique des programmes EPG y ont été stockées (une version plus récente est associée à une information d’horodatage représentant un instant postérieur à l’instant représenté par l’information d’horodatage récupérée à l’étape 603).
Dans une étape 607, le dispositif mandataire EPG-P 110 détermine si la dernière version du guide électronique des programmes EPG à disposition du terminal en question est à jour (pas de version plus récente dans la base de données DB 120). Si tel est le cas, une étape 608 est effectuée ; sinon, le dispositif mandataire EPG-P 110 transmet au terminal en question la dernière version du guide électronique des programmes EPG sous forme différentielle. En d’autres termes, le dispositif mandataire EPG-P 110 transmet au terminal en question les différences entre la dernière version disponible du guide électronique des programmes EPG dans la base de données DB 120 et la dernière version du guide électronique des programmes EPG à disposition du terminal en question. Ainsi, une étape 609 est effectuée.
Dans l’étape 608, le dispositif mandataire EPG-P 110 transmet, au terminal en question, une notification indiquant que la dernière version du guide électronique des programmes EPG à disposition du terminal en question est à jour.
Dans l’étape 609, le dispositif mandataire EPG-P 110 détermine si plusieurs versions du guide électronique des programmes EPG ont été stockées dans la base de données DB 120 depuis la dernière version du guide électronique des programmes EPG à disposition du terminal en question. Si tel est le cas, une étape 611 est effectuée ; sinon, une étape 610 est effectuée.
Dans l’étape 610, le dispositif mandataire EPG-P 110 transmet uniquement les changements apportés au guide électronique des programmes EPG par la dernière version stockée dans la base de données DB 120. Cela forme un jeu de données de mise à jour différentielle du guide électronique des programmes EPG. Typiquement, le dispositif mandataire EPG-P 110 notifie chaque changement sous forme d’un objet JSON tel que décrit ci-dessus en relation avec la Fig. 3. Le dispositif mandataire EPG-P 110 adjoint l’information d’horodatage associée à ce jeu de données de mise à jour différentielle.
Dans l’étape 611, le dispositif mandataire EPG-P 110 concatène les changements opérés dans les différentes versions du guide électronique des programmes EPG qui ont été stockées dans la base de données DB 120 depuis la dernière version du guide électronique des programmes EPG à disposition du terminal en question. Cela forme plusieurs jeux de données de mise à jour différentielle du guide électronique des programmes EPG. Typiquement, le dispositif mandataire EPG-P 110 notifie chaque changement sous forme d’un objet JSON tel que décrit cidessus en relation avec la Fig. 3. Le dispositif mandataire EPG-P 110 adjoint l’information d’horodatage associée à chaque jeu de données de mise à jour différentielle. Cela permet au terminal en question de savoir dans quel ordre appliquer les changements à partir de la dernière version du guide électronique des programmes EPG à disposition du terminal en question.
Dans une étape 612, le dispositif mandataire EPG-P 110 transmet au terminal en question la concaténation obtenue à l’étape 611, avec les informations d’horodatage associées.
Dans un mode de réalisation particulier, pour déterminer si le guide électronique des programmes EPG est à transmettre sous forme différentielle ou sous forme complète, le dispositif mandataire EPG-P 110 effectue un test sur le volume de données à transmettre, indépendamment d’une éventuelle question d’ancienneté de ladite dernière version du guide électronique des programmes EPG précédemment à disposition du terminal en question. Ainsi, lorsque le terminal STB1 131 demande que lui soit transmise une nouvelle version du guide électronique des programmes EPG sous forme différentielle, le dispositif mandataire EPG-P 110 vérifie si transmettre le guide électronique des programmes EPG sous forme différentielle représente un volume de données supérieur ou égal à transmettre le guide électronique des programmes EPG sous forme complète. Cela dépend notamment des formats de description utilisés. En cas de vérification négative, le dispositif mandataire EPG-P 110 transmet, au terminal STB1 131, le guide électronique des programmes sous forme différentielle. Et en cas de vérification positive, le dispositif mandataire EPG-P 110 transmet, audit terminal STB1 131, le guide électronique des programmes sous forme complète.
La Fig. 7 illustre schématiquement un algorithme de mise à disposition, par un terminal, du guide électronique de programmes EPG. L’exécution de l’algorithme de la Fig. 7 par le terminal en question fait suite à l’exécution de l’algorithme de la Fig. 6 (ou de la Fig. 3, voir l’étape 309) par le dispositif mandataire EPG-P 110. Considérons à titre illustratif que l’algorithme de la Fig. 7 est exécuté par le terminal STB1 131.
Dans une étape 701, le terminal STB1 131 reçoit, en provenance du dispositif mandataire EPG-P 110, des données relatives au guide électronique de programmes EPG. Ces données reçues visent à mettre à jour la dernière version du guide électronique des programmes EPG à disposition du terminal STB1 131.
Dans une étape 702, le terminal STB1 131 détermine si les données reçues à l’étape 701 correspondent au guide électronique de programmes EPG sous forme complète ou sous forme différentielle. Si lesdites données correspondent au guide électronique de programmes EPG sous forme complète, une étape 706 est effectuée ; sinon, une étape 703 est effectuée.
Dans l’étape 703, le terminal STB1 131 récupère le jeu de données de mise à jour différentielle le plus ancien parmi le ou les jeux de données de mise à jour différentielle reçus à l’étape 701 ou parmi ceux restant à traiter parmi le ou les jeux de données de mise à jour différentielle reçus à l’étape 701. L’information d’horodatage associée à chaque jeu de données de mise à jour différentielle est utilisée pour ce faire.
Dans une étape 704, le terminal STB1 131 effectue la mise à jour du guide électronique de programmes EPG en appliquant le changement correspondant au jeu de données de mise à jour différentielle sélectionné à l’étape 703.
Dans une étape 705, le terminal STB1 131 vérifie s’il reste, ou pas, au moins un jeu de données à traiter parmi le ou les jeux de données de mise à jour différentielle reçus à l’étape 70L S’il reste au moins un jeu de données à traiter, l’étape 703 est répétée avec un jeu de données restant à traiter ; sinon, l’étape 706 est effectuée.
Dans l’étape 706, le terminal STB1 131 stocke le guide électronique de programmes EPG sous forme complète, c’est-à-dire tel que reçu (voir l’étape 702) ou tel que mis à jour (voir l’étape 704). Le terminal STB1 131 stocke aussi l’information d’horodatage associée, telle que fournie par le dispositif mandataire EPG-P 110. Lorsque plusieurs jeux de données de mise à jour différentielle ont été concaténés par le dispositif mandataire EPG-P 110, l’information d’horodatage la plus récente de la concaténation est stockée par le terminal STB1131.
Dans une étape 707, le terminal STB1 131 met à disposition, par exemple pour affichage à un utilisateur, le guide électronique de programmes EPG ainsi stocké.
Ainsi, grâce à l’invention détaillée ci-dessus, on évite de transmettre une version complète du guide électronique des programmes EPG, qui peut représenter une centaine de mégaoctets, à chaque changement du guide électronique des programmes EPG, pour une programmation télévisée de plusieurs dizaines de chaînes télévisées sur plusieurs jours. Lorsqu’une chaîne télévisée est ajoutée, l’utilisation de la forme différentielle limite la transmission à quelques mégaoctets. Lorsqu’une chaîne télévisée est supprimée ou qu’un programme télévisé est supprimé, l’utilisation de la forme différentielle limite la transmission à quelques octets. Lorsqu’un programme télévisé est ajouté ou modifié, l’utilisation de la forme différentielle limite la transmission à quelques dizaines d’octets.
Claims (15)
1) Procédé de mise à disposition d’un guide électronique des programmes à au moins un terminal (131, 132, 133) déclaré auprès d’un dispositif mandataire (110), le procédé étant implémenté par le dispositif mandataire (110), le procédé étant caractérisé en ce que, lorsqu’une nouvelle version du guide électronique des programmes doit être fournie audit au moins un terminal (131, 132, 133) :
lorsque ledit au moins un terminal (131, 132, 133) dispose d’une précédente version du guide électronique des programmes, le dispositif mandataire (110) transmet (610, 612), audit au moins un terminal (131, 132, 133), le guide électronique des programmes sous forme différentielle par rapport à ladite précédente version du guide électronique des programmes ; et lorsque ledit au moins un terminal (131, 132, 133) ne dispose pas de précédente version du guide électronique des programmes, le dispositif mandataire (110) transmet (605), audit au moins un terminal (131, 132, 133), le guide électronique des programmes sous forme complète.
2) Procédé selon la revendication 1, caractérisé en ce que :
le dispositif mandataire (110) récupère (302) le guide électronique des programmes auprès d’un serveur (100) et stocke toute nouvelle version du guide électronique des programmes dans une base de données (120) ;
le dispositif mandataire (110) identifie (306) chaque changement du guide électronique des programmes entre une dite nouvelle version récupérée auprès du serveur (100) et la dernière version stockée dans la base de données (120) ; et le dispositif mandataire (110) stocke (308) dans la base de données (120), outre ladite nouvelle version du guide électronique des programmes, chaque changement identifié et une information d’horodatage associée.
3) Procédé selon la revendication 2, caractérisé en ce que chaque transmission par le dispositif mandataire (110) du guide électronique des programmes, que ce soit sous forme complète ou différentielle, est accompagnée de l’information d’horodatage associée.
4) Procédé selon la revendication 3, caractérisé en ce que chaque transmission par le dispositif mandataire (110) du guide électronique des programmes sous forme différentielle est en outre accompagnée de l’information d’horodatage associée à la version du guide des programmes par rapport à laquelle la forme différentielle a été déterminée.
5) Procédé selon l’une quelconque des revendications 3 et 4, caractérisé en ce que, lorsqu’un terminal (131, 132, 133) demande que lui soit transmise une nouvelle version du guide électronique des programmes sous forme différentielle :
le dispositif mandataire (110) reçoit du terminal (131, 132, 133) une information d’horodatage associée à la précédente version du guide électronique des programmes dont dispose ledit terminal (131, 132, 133) ; et pour transmettre (610, 612) la nouvelle version du guide électronique des programmes sous forme différentielle, le dispositif mandataire (110) détermine si plusieurs nouvelles versions du guide électronique des programmes ont été stockées dans la base de données (120) depuis la précédente version du guide électronique des programmes dont dispose ledit terminal (131, 132, 133), et le cas échéant, le dispositif mandataire (110) concatène (611) les changements opérés dans les différentes versions du guide électronique des programmes qui ont été stockées dans la base de données (120) depuis la précédente version du guide électronique des programmes dont dispose ledit terminal (131, 132, 133).
6) Procédé selon la revendication 5, caractérisé en ce que, lorsqu’un terminal (131, 132, 133) demande que lui soit transmise une nouvelle version du guide électronique des programmes sous forme différentielle :
le dispositif mandataire (110) vérifie (604) s’il s’est écoulé, ou pas, plus d’une durée prédéfinie depuis l’instant représenté par l’information d’horodatage reçue ;
en cas de vérification négative, le dispositif mandataire (110) transmet (610, 612), audit terminal (131, 132, 133), le guide électronique des programmes sous forme différentielle ; et en cas de vérification positive, le dispositif mandataire (110) transmet (605), audit terminal (131, 132, 133), le guide électronique des programmes sous forme complète.
7) Procédé selon l’une quelconque des revendications 2 à 6, caractérisé en ce que le dispositif mandataire (110) crée un tableau répertoriant chaque changement identifié sous forme d’objet dans un langage de description d’objets de la façon suivante :
- pour un ajout de chaîne télévisée, l’objet a un code descripteur spécifique d’ajout de chaîne télévisée et un argument qui comporte toutes les informations du guide électronique des programmes relatives à la chaîne télévisée en question, y compris un identifiant de ladite chaîne télévisée ;
- pour une suppression de chaîne télévisée, l’objet a un code descripteur spécifique de suppression de chaîne télévisée et un argument qui comporte l’identifiant de ladite chaîne télévisée ;
- pour un ajout de programme télévisé, l’objet a un code descripteur spécifique d’ajout de programme télévisé et un argument qui comporte toutes les informations du guide électronique des programmes relatives au programme télévisé en question, y compris un identifiant dudit programme télévisé et un identifiant de la chaîne télévisée sur laquelle ledit programme télévisé est diffusé ;
- pour une suppression de programme télévisé, l’objet a un code descripteur spécifique de suppression de programme télévisé et un argument qui comporte l’identifiant dudit programme télévisé et l’identifiant de la chaîne télévisée sur laquelle ledit programme télévisé était diffusé ; et
- pour une modification de programme télévisé, l’objet a un code descripteur spécifique de modification de programme télévisé et un argument qui comporte toutes les informations du guide électronique des programmes relatives au programme télévisé en question, y compris l’identifiant dudit programme télévisé et l’identifiant de la chaîne télévisée sur laquelle ledit programme télévisé est diffusé.
8) Procédé selon l’une quelconque des revendications là 7, caractérisé en ce que, lorsqu’un terminal (131, 132, 133) demande que lui soit transmise une nouvelle version du guide électronique des programmes sous forme différentielle :
le dispositif mandataire (110) vérifie si transmettre le guide électronique des programmes sous forme différentielle représente un volume de données supérieur ou égal à transmettre le guide électronique des programmes sous forme complète ;
en cas de vérification négative, le dispositif mandataire (110) transmet, audit terminal (131, 132, 133), le guide électronique des programmes sous forme différentielle ; et en cas de vérification positive, le dispositif mandataire (110) transmet, audit terminal (131, 132, 133), le guide électronique des programmes sous forme complète.
9) Procédé de mise à disposition d’un guide électronique des programmes à un terminal (131, 132, 133) déclaré auprès d’un dispositif mandataire (110), le procédé étant implémenté par ledit terminal (131, 132, 133), le procédé étant caractérisé en ce que, lorsqu’une nouvelle version du guide électronique des programmes doit être fournie audit terminal (131, 132, 133) :
lorsque ledit terminal (131, 132, 133) dispose d’une précédente version du guide électronique des programmes, ledit terminal (131, 132, 133) reçoit, dudit dispositif mandataire (110), le guide électronique des programmes sous forme différentielle par rapport à ladite précédente version du guide électronique des programmes ; et lorsque ledit terminal (131, 132, 133) ne dispose pas de précédente version du guide électronique des programmes, ledit terminal (131, 132, 133) reçoit, dudit dispositif mandataire (110), le guide électronique des programmes sous forme complète.
10) Procédé de mise à disposition d’un guide électronique des programmes à au moins un terminal (131, 132, 133) déclaré auprès d’un dispositif mandataire (110), caractérisé en ce que le dispositif mandataire (110) implémente le procédé selon l’une quelconque des revendications 1 à 8, et chaque terminal (131, 132, 133) implémente le procédé selon la revendication 9.
11) Produit programme d’ordinateur, caractérisé en ce qu’il comprend des instructions pour implémenter, par un processeur (201), le procédé selon l’une quelconque des revendications 1 à 8 ou selon la revendication 9, lorsque ledit programme est exécuté par ledit processeur (201).
12) Support de stockage d’informations, caractérisé en ce qu’il stocke un programme d’ordinateur comprenant des instructions pour implémenter, par un processeur (201), le procédé selon l’une quelconque des revendications 1 à 8 ou selon la revendication 9, lorsque ledit programme est lu et exécuté par ledit processeur (201).
13) Dispositif mandataire (110) configuré pour mettre à disposition un guide électronique des programmes à au moins un terminal (131, 132, 133) déclaré auprès du dispositif mandataire (110), caractérisé en ce que le dispositif mandataire (110) comporte les moyens suivants, activés lorsqu’une nouvelle version du guide électronique des programmes doit être fournie audit au moins un terminal (131, 132, 133) :
lorsque ledit au moins un terminal (131, 132, 133) dispose d’une précédente version du guide électronique des programmes, des moyens pour transmettre (610, 612), audit au moins un terminal (131, 132, 133), le guide électronique des programmes sous forme différentielle par rapport à ladite précédente version du guide électronique des programmes ; et lorsque ledit au moins un terminal (131, 132, 133) ne dispose pas de précédente version du guide électronique des programmes, des moyens pour transmettre (605), audit au moins un terminal (131, 132, 133), le guide électronique des programmes sous forme complète.
14) Terminal (131, 132, 133) comportant des moyens pour se déclarer auprès d’un dispositif mandataire (110) destiné à mettre à disposition dudit terminal (131, 132, 133) un guide électronique des programmes, caractérisé en ce que le terminal (131, 132, 133) comporte en outre les moyens suivants activés lorsqu’une nouvelle version du guide électronique des programmes doit être fournie audit terminal (131, 132, 133) :
lorsque ledit terminal (131, 132, 133) dispose d’une précédente version du guide électronique des programmes, des moyens pour recevoir, dudit dispositif mandataire (110), le guide électronique des programmes sous forme différentielle par rapport à ladite précédente version du guide électronique des programmes ; et lorsque ledit terminal (131, 132, 133) ne dispose pas de précédente version du guide électronique des programmes, des moyens pour recevoir, dudit dispositif mandataire (110), le guide électronique des programmes sous forme complète.
5
15) Système multimédia comportant un dispositif mandataire (110) selon la revendication 13 et au moins un terminal (131, 132, 133) selon la revendication 14.
Priority Applications (1)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| FR1850666A FR3068561A1 (fr) | 2018-01-29 | 2018-01-29 | Procede de mise a disposition d'un guide electronique des programmes |
Applications Claiming Priority (2)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| FR1850666 | 2018-01-29 | ||
| FR1850666A FR3068561A1 (fr) | 2018-01-29 | 2018-01-29 | Procede de mise a disposition d'un guide electronique des programmes |
Publications (1)
| Publication Number | Publication Date |
|---|---|
| FR3068561A1 true FR3068561A1 (fr) | 2019-01-04 |
Family
ID=62222842
Family Applications (1)
| Application Number | Title | Priority Date | Filing Date |
|---|---|---|---|
| FR1850666A Ceased FR3068561A1 (fr) | 2018-01-29 | 2018-01-29 | Procede de mise a disposition d'un guide electronique des programmes |
Country Status (1)
| Country | Link |
|---|---|
| FR (1) | FR3068561A1 (fr) |
Citations (6)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| US20070055709A1 (en) * | 2005-09-03 | 2007-03-08 | Samsung Electronics Co., Ltd. | Method and apparatus for synchronizing EPG information between server and client |
| WO2008068664A2 (fr) * | 2006-12-07 | 2008-06-12 | Telefonaktiebolaget Lm Ericsson (Publ) | Procédé d'envoi d'informations de programme multimédia à un abonné et nœuds de celui-ci |
| EP2134093A1 (fr) * | 2007-04-03 | 2009-12-16 | Huawei Technologies Co., Ltd. | Procédé, serveur, terminal et système permettant d'actualiser un guide électronique de services |
| EP2175687A1 (fr) * | 2007-09-20 | 2010-04-14 | ZTE Corporation | Système et procédé pour actualiser les différences d'un guide électronique des services |
| US20110307933A1 (en) * | 2010-06-15 | 2011-12-15 | Telefonaktiebolaget L M Ericsson (Publ) | Systems and methods for implementing server side push mechanisms for internet protocol television (iptv) updates |
| US20140137158A1 (en) * | 2012-11-15 | 2014-05-15 | General Instrument Corporation | Scalable data acquisition and accumulation in a resource constrained environment |
-
2018
- 2018-01-29 FR FR1850666A patent/FR3068561A1/fr not_active Ceased
Patent Citations (6)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| US20070055709A1 (en) * | 2005-09-03 | 2007-03-08 | Samsung Electronics Co., Ltd. | Method and apparatus for synchronizing EPG information between server and client |
| WO2008068664A2 (fr) * | 2006-12-07 | 2008-06-12 | Telefonaktiebolaget Lm Ericsson (Publ) | Procédé d'envoi d'informations de programme multimédia à un abonné et nœuds de celui-ci |
| EP2134093A1 (fr) * | 2007-04-03 | 2009-12-16 | Huawei Technologies Co., Ltd. | Procédé, serveur, terminal et système permettant d'actualiser un guide électronique de services |
| EP2175687A1 (fr) * | 2007-09-20 | 2010-04-14 | ZTE Corporation | Système et procédé pour actualiser les différences d'un guide électronique des services |
| US20110307933A1 (en) * | 2010-06-15 | 2011-12-15 | Telefonaktiebolaget L M Ericsson (Publ) | Systems and methods for implementing server side push mechanisms for internet protocol television (iptv) updates |
| US20140137158A1 (en) * | 2012-11-15 | 2014-05-15 | General Instrument Corporation | Scalable data acquisition and accumulation in a resource constrained environment |
Similar Documents
| Publication | Publication Date | Title |
|---|---|---|
| US9003464B2 (en) | System and method of verifying a video blackout event | |
| FR2863127A1 (fr) | Procedes et dispositifs pour la delivrance asynchrone de donnees numeriques | |
| WO2001050762A1 (fr) | Procede de telechargement de donnees precedees par des signaux d'annonce | |
| US20060277272A1 (en) | Protocol for enabling digital media navigation, selection and mobile remote control of DVR devices | |
| EP2031836B1 (fr) | Procédé et système d'adressage de dispositifs de restitution numérique | |
| WO2008012273A1 (fr) | Procede de synchronisation entre un equipement mobile et une carte a puce | |
| FR3068561A1 (fr) | Procede de mise a disposition d'un guide electronique des programmes | |
| EP1182878A1 (fr) | Système de communication, émetteur, récepteur, méthode utilisant un descripteur de stockage de données | |
| WO2017158274A1 (fr) | Acquisition d'extraits d'un flux multimédia sur un terminal | |
| EP2674860B1 (fr) | Procédé de traitement de données par un module de navigation | |
| FR3069996B1 (fr) | Procede de lecture d'un flux multimedia chiffre avec acces rapide au contenu en clair et dispositif d'utilisation | |
| FR2800958A1 (fr) | Procede de transmission et de traitement d'informations de service dans un systeme de television, recepteur et emetteur dans un tel systeme | |
| WO2024083978A1 (fr) | Procédé de traitement d'une requête d'exécution d'un service dans un réseau de communication, procédé de validation de la requête, entité intermédiaire, entité de validation, système et programme d'ordinateur correspondants | |
| FR2929480A1 (fr) | Procede de determination de donnees complementaires relatives a au moins un contenu, procede pour transmettre ces donnees complementaires, dispositif de traitement et serveur d'applications associes | |
| US20130227597A1 (en) | Personal program channel | |
| EP2815583B1 (fr) | Navigation deportée | |
| US12112192B2 (en) | Split triggers for executing computer operations | |
| WO2018172669A1 (fr) | Procédé et dispositif de gestion du stockage de documents numériques | |
| EP2538638A1 (fr) | Procédé de gestion de fourniture de services | |
| EP2262237A1 (fr) | Procédé de transmission de notification sur un terminal de restitution | |
| EP3476110B1 (fr) | Procédé et dispositif de traitement d'un objet multimédia | |
| EP2677708B1 (fr) | Procédé de communication d'un message audiovisuel, et système de communication | |
| EP1605669A1 (fr) | Procédé de gestion de programmes auxiliaires et récepteur et système correspondants | |
| WO2023275475A1 (fr) | Procede de gestion d'une passerelle d'acces a un reseau sur un terminal mobile | |
| EP2191646A1 (fr) | Procede de reduction de charge de serveurs, terminal, dispositif, et produit programme d'ordinateur correspondants |
Legal Events
| Date | Code | Title | Description |
|---|---|---|---|
| PLFP | Fee payment |
Year of fee payment: 2 |
|
| PLSC | Publication of the preliminary search report |
Effective date: 20190104 |
|
| RX | Complete rejection |
Effective date: 20200311 |