Procédé d'enregistrement distribué d'un flux multimédia, dispositif, et produit programme d'ordinateur correspondant.
La présente invention se rapporte au domaine des enregistrements d'ensemble de données, par exemple des données véhiculées par des flux multimédia personnels.
A l'heure actuelle, l'enregistrement de flux multimédias, tels que des flux vidéo ou des flux audio est majoritairement effectué en local. Cela signifie qu'un utilisateur souhaitant enregistrer un de ces flux doit posséder un appareil qui lui permette de réaliser un enregistrement. Un tel appareil peut être un magnétoscope, un enregistreur de disques de type DVD (de l'anglais « Digital Versatile Disc » pour « disque numérique polyvalent ») ou plus récemment un enregistreur à disque dur.
La récente apparition d'un type de diffusion de programmes de télévision par le biais des réseaux de type JCDSL (de l'anglais « Digital Subscriber Line » pour « ligne d'abonné numérique »), des réseaux câblés ou encore des réseaux sans fil de type WiFi (« Wireless Fidelity » identifiant une norme conduisant à la construction de «réseaux locaux sans fil ») ou suivant une norme de diffusion DVB (de l'anglais « Digital Video Broadcasting » pour « diffusion vidéo numérique ») autorise de nouveaux mode d'enregistrements des programmes, notamment un enregistrement de programmes au sein du réseau.
L'enregistrement des programmes au sein du réseau, notamment des programmes vidéo ou audio a récemment vu le jour du fait d'une explosion de la diffusion de tels programmes par le biais de réseaux haut débit. Ces programmes sont diffusés à des abonnés par le biais d'opérateurs. Afin de pouvoir recevoir les programmes, les opérateurs fournissent à des abonnés des terminaux numériques, également nommés en anglais « STB » pour « Set Top Box ». Ces terminaux permettent aux abonnés de recevoir des flux numériques correspondants aux programmes par le biais d'un réseau de communication, de les décompresser et de les restituer sur un appareil prévu à cet effet, comme par exemple une télévision, un écran d'ordinateur ou encore un appareil de restitution sonore.
Ces opérateurs ont également proposé de nouveaux modes d'enregistrement de ces flux numériques en permettant que ceux-ci soient enregistrés au sein de leur réseau. Ainsi, un utilisateur abonné souhaitant enregistrer une émission ne doit plus nécessairement disposer d'un dispositif d'enregistrement personnel. Cet utilisateur peut, par l'intermédiaire du réseau, commander l'enregistrement d'un flux et l'opérateur se charge d'allouer, au sein de son réseau, les ressources nécessaires à cet enregistrement. Les opérateurs réalisent également l'enregistrement de flux de manière systématique ou quasi systématique. Ainsi, un abonné qui souhaite visualiser un programme qu'il n'a pas pensé à enregistrer peut tout de même le visualiser, par l'intermédiaire du réseau de l'opérateur, et ce pendant une durée plus ou moins longue en fonction des opérateurs. L'opérateur propose ainsi un service de type « vidéo à la demande ».
De tels modes d'enregistrement sont généralement résumés sous l'appellation « NPVR » (de l'anglais « Network Personal Video Recording » pour « Enregistrement Vidéo Personnel par le Réseau »).
Le principe général repose sur l'envoi d'une ou plusieurs commandes d'enregistrement à un serveur central d'enregistrement qui réalise l'identification des flux à enregistrer et sauvegarde ces flux au sein d'espaces de stockage dédiés dans le réseau.
Ainsi les techniques d'enregistrement dites de « NPVR » répondent à une approche spécifique de services proposés aux abonnés tout en garantissant aux opérateurs un investissement à priori moindre car ne nécessitant pas l'installation de terminaux numériques spécifiques chez les abonnés tout en mutualisant des coûts de stockage. Ainsi, théoriquement, lorsque plusieurs clients programment la même émission, celle-ci n'est enregistrée qu'une seule fois par l'opérateur.
Cependant, un inconvénient de cette technique de l'art antérieur est d'entraîner une gestion relativement complexe des flux à enregistrer par les opérateurs. Ainsi, pour garantir aux abonnés la persistance d'émissions qu'ils n'ont pas « pensé » à enregistrer, les opérateurs enregistrent toutes les chaînes en
peraianence, puis procèdent à des suppressions pour ne conserver que des émissions qui ont, par la suite, donné lieu à des visualisation ou à des enregistrements.
Un autre inconvénient de ces techniques de l'art antérieur est lié à l'usage de bande passante importante et non mutualisable. En effet, les opérateurs rediffusent les flux enregistrés à la demande. L'émission des flux enregistrés est donc réalisée en unicast (point à point), c'est-à-dire directement vers l'abonné.
De plus, les abonnés exigent une qualité de restitution parfaite ce qui pousse les opérateurs à dupliquer leurs serveurs au plus près des clients, à multiplier les capacités de stockage et donc à augmenter le coût des infrastructures, d'autant plus que les prix des serveurs de vidéo à la demande sont très importants.
L'invention offre une solution qui ne présente pas les inconvénients de l'art antérieur, grâce à un procédé original d'enregistrement d'un ensemble de données. Selon l'invention, un tel procédé comprend : une étape de formulation d'une demande d'enregistrement par un équipement requérant ; une étape de distribution dudit enregistrement sur au moins un équipement distinct dudit équipement requérant et connecté à celui-ci par un réseau de communication.
Ainsi, le procédé d'enregistrement selon l'invention permet à un équipement de formuler des demandes d'enregistrement sans que cet équipement soit nécessairement l'équipement qui sauvegarde effectivement l'enregistrement. L'enregistrement physique de l'ensemble de données est distribué sur des équipements distincts de l'équipement à partir duquel la demande d'enregistrement a été formulée. Le procédé selon l'invention permet donc de tenir compte des équipements du réseau pour réaliser l'enregistrement à la différence des techniques de l'art antérieur qui ne tiennent compte que des possibilités offertes par l'équipement local.
Selon un mode de réalisation original de l'invention, ledit procédé comprend : une étape d'obtention d'une information représentative d'un volume de stockage disponible pour un stockage dudit enregistrement et propre audit équipement requérant, délivrant une information de volume disponible ; une étape d'identification, en fonction de ladite information de volume disponible, d'au moins un équipement de stockage connecté au réseau et destiné à réaliser au moins une partie du stockage dudit enregistrement.
Ainsi, le procédé d'enregistrement selon l'invention permet de tenir compte des volumes nécessaires au stockage des enregistrements (c'est-à-dire des possibilités physiques offertes pour le stockage par les équipements) pour déterminer un ou plusieurs emplacements de stockage des enregistrements. On entend par « enregistrement d'un ensemble de données » le produit de la sauvegarde de cet ensemble en vue de son utilisation ultérieure. Un tel enregistrement doit faire l'objet d'un stockage, c'est-à-dire une conservation physique, pour pouvoir être visualisé par la suite. L'invention permet donc, à la différence des solutions de l'art antérieur, de tenir compte de volumes de stockage disponibles propres aux équipements du réseau (des terminaux de communication, des routeurs, des serveurs) pour la détermination d'un emplacement de stockage. Ainsi, le procédé selon l'invention offre la possibilité de transférer tout ou partie du stockage des enregistrements, par exemple pour un équipement qui ne dispose pas de suffisamment d'espace, vers d'autres équipements du réseau. Une telle distribution de l'espace de stockage permet de mutualiser les coûts. En d'autres termes, l'invention permet à un équipement requérant un enregistrement de disposer des espaces de stockage d'autres équipements du réseau pour sauvegarder l'enregistrement demandé.
Selon une caractéristique particulière de l'invention, ladite demande d'enregistrement comprend au moins un paramètre appartenant au groupe comprenant au moins : - une information représentative d'un identifiant dudit équipement
requérant ; une information représentative d'un instant de début d'enregistrement ; une information représentative d'un instant de fin d'enregistrement ; une information représentative d'un identifiant d'au moins un flux numérique correspondant audit ensemble de données.
Ainsi, l'équipement du réseau qui souhaite réaliser l'enregistrement fournit des informations qui permettent de créer un lien entre l'équipement en tant que tel, par exemple sous la forme d'un identifiant, et des informations qui ont trait à l'ensemble de données, dans une forme particulière qu'il revêt, par exemple celle d'un programme audiovisuel. La demande d'enregistrement permet alors, par la fourniture de ces paramètres, une gestion des enregistrements qui assure une prise en compte efficace de l'espace de stockage réparti.
Selon un mode de réalisation original de l'invention, ladite étape d'identification dudit au moins un équipement de stockage est mise en œuvre au sein d'un serveur d'enregistrements centralisé.
Ainsi, l'invention permet de centraliser la détermination des équipements de stockage. Dans un tel mode de réalisation, cette centralisation permet de résoudre les difficultés liées à la mutualisation des espaces de stockage des équipements. En effet, selon les techniques d'enregistrement sur le réseau de l'art antérieur, les enregistrements sont réalisés sur des serveurs de vidéo à la demande. De tels serveurs disposent d'espaces de stockage caractéristiques de cette utilisation, c'est-à-dire de très grande capacité. Les techniques de l'art antérieur ne nécessitent donc pas d'identification centralisée d'un serveur de stockage. Dans ce mode de réalisation de l'invention, cependant, l'espace de stockage est réparti en une pluralité d'équipements de stockage pour lesquels on ne dispose pas forcément de la taille de l'espace de stockage. Il est donc possible, dans ce mode de réalisation, de centraliser les déterminations d'équipements de stockage pour les rendre plus simples.
Selon une caractéristique particulière de l'invention, ladite étape d'identification comprend :
une étape de calcul d'un volume résultant, par différence entre un volume nécessaire au stockage dudit enregistrement et celui représenté par ladite information de volume disponible au sein de l'équipement requérant ; une étape de recherche, au sein de ladite pluralité d'équipements, d'au moins un équipement apte à stocker au moins une partie dudit enregistrement en fonction dudit volume résultant.
Ainsi, l'invention permet de délinéariser le stockage des enregistrements effectués au sein du réseau en sélectionnant au moins un équipement de stockage en fonction de ses propres volumes de stockage disponibles. Les volumes de stockage disponibles propres aux équipements du réseau peuvent soit être transmis par ces derniers à un équipement requérant, soit être déterminées par l'interrogation d'une base de données qui dispose de ces informations. Les équipements de stockage sélectionnés reçoivent donc l'ordre de procéder au stockage de tout ou partie de l'enregistrement. Par exemple, un premier équipement peut stocker une première période temporelle de l'enregistrement, par exemple d'une durée d'une heure, tandis qu'un second équipement peut stocker une seconde période temporelle de l'enregistrement, par exemple d'une durée d'une demi-heure. L'espace de stockage est ainsi grandement rationalisé. Il est également possible de combiner cet aspect de distribution de l'enregistrement avec la prise en compte des demandes d'enregistrement des utilisateurs. Par exemple, il est envisageable, dans le cas de deux utilisateurs ayant demandé l'enregistrement d'un même programme mais à des heures différentes, de privilégier l'enregistrement de la partie demandée par l'utilisateur dans l'espace de stockage de son équipement tout en conservant l'intégralité du programme pour d'autres utilisateurs.
Selon un mode de réalisation original de l'invention, ledit procédé comprend : une étape de transmission de la demande d'enregistrement à un serveur de gestion de demandes d'enregistrement ; - une étape de traitement de ladite demande d'enregistrement par ledit
serveur de gestion selon au moins un paramètre de traitement déterminé ; une étape de transmission d'au moins une information représentative de ladite demande d'enregistrement audit serveur d'enregistrement.
Ainsi, l'invention permet de centraliser, au sein d'un serveur de gestion d'enregistrement, les demandes émises par les différents équipements qui composent le réseau de communication. Cette centralisation permet de traiter uniformément les demandes d'enregistrement en fonction de paramètres de traitement qui améliorent l'efficacité de la détermination des équipements de stockage. Selon une caractéristique particulière de l'invention, au moins un paramètre de traitement déterminé est une information représentative d'une redondance du dit enregistrement au sein de ladite pluralité d'équipements dudit réseau de communication.
Ainsi, il est possible de gérer les enregistrements selon un paramètre de redondance, également appelé paramètre d'asservissement, qui permet de définir un seuil en dessous duquel l'enregistrement sera effectivement stocké. En effet, pour pallier d'éventuelles défaillances des équipements de stockage du réseau de communication, il peut être nécessaire de procéder à plusieurs stockages d'un enregistrement. Ces stockages multiples sont alors contrôlés par ce paramètre de redondance. Dans un mode de réalisation particulier de l'invention, il est possible que la valeur de ce paramètre de redondance soit égale à un. Dans ce cas, un seul exemplaire de l'enregistrement sera conservé au sein de la pluralité d'équipements de stockage.
Selon une caractéristique particulière de l'invention, au moins un paramètre de traitement déterminé est une information représentative d'une durée de conservation maximum dudit enregistrement au sein de ladite pluralité d'équipements dudit réseau de communication.
Le procédé selon l'invention permet également de gérer des durées de conservation des enregistrements. En effet, dans la mesure où un équipement demande un enregistrement sans que ce dernier soit conservé, au moins en totalité,
au sein de son propre espace de stockage, il est nécessaire de déterminer une date au delà de laquelle cet enregistrement ne sera plus sauvegardé. Une telle contrainte peut s'avérer utile pour s'assurer d'une utilisation correcte des espaces de stockage des différents équipements. L'invention concerne également un ensemble de données représentatives d'un programme audiovisuel.
Selon l'invention un tel ensemble de données est distribué sur au moins deux équipements distincts interconnectés au sein d'un réseau de communication, disposant chacun d'une ressource de stockage et portant chacun une portion dudit enregistrement.
Ainsi, un tel ensemble de données permet d'optimiser l'utilisation des ressources de stockage tout en garantissant la pérennité de l'ensemble.
Dans un autre mode de réalisation, l'invention concerne également un produit programme d'ordinateur téléchargeable depuis un réseau de communication et/ou stocké sur un support lisible par ordinateur et/ou exécutable par un microprocesseur.
Selon l'invention, dans au moins un mode de réalisation, un tel produit programme d'ordinateur comprend des instructions de code de programme pour l'exécution du procédé d'enregistrement tel que décrit précédemment. D'autres caractéristiques et avantages de l'invention apparaîtront plus clairement à la lecture de la description suivante d'un mode de réalisation préférentiel, donné à titre de simple exemple illustratif et non limitatif, et des dessins annexés, parmi lesquels : la figure 1 présente un diagramme de bloc de l'architecture générale d'un système de mise en œuvre du procédé d'enregistrement de l'invention ; la figure 2 décrit une architecture simplifiée d'un serveur de gestion des demandes selon l'invention ; la figure 3 décrit une architecture simplifiée d'un serveur d'enregistrements selon l'invention.
L'invention propose donc de réaliser l'enregistrement de programmes audiovisuels de manière partagé et délinéarisé. Un tel type d'enregistrement peut être défini par l'emploi, en combinaison, d'un enregistrement numérique local et d'un enregistrement sur un réseau de communication mis à disposition de l'utilisateur, par exemple par un opérateur ou par un fournisseur d'accès à l' internet.
Ainsi, une telle combinaison d'enregistrement évite de monopoliser de la ressource réseau VOD (de l'anglais « Video On Demand » pour « Vidéo à la Demande ») inutilement et de distribuer le stockage réel des enregistrements tant sur le parc des set top boxes, que dans celui des serveurs de VOD. L'invention propose également un partage des enregistrements permettant de récupérer un enregistrement réalisé par une personne différente (par exemple qui est située au sein d'un ensemble de proximité).
L'invention propose également un pilotage centralisé de l'enregistrement des STB (de l'anglais « set top boxes » pour « terminaux numériques résidentiels ») permettant d'enregistrer des programmes audiovisuels dont personne n'a spontanément demandé l'enregistrement.
Le principe général de l'invention repose donc sur le partage de ressources entre différents acteurs du réseau afin de permettre une mutualisation des capacités de stockage des enregistrements des utilisateurs.
Ainsi, il est possible de réaliser tant des économies d'échelle pour les fournisseurs d'infrastructure réseau que de multiplier les possibilités d'enregistrement offertes aux utilisateurs qui disposent de STB. En effet, comme cela a déjà été souligné, les capacités d'enregistrements des utilisateurs sont très souvent limitées et les opérateurs, par le biais de l'enregistrement sur le réseau (NPVR), ne sont pas à même de fournir des espaces de stockage illimités aux utilisateurs. L'invention propose donc de mutualiser les ressources de stockage des utilisateurs afin d'augmenter tant l'espace de stockage global de chaque utilisateur que les possibilités de ceux-ci à visualiser des enregistrements qu'ils n'ont pas programmé (du fait d'un oubli, par exemple).
Une entité spécifique du réseau (également nommée serveur d'enregistrements) peut donc par exemple piloter le stockage d'enregistrements non demandés : elle enregistre en permanence un certain nombre de chaînes tant sur le parc des STB des utilisateurs que sur des ressources de stockage qui lui sont propre (disques durs dédiés) pour un accès délinéraisé ultérieur. Dans ce mode de réalisation de l'invention, le serveur d'enregistrement peut donc asservir complètement un espace des disques durs des STB. Il est ainsi possible d'utiliser une ou plusieurs STB pour un enregistrement d'une émission.
L'invention permet également aux utilisateurs d'obtenir une qualité de restitution supérieure à la qualité de restitution fournie par des serveurs de vidéo à la demande centralisés. En effet, dans un mode de réalisation particulier de l'invention on définit des ensembles de proximité. Ces ensembles de proximité sont constitués d'utilisateurs connectés au réseau de l'opérateur ou du fournisseur et ayant souscrit aux services d'enregistrements par le biais du réseau géographiquement proches.
Par la suite, on présente notamment plusieurs modes de mise en oeuvre de l'invention. Il est clair cependant que l'invention ne se limite pas à ces applications particulières. Notamment l'architecture présentée n'est donnée qu'à titre indicatif, le concept inventif général de l'invention étant bien entendu la décentralisation de l'enregistrement sur le réseau.
On présente dans ce mode de réalisation, la mise en œuvre du procédé d'enregistrement de l'invention dans le cadre d'une architecture technique faisant intervenir une entité de gestion des demandes qui contribue à l'administration des demandes d'enregistrements formulées par les utilisateurs. Cette architecture fait également intervenir un serveur d'enregistrement qui est chargé de l'administration générale du stockage des différents enregistrements des utilisateurs.
Ainsi, le serveur de gestion des demandes réalise donc la gestion des demandes d'enregistrement par l'intermédiaire d'une base de données contenant les références des terminaux et des émissions demandées et les lieux de stockage
(terminal ou réseau). Le serveur d'enregistrements, quant à lui, réalise les stockages des contenus vidéo dans le réseau à la demande su serveur de gestion des demandes.
Dans ce mode de réalisation les enregistrements sont donc réalisés en deux temps. Dans un premier temps, les utilisateurs font part de leurs souhaits d'enregistrement au serveur de gestion des demandes qui les traites. Dans un second temps, en fonction des paramètres des utilisateurs, de leurs terminaux numériques et des décisions prises par le serveur de gestion des demandes, le serveur d'enregistrement peut commander le stockage effectif des enregistrements demandés par les utilisateurs.
On présente brièvement ce mode de réalisation à l'aide de la figure 1. Un terminal (par exemple un terminal de type passerelle résidentielle ou STB) 100 est connecté au réseau 101 d'un opérateur ou d'un fournisseur d'accès. Ce terminal reçoit de la part du réseau des flux numériques (Multicast ou Unicast) 1001. Ce terminal 100 est également connecté à un serveur de gestion des demandes 103 auquel il transmet (1002) des requêtes (demandes d'enregistrement par exemple) et de la part duquel il reçoit (1003) des réponses.
Le serveur de gestion des demandes 103 est connecté, par le biais du réseau de l'opérateur à un serveur d'enregistrement 104 auquel il transmet (1004) de demandes de stockage des enregistrements et de la part duquel il reçoit (1005) des réponses à ces demandes. Dans le cas d'une restitution d'un enregistrement à un utilisateur par le biais du réseau, le serveur d'enregistrement 104 fournit 1006 au terminal 100 un flux vidéo (par exemple « unicast », s'il n'est destiné qu'à un seul utilisateur). Dans le cas d'une récupération d'un enregistrement situé chez l'utilisateur, le serveur d'enregistrement 104 reçoit de la part du terminal 100 le flux ou la portion de flux correspondant à ses besoins.
Dans ce mode de mise en œuvre particulier, le serveur de gestion des demandes 103 dispose d'une base de données 1007 qui lui permet de réaliser la gestion des enregistrements de programmes demandés par les utilisateurs. Au sein de cette base de données, le serveur de gestion des demandes 103 associe, pour
chaque demande d'enregistrement, des références de l'enregistrement (par exemple, le numéro de chaîne, l'heure de début, l'heure de fin, etc.) à un identifiant unique du terminal numérique de l'utilisateur.
On rappelle en effet que le terminal numérique de l'utilisateur, dans ce mode de réalisation particulier, possède des capacités de stockage qui lui sont propres, par exemple sou la forme d'un disque dur. Il est bien entendu que ce mode de réalisation n'est qu'un exemple de mise en œuvre. Il est à cet égard envisagé de prendre en compte, au sein du serveur de gestion des demandes, l'ensemble des ressources de stockage de l'utilisateur, tels que par exemple les ressources de stockage disponibles au sein de son réseau domestique par l'intermédiaire d'un ordinateur personnel ou de tout autre périphérique tel que des serveurs de stockage personnels.
Le serveur de gestion des 103 possède donc en permanence la connaissance des enregistrements de l'utilisateur par le biais de cette base de données 1007.
Il convient de distinguer, dans ce mode de réalisation, les relations existantes entre les différents acteurs et leurs articulations.
La gestion des demandes d'enregistrement formulées, sous la forme de commandes, par l'utilisateur au terminal peut être considérée, dans ce mode de réalisation, selon deux cas :
Cas 1: le terminal 100 de l'utilisateur dispose de suffisamment de place sur le disque. Dans ce cas le stockage est réalisé en local. A la fin de l'enregistrement le terminal 100 prévient le serveur 103 que l'enregistrement est terminé. Si l'enregistrement n'a pu être effectué correctement (suite à une anomalie, par exemple) le terminal 100 prévient le serveur 103 par un message d'anomalie.
Cas 2: le disque de l'utilisateur est plein ou l'utilisateur ne dispose pas d'assez de ressources sur son disque : le serveur de gestion des demandes 103 mémorise la demande d'enregistrement et la référence du terminal et envoie la demande au serveur d'enregistrements 104.
Dans les deux cas, la demande d'enregistrement contient des paramètres de la programmation de l'utilisateur, tels que par exemple : dans le cas d'un enregistrement immédiat, l'heure de début et la durée de l'enregistrement ; - dans le cas d'un enregistrement programmé horaire, les dates et heures de début et de fin de l'enregistrement ; dans le cas d'un enregistrement logique, un identifiant du programme audio visuel issu par exemple d'un guide des programmes.
Bien entendu, dans un mode de réalisation complémentaire de l'invention, il est possible en cours d'enregistrement, de passer du premier cas au deuxième cas. Ainsi, si un terminal 100 débute en local l'enregistrement d'un programme audiovisuel en ayant de l'espace libre sur son disque dur et que l'intégralité de cet espace vient à être consommé par l'enregistrement qui n'est pas encore terminé, le terminal 100 peut requérir auprès du serveur de gestion des demandes 103 la continuation de l'enregistrement sur le réseau.
Lorsque le terminal de l'utilisateur dispose de suffisamment de place sur son disque dur, et pour éviter d'utiliser de la bande passante inutile lors de la lecture, l'enregistrement se fait sur son disque dur. Ce faisant, dans un mode de réalisation prévoyant un asservissement d'au moins une partie des terminaux des utilisateurs pour procéder à l'enregistrement sur le réseau, cet enregistrement en local dégage par conséquent le serveur d'enregistrement 104 de la mise en place d'un enregistrement, qui supprime un asservissement d'un terminal (par exemple une STB).
En d'autres termes, la gestion des asservissements des terminaux des utilisateurs, est réalisée dynamiquement en fonction des propres souhaits d'enregistrement des utilisateurs. Ainsi, il n'est pas nécessaire d'asservir un terminal en lui imposant d'enregistrer un programme audiovisuel si ce programme fait déjà l'objet d'un ou plusieurs enregistrements par ailleurs.
Cependant, il est nécessaire, pour pallier des éventuels problèmes techniques des terminaux, de procéder à des enregistrements redondants. On fixe
ainsi un seuil de redondance N, que l'on appelle également paramètre d'asservissement, qui est utilisé pour garantir l'accès à un enregistrement donné.
En ce qui concerne la lecture d'un enregistrement, il convient de considérer trois cas de figure : - Cas 1 : l'enregistrement a été réalisé sur le terminal de l'utilisateur. La lecture est donc réalisée directement à partir du terminal. Ce dernier averti le serveur de gestion des demandes qu'il est indisponible. A la fin de la lecture le terminal prévient le serveur de gestion des demandes qu'il est disponible. Le lancement de la lecture de l'enregistrement à proprement parlé est mis en œuvre par le serveur de gestion des demandes qui donne l'ordre de lecture au terminal.
Cas 2 : l'enregistrement a été demandé au serveur d'enregistrements. Le terminal effectue donc une demande de lecture de contenu au serveur de gestion des demandes. Dans ce cas le serveur de gestion des demandes transmet dans sa réponse au terminal les informations nécessaires à la lecture du contenu, telles que :
Adresse du serveur de lecture en continu (« streaming »), par exemple l'adresse « unicast » de diffusion de l'enregistrement du serveur d'enregistrement ; - Paramètres du contenu (Identifiant, heure de début, heure de fin )
Cas 3 : l'utilisateur recherche un enregistrement dans le réseau. En effet, on rappelle que l'invention permet de mutualiser tant les ressources de stockage que les enregistrements eux-mêmes. L'utilisateur peut donc tout à fait rechercher des enregistrements qu'il n'aurait pas lui-même pensé à programmer. Le terminal transmet alors ses paramètres de recherche au serveur de gestion des demandes qui effectue la recherche au sein de sa base de données d'enregistrement 1007. Les paramètres de la demande de recherche peuvent être par exemple : - des dates et des heures de début et de fin de l'enregistrement ; et/ou
un identifiant de l'émission recherchée.
Dans le deuxième et le troisième cas, le serveur d'enregistrement fait appel à un pilote des enregistrements non demandés qui requerra auprès d'un ou plusieurs terminaux et ou de ses propres ressources de stockage de « remonter » le contenu. Ces terminaux envoient le flux ou téléchargent le contenu qui sera redirigé vers le terminal de l'utilisateur. Comme ce mécanisme est dépendant de la bande passante montante (des terminaux vers le serveur), un serveur intermédiaire peut se mettre en coupure pour reconstituer le flux complet avec un bon niveau de qualité. En ce qui concerne des opérations de suppression d'enregistrements, on s'attache à mutualiser au maximum les ressources des utilisateurs dans le mode de réalisation de l'invention qui est décrit ici. Ainsi, on vérifie avant toute suppression, les conditions d'accès ultérieures à l'enregistrement objet de la suppression. II convient de distinguer deux cas de figure :
Cas 1 : le contenu est sur le disque du terminal de l'utilisateur. Pour autoriser une suppression, le serveur de gestion des demandes 103 demande au serveur d'enregistrements 104 si ce contenu est dans le réseau ou vérifie s'il est encore disponible sur d'autres terminaux. Dans le cas ou le contenu n'est pas disponible dans le réseau et qu'il n'est disponible que sur un nombre N de terminaux, il doit faire une demande de récupération du contenu sur un des terminaux concernés.
Cas 2 : le contenu est enregistré au sein du réseau (sur un autre terminal par exemple ou au sein du serveur d'enregistrements). Le serveur de gestion des demandes se contente alors de supprimer les références de l'utilisateur à cet enregistrement au sein de sa base de données 1007.
Dans le cas 1, N est un paramètre d'asservissement. C'est une valeur qui sert à assurer la disponibilité des enregistrements au sein du réseau. En d'autres termes, ce paramètre sert à s'assurer qu'un programme audiovisuel qui a fait l'objet d'un enregistrement par plusieurs utilisateurs sera toujours disponible tant
que tous les utilisateurs concernés n'auront pas demandé sa suppression ou tant qu'une période de temps également paramétrable ne se sera pas écoulée.
Dans le mode de réalisation décrit ici, les modifications de programmation ne sont possibles que pour les enregistrements n'ayant pas encore démarrés. Il convient de distinguer les cas où le terminal dispose de suffisamment de place de celui où il n'en dispose pas.
Cas 1 : place disponible et suffisante sur le disque du terminal de l'utilisateur. Le terminal 100 effectue une demande de modification au serveur de gestion des demandes 103 qui l'accepte et prend en compte les modifications au sein de sa base de données 1007.
Cas 2 : le disque du terminal de l'utilisateur est plein. Le serveur de gestion des demandes 103 prend en compte les modifications au sein de sa base de données 1007 et demande au serveur d'enregistrements de prendre en compte les modifications. Dans le mode de réalisation de l'invention présentement décrit, l'utilisateur dispose de la possibilité de rechercher un contenu dont il n'a pas demandé l'enregistrement au préalable. Une telle recherche débute par la transmission d'une commande de recherche du terminal 100 à destination du serveur de données 103 afin de rechercher si le contenu est disponible en priorité sur le serveur d'enregistrement puis ensuite sur les terminaux. Si le contenu est disponible uniquement sur les terminaux, il faut le récupérer sur le serveur d'enregistrement.
Dans ce dernier cas, une fois le contenu récupéré, le serveur de gestion des demandes 103 transmet dans sa réponse au terminal 100 les informations nécessaires à la lecture du contenu, telles que : adresse du serveur de streaming, paramètres du contenu (Identifiant, heure de début, heure de fin )
Afin de pouvoir récupérer un contenu qui est disponible au sein d'un terminal, le serveur de gestion des demandes 103 requiert dans un premier temps l'autorisation de chargement d'un contenu au terminal 100. Une telle autorisation
peut par exemple être refusée si le terminal 100 n'est pas disponible, ou bien encore si l'utilisateur ne souhaite pas rendre ce contenu public. Dans un second temps, quand l'autorisation de téléchargement est fournie au serveur de gestion des demandes, celui-ci le transfert au serveur d'enregistrement qui réalise le téléchargement du contenu.
Lors d'un enregistrement sur le réseau (par exemple lorsque le terminal de l'utilisateur ne dispose plus de suffisamment d'espace sur son disque dur), le serveur de gestion des demandes 103, après avoir pris en compte la demande d'enregistrement en provenance du terminal dans sa base de données 1007 requiert l'enregistrement du programme audiovisuel au serveur d'enregistrement 104. Le serveur d'enregistrement 104 vérifie la place disponible au sein de ses espaces de stockage. Si la place est suffisante, le serveur d'enregistrement 104 notifie l'acceptation de la demande d'enregistrement au serveur de gestion des demandes 103 tout en lui fournissant un identifiant de stockage pour cet enregistrement.
Lorsqu'une demande de suppression émanant d'un utilisateur est transmise au serveur de gestion des demandes 103, celui-ci prend en compte la demande et si l'enregistrement a été stocké sur le réseau, il transmet cette demande de suppression au serveur d'enregistrement 104, qui après avoir fait les vérifications nécessaires supprime l'enregistrement et en notifie le serveur de gestion des demandes 103.
Lorsqu'un enregistrement doit faire l'objet d'un téléchargement d'un terminal d'un premier utilisateur vers le serveur d'enregistrement 104 (par exemple suite à une demande de suppression ou à une recherche effectuée par un deuxième utilisateur), à la réception de l'acceptation du téléchargement de la part du premier utilisateur chez qui l'enregistrement est présent, le serveur d'enregistrement 104 effectue le téléchargement et sauvegarde l'enregistrement dans son espace de stockage. A la fin du chargement du contenu, le serveur d'enregistrements 104 notifie au serveur de gestion des demandes 103 que le contenu est récupéré et lui fournit un identifiant unique.
Dans un mode de réalisation particulier de l'invention, il est possible, conjointement à l'asservissement des terminaux des clients, de créer une distribution complémentaire des enregistrements sur les terminaux. Une telle distribution peut par exemple être mise en œuvre afin d'optimiser l'utilisation des espaces de stockage en distribuant un enregistrement sur plusieurs terminaux.
Ainsi, par exemple, le serveur d'enregistrement peut décider de distribuer l'enregistrement d'un programme audio visuel entre plusieurs terminaux. Dans ce mode de réalisation, par exemple, un terminal peut être chargé d'enregistrer (et de stocker) les vingt premières minutes d'un programme, pendant qu'un autre terminal enregistre les vingt minutes suivantes et ainsi de suite jusqu'à la fin du programme audio visuel. Ainsi, lors du transfert du programme audiovisuel enregistré selon ce mode de réalisation de l'invention vers le serveur d'enregistrement, la bande passante utilisée est réduite. En effet, chaque terminal n'a besoin de transmettre qu'une quantité de donnée limitée, correspondant à un temps réduit. Il n'est donc sollicité que peu de temps tout en ne limitant pas exagérément l'utilisation de la connexion Internet de l'utilisateur.
Dans au un moins un mode de réalisation de l'invention, il est envisagé de segmenter les enregistrements. En effet les programmes audiovisuels sont, entre autres, composés de plusieurs flux numériques. Ces flux numériques peuvent faire l'objet d'une segmentation. Un enregistrement serait alors composé d'un ensemble de segment, chaque segment correspondant à un flux, une heure de début et une heure de fin. En tant que tel, un segment représente donc une portion d'un enregistrement qu'il est possible de stocker indépendamment des autres segments qui composent l'enregistrement. Ainsi, on augmente encore le pourcentage de mutualisation des enregistrements. En effet, dans ce mode de réalisation on tient compte du fait qu'un programme audiovisuel peut être enregistré avec des paramètres différents selon les utilisateurs.
Dans l'état actuel, pour un même programme audiovisuel P, un utilisateur Ul « programmera » un enregistrement débutant à 2OhOO et se terminant à 22h00
alors qu'un autre utilisateur U2 « programmera » un enregistrement débutant à 19h55 et se terminant à 22hO5. Le serveur de gestion des demandes est alors confronté à un problème : soit il prend la décision de ne pas utiliser les paramètres de l'utilisateur U2 (au risque de le mécontenter) et de ne demander qu'un seul et unique stockage de l'enregistrement de l'utilisateur Ul au serveur d'enregistrements. Ce stockage servira alors tant à l'utilisateur Ul qu'à l'utilisateur U2 et aux autres utilisateurs potentiels ; soit il prend la décision d'utiliser tous les paramètres de tous les utilisateurs au risque de dupliquer inutilement des données. Dans ce cas l'utilisateur Ul et l'utilisateur U2 sont satisfaits, mais le programme audiovisuel est stocké deux fois avec des plages temporelles qui se recoupent.
Dans ce mode de réalisation, la segmentation des enregistrements, par exemple par segments de cinq minutes, permet de mutualiser les ressources.
Ainsi, dans notre exemple précédent, l'utilisateur U2 pourra avoir en local, en fonction de la place disponible sur le disque dur de son terminal, les deux segments correspondants aux plages horaires 19h55-20h00 et 22h00-22h05, tandis que le reste des segments sera stocké sur le réseau, par le biais ou non, d'un asservissement des terminaux des utilisateurs.
En d'autres termes, les enregistrements sont fractionnés entre les terminaux des utilisateurs pour répondre à leurs propres souhaits de programmation tout en évitant la duplication inutile d'information. Dans le cas d'un asservissement des terminaux, qui utilise un paramètre d'asservissement N, ce paramètre sert donc à l'asservissement de chaque segment. Il en résulte, pour le serveur de gestion des demandes, une plus grande complexité de gestion des demandes des utilisateurs. Cependant, la satisfaction de ces derniers est plus grande et l'espace de stockage est optimisé.
Dans un mode de réalisation complémentaire de l'invention, on introduit la notion d'ensemble de proximité, qui comme cela a déjà été présenté, permet de
mutualiser les espaces de stockages des terminaux des utilisateurs se trouvant géographiquement proches. Une telle mise en œuvre de l'invention permet d'apporter un confort d'utilisation supplémentaire aux utilisateurs.
Dans ce mode de réalisation particulier, un ensemble de proximité peut par exemple être constitué par un répartiteur (également appelé DSLAM, de l'anglais
« Digital Subscriber Line Access Multiplexor », soit « Multiplexeur de Ligne d'Abonné Numérique » soit encore « Multiplexeur d'accès DSL ») qui peut comprendre un serveur de VOD et tous les clients de l'opérateur ou du fournisseur qui sont connectés à ce DSLAM pour leur accès Internet et/ou de vidéo à la demande.
On constitue ainsi, selon l'invention, une population d'utilisateurs faisant partie d'un ensemble de proximité et dont les distances physiques sont faibles les unes par rapport aux autres. Par voie de conséquence, les débits et la bande passante disponible entre ces utilisateurs sont plus grands. Un ensemble de proximité peut intégrer tout ou partie de l'architecture générale précédemment décrite (serveur de gestion des demandes et serveur d'enregistrements). Dans un tel cas, il est possible de mettre en œuvre une entité centrale de gestion des enregistrements qui supervise les enregistrements gérés au sein de chaque ensemble de proximité afin, par exemple, de dupliquer les enregistrements de certains ensembles de proximité vers d'autres ensembles de proximité.
On présente, en relation avec la figure 2, une architecture simplifiée d'un serveur de gestion des demandes selon l'invention.
Il comprend une mémoire 21, et une unité de traitement 20 équipée d'un microprocesseur, qui est piloté par un programme d'ordinateur (ou application) 22. L'unité de traitement 20 reçoit en entrée, via un module d'interface d'entrée réseau 23 : des demandes en provenance des terminaux des utilisateurs 24a ; des données concernant les enregistrements en provenance des serveurs d'enregistrements 24b ;
Ces informations sont traitées par le microprocesseur, selon les instructions du programme 22, pour : confirmer ou infirmer les demandes des terminaux 26a ; émettre (26b) des commandes à destination du serveur d'enregistrements ; Ces données sont transmises via un module d'interface de sortie réseau 25 à destination des dispositifs qui en ont la charge.
On présente, en relation avec la figure 3, une architecture simplifiée d'un serveur de gestion des demandes selon l'invention.
Il comprend une mémoire 31, et une unité de traitement 30 équipée d'un microprocesseur, qui est piloté par un programme d'ordinateur (ou application) 32. L'unité de traitement 30 reçoit en entrée, via un module d'interface d'entrée réseau 33 : des commandes en provenance du serveur de gestion des demandes 34a ; des données concernant les enregistrements en provenance des terminaux asservis 34b ;
Ces informations sont traitées par le microprocesseur, selon les instructions du programme 32, pour : confirmer ou infirmer les demandes du serveur de gestion des demandes 36a ; - émettre (36b) des commandes à destination des terminaux asservis ;
Ces données sont transmises via un module d'interface de sortie réseau 35 à destination des dispositifs qui en ont la charge.