FR2992511A1 - Lecture synchrone d'un contenu par une pluralite de terminaux - Google Patents

Lecture synchrone d'un contenu par une pluralite de terminaux Download PDF

Info

Publication number
FR2992511A1
FR2992511A1 FR1256080A FR1256080A FR2992511A1 FR 2992511 A1 FR2992511 A1 FR 2992511A1 FR 1256080 A FR1256080 A FR 1256080A FR 1256080 A FR1256080 A FR 1256080A FR 2992511 A1 FR2992511 A1 FR 2992511A1
Authority
FR
France
Prior art keywords
reading
content
data
terminal
time
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.)
Withdrawn
Application number
FR1256080A
Other languages
English (en)
Inventor
Rene Gastinger
Thibaut Feuillet
Daniele Cloatre
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Orange SA
Original Assignee
France Telecom SA
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by France Telecom SA filed Critical France Telecom SA
Priority to FR1256080A priority Critical patent/FR2992511A1/fr
Publication of FR2992511A1 publication Critical patent/FR2992511A1/fr
Withdrawn legal-status Critical Current

Links

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/01Protocols
    • H04L67/06Protocols specially adapted for file transfer, e.g. file transfer protocol [FTP]
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L65/00Network arrangements, protocols or services for supporting real-time applications in data packet communication
    • H04L65/40Support for services or applications
    • H04L65/403Arrangements for multi-party communication, e.g. for conferences
    • H04L65/4046Arrangements for multi-party communication, e.g. for conferences with distributed floor control
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L65/00Network arrangements, protocols or services for supporting real-time applications in data packet communication
    • H04L65/60Network streaming of media packets
    • H04L65/75Media network packet handling
    • H04L65/764Media network packet handling at the destination 
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L65/00Network arrangements, protocols or services for supporting real-time applications in data packet communication
    • H04L65/80Responding to QoS
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/50Network services
    • H04L67/60Scheduling or organising the servicing of application requests, e.g. requests for application data transmissions using the analysis and optimisation of the required network resources
    • H04L67/62Establishing a time schedule for servicing the requests

