Procédé et serveur pour détecter un programme vidéo reçu par un usager
L'invention concerne un procédé et un serveur pour identifier une séquence vidéo d'un programme vidéo dans un flux de programmes vidéo reçu par un usager, ce flux étant acheminé par un réseau hertzien de télévision, ou par un réseau câblé de télévision, ou par un réseau de téléphonie mobile, ou par Internet, etc, en mode diffusion ou en mode point à point. Si le mode diffusion est utilisé (voie hertzienne par exemple), des services additionnels propres à un usager donné peuvent être fournis via une autre voie, Internet par exemple. Si le mode point à point est utilisé, des services additionnels propres à un usager donné peuvent être fournis via la même voie, Internet par exemple. Par exemple, la société Activevideo (http: //www.activevideo.com) propose des flux vidés acheminés par Internet et qui combinent chacun un programme de télévision classique et des services web interactifs. Chaque flux est un flux MPEG unique construit par un serveur connecté à Internet, et envoyé à un usager unique.
Si on parvient à identifier la séquence vidéo en cours de réception par un usager, il est possible de proposer à l'usager des services additionnels qui correspondent exactement à la séquence identifiée : offres commerciales, distractions, informations, publicité, etc.
Cette identification est difficile. Pour cette identification, on peut utiliser deux outils qui ont été conçus pour permettre à un usager de choisir un programme vidéo :
Un horaire (publié notamment dans la presse) décrit à l'avance le contenu des programmes de chaque bouquet de programmes vidéo.
Un guide électronique est associé à chaque bouquet pour décrire le programme en cours sur chaque flux vidéo de ce bouquet, à l'instant où on consulte ce guide.
Cependant ces informations ne sont pas suffisamment précises pour identifier de manière certaine un programme, et a fortiori pour identifier une séquence vidéo dans un programme, parce que ces outils ne décrivent pas finement les programmes, séquence par séquence. En outre, de nombreux programmes sont retardés par rapport à l'horaire prévu, voire sont remplacés au dernier moment. Il est donc nécessaire de trouver un procédé plus précis pour identifier une séquence vidéo.
II est envisageable d'identifier une séquence vidéo en identifiant la séquence audio qu'elle contient. Des procédés d'identification d'une séquence audio sont connus.
Le document WO 2008/042953 décrit un procédé pour identifier une séquence audio, par exemple une chanson reçue par un téléphone portable. Ce procédé connu consiste à enregistrer cette séquence audio puis à l'envoyer à un serveur stockant des
signatures de référence représentant respectivement de nombreuses séquences audio. Chaque signature de référence a été préalablement calculée à partir d'une séquence audio connue, pendant un intervalle de temps ayant une durée de quelques secondes à quelques minutes. Chaque signature est constituée, par exemple, par des mesures d'énergie respectivement dans une pluralité de segments du spectre des fréquences. Le procédé d'identification connu consiste à calculer une suite de signatures à partir de la séquence audio reçue, et corréler chaque signature calculée avec chaque signature de référence en stock. Quand une signature calculée correspond à une signature de référence en stock, le serveur envoie à l'usager l'identité associée à cette signature de référence (Un titre de chanson) et un extrait de la séquence audio correspondante (La chanson), qui a été préalablement stockée avec la signature de référence, pour demander à l'usager de confirmer l'identification. Ensuite, le serveur propose à l'usager un service (Acheter la chanson ainsi identifiée).
L'inconvénient des procédés connus est la lenteur de l'identification, due au grand nombre de signatures de référence à corréler avec chaque signature calculée à partir d'une séquence audio reçue.
Le but de l'invention est de remédier à cette lenteur, tout en permettant de modifier facilement le choix des séquences audio à identifier, afin de les adapter rapidement à de nouveaux services à proposer aux usagers.
L'objet de l'invention est un procédé pour identifier un programme vidéo reçu par un usager, en identifiant une séquence audio contenue dans ce programme vidéo, comportant les étapes consistant à :
- recevoir une pluralité de séquences audio de référence, et recevoir, pour chacune de ces séquences, une signature et un identifiant de signature audio de référence,
- présélectionner une suite d'identifiants de signature audio de référence, en prenant en compte des informations décrivant le programme vidéo reçu par l'usager, et qui sont fournies par un guide de programmes qui est diffusé en parallèle avec le programme vidéo à identifier
- puis corréler les signatures correspondant respectivement à ces identifiants présélectionnés, avec une signature représentant une séquence audio à reconnaître contenue dans le programme vidéo reçu par l'utilisateur, et sélectionner parmi les identifiants présélectionnés celui qui présente la plus forte corrélation, pour identifier une séquence audio, et ainsi identifier le programme vidéo reçu par l'usager ;
caractérisé en ce que, pour présélectionner une suite d'identifiants de signatures de séquence audio, il consiste en outre à :
- recevoir un message de commande indiquant que l'usager souhaite bénéficier de services additionnels, ce message contenant des donnée identifiant l'usager, identifiant le canal que l'usager est en train de recevoir, ainsi que la date et l'heure de la commande ;
- et prendre en compte en outre ces données pour présélectionner une suite d'identifiants de signatures de séquence audio. Dans des modes de mise en œuvre préférés, le procédé selon l'invention consiste en outre à :
- recevoir une description sémantique de la séquence audio de référence correspondant à l'identifiant de la séquence audio reconnue,
- recevoir des descriptions correspondant respectivement à des services additionnels pouvant être proposés à l'usager,
- puis comparer cette description sémantique à des descriptions correspondant respectivement à des services additionnels pouvant être proposés à l'usager, et sélectionner ainsi au moins un service additionnel à proposer l'usager considéré ;
- et enfin activer ce service additionnel pour l'usager considéré.
Dans des modes de mise en œuvre préférés, le procédé selon l'invention consiste en outre à n'activer le service sélectionné que dans le cas où l'usager a émis un message indiquant qu'il souhaite bénéficier de services additionnels. L'invention sera mieux comprise et d'autres caractéristiques apparaîtront à l'aide de la description ci-dessous et de la figure unique l'accompagnant : Cette figure unique représente fonctionnellement un exemple de serveur d'applications AS classique exécutant des moyens logiciels adaptés pour la mise en œuvre du procédé selon l'invention.
Un utilisateur EU, considéré à titre d'exemple, possède un téléviseur relié à l'Internet (non représenté) par une passerelle G. Cette passerelle G comporte des moyens logiciels lui permettent de communiquer, via Internet, avec le serveur AS et avec un fournisseur d'accès Internet pour recevoir un bouquet de programmes vidéo, et pour bénéficier de services web additionnels en relation avec le programme vidéo qu'elle est en train de recevoir. L'usager EU dispose d'une télécommande pour envoyer
des commandes à cette passerelle, afin de changer de canal de réception, ou pour demander à bénéficier de services additionnels.
Cette passerelle G comporte des moyens logiciels qui lui permettent de recevoir ces commandes et les transférer :
- vers le fournisseur d'accès Internet, qui envoie un programme vidéo et d'éventuels services additionnels sur le canal choisi par l'usager considéré,
et vers le serveur AS qui exploite les informations contenues dans ces commandes afin de détecter une commande qui est une demande pour bénéficier de services additionnels, et pour faciliter l'identification de la séquence audio en cours de réception.
Le serveur AS est relié en outre à une station de réception satellitaire R qui reçoit tous les programmes du bouquet que peut recevoir un usager tel que l'usager UE. Ce server AS comporte :
- Un module logiciel 1 constituant une interface permettant à un producteur de télévision TVP de fournir au serveur AS des informations décrivant des programmes vidéo à identifier (séquences audio de référence, ordre des séquences audio dans le programme vidéo, identifiants respectifs des séquences audio de référence, et descriptions sémantiques respectives des séquences audio de référence). La description sémantique d'une séquence audio de référence permettra au serveur AS de déterminer des services à proposer à un usager lorsqu'une séquence audio identique sera identifiée dans un programme vidéo reçu par cet usager. Le module 1 détermine une signature pour chaque séquence audio de référence, et l'associe à un identifiant de séquence audio de référence.
- Un module logiciel 2 constituant une interface permettant à un fournisseur de services SP de fournir au serveur AS des informations décrivant des services additionnels susceptibles d'être proposés lors de l'identification de séquences audio de référence, dans le programme vidéo reçu par un usager.
- Un module logiciel 3 pour écrire et lire dans une mémoire un guide de programmes (Titres, canaux utilisés, horaires). Ce guide est diffusé en parallèle avec chacun des programmes vidéo du bouquet.
- Un module logiciel 4 pour écrire et lire dans une mémoire une partie des informations (ordre des séquences audio, et identifiants respectifs des séquences audio de référence) décrivant les programmes vidéo à identifier.
- Un module logiciel 5 pour écrire et lire dans une mémoire les signatures représentant les séquences audio de référence.
- Un module logiciel 6 pour écrire et lire dans une mémoire les descriptions sémantiques des séquences audio.
- Un module logiciel 7 pour écrire et lire dans une mémoire les descriptions des services additionnels.
- Un module logiciel 8 pour présélectionner une suite d'identifiants de signatures de séquence audio de référence, parmi les identifiants correspondant respectivement aux signatures stockées par le module 4, notamment en fonction d'informations décrivant le programme reçu par l'usager et qui sont fournies par un guide de programmes qui est diffusé en parallèle avec le programmes vidéo à identifier, ce guide des programmes (Titres, canaux utilisés, horaires) étant fourni par le module 3.
- Un module logiciel 9 pour :
-- recevoir une signature représentant une séquence audio extraite du programme vidéo qu'un usager, par exemple EU, est en train de recevoir, -- recevoir la suite d'identifiants de signatures de séquence audio de référence présélectionnés par le module 8,
-- aller lire les signatures correspondant respectivement à ces identifiants présélectionnés, via le module 5,
-- puis corréler les signatures de référence ainsi lues avec la signature représentant la séquence audio extraite du programme vidéo que l'usager EU est en train de recevoir,
-- et sélectionner parmi les identifiants présélectionnés celui qui présente la plus forte corrélation, pour identifier une séquence audio reçue, et ainsi identifier le programme vidéo en cours de réception par l' usager EU.
- Un module logiciel 10 pour :
-- lire, via le module 6, la description sémantique d'une séquence audio de référence correspondant à l'identifiant de la séquence audio reçue, -- puis lire, via le module 7, les descriptions des services additionnels et les comparer avec la description sémantique de la séquence audio reçue, et identifier ainsi un ou plusieurs services additionnels qui correspondent à cette description sémantique.
-- et enfin proposer ce(s) service(s) additionnel(s) à l'usager considéré EU.
- Un module logiciel 1 1 pour :
-- recevoir, en provenance de la passerelle G via l'Internet, tous les messages de commande émis par un usager, tel que l'usager EU, soit à destination du serveur AS, soit à destination du fournisseur d'accès Internet.
-- mémoriser ces données puis les retransmettre au module 8 qui les prend en compte pour présélectionner une suite d'identifiants de signatures de séquence audio.
- Un module logiciel 12 relié à la station R pour pouvoir recevoir tous les programmes que peut recevoir un usager, notamment l'usager UE, et relié au module 11 pour recevoir l'identifiant du canal que l'usager considéré EU est en train de recevoir ; ce module 12 comportant des moyens logiciels pour :
-- sélectionner le programme qui est reçu par l'usager considéré EU, à l'instant où cet usager EU envoie une commande au serveur AS pour demander à bénéficier des services additionnels,
-- calculer une suite de signatures représentant successivement des séquences audio contenues dans le programme qui est reçu par l'usager EU,
-- et fournir cette suite de signatures au module 9.
Par exemple, pour une séquence audio accompagnant une publicité donnée, le producteur de télévision TVP indique le « type de produit » et la « marque >> qui sont l'objet de cette publicité. Cette description sémantique est stockée par le module 6. Au moment où cette séquence audio est identifiée par le module 9, cette description sémantique permet au module 10 de déterminer une liste de services à proposer à l'usager, en cherchant via le module 7 les descriptions respectives de services additionnels qui correspondent à cette description sémantique : par exemple une page web ou un numéro de téléphone permettant d'obtenir des informations supplémentaires sur ce type de produit et cette marque.
Le producteur de télévision TVP n'associe pas directement les séquences audio avec des services bien identifiés. Cela permet de gérer indépendamment les services et les séquences audio. Par exemple, au moment de la première diffusion d'une séquence audio associée à une série TV, on pourra proposer la vente du DVD correspondant, et par la suite on pourra proposer d'autres services
tels que la vente de figurines, la vente de vêtements identiques à ceux portés par les acteurs, etc..
Selon un premier mode de réalisation, l'usager ne peut émettre qu'une commande de sélection de canal, destinée au fournisseur d'accès Internet et contenant un identifiant de canal pour changer de canal. Le module logiciel 10 active un service additionnel pour l'usager considéré EU, dés qu'une séquence audio prédéterminée a été détectée, sans que l'usager ait demandé à bénéficier de service supplémentaire. Selon un second mode de réalisation, l'usager peut émettre deux types de commande :
une commande de sélection de canal, destinée au fournisseur d'accès Internet et contenant un identifiant de canal pour changer de canal ; ou une commande de demande de services additionnels, contenant des données identifiant l'usager, identifiant le canal que l'usager est en train de recevoir, ainsi que la date et l'heure de la commande.
Selon le premier mode de réalisation, le module logiciel 8 pour présélectionner une suite d'identifiants de signatures de séquence audio de référence prend en compte seulement les informations fournies par le guide des programmes (Titres, canaux utilisés, horaires), via le module 3, pour le canal sélectionné par la dernière commande de sélection de canal. D'autre part, le module 10 active un service additionnel pour l'usager considéré EU sans intervention du module 11. Selon le second mode de réalisation, le module logiciel 8 prend en compte en outre les données contenues dans chaque commande de demande de services additionnels. Il connaît ainsi la date et l'heure où l'usager exprime un souhait de bénéficier de services additionnels. Cette date et cette heure correspondent à un certain contenu du programme reçu, qui a suscité l'intérêt de l'usager pour au moins un service additionnel éventuellement associé à ce contenu. Ceci permet de déterminer plus précisément quel service additionnel intéresserait l'usager. Le service proposé sera probablement mieux adapté et sera donc plus apprécié par l'usager. D'autre part, le module 10 est relié au module 11 de telle façon que le module 10 active un service additionnel seulement lorsqu'il reçoit un signal de commande fourni par le module 11 ,
c'est à dire lorsque le module 1 1 reçoit une commande de demande de services additionnels, émise par l'usager EU.
Dans les deux modes de réalisation, grâce au fait qu'il prend en compte au moins les informations du guide, fournies par le module 3, le module logiciel 8 fait une présélection des séquences audio les plus vraisemblables. Les identifiants présélectionnés sont beaucoup moins nombreux que les identifiants correspondant à l'ensemble des signatures stockées par le module 4. Le nombre de calculs de corrélation à faire pour chaque séquence audio à identifier est donc fortement réduit. Par conséquent, l'identification d'un programme vidéo est beaucoup plus rapide que par les procédés connus.