Landscapes

  • Engineering & Computer Science (AREA)
  • Multimedia (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Information Transfer Between Computers (AREA)

Abstract

Le contenu étant diffusé sous la forme d'un flux de données par un serveur de diffusion (200), - le terminal organisateur (T1) fixe un instant de début de lecture partagée, transmet au serveur (200) une première requête de lecture du contenu et, en réponse à celle-ci, reçoit des premières données du contenu et les enregistre sans les lire tant que l'instant de début de lecture n'est pas atteint ; - le terminal organisateur (T1) transmet au terminal participant un message d'invitation à lire ledit contenu, contenant des données temporelles pour déterminer ledit instant de début de lecture (HO); - sur acceptation de l'invitation, le terminal participant (T2, T3) transmet au serveur (200) une deuxième requête de lecture du contenu et, en réponse à celle-ci, reçoit (E15) les premières données du contenu et les enregistre sans les lire tant que l'instant de début de lecture n'est pas atteint; - à l'instant de début de lecture fixé, le terminal organisateur (T1) et le terminal participant (T2, T3) débutent simultanément la lecture du flux, en utilisant les données de contenu préalablement enregistrées.

Description

LECTURE SYNCHRONE D'UN CONTENU PAR UNE PLURALITE DE TERMINAUX L'invention concerne un procédé de lecture synchrone, ou partagée, d'un contenu par une pluralité de terminaux. Un réseau tel que l'Internet offre aux utilisateurs de multiples services de diffusion de contenus multimédias généralement accessibles auprès de sites Web. On peut notamment citer les services suivants : services de VOD (Video On Demand), permettant de visionner sur un terminal d'utilisateur un contenu vidéo diffusé en mode streaming par un serveur VOD ; services d'écoute de musique à la demande en streaming, par exemple Deezer®, permettant d'écouter en streaming des musiques et/ou des flux radio à l'aide d'un terminal d'utilisateur ; services de diffusion de photos, permettant de visualiser à la demande des diaporamas photos à l'aide d'un terminal d'utilisateur ; services de fourniture de vidéos, par exemple youtube®, permettant de lire en streaming des vidéos. Ces services permettent à des utilisateurs de visionner et/ou d'écouter des contenus ou des flux de données mis à disposition sur des sites Web, n'importe où, à l'aide d'un terminal connecté à l'Internet. Avec le développement des réseaux sociaux, à travers lesquels des utilisateurs peuvent se connecter les uns aux autres, partager des ressources et communiquer entre eux, de façon interactive et en temps réel, il existe un besoin pour permettre à un groupe d'utilisateurs potentiellement séparés physiquement les uns des autres de visionner une vidéo, d'écouter un morceau de musique, de regarder un diaporama photos et plus généralement de jouer un contenu sur leur terminal personnel, ensemble et de façon synchrone.
A cet effet, l'invention concerne un procédé de lecture partagée par un terminal organisateur et au moins un terminal participant d'un contenu diffusé en mode streaming sous la forme d'un flux de données par un serveur de diffusion, dans lequel - le terminal organisateur fixe un instant de début de lecture partagée, transmet au serveur une première requête de lecture du contenu et, en réponse à celle-ci, reçoit des premières données du contenu et les enregistre sans les lire tant que l'instant de début de lecture n'est pas atteint ; - le terminal organisateur transmet au terminal participant un message d'invitation à lire ledit contenu, contenant des données temporelles pour déterminer ledit instant de début de lecture; - sur acceptation de l'invitation, le terminal participant transmet au serveur une deuxième requête de lecture du contenu et, en réponse à celle-ci, reçoit les premières données du contenu et les enregistre sans les lire tant que l'instant de début de lecture n'est pas atteint; - à l'instant de début de lecture fixé, le terminal organisateur et le terminal participant débutent simultanément la lecture du flux, en utilisant les données de contenu préalablement enregistrées.
Selon l'invention, un terminal organisateur invite un ou plusieurs terminaux participants à lire un contenu accessible auprès d'un serveur de diffusion. L'invitation contient des données temporelles permettant de déterminer un instant de début de lecture. Chaque terminal, organisateur ou participant, adresse une requête pour lire le contenu au serveur de diffusion et enregistre les données de contenu reçues jusqu'à l'instant de début de lecture prévu dans une mémoire cache. A partir de l'instant de début de lecture prévu, chaque terminal lit le contenu. La lecture du début du contenu par les différents terminaux démarre ainsi en même temps. Dans un mode de réalisation particulier, les données temporelles pour déterminer un instant de début de lecture contiennent un délai de temporisation et un instant d'envoi du message d'invitation. En variante, les données temporelles pourraient contenir un instant de début de lecture. Ces données temporelles peuvent être ajoutées au message d'invitation par le terminal organisateur ou par une entité du réseau. Afin d'assurer une lecture synchrone du contenu par les différents terminaux, les horloges internes des terminaux sont de préférence réglées automatiquement par le réseau. Dans un mode de réalisation particulier, les données de flux étant associées à des estampilles temporelles correspondant à des instants de lecture, à des instants de test durant la lecture du contenu, chaque terminal vérifie que l'instant de lecture extrait de l'estampille temporelle associée aux données de contenu lies à cet instant de test correspond audit instant de test.
Avantageusement, si l'instant de lecture associé aux données lues est antérieur à l'instant de test, la lecture du contenu est accélérée. Avantageusement encore, si l'instant de lecture associé aux données lues est postérieur à l'instant de test, la lecture du contenu est ralentie. Grâce à cela, on s'assure que la lecture partagée du contenu par les différents terminaux reste synchrone tout au long de la lecture du contenu. L'invention concerne aussi un terminal de lecture d'un contenu diffusé en mode streaming sous la forme d'un flux de données par un serveur de diffusion, comprenant - une mémoire; - des moyens pour fixer un instant de début de lecture partagée ; - des moyens pour transmettre au serveur une première requête de lecture du contenu ; - des moyens pour transmettre à au moins un terminal participant un message d'invitation à lire un contenu, ladite invitation contenant et des données temporelles pour déterminer ledit instant de début de lecture; - des moyens pour, en réponse à ladite première requête, recevoir des données du contenu et les enregistrer dans la mémoire sans les lire tant que l'instant de début de lecture n'est pas atteint ; - des moyens pour débuter la lecture du contenu, en utilisant les données préalablement enregistrées dans la mémoire, à l'instant de début de lecture fixé. L'invention concerne encore un terminal de lecture d'un contenu diffusé en mode streaming sous la forme d'un flux de données par un serveur de diffusion, comprenant - une mémoire; - des moyens pour recevoir un message d'invitation à lire un contenu, contenant des données temporelles pour déterminer un instant de début de lecture fixé; - des moyens pour, sur acceptation de l'invitation reçue, transmettre au serveur une requête pour lire le contenu ; - des moyens pour, en réponse à ladite requête, recevoir des données du contenu et les enregistrer dans la mémoire sans les lire tant que l'instant de début de lecture n'est pas atteint; - des moyens pour débuter la lecture du contenu, en utilisant les données enregistrées dans la mémoire cache, à l'instant de début de lecture fixé. L'invention sera mieux comprise à l'aide de la description suivante d'un mode de réalisation particulier du procédé et du terminal de lecture partagée d'un flux selon l'invention, en référence aux dessins annexés sur lesquels : - la figure 1 représente une vue schématique d'un terminal organisateur, de terminaux participants et d'un serveur de diffusion ; - les figures 2A et 2B représentent des organigrammes des étapes du procédé de lecture partagée d'un flux selon un exemple de réalisation particulier de l'invention ; - la figure 3 représente un schéma bloc fonctionnel du terminal de lecture, selon un exemple de réalisation particulier de l'invention. Sur la figure 1, on a représenté une pluralité de terminaux de lecture, en l'espèce Ti, T2 et T3, un réseau de communication 100 et un serveur de diffusion 200.
Le réseau de communication 100 est ici le réseau de l'Internet. On pourrait envisager tout autre réseau de communication, par exemple un réseau de téléphonie mobile, un réseau de fibres optiques, etc. Les terminaux de lecture sont aptes à lire des contenus multimédia (audio, vidéo, photos/images, texte ou autre). Ils sont notamment adaptés pour lire un contenu diffusé en mode streaming sous la forme d'un flux de données par un serveur de diffusion, par exemple le serveur 200, à travers le réseau de communication 100. Chaque terminal Ti, T2, T3 possède une mémoire cache. Le serveur de diffusion 200 fournit un service de diffusion en mode streaming de contenus vers des terminaux utilisateurs de lecture. En mode streaming, le terminal de lecture lit habituellement le flux de données reçu au fur et à mesure de sa réception. Il peut s'agir d'un contenu audio (musique, radio, etc.), vidéo (film, émission TV, etc), image et/ou photo (diaporama photos), etc. Le service fourni peut être un service de VOD (Video On Demand - vidéo à la demande) ou un service de fourniture de vidéos (par exemple YouTube®), de diaporamas photos, de contenus en « podcast » (émission radio, TV ou autre), ou de tout autre contenu. Le serveur 200 héberge un site Web, noté SW, auquel des terminaux d'utilisateurs peuvent se connecter pour utiliser le service de diffusion fourni. Il peut par exemple s'agir d'un site de VOD, d'un site de fourniture de contenus audio ou vidéo en « podcast », d'un site de fourniture de musiques, etc. En référence aux figures 2A et 2B, on va maintenant décrire, selon un exemple de mise en oeuvre particulier, le procédé de lecture partagée d'un contenu C, transmis par le serveur de diffusion 200 en mode streaming, la lecture étant partagée par un terminal organisateur et ici deux terminaux participants. Bien entendu, le nombre de terminaux participants peut être supérieur à deux ou égal à un. Dans l'exemple particulier décrit ici, le terminal Ti a le rôle d'organisateur et les terminaux T2 et T3 ont les rôles de participants. On notera que sur les figures 2A et 2B, le ou les terminaux indiqués entre crochets pour chaque étape sont ceux qui mettent en oeuvre cette étape. Lors d'une étape préalable EO, sur commande d'un utilisateur, le terminal organisateur Ti lance une application 4 de gestion de lecture partagée de contenu en ligne. Par l'expression « contenu en ligne >>, on entend désigner un contenu disponible sur le réseau ici de l'Internet et pouvant être transmis en mode streaming à un terminal récepteur de lecture. Par mode « streaming >>, on entend désigner un mode de transmission du contenu selon lequel le contenu est transmis sous la forme d'un flux continu de données et chaque terminal récepteur lit le flux de données reçu au fur et à mesure qu'il est reçu. L'application 4 de gestion de lecture partagée commande l'ouverture et l'affichage d'une fenêtre F. Cette fenêtre F est destinée à contenir, dans un premier temps, une interface SiI de détermination d'un ou plusieurs terminaux participants et d'un instant HO de début de lecture et, dans un deuxième temps, une interface IS2 de sélection d'un contenu en ligne. Dans l'exemple particulier décrit ici, la fenêtre F est ouverte par un navigateur Web installé dans le terminal organisateur Ti. Bien entendu, on pourrait envisager que ces interfaces SiI et IS2 soient combinées dans une même interface ou scindées en un nombre plus important d'interfaces.
Dans un premier temps, le terminal Ti affiche l'interface SiI lors d'une étape El. A partir de cette interface Si, le terminal organisateur Ti accède à un carnet de contacts, lors d'une étape E2. Il peut s'agir d'un carnet de contacts stocké localement dans le terminal organisateur Ti ou d'un carnet de contacts distant, par exemple stocké par un serveur réseau et accessible en ligne à travers l'Internet 100. Une configuration de l'application de gestion de lecture partagée pourrait permettre à l'utilisateur de sélectionner au préalable le carnet de contacts à utiliser systématiquement. En variante, le choix du carnet de contacts à utiliser pourrait être fait à chaque opération de sélection d'un ou de plusieurs contacts pour la lecture partagée d'un contenu. Lors d'une étape E3, l'utilisateur du terminal organisateur Ti sélectionne un ou plusieurs contacts avec qui partager la lecture du contenu C. Dans l'exemple particulier décrit ici, les contacts sélectionnés sont deux utilisateurs des terminaux T2 et T3 respectivement. Dans le carnet de contacts, les contacts sélectionnés sont associés à des adresses réseaux des terminaux T2 et T3. Une adresse réseau peut être une adresse email, un numéro de téléphone ou toute autre adresse réseau par laquelle un terminal peut être contacté. Lors d'une étape E4, un utilisateur du terminal Ti saisit dans un champ spécifique de l'interface SiI des données temporelles DATA TEMP permettant de déterminer un instant HO de début de lecture partagée du contenu C. L'instant HO peut être une heure, éventuellement associée à une date. Les données temporelles DATA TEMP comprennent ici un délai de temporisation t à faire courir à compter de l'instant d'envoi d'un message d'invitation décrit plus loin, cet instant d'envoi étant noté H INVIT, ou bien un horaire éventuellement associé à une date.
Ainsi, lors de l'étape E4, le terminal organisateur Ti fixe l'instant HO de début de lecture partagée du contenu C. Après sélection des terminaux participants T2 et T3 et définition d'un instant de début de lecture partagée (E4), la fenêtre F affiche l'interface 1S2 de sélection d'un contenu en ligne à partager lors d'une étape E5. A partir de cette interface 1S2, le terminal organisateur Ti peut naviguer sur des sites Web fournissant des services de diffusion de contenus : vidéos, musiques, podcasts, diaporamas photos, ou tout autre contenu multimédia. Dans l'exemple particulier de réalisation décrit ici, l'interface 1S2 contient des liens à activer d'accès direct à ces sites de diffusion de contenu. On pourrait envisager que ces liens puissent être configurés par un utilisateur et/ou prévus par défaut dans l'interface 1S2 lors de sa conception. Ces liens peuvent être supprimés ou modifiés en fonction de choix de l'utilisateur. A titre d'exemples illustratifs, on peut citer des sites de diffusion de contenus tels que YouTube®, Deezer®, Orange VOD, Picasa®, etc. A partir de l'interface 1S2, sur commande de l'utilisateur, le terminal organisateur Ti sélectionne un site de diffusion de contenus, par exemple le site SW, et, sur sélection de ce site SW, se connecte au site SW du serveur 200 lors d'une étape E6. L'utilisateur peut alors naviguer sur le site SW à l'aide du navigateur du terminal Ti et découvrir les contenus proposés par ce site SW. Sur commande de l'utilisateur, le terminal Ti sélectionne ensuite le contenu C, par exemple une vidéo, lors d'une étape E7. La sélection du contenu C par le terminal organisateur Ti déclenche l'exécution de plusieurs étapes E8, E9 et El 0, décrites ci-après. Lors de l'étape E8, le terminal organisateur Ti transmet des messages d'invitation, notés INVIT, aux terminaux participants des contacts sélectionnés lors de l'étape E3. Les messages d'invitation INVIT sont adressés aux adresses réseau associées aux contacts sélectionnés dans le carnet de contacts. Si un contact est associé à plusieurs adresses réseau, on pourrait, par configuration, envoyer le message d'invitation à une (ou plusieurs) adresse préférée parmi la pluralité d'adresses associées ou systématiquement à toutes les adresses associées. Chaque message d'invitation INVIT contient les éléments suivants : un message à restituer, par exemple par affichage, à l'utilisateur du terminal destinataire, par exemple « X vous invite à regarder maintenant avec lui/elle le film « titre >>. Acceptez-vous l'invitation ? » ; une commande d'acceptation de l'invitation et une commande de refus de l'invitation, à activer par l'utilisateur, par exemple sous la forme de boutons de commande insérés dans le message ; une deuxième requête R2 de lecture du contenu C destinée au serveur de diffusion 200; l'heure d'envoi du message d'invitation notée H INVIT; un délai de temporisation t à faire courir à compter de l'heure d'envoi du message d'invitation INVIT et à l'expiration duquel la lecture du contenu doit débuter. Lors de l'étape E9, le terminal organisateur Ti transmet au serveur 200 une première requête RI de lecture du contenu sélectionné C.
Les étapes E8 et E9 peuvent être réalisées l'une après l'autre, dans un ordre quelconque, ou en parallèle. Enfin, sur sélection du contenu C, le terminal organisateur Ti déclenche une surveillance horaire lors de l'étape El 0, afin de surveiller l'heure et détecter l'instant HO prédéfini de début de lecture du contenu C. Le terminal organisateur Ti, en réponse à ladite première requête R1, reçoit des données du contenu requis sous la forme d'un flux de données transmis en mode streaming par le serveur de diffusion 200. Lors d'une étape El 1, le terminal Ti enregistre les données de contenu reçues au fur et à mesure de leur réception dans sa mémoire cache, sans les lire tant que l'instant de début de lecture HO n'est pas atteint. Sur réception du message d'invitation INVIT de l'étape E8, chaque terminal participant T2 (T3) affiche, ou plus généralement restitue, à l'utilisateur de ce terminal participant T2 (T3) le message INVIT l'invitant à lire le contenu C, lors d'une étape E12. Le délai de temporisation T est généralement de l'ordre de quelques minutes. Sa durée doit être adaptée pour permettre un démarrage simultané de la lecture du contenu par le terminal organisateur Ti et les terminaux participants T2 et T3 peu après la transmission du message d'invitation INVIT. L'instant de début de lecture HO, défini par le terminaux organisateur Ti, est déterminable à partir de l'heure d'envoi H INVIT et du délai de temporisation T. En cas d'acceptation de l'invitation INVIT, le terminal participant T2 (T3) transmet la deuxième requête R2 de lecture du contenu C au serveur de diffusion 200 lors d'une étape E13. La requête R2 est pré-établie et intégrée dans le message d'invitation INVIT reçu de telle sorte que le fait d'accepter l'invitation, par exemple par appui sur un icône s'affichant dans le message d'invitation INVIT, déclenche automatiquement l'envoi de cette requête à destination du serveur de diffusion 200.
En cas de refus de l'invitation, aucune requête n'est émise par le terminal participant T2 (T3) qui ne participe donc pas à la lecture du contenu C. En outre, sur acceptation de l'invitation, le terminal participant T2 (T3) déclenche une surveillance horaire (étape E14) afin de détecter l'instant de début de lecture HO. Suite à l'envoi de la requête R2, le terminal participant T2 (T3) reçoit les données du contenu requis sous la forme d'un flux transmis en mode streaming par le serveur 200, lors d'une étape E15. Lors d'une étape E16, le terminal participant T2 (T3) enregistre les données de contenu reçues dans sa mémoire cache, au fur et à mesure de leur réception, sans les lire tant que l'instant de début de lecture HO n'est pas atteint.
A l'instant HO de début de lecture prévu, le terminal organisateur Ti et les terminaux participants T2, T3 détectent chacun l'expiration du délai de temporisation T décompté à compter l'heure H INVIT d'envoi du message d'invitation INVIT, lors d'une étape El 7. Chaque terminal Ti, T2, T3 détecte ainsi que l'instant courant correspond à l'heure HO de début de lecture, cette heure HO étant déterminée à partir de l'heure H INVIT d'envoi du message d'invitation INVIT et du délai de temporisation T indiqué dans ce message INVIT.
A cet instant HO, chaque terminal Ti, T2 et T3 entame la lecture des données de contenu C préalablement stockées dans leurs mémoires cache respectives. La lecture du contenu C est représentée par une étape E18 sur la figure 2B. Les données de contenu lues par un terminal sont supprimées de la mémoire cache de ce terminal au fur et à mesure qu'elles sont lues.
A partir de l'instant HO, chaque terminal Ti, T2 et T3 lit le contenu (étape E18) tout en continuant de recevoir en mode streaming le flux de données du contenu C, de stocker les nouvelles données de contenu reçues dans leur mémoire cache et de supprimer les données de contenu lues de cette mémoire cache. Les données de contenu C sont associées à des données, ou estampilles, temporelles, correspondant à l'instant t, de lecture de ces données par rapport au début du contenu durant la lecture du contenu à vitesse normale. Par exemple, dans le cas où le contenu est une vidéo, les données de la première image de la vidéo sont associées à une estampille temporelle contenant l'indication « to= Oh, 0 min, 0 sec » et les données de la el' image sont associées à une estampille temporelle contenant l'indication « tn= x h, y min, z sec » selon laquelle les données associées doivent être lues à x heure, y minutes et 7 secondes à compter du début du contenu. Pendant la lecture du contenu, chaque terminal Ti, T2 et T3 vérifie à intervalle de temps régulier, l'intervalle étant noté T, que sa lecture du contenu est synchrone avec celle des autres terminaux, lors d'un test E19. A cet effet, à chaque instant HO+nT, n étant un entier naturel supérieur ou égal à 1 et HO étant l'instant de début de lecture du contenu, chaque terminal Ti, T2 et T3 prélève une estampille temporelle associée aux données effectivement lues à cet instant HO+nT, extrait de cette estampille la valeur t, de l'instant de lecture des données et vérifie si cet instant de lecture t, est égal à la valeur nT. On rappelle ici que Si le test est positif (nT = t,), le terminal considéré Ti (T2 ou T3) poursuit la lecture du contenu en revenant à l'étape E18.
Si le test est négatif (nT t,), lors d'une étape E20, le terminal considéré Ti (T2 ou T3) détermine la valeur Ai du retard ou de l'avance sur la lecture du contenu, selon que l'instant de lecture t, est inférieur à nT ou supérieur à nT, et ralentit ou accélère la lecture du contenu en fonction de la valeur Ai de façon à ce qu'à l'instant de test suivant, c'est-à-dire à l'instant H0+(n+1)T, le retard ou l'avance de lecture soit annulés et que la lecture du contenu C par le terminal considéré Ti (T2 ou T3) soit de nouveau synchrone avec celle des autres terminaux. On peut envisager différentes méthodes pour annuler le retard ou l'avance. Une première méthode consiste à augmenter ou diminuer la vitesse de lecture d'un facteur 6 de façon à ce que le retard ou l'avance soit annulé à l'issue d'une durée d donnée, par exemple à l'issue d'un intervalle T. Dans ce cas, l'annulation du retard ou de l'avance s'effectue de façon lissée et progressive sur la durée d. Prenons à titre d'exemple purement illustratif le cas où une estampille temporelle est prélevée toutes les 10 secondes. Si le test fait apparaître un retard de lecture de 0,5 secondes, la vitesse de lecture sera augmentée de 0,5/10%, soit 0,05% pendant les 10 secondes suivantes. Une deuxième méthode consiste à avancer ou retarder la lecture du contenu de façon quasi-instantanée. Prenons à titre d'exemple illustratif, le cas où une estampille temporelle est prélevée toutes les 10 secondes. Si le test fait apparaître un retard de lecture de 0,5 secondes, la lecture est avancée instantanément de 0,5 secondes. On va maintenant décrire en référence à la figure 3 un schéma bloc fonctionnel d'un terminal, pouvant être organisateur ou participant, apte à mettre en oeuvre le procédé qui vient d'être décrit, selon un exemple particulier de réalisation. On décrit ci-après le terminal Ti, les deux autres terminaux T2 et T3 étant analogues. Dans l'exemple particulier décrit ici, le terminal Ti comprend une interface 1 de connexion au réseau de communication 100, ici l'Internet ; un lecteur vidéo et audio 2 ; un navigateur web 3; un module 4 de gestion de lecture partagée de contenu ; des périphériques d'interface utilisateur tels que : écran 5, clavier 6, haut-parleurs 7, etc. ; une mémoire cache de stockage 8 ; une unité centrale de commande 9, en l'espèce un microprocesseur, à laquelle tous les éléments du terminal sont connectés et destinée à en contrôler le fonctionnement. L'interface de connexion réseau 1 est adaptée pour connecter le terminal Ti à l'Internet. Le lecteur 2 est ici un module logiciel. Il est adapté pour lire des données vidéo et ici également des données audio, selon différents formats.
Le navigateur web 3 est un module logiciel adapté pour consulter des pages web et naviguer sur l'Internet 100. Il peut s'agir d'un navigateur Mozilla FirefoxO, Internet Explorer®, Google Chrome®, Safari®, ou autres. Le module de gestion de lecture partagée 4 est adapté pour commander l'exécution des étapes E1-E20 précédemment décrites. Il s'agit d'un module logiciel, ou application, comprenant des instructions logicielles pour commander l'exécution des étapes E1-E20 lorsque le module logiciel est exécuté par un processeur. La mémoire cache 8 est adaptée pour stocker les données de contenu reçues jusqu'à leur lecture par le lecteur 2, comme explicité dans la description du procédé. La mémoire cache 8 est gérée par le module de gestion 4.
Le terminal peut être un ordinateur, un décodeur TV relié à un écran TV, une tablette informatique, un smartphone ou tout autre équipement analogue.35

Claims (13)

  1. REVENDICATIONS1. Procédé de lecture partagée par un terminal organisateur (Ti) et au moins un terminal participant (T2, T3) d'un contenu (C) diffusé en mode streaming sous la forme d'un flux de données par un serveur de diffusion (200), dans lequel - le terminal organisateur (Ti) fixe un instant de début de lecture partagée (HO), transmet (E9) au serveur (200) une première requête (R1) de lecture du contenu et, en réponse à celle-ci, reçoit des premières données du contenu et les enregistre (El 1) sans les lire tant que l'instant de début de lecture n'est pas atteint ; - le terminal organisateur (Ti) transmet (E8) au terminal participant un message (INVIT) d'invitation à lire ledit contenu, contenant des données temporelles pour déterminer ledit instant de début de lecture (HO); - sur acceptation de l'invitation, le terminal participant (T2, T3) transmet (E13) au serveur (200) une deuxième requête (R2) de lecture du contenu et, en réponse à celle-ci, reçoit (El 5) les premières données du contenu et les enregistre (El 6) sans les lire tant que l'instant de début de lecture n'est pas atteint; - à l'instant de début de lecture fixé (HO), le terminal organisateur (Ti) et le terminal participant (T2, T3) débutent simultanément la lecture du flux, en utilisant les données de contenu préalablement enregistrées.
  2. 2. Procédé selon la revendication 1, dans lequel les données temporelles pour déterminer un instant de début de lecture contiennent un délai de temporisation (t) et un instant (H INVIT) d'envoi du message d'invitation.
  3. 3. Procédé selon la revendication 1, dans lequel, les données de flux étant associées à des estampilles temporelles correspondant à des instants de lecture, à des instants de test durant la lecture du contenu, chaque terminal (Ti, T2, T3) vérifie (El 9) que l'instant de lecture extrait de l'estampille temporelle associée aux données de contenu lues à cet instant de test correspond audit instant de test.
  4. 4. Procédé selon la revendication 3, dans lequel si I l'instant de lecture associé aux données lues est antérieur à l'instant de test, la lecture du contenu est accélérée (E20).
  5. 5. Procédé selon la revendication 3, dans lequel si I l'instant de lecture associé aux données lues est postérieur à l'instant de test, la lecture du contenu est ralentie (E20).
  6. 6. Procédé selon la revendication 1, dans lequel, dans chaque terminal (Ti, T2, T3), les données de flux lues sont supprimées de la mémoire cache dudit terminal et les données de flux reçues sont enregistrées dans la mémoire cache dudit terminal au fur et à mesure qu'elles sont reçues.
  7. 7. Terminal de lecture d'un contenu diffusé en mode streaming sous la forme d'un flux de données par un serveur de diffusion, comprenant - une mémoire; - des moyens pour fixer un instant de début de lecture partagée ; - des moyens pour transmettre au serveur une première requête de lecture du contenu ; - des moyens pour transmettre à au moins un terminal participant un message d'invitation à lire un contenu, ladite invitation contenant et des données temporelles pour déterminer ledit instant de début de lecture; - des moyens pour, en réponse à ladite première requête, recevoir des données du contenu et les enregistrer dans la mémoire sans les lire tant que l'instant de début de lecture n'est pas atteint ; - des moyens pour débuter la lecture du contenu, en utilisant les données préalablement enregistrées dans la mémoire, à l'instant de début de lecture fixé. 15
  8. 8. Terminal de lecture d'un contenu diffusé en mode streaming sous la forme d'un flux de données par un serveur de diffusion, comprenant - une mémoire; - des moyens pour recevoir un message d'invitation à lire un contenu, contenant des données 20 temporelles pour déterminer un instant de début de lecture fixé; - des moyens pour, sur acceptation de l'invitation reçue, transmettre au serveur une requête pour lire le contenu ; - des moyens pour, en réponse à ladite requête, recevoir des données du contenu et les enregistrer dans la mémoire sans les lire tant que l'instant de début de lecture n'est pas atteint; 25 - des moyens pour débuter la lecture du contenu, en utilisant les données enregistrées dans la mémoire cache, à l'instant de début de lecture fixé.
  9. 9. Terminal selon l'une des revendications 7 et 8, dans lequel, les données de flux étant associées 30 à des estampilles temporelles correspondant à des instants de lecture, des moyens sont prévus pour, à des instants de test durant la lecture du contenu, vérifier que l'instant de lecture extrait de l'estampille temporelle associée aux données de contenu lues à cet instant de test correspond audit instant de test. 35
  10. 10. Terminal selon la revendication 9, dans lequel si I l'instant de lecture associé aux données lues est antérieur à l'instant de test, des moyens sont prévus pour accélérer la lecture du contenu.
  11. 11. Terminal selon la revendication 9, dans lequel si I l'instant de lecture associé aux données lues est postérieur à l'instant de test, des moyens sont prévus pour ralentir la lecture du contenu. 40
  12. 12. Programme d'ordinateur comprenant des instructions logicielles pour mettre en oeuvre celles des étapes qui sont mises en oeuvre par le terminal organisateur, lorsque lesdites instructions sont exécutées par un processeur.
  13. 13. Programme d'ordinateur comprenant des instructions logicielles pour mettre en oeuvre celles des étapes qui sont mises en oeuvre par le terminal participant, lorsque lesdites instructions sont exécutées par un processeur. 15
FR1256080A 2012-06-26 2012-06-26 Lecture synchrone d'un contenu par une pluralite de terminaux Withdrawn FR2992511A1 (fr)

Priority Applications (1)

Application Number Priority Date Filing Date Title
FR1256080A FR2992511A1 (fr) 2012-06-26 2012-06-26 Lecture synchrone d'un contenu par une pluralite de terminaux

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
FR1256080A FR2992511A1 (fr) 2012-06-26 2012-06-26 Lecture synchrone d'un contenu par une pluralite de terminaux

Publications (1)

Publication Number Publication Date
FR2992511A1 true FR2992511A1 (fr) 2013-12-27

Family

ID=46754689

Family Applications (1)

Application Number Title Priority Date Filing Date
FR1256080A Withdrawn FR2992511A1 (fr) 2012-06-26 2012-06-26 Lecture synchrone d'un contenu par une pluralite de terminaux

Country Status (1)

Country Link
FR (1) FR2992511A1 (fr)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP3076319A1 (fr) * 2015-03-30 2016-10-05 Orange Procede de restitution d'un contenu partage, procede de partage, produits programme d'ordinateur et dispositifs correspondants

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20090044216A1 (en) * 2007-08-08 2009-02-12 Mcnicoll Marcel Internet-Based System for Interactive Synchronized Shared Viewing of Video Content
US20120042047A1 (en) * 2010-08-13 2012-02-16 Eli Chen System and Method For Synchronized Playback of Streaming Digital Content

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20090044216A1 (en) * 2007-08-08 2009-02-12 Mcnicoll Marcel Internet-Based System for Interactive Synchronized Shared Viewing of Video Content
US20120042047A1 (en) * 2010-08-13 2012-02-16 Eli Chen System and Method For Synchronized Playback of Streaming Digital Content

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP3076319A1 (fr) * 2015-03-30 2016-10-05 Orange Procede de restitution d'un contenu partage, procede de partage, produits programme d'ordinateur et dispositifs correspondants
FR3034605A1 (fr) * 2015-03-30 2016-10-07 Orange Procede de restitution d'un contenu partage, procede de partage, produits programme d'ordinateur et dispositifs correspondants
US10225303B2 (en) 2015-03-30 2019-03-05 Orange Method for rendering a shared content, corresponding method for sharing, computer program products and devices

Similar Documents

Publication Publication Date Title
JP5301425B2 (ja) グループコンテンツプレゼンテーション、およびグループコンテンツプレゼンテーション中のグループ通信を編成するためのシステムおよび方法
RU2620716C2 (ru) Синхронизация воспроизведения мультимедийного контента при групповом просмотре
EP1946484B1 (fr) Reception de contenus audiovisuels a destination de plusieurs appareils
JP6172688B2 (ja) ハイパーテキスト転送プロトコル上での動的適応ストリーミングにおけるコンテンツ特定識別およびタイミング挙動
FR3004054A1 (fr) Generation et restitution d'un flux representatif d'un contenu audiovisuel
FR2849736A1 (fr) Dispositif et procede d'acquisition de fichiers par accumulation de points et produits associes
EP1433322B1 (fr) Procede de transmission d'emissions audiovisuelles proposees par des utilisateurs, terminal et serveur pour la mise en oeuvre du procede
US20140245365A1 (en) Systems and methods for enabling and managing social television
FR3105686A1 (fr) Equipement décodeur à double liaison audio
FR3013548A1 (fr) Procede et systeme de pre-telechargement de video a la demande
EP3430786B1 (fr) Acquisition d'extraits d'un flux multimédia sur un terminal
EP1741294B1 (fr) Procede et dispositif de traitement automatique d'informations spontanees
FR2992511A1 (fr) Lecture synchrone d'un contenu par une pluralite de terminaux
FR2980662A1 (fr) Methode d'enregistrement d'un contenu dans un fichier sur un serveur et dispositif correspondant
EP1793605A1 (fr) Procédé de fourniture sur demande de menus interactifs à des terminaux couplés à un réseau de communication
FR3005386A1 (fr) Procede et dispositif de fourniture d’une partie deja diffusee d’un flux multimedia, terminal utilisateur, programme d’ordinateur et medium de stockage correspondants
JP2014011597A (ja) 再生装置及び再生方法
CA3203470A1 (fr) Systemes et procedes pour stocker des elements de contenu sur la base d'un historique de consommation
EP4203480A1 (fr) Procédé de gestion de sauts temporels lors de la lecture d'un contenu multimédia
EP3939330A1 (fr) Procédé de gestion du téléchargement d'images associées à des sauts d'images susceptibles d'être realisés lors d'une lecture accelerée d'un contenu multimedia diffusé en continu
EP2854415B1 (fr) Procédé de transmission dynamique de données d'information relatives à un programme audio et/ou vidéo
EP4184922A1 (fr) Procédé de gestion de l' accès à un contenu multimédia
FR2988965A1 (fr) Partage de contenu lors d'une session de communication
JP2013090017A (ja) 再生装置
WO2008025924A1 (fr) Systeme de synchronisation d'informations avec un flux

Legal Events

Date Code Title Description
ST Notification of lapse

Effective date: 20140228