[go: up one dir, main page]
More Web Proxy on the site http://driver.im/

FR3093603A1 - A method of accelerated browsing of digital content obtained by adaptive progressive download (HAS), manager, media player and corresponding computer program. - Google Patents

A method of accelerated browsing of digital content obtained by adaptive progressive download (HAS), manager, media player and corresponding computer program. Download PDF

Info

Publication number
FR3093603A1
FR3093603A1 FR1902218A FR1902218A FR3093603A1 FR 3093603 A1 FR3093603 A1 FR 3093603A1 FR 1902218 A FR1902218 A FR 1902218A FR 1902218 A FR1902218 A FR 1902218A FR 3093603 A1 FR3093603 A1 FR 3093603A1
Authority
FR
France
Prior art keywords
content
thumbnail
browsing
accelerated
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
FR1902218A
Other languages
French (fr)
Inventor
Hervé MARCHAND
Mathieu Rivoalen
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
Orange 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 Orange SA filed Critical Orange SA
Priority to FR1902218A priority Critical patent/FR3093603A1/en
Publication of FR3093603A1 publication Critical patent/FR3093603A1/en
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/02Protocols based on web technology, e.g. hypertext transfer protocol [HTTP]
    • 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/61Network streaming of media packets for supporting one-way streaming services, e.g. Internet radio
    • H04L65/613Network streaming of media packets for supporting one-way streaming services, e.g. Internet radio for the control of the source by 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/60Network streaming of media packets
    • H04L65/65Network streaming protocols, e.g. real-time transport protocol [RTP] or real-time control protocol [RTCP]
    • 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
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/20Servers specifically adapted for the distribution of content, e.g. VOD servers; Operations thereof
    • H04N21/23Processing of content or additional data; Elementary server operations; Server middleware
    • H04N21/234Processing of video elementary streams, e.g. splicing of video streams or manipulating encoded video stream scene graphs
    • H04N21/2343Processing of video elementary streams, e.g. splicing of video streams or manipulating encoded video stream scene graphs involving reformatting operations of video signals for distribution or compliance with end-user requests or end-user device requirements
    • H04N21/23439Processing of video elementary streams, e.g. splicing of video streams or manipulating encoded video stream scene graphs involving reformatting operations of video signals for distribution or compliance with end-user requests or end-user device requirements for generating different versions
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/20Servers specifically adapted for the distribution of content, e.g. VOD servers; Operations thereof
    • H04N21/25Management operations performed by the server for facilitating the content distribution or administrating data related to end-users or client devices, e.g. end-user or client device authentication, learning user preferences for recommending movies
    • H04N21/262Content or additional data distribution scheduling, e.g. sending additional data at off-peak times, updating software modules, calculating the carousel transmission frequency, delaying a video stream transmission, generating play-lists
    • H04N21/26258Content or additional data distribution scheduling, e.g. sending additional data at off-peak times, updating software modules, calculating the carousel transmission frequency, delaying a video stream transmission, generating play-lists for generating a list of items to be played back in a given order, e.g. playlist, or scheduling item distribution according to such list
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/40Client devices specifically adapted for the reception of or interaction with content, e.g. set-top-box [STB]; Operations thereof
    • H04N21/43Processing of content or additional data, e.g. demultiplexing additional data from a digital video stream; Elementary client operations, e.g. monitoring of home network or synchronising decoder's clock; Client middleware
    • H04N21/442Monitoring of processes or resources, e.g. detecting the failure of a recording device, monitoring the downstream bandwidth, the number of times a movie has been viewed, the storage space available from the internal hard disk
    • H04N21/44209Monitoring of downstream path of the transmission network originating from a server, e.g. bandwidth variations of a wireless network
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/60Network structure or processes for video distribution between server and client or between remote clients; Control signalling between clients, server and network components; Transmission of management data between server and client, e.g. sending from server to client commands for recording incoming content stream; Communication details between server and client 
    • H04N21/65Transmission of management data between client and server
    • H04N21/658Transmission by the client directed to the server
    • H04N21/6587Control parameters, e.g. trick play commands, viewpoint selection
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/80Generation or processing of content or additional data by content creator independently of the distribution process; Content per se
    • H04N21/83Generation or processing of protective or descriptive data associated with content; Content structuring
    • H04N21/845Structuring of content, e.g. decomposing content into time segments
    • H04N21/8456Structuring of content, e.g. decomposing content into time segments by decomposing the content in the time domain, e.g. in time segments

Landscapes

  • Engineering & Computer Science (AREA)
  • Multimedia (AREA)
  • Signal Processing (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Databases & Information Systems (AREA)
  • Two-Way Televisions, Distribution Of Moving Picture Or The Like (AREA)

Abstract

L’invention répond à ce besoin en proposant un procédé de navigation accélérée dans un contenu numérique, obtenu par téléchargement progressif adaptatif par un terminal de restitution via un réseau de communication. Ce procédé de navigation comprend :- une obtention d’un fichier de description du contenu numérique, comprenant une liste de segments temporels du contenu associés chacun à plusieurs débits d’encodage du contenu, - une restitution, à intervalles de temps de durée T, d’une imagette représentative du contenu à une position de navigation courante dans le contenu, l’imagette étant extraite d’un des segments temporels, la position de navigation courante dépendant d’une vitesse de navigation dans le contenu. Selon l’invention, un tel procédé comprend une étape de détermination d’un débit d’encodage du segment temporel dont est extraite l’imagette représentative du contenu à la position de navigation courante, en fonction d’une contrainte de ressource obtenue par le terminal, et une étape de téléchargement du segment temporel dont est extraite l’imagette représentative du contenu à la position de navigation courante, audit débit d’encodage déterminé. FIGURE 3BThe invention meets this need by proposing a method for accelerated browsing in digital content, obtained by adaptive progressive downloading by a rendering terminal via a communication network. This navigation method comprises: - obtaining a description file of the digital content, comprising a list of time segments of the content each associated with several encoding rates of the content, - a restitution, at time intervals of duration T, of a thumbnail representing the content at a current browsing position in the content, the thumbnail being extracted from one of the time segments, the current browsing position depending on a browsing speed in the content. According to the invention, such a method comprises a step of determining an encoding rate of the time segment from which the thumbnail representative of the content at the current navigation position is extracted, as a function of a resource constraint obtained by the terminal, and a step of downloading the time segment from which the thumbnail representative of the content at the current browsing position is extracted, at said determined encoding rate. FIGURE 3B

Description

Procédé de navigation accélérée dans un contenu numérique obtenu par téléchargement progressif adaptatif (HAS), gestionnaire, lecteur de flux multimédia et programme d’ordinateur correspondants.Method for accelerated navigation in digital content obtained by adaptive progressive downloading (HAS), corresponding manager, multimedia stream player and computer program.

Le domaine de l'invention est celui des contenus multimédia numériques, à savoir les contenus audio et/ou vidéo numériques. Plus précisément, l'invention concerne l’optimisation d’une navigation accélérée dans un contenu multimédia numérique au sein d’un terminal de restitution, dans le cadre de l’acheminement de ce contenu multimédia numérique selon une technique dite de téléchargement progressif adaptatif au sein d’un réseau de communication local, tel qu’un réseau domestique.The field of the invention is that of digital multimedia content, namely digital audio and/or video content. More specifically, the invention relates to the optimization of accelerated navigation in a digital multimedia content within a rendering terminal, within the framework of the routing of this digital multimedia content according to a technique known as progressive downloading adaptive to the within a local communication network, such as a home network.

Avec la généralisation de la communication sans fil à haut débit et la multiplication des équipements personnels de type téléphone intelligent (en anglais « Smartphone ») ou tablette, la consommation de contenus multimédia numériques, notamment vidéo et/ou audio, a fortement augmenté. En effet, l’accès à un contenu numérique depuis un réseau de type Internet est possible aujourd’hui, pour la plupart de ces équipements personnels, notamment lorsqu’ils appartiennent à un réseau de communication local, tel qu’un réseau domestique.With the generalization of high-speed wireless communication and the proliferation of personal equipment of the smart phone or tablet type, the consumption of digital multimedia content, in particular video and/or audio, has increased sharply. Indeed, access to digital content from an Internet type network is possible today, for most of these personal devices, in particular when they belong to a local communication network, such as a home network.

La diffusion de contenus numériques sur Internet est souvent basée sur des protocoles client-serveur de la famille HTTP (de l’anglais « Hyper Text Transfer Protocol »). En particulier, le téléchargement en mode progressif, dit téléchargement adaptatif progressif (en anglais « http Adaptive Streaming » ou HAS), des contenus numériques, aussi appelé streaming, permet de transporter et consommer les données en temps réel, c'est-à-dire que les données numériques sont transmises sur le réseau et restituées par le terminal au fur et à mesure de leur arrivée. Le terminal client, i.e l’équipement personnel, reçoit et stocke une partie des données numériques dans une mémoire tampon avant de les restituer. Ce mode de distribution est particulièrement utile quand le débit dont dispose l’utilisateur n’est pas garanti pour le transfert en temps réel de la vidéo.The distribution of digital content on the Internet is often based on client-server protocols of the HTTP (Hyper Text Transfer Protocol) family. In particular, downloading in progressive mode, called progressive adaptive downloading (in English "http Adaptive Streaming" or HAS), of digital content, also called streaming, makes it possible to transport and consume data in real time, i.e. say that digital data is transmitted over the network and returned by the terminal as it arrives. The client terminal, i.e. the personal equipment, receives and stores part of the digital data in a buffer memory before restoring it. This distribution mode is particularly useful when the bit rate available to the user is not guaranteed for the real-time transfer of the video.

Le téléchargement progressif adaptatif (HAS) permet de surcroît de diffuser et recevoir des données suivant différentes qualités correspondant par exemple à différents débits d’encodage. Ces différentes qualités sont décrites dans un fichier de paramètres disponible en téléchargement sur un serveur de données, par exemple un serveur de contenus. Quand le terminal client souhaite accéder à un contenu, ce fichier de description permet de sélectionner le bon format pour le contenu à consommer en fonction de la bande passante disponible ou des capacités de stockage et de décodage du terminal client. Ce type de technique permet notamment de tenir compte des variations de bande passante sur la liaison entre le terminal client et le serveur de contenus.Adaptive progressive downloading (HAS) also makes it possible to broadcast and receive data in different qualities corresponding, for example, to different encoding bit rates. These different qualities are described in a parameter file available for download on a data server, for example a content server. When the client terminal wishes to access a content, this description file makes it possible to select the correct format for the content to be consumed according to the available bandwidth or the storage and decoding capacities of the client terminal. This type of technique makes it possible in particular to take into account variations in bandwidth on the link between the client terminal and the content server.

Il existe plusieurs solutions techniques pour faciliter la distribution d’un tel contenu en streaming, comme par exemple les solutions propriétaires Microsoft® Smooth Streaming, Apple® HLS, Adobe® HTTP Dynamic Streaming ou encore la norme MPEG-DASH de l’organisme ISO/IEC qui sera décrite ci-après. Ces méthodes proposent d’adresser au client un ou plusieurs fichiers de description intermédiaires, appelés aussi documents ou manifestes, contenant les adresses des différents segments à différentes qualités d’encodage du contenu multimédia.There are several technical solutions to facilitate the distribution of such streaming content, such as the proprietary solutions Microsoft® Smooth Streaming, Apple® HLS, Adobe® HTTP Dynamic Streaming or the MPEG-DASH standard of the ISO/ IEC which will be described below. These methods propose to send the client one or more intermediate description files, also called documents or manifests, containing the addresses of the different segments at different encoding qualities of the multimedia content.

Ainsi, la norme MPEG-DASH (pour l’anglais “Dynamic Adaptive Streaming over HTTP”, en français « diffusion en flux adaptatif dynamique sur HTTP ») est un standard de format de diffusion audiovisuelle sur Internet. Il se base sur la préparation du contenu en différentes présentations de qualité et débit variables, découpées en segments de courte durée (de l’ordre de quelques secondes), également appelés « chunks », ou segments. Chacun de ces segments est rendu disponible individuellement au moyen d'un protocole d'échange. Le protocole principalement ciblé est le protocole HTTP, mais d'autres protocoles (par exemple FTP) peuvent également être utilisés. L'organisation des segments et les paramètres associés sont publiés dans un manifeste au format XML.Thus, the MPEG-DASH standard (for English “Dynamic Adaptive Streaming over HTTP”, in French “Dynamic adaptive streaming over HTTP”) is an audiovisual format standard for broadcasting on the Internet. It is based on the preparation of the content in different presentations of variable quality and speed, cut into short segments (of the order of a few seconds), also called “chunks”, or segments. Each of these segments is made available individually by means of an exchange protocol. The protocol mainly targeted is the HTTP protocol, but other protocols (eg FTP) can also be used. Segment organization and associated settings are published in a manifest in XML format.

Le principe sous-jacent à cette norme est que le client MPEG-DASH effectue une estimation de la bande passante disponible pour la réception des segments, et, en fonction du remplissage de sa mémoire tampon de réception, choisit, pour le prochain segment à charger, une représentation dont le débit :
- assure la meilleure qualité possible, et,
- permet un délai de réception compatible avec le rendu ininterrompu du contenu.
The principle underlying this standard is that the MPEG-DASH client makes an estimate of the bandwidth available for the reception of segments, and, depending on the filling of its reception buffer, chooses, for the next segment to load , a representation whose bit rate:
- ensures the best possible quality, and,
- allows a reception delay compatible with the uninterrupted rendering of the content.

Ainsi, pour s’adapter à la variation des conditions réseau, notamment en termes de bande passante, les solutions existantes de téléchargement adaptatif permettent au terminal client de passer d’une version du contenu encodée à un certain débit, à une autre encodée à un autre débit, au cours du téléchargement. En effet, chaque version du contenu est divisée en segments de même durée. Pour permettre une restitution en continu du contenu sur le terminal client, chaque segment doit atteindre le terminal avant son instant programmé de restitution. La qualité perçue associée à un segment augmente avec la taille du segment, exprimée en bits, mais dans le même temps, des segments plus gros requièrent un temps de transmission plus important, et donc présentent un risque accru de ne pas être reçus à temps pour une restitution en continu du contenu.Thus, to adapt to varying network conditions, particularly in terms of bandwidth, existing adaptive download solutions allow the client terminal to switch from one version of the content encoded at a certain bit rate, to another encoded at a other speed, during the download. Indeed, each version of the content is divided into segments of the same duration. To allow continuous playback of the content on the client terminal, each segment must reach the terminal before its scheduled playback time. The perceived quality associated with a segment increases with the size of the segment, expressed in bits, but at the same time, larger segments require more transmission time, and therefore present an increased risk of not being received in time for continuous playback of content.

Le terminal de restitution doit donc trouver un compromis entre la qualité globale du contenu, et sa restitution ininterrompue, en sélectionnant avec soin le prochain segment à télécharger, parmi les différents débits d’encodage proposés. Il existe pour ce faire différents algorithmes de sélection de la qualité du contenu en fonction de la bande passante disponible, qui peuvent présenter des stratégies plus ou moins agressives, ou plus ou moins sécuritaires.The rendering terminal must therefore find a compromise between the overall quality of the content, and its uninterrupted rendering, by carefully selecting the next segment to be downloaded, from among the various encoding rates offered. To do this, there are different algorithms for selecting the quality of the content according to the available bandwidth, which can present more or less aggressive strategies, or more or less secure.

De nombreux services de visualisation de ces contenus numériques existent tels que des services de streaming (en français, diffusion en mode continu, ou lecture en continu), la vidéo à la demande (VOD), la diffusion en différé de programmes télévisuels (Replay), ou encore les offres de type Network PVR (pour « Network Personal Video Recorder », i.e. un service d’enregistrement des contenus numériques, effectué par le fournisseur de contenus lui-même plutôt qu’au domicile de l’utilisateur final).There are many services for viewing this digital content, such as streaming services (in French, streaming, or streaming), video on demand (VOD), delayed broadcast of television programs (Replay) , or Network PVR type offers (for "Network Personal Video Recorder", i.e. a digital content recording service, carried out by the content provider itself rather than at the end user's home).

L’utilisation de ces services nécessite notamment l’utilisation d’un lecteur de flux multimédia numérique pour décoder un contenu numérique tel qu’un flux vidéo et/ou audio reçu depuis le fournisseur de service, et d’un terminal de restitution associé au lecteur de flux multimédia numérique pour afficher par exemple les images et/ou les bande-sons décodées du flux vidéo et/ou audio.Dans un exemple, le lecteur de flux multimédia est intégré dans le terminal de restitution tel qu’une tablette, un ordinateur ou un téléphone de type « Smartphone ». Dans un autre exemple, le lecteur de flux multimédia est intégré à une passerelle résidentielle qui assure le routage des données au sein du réseau de communication local et le décodage du contenu numérique, avant de permettre sa restitution sur un terminal de restitution tel qu’un téléviseur. Encore dans un autre exemple, un tel lecteur de flux mutimédia est une clé HDMI, telle que la CléTV® d’Orange®, qui peut être branchée sur un téléviseur, ou sur une set-top box.The use of these services requires in particular the use of a digital multimedia stream player to decode digital content such as a video and/or audio stream received from the service provider, and of a playback terminal associated with the digital multimedia stream player for displaying, for example, the decoded images and/or soundtracks of the video and/or audio stream . In one example, the multimedia stream player is integrated into the rendering terminal such as a tablet, a computer or a telephone of the “Smartphone” type. In another example, the multimedia stream player is integrated into a residential gateway which ensures the routing of the data within the local communication network and the decoding of the digital content, before allowing its reproduction on a reproduction terminal such as a TV. In yet another example, such a multimedia stream player is an HDMI key, such as the CléTV® from Orange®, which can be connected to a television set, or to a set-top box.

Dans la suite, par souci de simplification, on assimilera le contenu numérique à une vidéo et la restitution par le terminal client, i.e l’équipement personnel, ou consommation par l’utilisateur du terminal, à une visualisation sur l’écran du terminal client. On assimilera également par la suite le terme terminal de restitution à l’association du lecteur de flux multimédia et du terminal client.In the following, for the sake of simplification, we will assimilate the digital content to a video and the restitution by the client terminal, i.e. the personal equipment, or consumption by the user of the terminal, to a visualization on the screen of the client terminal. . The term rendering terminal will also be assimilated below to the association of the multimedia stream player and the client terminal.

Les terminaux de restitution, permettent en général l’accès du client à un certain nombre de fonctionnalités, comme par exemple une fonction avance/retour rapide, permettant à un utilisateur de naviguer de façon accélérée dans le contenu numérique. Ainsi, lorsqu’un utilisateur regarde par exemple une vidéo, il a la possibilité d’accéder rapidement à un endroit précis de celle-ci en accélérant sa restitution par activation de la fonction avance/retour rapide par exemple via une touche d’une télécommande associée au terminal de restitution. Dans un autre exemple, l’activation de la fonction avance/retour rapide se fait via une application dédiée à la gestion du lecteur de flux multimédia lorsque celui-ci est associé à un terminal client comme par exemple une tablette ou un téléphone intelligent.Return terminals generally allow the customer access to a certain number of functionalities, such as a fast forward/backward function, allowing a user to navigate in an accelerated way in the digital content. Thus, when a user watches a video, for example, he has the possibility of quickly accessing a specific location in it by accelerating its restitution by activating the fast forward/backward function, for example via a button on a remote control. associated with the restitution terminal. In another example, the activation of the fast forward/backward function is done via an application dedicated to managing the multimedia stream player when the latter is associated with a client terminal such as a tablet or a smart phone.

Après l’activation de la fonction avance/retour rapide, par exemple lorsque l’utilisateur est prêt à regarder la suite de la vidéo, il relance le mode lecture normale de la vidéo, toujours via une touche de la télécommande ou via l’application dédiée. Le lecteur de flux multimédia reprend alors le traitement du flux vidéo à partir de la position courante dans le contenu, sélectionnée par l’utilisateur lors de la navigation accélérée dans le contenu.After activating the fast forward/backward function, for example when the user is ready to watch the rest of the video, he restarts the normal playback mode of the video, again via a button on the remote control or via the application dedicated. The media stream player then resumes processing the video stream from the current position in the content, selected by the user during accelerated navigation in the content.

Afin que l’utilisateur puisse identifier aisément la partie de la vidéo qu’il souhaite visualiser, il est très utile pendant l’avance/retour rapide de pouvoir afficher à l’utilisateur des imagettes qui illustrent la position courante de l’utilisateur dans le flux vidéo.In order for the user to be able to easily identify the part of the video that he wishes to view, it is very useful during fast forward/backward to be able to display to the user thumbnails which illustrate the current position of the user in the video stream.

Pour cela, il existe à ce jour deux techniques principales.For this, there are currently two main techniques.

La première technique consiste à faire exposer directement par le serveur de contenu des imagettes correspondant à chaque segment vidéo disponible. Par imagette, on entend ici, et dans toute la suite de ce document, une image extraite du contenu vidéo, dont la taille est réduite par rapport à l’original. Une telle imagette est également appelée miniature, ou vignette, et en anglais est généralement désignée sous le nom de « thumbnail » (littéralement « ongle de pouce », en référence à sa taille).The first technique consists in having the content server directly expose thumbnails corresponding to each available video segment. By thumbnail, we mean here, and throughout this document, an image extracted from the video content, the size of which is reduced compared to the original. Such a thumbnail is also called thumbnail, or thumbnail, and in English is generally referred to as a "thumbnail" (literally "thumbnail", in reference to its size).

Ces imagettes, créées et enregistrées sur le serveur de contenu, peuvent alors être récupérées par le terminal de restitution: quelle que soit la position courante de l’utilisateur dans le contenu, il existe, sur le serveur, une imagette représentative du contenu à cette position courante, qu’il est possible de télécharger et d’afficher à l’utilisateur. Cette technique est cependant peu implémentée sur les serveurs car lourde à mettre en œuvre : en effet, il est nécessaire de créer et mémoriser autant d’imagettes qu’il existe d’images successives dans le contenu, ce qui est consommateur de ressources. De plus, les imagettes mises à disposition par le serveur de contenu sont le plus souvent de qualité réduite, et ne sont donc pas adaptées à un affichage en plein écran sur le terminal de restitution. Elles sont donc affichées sous forme d’imagettes de petites dimensions, au dessus de la ligne de temps illustrant la navigation de l’utilisateur dans le contenu (encore appelée en anglais « timeline »). Il peut être difficile pour l’utilisateur d’identifier sa position de navigation courante dans le contenu sur la base de ces petites imagettes, de qualité résuite.These thumbnails, created and saved on the content server, can then be retrieved by the rendering terminal: whatever the current position of the user in the content, there is, on the server, a thumbnail representative of the content at this current position, which can be downloaded and displayed to the user. However, this technique is rarely implemented on the servers because it is cumbersome to implement: in fact, it is necessary to create and store as many thumbnails as there are successive images in the content, which consumes resources. In addition, the thumbnails made available by the content server are most often of reduced quality, and are therefore not suitable for full-screen display on the rendering terminal. They are therefore displayed in the form of small thumbnails, above the timeline illustrating the user's navigation in the content (also called in English "timeline"). It can be difficult for the user to identify their current browsing position in the content based on these small, high-quality thumbnails.

La seconde technique consiste, pour le terminal de restitution, à récupérer certains segments vidéo au débit d’encodage le plus faible possible, correspondant aux positions de navigation courante dans le contenu. Le terminal en extrait une imagette, qui est ainsi créée à la volée, afin de l’afficher au niveau du curseur de position lecture. Chaque segment d’un contenu vidéo comprend en effet une image « I », également appelée image intra (généralement la première image du segment temporel), qui peut être affichée sous forme d’imagette sur le terminal client pour illustrer le flux vidéo. Le téléchargement des segments de plus basse qualité permet d’optimiser le temps de récupération de ces derniers. Par exemple, on affiche une imagette toutes les secondes, correspondant à la première image intra du segment de qualité la plus basse associé à la position de navigation courante dans le contenu.The second technique consists, for the restitution terminal, in retrieving certain video segments at the lowest possible encoding rate, corresponding to the current browsing positions in the content. The terminal extracts a thumbnail from it, which is thus created on the fly, in order to display it at the read position cursor. Each segment of video content indeed includes an “I” image, also called an intra image (generally the first image of the time segment), which can be displayed as a thumbnail on the client terminal to illustrate the video stream. Downloading the lower quality segments optimizes their retrieval time. For example, a thumbnail is displayed every second, corresponding to the first intra image of the lowest quality segment associated with the current browsing position in the content.

Cette technique est plus simple à mettre en œuvre, mais elle ne permet pas d’offrir des vitesses d’avance/retour rapide très élevées. En effet, l’utilisateur reste dépendant de la bande passante disponible et s’il souhaite faire de l’avance rapide en x64 par exemple, il peut être bloqué par le temps de récupération des segments.This technique is simpler to implement, but it does not offer very high fast forward/backward speeds. Indeed, the user remains dependent on the available bandwidth and if he wishes to fast forward in x64 for example, he can be blocked by the segment recovery time.

Par exemple, l’utilisateur visualise une vidéo en lecture normale et consomme un flux vidéo de qualité élevée diffusée en HAS avec des tailles de segments, (en anglais « chunk »), d’une durée de 2 secondes. Lors d’une avance rapide en x64 par exemple (i.e. que la vitesse de navigation accélérée dans le contenu est 64 fois plus rapide que la vitesse de lecture normale du contenu), le terminal de restitution doit afficher une imagette toutes les secondes, pour indiquer à l’utilisateur sa position de navigation courante dans le contenu. Partant d’une position de navigation courante N, le terminal de restitution doit alors récupérer le fragment, ou « chunk », vidéo qui est situé 64 secondes « plus tard » dans le flux (lorsqu’il est parcouru à une vitesse de lecture normale), pour en extraire une imagette. Ainsi, lorsque les segments (en anglais « chunks ») ont une durée de 2 secondes, le terminal de restitution doit récupérer le « chunk » qui se trouve à la position N+32 (32 = x64 / 2 secondes) en un temps inférieur ou égal à 1 seconde, pour assurer l’affichage d’une imagette toutes les secondes. On récupère donc généralement le « chunk » de plus faible qualité pour être certain de le récupérer dans les temps.For example, the user views a video in normal playback and consumes a high quality video stream broadcast in HAS with segment sizes (in English “chunk”) of a duration of 2 seconds. During a fast forward in x64 for example (i.e. the speed of accelerated navigation in the content is 64 times faster than the normal playback speed of the content), the rendering terminal must display a thumbnail every second, to indicate the user his current browsing position in the content. Starting from a current browsing position N, the restitution terminal must then recover the fragment, or "chunk", video which is located 64 seconds "later" in the stream (when it is browsed at normal playback speed ), to extract a thumbnail. Thus, when the segments (in English “chunks”) have a duration of 2 seconds, the restitution terminal must recover the “chunk” which is at position N+32 (32 = x64 / 2 seconds) in less time or equal to 1 second, to ensure the display of a thumbnail every second. We therefore generally recover the "chunk" of lower quality to be sure to recover it in time.

Si le terminal de restitution met plus d’une seconde à récupérer et extraire l’image de ce « chunk », il va rester bloqué en attente de l’imagette. Le déplacement réel ne sera pas alors x64 mais moins. La fonction d’avance/retour rapide est donc dans ce cas simple à mettre en œuvre mais son fonctionnement est dépendant de la bande passante disponible du réseau de communication local.If the restitution terminal takes more than a second to retrieve and extract the image from this “chunk”, it will remain blocked while waiting for the thumbnail. The actual displacement will then not be x64 but less. The fast forward/backward function is therefore simple to implement in this case, but its operation is dependent on the available bandwidth of the local communication network.

Il existe donc un besoin d’une technique de navigation accélérée (avance/retour rapide) dans un contenu numérique obtenu par téléchargement progressif adaptatif (HAS), qui ne présente pas ces différents inconvénients de l’art antérieur. Notamment, il existe un besoin d’une telle technique qui permette une meilleure optimisation de la consommation des ressources réseau, en tirant notamment avantage des spécificités techniques du téléchargement adaptatif progressif (HAS).There is therefore a need for an accelerated navigation technique (fast forward/backward) in digital content obtained by adaptive progressive downloading (HAS), which does not have these various drawbacks of the prior art. In particular, there is a need for such a technique which allows better optimization of the consumption of network resources, in particular by taking advantage of the technical specificities of progressive adaptive downloading (HAS).

Présentation de l’inventionPresentation of the invention

L’invention répond à ce besoin en proposant un procédé de navigation accélérée dans un contenu numérique, obtenu par téléchargement progressif adaptatif par un terminal de restitution via un réseau de communication. Ce procédé de navigation comprend :
- une obtention d’un fichier de description du contenu numérique, comprenant une liste de segments temporels du contenu associés chacun à plusieurs débits d’encodage du contenu,
- une restitution, à intervalles de temps de durée T, d’une imagette représentative du contenu à une position de navigation courante dans le contenu, l’imagette étant extraite d’un des segments temporels, la position de navigation courante dépendant d’une vitesse de navigation dans le contenu.
The invention meets this need by proposing a method for accelerated browsing in digital content, obtained by adaptive progressive downloading by a playback terminal via a communication network. This navigation process includes:
- obtaining a description file of the digital content, comprising a list of time segments of the content, each associated with several encoding rates of the content,
- a restitution, at time intervals of duration T, of a thumbnail representing the content at a current browsing position in the content, the thumbnail being extracted from one of the time segments, the current browsing position depending on a content browsing speed.

Selon l’invention, un tel procédé comprend une étape de détermination d’un débit d’encodage du segment temporel dont est extraite l’imagette représentative du contenu à la position de navigation courante, en fonction d’une contrainte de ressource obtenue par le terminal, et une étape de téléchargement du segment temporel dont est extraite l’imagette représentative du contenu à la position de navigation courante, audit débit d’encodage déterminé.According to the invention, such a method comprises a step of determining an encoding rate of the time segment from which the thumbnail representative of the content at the current navigation position is extracted, as a function of a resource constraint obtained by the terminal, and a step of downloading the time segment from which the thumbnail representative of the content at the current browsing position is extracted, at said determined encoding rate.

Ainsi, l’invention repose sur une approche tout à fait nouvelle et inventive de la navigation accélérée dans un contenu multimédia.Thus, the invention is based on an entirely new and inventive approach to accelerated navigation in multimedia content.

En effet, selon l’art antérieur, l’illustration de la position dans le flux vidéo lors de la mise en œuvre d’une navigation accélérée dans un contenu se fait par affichage, à intervalles de temps de durée fixe (généralement une seconde), d’une imagette de faible qualité représentative du contenu à la position de navigation courante de faible qualité quelles que soient les contraintes de ressource du réseau de communication local, et ce, afin de garder constante la vitesse de navigation accélérée.Indeed, according to the prior art, the illustration of the position in the video stream during the implementation of an accelerated navigation in a content is done by display, at time intervals of fixed duration (generally one second) , of a low-quality thumbnail representative of the content at the current low-quality browsing position regardless of the resource constraints of the local communication network, in order to keep the accelerated browsing speed constant.

De manière avantageuse, l’invention se propose d’améliorer la qualité de l’expérience de l’utilisateur, en adaptant la qualité d’encodage du segment temporel dont est extraite l’imagette aux contraintes de ressource, afin d’assurer le meilleur compromis entre qualité d’imagette à afficher et constance de la vitesse de navigation accélérée.Advantageously, the invention proposes to improve the quality of the user's experience, by adapting the encoding quality of the time segment from which the thumbnail is extracted to the resource constraints, in order to ensure the best compromise between quality of the thumbnail to be displayed and constancy of the accelerated navigation speed.

En d’autres termes, si la bande passante du réseau de communication local le permet, la restitution d’une imagette de meilleure qualité sera privilégiée si toutefois la vitesse de navigation accélérée est conservée. Si cependant les conditions ne le permettent pas, alors on privilégie la restitution d’une imagette de moins bonne qualité afin de ne pas perturber la vitesse de navigation accélérée.In other words, if the bandwidth of the local communication network allows it, the restitution of a thumbnail of better quality will be preferred if, however, the accelerated browsing speed is maintained. If, however, the conditions do not allow it, then we favor the restitution of a thumbnail of lower quality so as not to disturb the accelerated navigation speed.

Selon un aspect particulier de l’invention, la contrainte de ressource dépend d’un débit instantané de téléchargement du terminal. Un tel débit instantané de téléchargement est estimé à partir d’une durée de téléchargement d’un segment temporel dont est extraite une imagette restituée et d’une taille du segment temporel.According to a particular aspect of the invention, the resource constraint depends on an instantaneous terminal download rate. Such an instantaneous download rate is estimated from a download duration of a time segment from which a restored thumbnail is extracted and a size of the time segment.

Ainsi, plus le segment temporel à télécharger est de qualité d’encodage élevée, plus le temps de téléchargement de ce segment sera long : la vitesse de navigation accélérée risque donc d’être impactée si le terminal de restitution n’a pas les ressources nécessaires pour récupérer et afficher l’imagette en un temps inférieur à la durée T fixée selon l’art antérieur à 1 seconde. Selon l’invention, la qualité du segment temporel téléchargé est adaptée afin de ne pas perturber l’écoulement du temps en navigation accélérée, ou en proposant la meilleure qualité d’imagette à afficher.Thus, the higher the encoding quality of the time segment to be downloaded, the longer the download time of this segment will be: the accelerated browsing speed therefore risks being impacted if the rendering terminal does not have the necessary resources. to recover and display the thumbnail in a time less than the duration T fixed according to the prior art at 1 second. According to the invention, the quality of the downloaded time segment is adapted so as not to disturb the flow of time in accelerated navigation, or by offering the best quality thumbnail to display.

Selon un mode de réalisation particulier de l’invention, le procédé comprend une étape de détermination de la durée T entre deux restitutions d’imagettes successives, en fonction de la contrainte de ressource estimée par le terminal de restitution.According to a particular embodiment of the invention, the method comprises a step of determining the duration T between two successive thumbnail renderings, as a function of the resource constraint estimated by the rendering terminal.

Ainsi, l’invention se propose avantageusement d’optimiser encore la fluidité de la navigation accélérée, en adaptant, non seulement la qualité de l’imagette restituée, mais également la fréquence de rafraichissement de l’affichage des imagettes, dans le cas où la bande passante de l’utilisateur le permet. On bénéficie ainsi d’une fluidité plus importante en optimisant la récupération de segments temporels pendant la navigation accélérée dans le contenu.Thus, the invention advantageously proposes to further optimize the fluidity of the accelerated navigation, by adapting not only the quality of the rendered thumbnail, but also the refresh rate of the thumbnail display, in the case where the user bandwidth allows. We thus benefit from greater fluidity by optimizing the recovery of time segments during accelerated navigation in the content.

L’invention concerne également un produit programme d’ordinateur comprenant des instructions de code de programme pour la mise en œuvre d’un procédé de navigation en accéléré dans un contenu numérique, tel que décrit précédemment, lorsqu’il est exécuté par un processeur.The invention also relates to a computer program product comprising program code instructions for implementing an accelerated navigation method in digital content, as described above, when it is executed by a processor.

L’invention vise également un support d’enregistrement lisible par un ordinateur sur lequel est enregistré un programme d’ordinateur comprenant des instructions de code de programme pour l’exécution des étapes du procèdé de navigation accélérée dans un contenu multimédia selon l’invention tel que décrit ci-dessus.The invention also relates to a recording medium readable by a computer on which is recorded a computer program comprising program code instructions for the execution of the steps of the method of accelerated navigation in a multimedia content according to the invention such as described above.

Un tel support d'enregistrement peut être n'importe quelle entité ou dispositif capable de stocker le programme. Par exemple, le support peut comporter un moyen de stockage, tel qu'une ROM, par exemple un CD ROM ou une ROM de circuit micro- électronique, ou encore un moyen d'enregistrement magnétique, par exemple une clé USB ou un disque dur.Such recording medium can be any entity or device capable of storing the program. For example, the medium may comprise a storage means, such as a ROM, for example a CD ROM or a microelectronic circuit ROM, or else a magnetic recording means, for example a USB key or a hard disk. .

D'autre part, un tel support d'enregistrement peut être un support transmissible tel qu'un signal électrique ou optique, qui peut être acheminé via un câble électrique ou optique, par radio ou par d'autres moyens, de sorte que le programme d’ordinateur qu’il contient est exécutable à distance. Le programme selon l'invention peut être en particulier téléchargé sur un réseau par exemple le réseau Internet.On the other hand, such a recording medium may be a transmissible medium such as an electrical or optical signal, which may be conveyed via an electrical or optical cable, by radio or by other means, so that the program computer it contains is executable remotely. The program according to the invention can in particular be downloaded onto a network, for example the Internet network.

Alternativement, le support d'enregistrement peut être un circuit intégré dans lequel le programme est incorporé, le circuit étant adapté pour exécuter ou pour être utilisé dans l'exécution du procédé de contrôle d’affichage précité.Alternatively, the recording medium may be an integrated circuit in which the program is incorporated, the circuit being adapted to execute or to be used in the execution of the aforementioned display control method.

L’invention concerne encore un dispositif de gestion de navigation accélérée dans un contenu numérique obtenu par téléchargement progressif adaptatif via un réseau de communication. Ce dispositif de gestion comprend :
- un module d’obtention d’un fichier de description du contenu numérique, comprenant une liste de segments temporels du contenu associés chacun à plusieurs débits d’encodage du contenu,
- un module de restitution, à intervalles de temps de durée T, d’une imagette représentative du contenu à une position de navigation courante dans le contenu, l’imagette étant extraite d’un des segments temporels, la position de navigation courante dépendant d’une vitesse de navigation dans le contenu,
- un module de détermination d’un débit d’encodage du segment temporel dont est extraite l’imagette représentative du contenu à la position de navigation courante, en fonction d’une contrainte de ressource obtenue par le terminal, et un module de téléchargement du segment temporel dont est extraite l’imagette représentative du contenu à la position de navigation courante, au débit d’encodage déterminé.
The invention also relates to a device for managing accelerated navigation in digital content obtained by adaptive progressive downloading via a communication network. This management system includes:
- a module for obtaining a description file of the digital content, comprising a list of time segments of the content each associated with several encoding rates of the content,
- a restitution module, at time intervals of duration T, of a thumbnail representing the content at a current browsing position in the content, the thumbnail being extracted from one of the time segments, the current browsing position depending on 'a browsing speed in the content,
- a module for determining an encoding rate of the time segment from which the thumbnail representative of the content at the current navigation position is extracted, as a function of a resource constraint obtained by the terminal, and a time segment download module whose the thumbnail representative of the content at the current browsing position is extracted, at the determined encoding rate.

La contrainte de ressource dépend par exemple d’un débit instantané de téléchargement du terminal, qui peut être estimé à partir d’une durée de téléchargement d’un segment temporel dont est extraite une imagette restituée et d’une taille du segment temporel.The resource constraint depends for example on an instantaneous download rate of the terminal, which can be estimated from a download duration of a time segment from which a restored thumbnail is extracted and from a size of the time segment.

Selon un mode de réalisation particulier, le module de détermination du dispositif de gestion est apte à déterminer la durée T entre deux restitutions d’imagettes successives, en fonction de la contrainte de ressource estimée par le terminal de restitution.According to a particular embodiment, the determination module of the management device is capable of determining the duration T between two successive thumbnail renderings, as a function of the resource constraint estimated by the rendering terminal.

Enfin, l’invention concerne également un lecteur de flux multimédia, comprenant un dispositif de gestion de navigation accélérée dans un contenu numérique tel que décrit précédemment.Finally, the invention also relates to a multimedia stream player, comprising a device for managing accelerated browsing in digital content as described previously.

Le dispositif de gestion, le lecteur de flux multimédia et le programme d’ordinateur correspondants précités présentent au moins les mêmes avantages que ceux conférés par le procédé de navigation dans un contenu multimédia selon les différents modes de réalisation de la présente invention.The management device, the multimedia stream player and the aforementioned corresponding computer program have at least the same advantages as those conferred by the navigation method in a multimedia content according to the different embodiments of the present invention.

Brève description des figuresBrief description of figures

D'autres buts, caractéristiques et avantages de l'invention apparaîtront plus clairement à la lecture de la description suivante, donnée à titre de simple exemple illustratif, et non limitatif, en relation avec les figures, parmi lesquelles :Other aims, characteristics and advantages of the invention will appear more clearly on reading the following description, given by way of a simple illustrative example, and not limiting, in relation to the figures, among which:

représente une architecture de téléchargement progressif sur Internet basée sur l’utilisation du téléchargement progressif adaptatif selon l’invention ; represents an Internet progressive downloading architecture based on the use of adaptive progressive downloading according to the invention;

illustre de façon schématique la structure matérielle d’un lecteur de flux multimédia en temps réel intégrant un dispositif de gestion d’une navigation accélérée de type avance/retour rapide selon un mode de réalisation de l’invention ; schematically illustrates the hardware structure of a real-time multimedia stream player incorporating a device for managing accelerated browsing of the fast forward/backward type according to one embodiment of the invention;

illustre un exemple de mise en œuvre d’une fonction avance/retour rapide d’un contenu numérique en mode téléchargement progressif adaptatif par un lecteur de flux multimédia de la figure 2 associé à un terminal client ; illustrates an example of implementation of a fast forward/backward function of digital content in adaptive progressive download mode by a multimedia stream player of FIG. 2 associated with a client terminal;

représente un exemple de sélection d’un segment d’un contenu numérique lors de la mise en œuvre d’une fonction avance/retour rapide du contenu numérique en mode téléchargement progressif adaptatif selon la figure 3A par le lecteur de flux numérique de la figure 2 ; represents an example of selection of a segment of digital content during the implementation of a fast forward/reverse function of the digital content in adaptive progressive download mode according to FIG. 3A by the digital stream reader of FIG. 2 ;

illustre de façon schématique la restitution d’une imagette au sein d’un terminal de restitution selon l’invention. schematically illustrates the rendering of a thumbnail within a rendering terminal according to the invention.

Description détaillée de l'inventionDetailed description of the invention

Le principe général de l’invention consiste à calculer finement le prochain segment temporel d’un contenu numérique à récupérer en fonction des conditions réseau de l’utilisateur, pour en extraire une imagette permettant à un utilisateur d’identifier facilement sa position de navigation dans le contenu, dans le cadre d’une navigation accélérée. En particulier, l’invention repose sur la sélection d’une qualité de débit d’encodage d’un segment temporel d’un contenu numérique à télécharger, lorsque l’utilisateur souhaite naviguer de façon accélérée dans le contenu multimédia afin de visualiser un endroit particulier de celui-ci, et ce notamment dans le cadre d’un contenu numérique téléchargé en mode de téléchargement progressif adaptatif (HAS) par un lecteur de flux multimédia en temps réel. Cette sélection permet d’optimiser la navigation en avance ou retour rapide dans un contenu numérique, en permettant d’adapter la qualité de débit d’encodage d’un segment temporel dont on extrait l’imagette restituée à l’utilisateur, aux variations de bande passante du réseau de communication local de l’utilisateur. Ainsi, si la bande passante est satisfaisante, on peut afficher une imagette de meilleure qualité à l’utilisateur, par exemple en plein écran, ce qui améliore la perception du client, et lui permet de mieux identifier où il se trouve dans le contenu. A l’inverse, en cas de bande passante réduite, il est ainsi possible de maintenir constante la vitesse d’avance/retour rapides choisie par l’utilisateur en jouant sur la sélection optimale du segment temporel dont est extraite l’imagette.The general principle of the invention consists in finely calculating the next time segment of a digital content to be retrieved according to the user's network conditions, in order to extract therefrom a thumbnail allowing a user to easily identify his navigation position in the content, as part of an accelerated navigation. In particular, the invention is based on the selection of an encoding bit rate quality of a time segment of a digital content to be downloaded, when the user wishes to navigate in an accelerated manner in the multimedia content in order to view a place particular of the latter, and this in particular in the context of digital content downloaded in adaptive progressive download mode (HAS) by a multimedia stream player in real time. This selection makes it possible to optimize navigation in fast forward or rewind in digital content, by making it possible to adapt the encoding bit rate quality of a time segment from which the thumbnail returned to the user is extracted, to variations in bandwidth of the user's local communication network. Thus, if the bandwidth is satisfactory, we can display a thumbnail of better quality to the user, for example in full screen, which improves the perception of the customer, and allows him to better identify where he is in the content. Conversely, in the event of reduced bandwidth, it is thus possible to maintain constant the fast forward/backward speed chosen by the user by adjusting the optimal selection of the time segment from which the thumbnail is extracted.

On présente désormais, en relation avec lafigure 1, un exemple d’une architecture de téléchargement progressif basée sur l’utilisation du téléchargement progressif adaptatif selon l’invention.We now present, in relation to FIG. 1 , an example of a progressive downloading architecture based on the use of adaptive progressive downloading according to the invention.

Le terminal 3, par exemple un téléphone intelligent de type « Smartphone », le terminal 4, par exemple un ordinateur portable, et le terminal 8, par exemple une clef HDMI connectée à un téléviseur 5, se trouvent dans cet exemple situé dans un réseau local (LAN, 10) piloté par une passerelle domestique 6. Le contexte du réseau local est donné à titre d’exemple et pourrait être transposé aisément à un réseau Internet de type « best effort », un réseau d’entreprise, etc.The terminal 3, for example a smart phone of the "Smartphone" type, the terminal 4, for example a laptop computer, and the terminal 8, for example an HDMI key connected to a television set 5, are in this example located in a network (LAN, 10) controlled by a home gateway 6. The context of the local network is given by way of example and could easily be transposed to an Internet network of the “best effort” type, a company network, etc.

Un serveur de contenus numériques 2 se trouve selon cet exemple dans le réseau étendu (WAN, 1) mais il pourrait indifféremment être situé dans le réseau local (LAN, 10), par exemple dans la passerelle domestique 6 ou tout autre équipement capable d’héberger un tel serveur de contenus. Le serveur de contenus 2 reçoit par exemple des chaînes de contenus de télévision numérique en provenance d’un réseau de télévision diffusée, non représenté, et/ou des vidéos à la demande, et les met à disposition des terminaux clients.A digital content server 2 is located according to this example in the wide area network (WAN, 1) but it could either be located in the local area network (LAN, 10), for example in the home gateway 6 or any other equipment capable of host such a content server. The content server 2 receives, for example, digital television content channels from a broadcast television network, not shown, and/or videos on demand, and makes them available to client terminals.

Les terminaux clients 3, 4 et 8 peuvent entrer en communication avec le serveur de contenus 2 pour recevoir un ou plusieurs contenus (films, documentaires, séquences publicitaires, etc.). En général, un terminal émet une requête à destination d’un serveur, en indiquant le contenu choisi et il reçoit en retour un flux de données numériques relatives à ce contenu. Dans le cadre d’un réseau de communication local, une telle requête transite par la passerelle d’accès au réseau, par exemple la passerelle résidentielle.The client terminals 3, 4 and 8 can enter into communication with the content server 2 to receive one or more contents (films, documentaries, advertising sequences, etc.). In general, a terminal sends a request to a server, indicating the chosen content and it receives in return a stream of digital data relating to this content. In the context of a local communication network, such a request passes through the network access gateway, for example the residential gateway.

Le terminal est adapté pour recevoir ces contenus numériques sous forme de données multimédia et pour en faire une restitution. Cette restitution consiste à fournir au niveau du terminal le contenu numérique sous une forme accessible à l’utilisateur. Par exemple, des données reçues correspondant à une vidéo sont généralement décodées, puis restituées au niveau du terminal sous la forme d’un affichage de la vidéo correspondante avec sa bande-son associée.The terminal is suitable for receiving these digital contents in the form of multimedia data and for restoring them. This restitution consists of providing the terminal with the digital content in a form accessible to the user. For example, received data corresponding to a video are generally decoded, then restored at the terminal level in the form of a display of the corresponding video with its associated soundtrack.

Il est fréquent, dans ce contexte client-serveur, de recourir, pour échanger les données entre les terminaux client 3, 4 et 8 et le serveur 2, à une technique de téléchargement progressif adaptatif, en anglais « adaptive streaming », abrégé en HAS basée sur le protocole HTTP. Ce type de technique permet notamment d'offrir une bonne qualité de contenus à l’utilisateur en tenant compte des variations de bande passante qui peuvent se produire sur la liaison entre le terminal client 3, 4 et 8 et la passerelle de services 6, ou entre cette dernière et le serveur de contenus 2.It is common, in this client-server context, to use, to exchange data between the client terminals 3, 4 and 8 and the server 2, an adaptive progressive downloading technique, in English “adaptive streaming”, abbreviated as HAS based on the HTTP protocol. This type of technique makes it possible in particular to offer a good quality of content to the user by taking into account the variations in bandwidth which may occur on the link between the client terminal 3, 4 and 8 and the service gateway 6, or between the latter and the content server 2.

Classiquement, différentes qualités peuvent être encodées pour le même contenu d’une chaîne, correspondant par exemple à différents débits. Plus généralement, on parlera de qualité pour se référer à une certaine résolution du contenu numérique (résolution spatiale, temporelle, niveau de qualité associée à la compression vidéo et/ou audio) avec un certain débit. Chaque niveau de qualité est lui-même découpé sur le serveur de contenus en segments temporels (ou « fragments » de contenu, en anglais « chunks », ces trois mots étant utilisés indifféremment dans l’ensemble de ce document).Conventionally, different qualities can be encoded for the same content of a channel, corresponding for example to different bitrates. More generally, we will speak of quality to refer to a certain resolution of the digital content (spatial, temporal resolution, level of quality associated with video and/or audio compression) with a certain bit rate. Each quality level is itself cut on the content server into time segments (or “fragments” of content, in English “chunks”, these three words being used interchangeably throughout this document).

La description de ces différentes qualités et de la segmentation temporelle associée, ainsi que les fragments de contenu, sont décrits pour le terminal client et mis à sa disposition via leurs adresses Internet (URI : Universal Ressource Identifier). L’ensemble de ces paramètres (qualités, adresses des fragments, etc.) est en général regroupé dans un fichier de paramètres, dit fichier de description. On notera que ce fichier de paramètres peut être un fichier informatique ou un ensemble d’informations descriptives du contenu, accessible à une certaine adresse.The description of these different qualities and the associated temporal segmentation, as well as the content fragments, are described for the client terminal and made available to it via their Internet addresses (URI: Universal Resource Identifier). All of these parameters (qualities, fragment addresses, etc.) are generally grouped together in a parameter file, called the description file. It should be noted that this parameter file can be a computer file or a set of information descriptive of the content, accessible at a certain address.

Ces fragments ou « chunks » comprennent un ensemble de données représentatives du contenu. Dans l’exemple d’une vidéo, chaque « chunk » de la vidéo comprend notamment une première image dite image « I », ou intra, et une ou plusieurs images qui peuvent être prédites à partir de cette image I par estimation/compensation de mouvement.These fragments or “chunks” comprise a set of data representative of the content. In the example of a video, each “chunk” of the video notably comprises a first image called an “I” image, or intra, and one or more images which can be predicted from this I image by estimation/compensation of movement.

Les terminaux 3, 4 et 8 possèdent leurs propres caractéristiques en termes de capacité de décodage, d’affichage, etc. Dans un contexte de téléchargement adaptatif progressif, ils peuvent adapter leurs requêtes pour recevoir et décoder le contenu demandé par l’utilisateur à la qualité qui leur correspond au mieux. Dans notre exemple, si les contenus sont disponibles aux débits 512 kb/s (kilobits par seconde) (Résolution 1, ou niveau 1, noté D1), 1024 kb/s (D2), 2048 kb/s (D3) et que le terminal client dispose d’une bande passante de 3000 kb/s, il peut demander le contenu à n’importe quel débit inférieur à cette limite, par exemple 2048 kb/s. De manière générale, on note « Ci@Dj » le contenu numéro i avec la qualité j (par exemple le j-ième niveau Dj de qualité décrit dans le fichier de description).Terminals 3, 4 and 8 have their own characteristics in terms of decoding capability, display, etc. In a context of progressive adaptive downloading, they can adapt their requests to receive and decode the content requested by the user at the quality that suits them best. In our example, if the content is available at bit rates of 512 kb/s (kilobits per second) (Resolution 1, or level 1, denoted D1), 1024 kb/s (D2), 2048 kb/s (D3) and the client terminal has a bandwidth of 3000 kb/s, it can request the content at any rate below this limit, for example 2048 kb/s. In general, “Ci@Dj” denotes the content number i with the quality j (for example the j-th quality level Dj described in the description file).

La passerelle de service 6 est dans cet exemple une passerelle domestique qui assure le routage des données entre le réseau étendu 1 et le réseau local 10, gère les contenus numériques en assurant notamment leur réception en provenance du réseau et leur décodage grâce à un lecteur de flux multimédia 9 (non représenté), aussi appelé décodeur que l’on suppose ici intégré à la passerelle 6 ou aux terminaux clients 3, 4 et 8. En variante, le lecteur de flux peut se trouver ailleurs dans le réseau étendu 1 ou local 10, notamment au niveau d’un élément de type STB (de l’anglais Set-Top-Box) (non représenté) associé à un téléviseur.The service gateway 6 is in this example a home gateway which ensures the routing of data between the extended network 1 and the local network 10, manages the digital contents by ensuring in particular their reception from the network and their decoding thanks to a reader of multimedia stream 9 (not shown), also called a decoder which is assumed here to be integrated into the gateway 6 or the client terminals 3, 4 and 8. Alternatively, the stream reader can be located elsewhere in the extended network 1 or local 10, in particular at the level of an element of the STB (Set-Top-Box) type (not shown) associated with a television.

Dans cet exemple, pour visualiser un contenu, le terminal 3, 4 ou 8 interroge tout d’abord la passerelle de service 6 pour obtenir une adresse du document de description 7 du contenu (par exemple, C1) souhaité. La passerelle de service 6 répond en fournissant au terminal l’adresse du fichier de description 7. Dans la suite, on supposera que ce fichier est un fichier de type manifeste selon la norme MPEG-DASH (noté « C.mpd ») et on se réfèrera indifféremment, selon le contexte, à l’expression « fichier de description » ou « manifest».In this example, to view a content, the terminal 3, 4 or 8 first interrogates the service gateway 6 to obtain an address of the description document 7 of the desired content (for example, C1). The service gateway 6 responds by providing the terminal with the address of the description file 7. In what follows, it will be assumed that this file is a manifest type file according to the MPEG-DASH standard (denoted “C.mpd”) and will refer interchangeably, depending on the context, to the expression “description file” or “manifest”.

Alternativement, ce fichier peut être récupéré directement auprès d’un serveur Internet local ou externe au réseau local, ou se trouver déjà sur la passerelle de service ou sur le terminal au moment de la requête.Alternatively, this file can be retrieved directly from a local Internet server or external to the local network, or already be on the service gateway or on the terminal at the time of the request.

Un exemple de fichier manifeste (MPD) conforme à la norme MPEG-DASH et comportant la description de contenus disponibles dans trois qualités différentes (D1 = 512 kb/s, D2 = 1024 kb/s, D3 = 2048 kb/s) des contenus fragmentés est présenté enannexe 1. Ce fichier manifeste simplifié décrit des contenus numériques dans une syntaxe XML (de l'Anglais « eXtended Markup Language»), comprenant une liste de contenus sous forme de fragments classiquement décrits entre une balise ouvrante (<SegmentList>) et une balise fermante (</SegmentList>). La découpe en fragments permet notamment de s’adapter finement aux fluctuations de la bande passante. Chaque fragment correspond à une certaine durée (champ « duration ») avec plusieurs niveaux de qualité et permet de générer leurs adresses (URL – Uniform Resource Locator). Cette génération est faite dans cet exemple à l’aide des éléments « BaseURL » (« HTTP://server.com») qui indique l’adresse du serveur de contenus et « SegmentURL » qui liste les parties complémentaires des adresses des différents fragments :
- « C1_512kb_1.mp4 » pour le premier fragment du contenu « C1 » à 512 kilobits par seconde (« kb ») au format MPEG-4 (« mp4 »),
- « C1_512kb_2.mp4 » pour le second fragment,
- etc.
An example of a manifest file (MPD) conforming to the MPEG-DASH standard and comprising the description of content available in three different qualities (D1 = 512 kb/s, D2 = 1024 kb/s, D3 = 2048 kb/s) of content fragmented is presented in appendix 1 . This simplified manifest file describes digital content in an XML syntax (from the English "eXtended Markup Language"), comprising a list of content in the form of fragments conventionally described between an opening tag (<SegmentList>) and a closing tag (</SegmentList>). Cutting into fragments makes it possible in particular to adapt finely to fluctuations in bandwidth. Each fragment corresponds to a certain duration (“duration” field) with several quality levels and makes it possible to generate their addresses (URL – Uniform Resource Locator). This generation is done in this example using the elements “BaseURL” (“HTTP://server.com”) which indicates the address of the content server and “SegmentURL” which lists the complementary parts of the addresses of the different fragments :
- “C1_512kb_1.mp4” for the first fragment of the “C1” content at 512 kilobits per second (“kb”) in MPEG-4 format (“mp4”),
- “C1_512kb_2.mp4” for the second fragment,
- etc.

Une fois qu’elle dispose des adresses de fragments correspondant au contenu souhaité, la passerelle de service 6 procède à l’obtention des fragments via un téléchargement à ces adresses. On notera que ce téléchargement s’opère ici, traditionnellement, au travers d’une URL HTTP, mais pourrait également s’opérer au travers d’une adresse universelle (URI) décrivant un autre protocole (dvb://monsegmentdecontenu par exemple).Once it has the fragment addresses corresponding to the desired content, the service gateway 6 proceeds to obtain the fragments via a download to these addresses. It should be noted that this download takes place here, traditionally, through an HTTP URL, but could also take place through a universal address (URI) describing another protocol (dvb://monsegmentdecontent for example).

Les terminaux 3, 4 ou le téléviseur 5, par exemple via sa connexion à une clef HDMI 8 par branchement sur son port HDMI, sont utilisés pour restituer une vidéo à la demande. Par la suite, on désigne ce programme télévisuel sous le nom de contenu C1. Un tel contenu C1 est décrit dans un fichier manifeste 7.The terminals 3, 4 or the television set 5, for example via its connection to an HDMI key 8 by plugging into its HDMI port, are used to render a video on demand. Subsequently, this television program is referred to as content C1. Such C1 content is described in a manifest file 7.

En variante, on notera que le contenu C1 peut également être un programme télévisuel diffusé en différé, ou une vidéo personnelle de l’utilisateur, ou tout autre contenu multimédia de durée déterminée, pour laquelle l’invention s’applique également.As a variant, it will be noted that the content C1 can also be a television program broadcast on a deferred basis, or a personal video of the user, or any other multimedia content of fixed duration, for which the invention also applies.

Dans un exemple, un utilisateur souhaite visualiser un contenu multimédia, tel qu’une vidéo, sur son téléviseur 5 connecté à une clé HDMI 8. La clef HDMI 8 est connectée en WiFi® directement à la passerelle résidentielle 6. En variante, la clef HDMI 8 pourrait également être connectée en WiFi® à un autre périphérique nomade du réseau domestique, par exemple à l’ordinateur portable 4 ou au téléphone intelligent 3, par l’intermédiaire duquel elle pourrait accéder au réseau de communication étendu 1.In one example, a user wishes to view multimedia content, such as a video, on his television set 5 connected to an HDMI key 8. The HDMI key 8 is connected via WiFi® directly to the residential gateway 6. Alternatively, the key HDMI 8 could also be connected via WiFi® to another mobile device in the home network, for example laptop 4 or smart phone 3, through which it could access the extended communication network 1.

La clef HDMI 8 peut également être pilotée par l’utilisateur au moyen du téléphone intelligent 3, sur lequel est installé une application logicielle de commande de la clef HDMI 8.The HDMI key 8 can also be controlled by the user by means of the smartphone 3, on which a software application for controlling the HDMI key 8 is installed.

Les fragments de contenu obtenus par la passerelle résidentielle 6 sont par exemple transmis en WiFi® à la clef HDMI 8, qui pilote leur affichage sur l’écran du téléviseur 5, pour restitution à l’utilisateur après décodage par un lecteur de flux multimédia 9 intégré à la passerelle 6.The fragments of content obtained by the residential gateway 6 are for example transmitted via WiFi® to the HDMI key 8, which controls their display on the television screen 5, for restitution to the user after decoding by a multimedia stream player 9 integrated into the gateway 6.

Lafigure 2représente une architecture d’un lecteur de flux multimédia selon un mode de réalisation de l’invention, intégré par exemple à la passerelle 6 ou aux terminaux 3, 4, ou 8 de lafigure 1. En variante, ce lecteur de flux est intégré au niveau d’un élément de type STB associé à un téléviseur (non représenté). FIG. 2 represents an architecture of a multimedia stream player according to one embodiment of the invention, integrated for example into the gateway 6 or into the terminals 3, 4, or 8 of FIG. 1 . As a variant, this stream reader is integrated at the level of an STB type element associated with a television (not shown).

Il comprend, classiquement, des mémoires M associées à un processeur CPU. Les mémoires peuvent être de type ROM (de l’anglais« Read Only Memory ») ou RAM (de l’anglais« Random Access Memory ») ou encore Flash. Le lecteur de flux multimédia 9 comprend un module de téléchargement progressif adaptatif HAS apte à demander un téléchargement progressif de l’un des contenus à l’une des qualités proposées dans un fichier de description 7. Ce fichier de description 7 peut être enregistré par exemple dans les mémoires M du lecteur de flux multimédia 9 ou se trouver à l’extérieur.It conventionally comprises memories M associated with a processor CPU. The memories can be of the ROM ( Read Only Memory ) or RAM ( Random Access Memory ) type, or else Flash. The multimedia stream player 9 comprises an HAS adaptive progressive download module able to request a progressive download of one of the contents at one of the qualities offered in a description file 7. This description file 7 can be recorded for example in the memories M of the multimedia stream player 9 or be outside.

Le lecteur de flux multimédia 9 comprend en outre un module d’avance/retour rapide Fst_FRW d’un contenu numérique afin de permettre à un utilisateur d’aller rapidement à un endroit précis du contenu.The multimedia stream player 9 further comprises a module for fast forwarding/rewinding digital content Fst_FRW in order to allow a user to quickly go to a specific location in the content.

Le lecteur de flux multimédia 9 comprend également un module de sélection de la qualité d’un fragment, ou « chunk », d’un contenu SEL_Q, qui pilote le module de téléchargement progressif adaptatif HAS, afin de forcer ce dernier à demander un téléchargement d’un « chunk » d’une qualité adaptée à la bande passante de l’utilisateur lors de la mise en œuvre d’une fonction avance/retour rapide par le module Fst_FRW. Il comprend également un module d’extraction Extract_IM d’au moins une imagette d’un fragment sélectionné, qui peut être restituée sur l’écran afin de permettre à l’utilisateur de savoir où il en est dans la visualisation du contenu.The multimedia stream player 9 also comprises a module for selecting the quality of a fragment, or "chunk", of a content SEL_Q, which drives the adaptive progressive download module HAS, in order to force the latter to request a download a “chunk” of a quality adapted to the bandwidth of the user during the implementation of a fast forward/backward function by the Fst_FRW module. It also includes an Extract_IM extraction module of at least one thumbnail of a selected fragment, which can be rendered on the screen in order to allow the user to know where he is in viewing the content.

Le lecteur de flux multimédia 9 selon l’invention peut aussi contenir d’autres modules (non représentés) comme un disque dur pour le stockage des fragments vidéo, un module de contrôle d’accès aux contenus, un module de traitement des commandes reçues d’une tablette, d’un Smartphone, ou d’une télécommande, grâce à laquelle l’utilisateur peut en contrôler le fonctionnement, etc.The multimedia stream player 9 according to the invention can also contain other modules (not shown) such as a hard disk for storing video fragments, a content access control module, a module for processing commands received from a tablet, a Smartphone, or a remote control, thanks to which the user can control its operation, etc.

On notera que le terme module peut correspondre aussi bien à un composant logiciel qu’à un composant matériel ou un ensemble de composants matériels et logiciels, un composant logiciel correspondant lui-même à un ou plusieurs programmes ou sous-programmes d’ordinateur ou de manière plus générale à tout élément d’un programme apte à mettre en œuvre une fonction ou un ensemble de fonctions telles que décrites pour les modules concernés. De la même manière, un composant matériel correspond à tout élément d’un ensemble matériel (ou hardware) apte à mettre en œuvre une fonction ou un ensemble de fonctions pour le module concerné (circuit intégré, carte à puce, carte à mémoire, etc.).It will be noted that the term module can correspond both to a software component and to a hardware component or a set of hardware and software components, a software component itself corresponding to one or more programs or computer or more generally to any element of a program capable of implementing a function or a set of functions as described for the modules concerned. In the same way, a hardware component corresponds to any element of a hardware (or hardware) assembly capable of implementing a function or a set of functions for the module concerned (integrated circuit, smart card, memory card, etc. .).

Lafigure 2illustre seulement une manière particulière, parmi plusieurs possibles, de réaliser le lecteur de flux 9, afin qu’il effectue les étapes du procédé détaillé ci-après, en relation avec lesfigures 3A et 3B(dans l’un quelconque des différents modes de réalisation, ou dans une combinaison de ces modes de réalisation). En effet, ces étapes peuvent être réalisées indifféremment sur une machine de calcul reprogrammable (un ordinateur PC, un processeur DSP ou un microcontrôleur) exécutant un programme comprenant une séquence d’instructions, ou sur une machine de calcul dédiée (par exemple un ensemble de portes logiques comme un FPGA ou un ASIC, ou tout autre module matériel). FIG. 2 only illustrates one particular way, among several possible, of making the stream reader 9, so that it carries out the steps of the method detailed below, in relation to FIGS. 3A and 3B (in any of the different embodiments, or in a combination of these embodiments). Indeed, these steps can be carried out either on a reprogrammable calculation machine (a PC computer, a DSP processor or a microcontroller) executing a program comprising a sequence of instructions, or on a dedicated calculation machine (for example a set of logic gates like an FPGA or an ASIC, or any other hardware module).

On présente désormais en relation avec lafigure 3A, un exemple de mise en œuvre d’une fonction avance/retour rapide dans un contenu numérique obtenu par téléchargement progressif adaptatif (HAS) selon l’invention.We now present in relation to FIG. 3A , an example of implementation of a fast forward/backward function in digital content obtained by adaptive progressive downloading (HAS) according to the invention.

Dans cet exemple, un utilisateur souhaite visualiser en mode de lecture normale, un contenu numérique, comme une vidéo, sur son téléviseur 5 connecté à une clé HDMI 8 intégrant un lecteur de flux multimédia 9 selon lafigure 2. Le lecteur de flux multimédia 9 comprend un module SEL_Q de sélection d’un débit d’encodage, ou de qualité, Dj, d’un fragment du contenu, un module HAS et un module Extract_IM d’extraction d’au moins une imagette du fragment selectionné. La clé HDMI 8 peut être pilotée via une télécommande ou via une application logicielle de commande d’un téléphone intelligent 3.In this example, a user wishes to view, in normal reading mode, a digital content, such as a video, on his television set 5 connected to an HDMI key 8 incorporating a multimedia stream player 9 according to FIG . The multimedia stream player 9 comprises a module SEL_Q for selecting an encoding bit rate, or quality, Dj, of a fragment of the content, an HAS module and an Extract_IM module for extracting at least one thumbnail from the selected fragment. The HDMI 8 dongle can be controlled via a remote control or via a smart phone control software application 3.

Afin de visualiser une vidéo, l’utilisateur, via le terminal de restitution 30, i.e. association du téléviseur 5 et de la clé HDMI 8 formant lecteur de flux 9, envoie au cours d’une étape 301 une requête, qui transite par la passerelle 6, indiquant le contenu choisi au serveur de contenu « HAS » 2.In order to view a video, the user, via the restitution terminal 30, i.e. association of the television set 5 and the HDMI key 8 forming a stream reader 9, sends during a step 301 a request, which passes through the gateway 6, indicating the chosen content to the “HAS” content server 2.

Toujours au cours de cette étape 301, en mode de lecture normale, le serveur de contenu « HAS » 2 envoie en réponse à cette requête un flux de données représentatif du contenu choisi. Le serveur de contenu « HAS » 2 expose une vidéo C1 sous forme de fragments, ou « chunks » C1i@Dj encodés à différents débits d’encodage Dj, où l’indice i désigne un identifiant temporel, ou position, du « chunk » C1i@Dj.Still during this step 301, in normal reading mode, the “HAS” content server 2 sends in response to this request a data stream representative of the chosen content. The "HAS" content server 2 exposes a video C1 in the form of fragments, or "chunks" C1 i @Dj encoded at different encoding bit rates Dj, where the index i denotes a temporal identifier, or position, of the "chunk » C1 i @Dj.

Ce flux de données est récupéré par le module HAS du lecteur de flux multimédia 9, par exemple la clé HDMI 8 qui en pilote la restitution sur le téléviseur 5 pour une visualisation par l’utilisateur.This data stream is recovered by the HAS module of the multimedia stream player 9, for example the HDMI key 8 which controls the restitution on the television set 5 for viewing by the user.

Selon l’art antérieur, le module HAS est chargé de venir récupérer les « chunks » auprès du serveur de contenu « HAS » 2 en choisissant la qualité vidéo Dj en fonction de la ressource réseau disponible. On ne décrit pas ici plus en détail la façon dont le module client HAS choisit le débit d’encodage du prochain fragment vidéo à télécharger : il existe en effet de nombreux algorithmes permettant d’opérer ce choix, dont les stratégies sont plus ou moins sécuritaires ou agressives. On rappelle cependant que, le plus souvent, le principe général de tels algorithmes repose sur le téléchargement d’un premier fragment au débit d’encodage le plus faible proposé dans le manifeste, et sur l’évaluation du temps de récupération de ce premier fragment. Sur cette base, le module client HAS évalue si, en fonction de la taille du fragment et du temps mis pour le récupérer, les conditions réseau permettent de télécharger le fragment suivant à un débit d’encodage plus élevé. Certains algorithmes reposent sur une augmentation progressive du niveau de qualité des fragments de contenu téléchargés ; d’autres proposent des approches plus risquées, avec des sauts dans les niveaux des débits d’encodage des fragments successifs.According to the prior art, the HAS module is responsible for recovering the “chunks” from the “HAS” content server 2 by choosing the video quality Dj according to the available network resource. We will not describe here in more detail the way in which the HAS client module chooses the encoding rate of the next video fragment to be downloaded: there are indeed many algorithms allowing this choice to be made, whose strategies are more or less secure. or aggressive. It is recalled, however, that, most often, the general principle of such algorithms is based on the downloading of a first fragment at the lowest encoding rate proposed in the manifesto, and on the evaluation of the recovery time of this first fragment. . Based on this, the HAS client module assesses whether, based on the size of the fragment and the time taken to retrieve it, the network conditions allow the next fragment to be downloaded at a higher encoding rate. Some algorithms rely on gradually increasing the quality level of downloaded content fragments; others propose more risky approaches, with jumps in the levels of the encoding bit rates of the successive fragments.

Dans un cas classique, si un « chunk » vidéo dure 2 secondes, la récupération du « chunk » par le module HAS ne doit pas excéder 2 secondes, afin de permettre une restitution sans interruption du contenu. Il convient donc pour le module HAS d’opérer le meilleur compromis entre une qualité de restitution, et donc un débit d’encodage, aussi élevés que possible, et le temps de téléchargement du fragment, qui doit être suffisamment faible pour permettre une restitution en continu sur le téléviseur 5 par exemple.In a typical case, if a video “chunk” lasts 2 seconds, the recovery of the “chunk” by the HAS module must not exceed 2 seconds, in order to allow uninterrupted playback of the content. It is therefore appropriate for the HAS module to operate the best compromise between a restitution quality, and therefore an encoding bit rate, as high as possible, and the download time of the fragment, which must be sufficiently low to allow restitution in continuously on the TV 5 for example.

Au cours d’une étape non représentée, le module HAS récupère le fichier manifeste 7 afin de découvrir les fragments disponibles du contenu vidéo C1, et les différentes qualités vidéo Dj associées. Dans un exemple illustré par la suite en relation avec lafigure 3B, le contenu C1 est par exemple proposé sous forme de fragments de durée 2s, avec un premier débit d’encodage D1 = 500 kb/s, un deuxième débit d’encodage D2 = 1000 kb/s, un troisième débit d’encodage D3 = 2000 kb/s, etc.During a step not shown, the HAS module retrieves the manifest file 7 in order to discover the available fragments of the video content C1, and the various associated video qualities Dj. In an example illustrated below in relation to FIG. 3B , the content C1 is for example offered in the form of fragments of duration 2s, with a first encoding rate D1 = 500 kb/s, a second encoding rate D2 = 1000 kb/s, a third encoding rate D3 = 2000 kb/s, etc.

Dans un mode de fonctionnement normal, non illustré, le module HAS opère le téléchargement par exemple, des fragments successifs C11@D1 (soit le premier fragment temporel à un débit d’encodage de 500 kb/s), puis C12@D3 (soit le deuxième fragment temporel à un débit d’encodage de 2000 kb/s), puis C13@D3 (soit le troisième fragment temporel à un débit d’encodage de 2000 kb/s), puis finalement jusqu’à une lecture en mode normale en haute qualité d’une vidéo C1i@D5 (soit le i-ième fragment temporel à un débit d’encodage de 5000kb/s).In a normal mode of operation, not illustrated, the HAS module performs the downloading, for example, of successive fragments C1 1 @D1 (i.e. the first temporal fragment at an encoding rate of 500 kb/s), then C1 2 @D3 (i.e. the second time fragment at an encoding rate of 2000 kb/s), then C1 3 @D3 (i.e. the third time fragment at an encoding rate of 2000 kb/s), then finally until a playback in normal mode in high quality of a C1i@D5 video (i.e. the i-th temporal fragment at an encoding rate of 5000kb/s).

Les différents fragments téléchargés par le module client HAS sont transmis au téléviseur 5 via la clé HDMI 8 par exemple pour leur restitution à l’utilisateur.The various fragments downloaded by the HAS client module are transmitted to the television set 5 via the HDMI key 8 for example for their restitution to the user.

L’algorithme mis en œuvre par le module client HAS pour déterminer quel fragment à quel débit d’encodage doit être téléchargé en mode de fonctionnement normal (c’est-à-dire en dehors des périodes où il est piloté par le module SEL_Q de sélection de la qualité d’un fragment) peut être l’un des algorithmes déjà existants de l’art antérieur. Cet algorithme ne sera donc pas décrit ici plus en détail.The algorithm implemented by the HAS client module to determine which fragment at which encoding rate must be downloaded in normal operating mode (i.e. outside the periods when it is controlled by the SEL_Q module of selection of the quality of a fragment) can be one of the already existing algorithms of the prior art. This algorithm will therefore not be described here in more detail.

Lorsque l’utilisateur visualise en mode de lecture normale un contenu numérique tel qu’une vidéo, celui-ci peut à tout instant utiliser la fonction avance/retour rapide. Ainsi, dans une étape 302, le module FST_FRW du lecteur de flux multimédia 9 reçoit une commande d’activation par l’utilisateur d’une fonction avance/retour rapide dans le contenu, avec une sélection d’une vitesse d’accélération, par exemple x64, soit une vitesse accélérée soixante-quatre fois plus rapide que la vitesse de lecture normale du contenu. Cette commande d’activation est faite par l’utilisateur via par exemple une application logicielle de commande de la clé HDMI 8, d’un téléphone intelligent 3, ou via une télécommande reliée à la clé HDMI 8 connectée au téléviseur 5. En réponse à cette commande, le module Fst_FRW augmente la vitesse de navigation dans le contenu.When the user is viewing digital content such as a video in normal playback mode, the user can use the fast forward/reverse function at any time. Thus, in a step 302, the FST_FRW module of the multimedia stream player 9 receives a command for activation by the user of a fast forward/backward function in the content, with a selection of an acceleration speed, by example x64, which is an accelerated speed sixty-four times faster than the normal playback speed of the content. This activation command is made by the user via, for example, a software application for controlling the HDMI key 8, a smart telephone 3, or via a remote control connected to the HDMI key 8 connected to the television set 5. In response to this command, the Fst_FRW module increases the browsing speed in the content.

Dans une étape 303, le module SEL_Q du lecteur de flux multimédia 9 va sélectionner un « chunk » à une position i dans le contenu vidéo C1 correspondant à un ratio de la vitesse A de navigation accélérée dans la vidéo C1 sur la durée D du « chunk ». Le module SEL_Q commande ensuite au module HAS de récupérer le fragment sélectionné.In a step 303, the module SEL_Q of the multimedia stream player 9 will select a “chunk” at a position i in the video content C1 corresponding to a ratio of the speed A of accelerated navigation in the video C1 over the duration D of the “ chunk”. The SEL_Q module then commands the HAS module to retrieve the selected fragment.

Par exemple, l’utilisateur choisit de naviguer dans une vidéo avec une vitesse de navigation accélérée x64, i.e. soixante-quatre fois plus rapide que la vitesse de lecture normale du contenu. On suppose que cette vidéo est découpée en « chunks » de durées tous identiques, égales à 2 secondes. Partant d’une position de navigation courante associée au segment de rang N, le module HAS du lecteur de flux multimédia 9 va donc récupérer dans une étape 304 le « chunk » en position i = N+32(x64/2 = 32),puis les « chunks » suivant toutes les N+32n-ième positions (par exemple, le « chunk » suivant le N+32 sera le N+64 etc…).Pour cela, comme pour l’étape 301, une requête depuis le module HAS vers le serveur HAS 2 est envoyée. En réponse à cette requête, le serveur HAS 2 envoie au terminal de restitution 9 les fragments choisis par le module SEL_Q.For example, the user chooses to navigate in a video with an accelerated navigation speed x64, ie sixty-four times faster than the normal reading speed of the content. It is assumed that this video is cut into “chunks” of identical durations, equal to 2 seconds. Starting from a current navigation position associated with the segment of rank N, the HAS module of the multimedia stream player 9 will therefore recover in a step 304 the “chunk” in position i=N+32 (x64/2=32), then the “chunks” following all the N+32n-th positions (for example, the “chunk” following the N+32 will be the N+64 etc…) . For this, as for step 301, a request from the HAS module to the HAS server 2 is sent. In response to this request, the HAS server 2 sends the restitution terminal 9 the fragments chosen by the module SEL_Q.

Ainsi, afin de pouvoir permettre plus aisément à l’utilisateur d’identifier quelle est sa position de navigation courante dans le contenu numérique, une imagette représentative du contenu à cette position de navigation courante est affichée sur le terminal de restitution du contenu numérique. Dans la mesure où chaque segment d’un contenu vidéo comprend une image « I », généralement la première image du segment temporel, cette image intra peut être affichée sous forme d’imagette sur le terminal client pour illustrer le flux vidéo.Thus, in order to be able to make it easier for the user to identify his current browsing position in the digital content, a thumbnail representing the content at this current browsing position is displayed on the digital content restitution terminal. Since each segment of video content includes an “I” frame, usually the first frame of the time segment, this intra frame can be displayed as a thumbnail on the client terminal to illustrate the video stream.

On présente en lien avec lafigure 4un exemple d’affichage d’une imagette I, par exemple sur le téléviseur 5, à intervalles de temps réguliers, par exemple toutes les secondes. L’affichage de l’imagette se fait par exemple sur l’intégralité de l’écran du téléviseur 5 pour une meilleure visualisation par l’utilisateur.An example of display of a thumbnail I , for example on the television set 5, at regular time intervals, for example every second, is presented in connection with FIG. The display of the thumbnail is done for example on the entire screen of the television set 5 for better viewing by the user.

Dans une variante, l’affichage de l’imagette se fait au niveau du curseur Cr de position de lecture sur la ligne de temps TL.In a variant, the display of the thumbnail is done at the level of the playback position cursor Cr on the timeline TL.

Pour cela, dans une étape 305 illustré enfigure 3A, le module d’extraction EXTRACT_IM du lecteur de flux multimédia 9 extrait une imagette du « chunk » sélectionné et récupéré à l’étape 303.For this, in a step 305 illustrated in FIG. 3A , the extraction module EXTRACT_IM of the multimedia stream player 9 extracts a thumbnail of the “chunk” selected and retrieved in step 303.

L’imagette extraite peut correspondre par exemple à la première image « I » du fragment sélectionné. L’imagette extraite est ensuite affichée sur le téléviseur 5 afin que l’utilisateur sache où il en est dans la visualisation du contenu vidéo C1. Le temps nécessaire à la restitution de l’imagette dépend de la qualité d’encodage du fragment sélectionné à l’étape 303 et d’un temps de téléchargement du fragment. Ainsi, plus la qualité du fragment est élevée, plus le temps nécessaire au téléchargement et à la restitution de l’imagette est élevé. On appellera dans la suite ce temps Tres.The extracted thumbnail can correspond for example to the first “I” image of the selected fragment. The extracted thumbnail is then displayed on the television 5 so that the user knows where he is in viewing the video content C1. The time necessary for the restitution of the thumbnail depends on the encoding quality of the fragment selected in step 303 and on a downloading time of the fragment. Thus, the higher the quality of the fragment, the longer the time required for downloading and restoring the thumbnail. In what follows, this time will be called T res .

Dans un premier mode de réalisation de l’invention, on considère qu’ qu’à l’initialisation de la navigation accélérée dans le contenu, on affiche une imagette correspondant à la position de navigation courante dans le contenu à intervalles de temps réguliers de durée T=1s.In a first embodiment of the invention, it is considered that when the accelerated navigation in the content is initialized, a thumbnail corresponding to the current navigation position in the content is displayed at regular time intervals of duration T=1s.

Il est alors nécessaire d’être capable de récupérer l’imagette représentative de la position de navigation courante dans le contenu en moins de T=1s (ou en un temps maximum de T=1s), pour permettre une visualisation en continu des imagettes par l’utilisateur, en cohérence avec la vitesse de navigation accélérée A qu’il a choisie.It is then necessary to be able to recover the thumbnail representing the current navigation position in the content in less than T=1s (or in a maximum time of T=1s), to allow continuous visualization of the thumbnails by the user, consistent with the accelerated navigation speed A that he has chosen.

Dans une étape 306, le module SEL_Q du lecteur de flux multimédia 9 sélectionne donc, en fonction d’un temps Tresde restitution d’une imagette, qui correspond au temps de téléchargement d’un premier fragment, par exemple C1N+32, et d’affichage de la première image « I » du segment, le prochain fragment à télécharger pour être au plus près de la vitesse d’accélération choisie par l’utilisateur, dans cet exemple x64. De la même manière, pour chaque fragment courant téléchargé et pour chaque restitution de l’imagette correspondante, le module SEL_Q détermine quel sera le prochain fragment à télécharger en fonction d’une part de la vitesse de navigation accélérée A choisie par l’utilisateur et de la durée D des fragments du contenu vidéo C1, et d’autre part du temps Tresnécessaire à la restitution d’une imagette.In a step 306, the module SEL_Q of the multimedia stream reader 9 therefore selects, as a function of a time T res of restitution of a thumbnail, which corresponds to the download time of a first fragment, for example C1 N+32 , and display of the first “I” image of the segment, the next fragment to be downloaded to be as close as possible to the acceleration speed chosen by the user, in this example x64. In the same way, for each current fragment downloaded and for each restitution of the corresponding thumbnail, the module SEL_Q determines which will be the next fragment to be downloaded according on the one hand to the accelerated browsing speed A chosen by the user and of the duration D of the fragments of the video content C1, and on the other hand of the time T res necessary for the restitution of a thumbnail.

En d’autres termes, sous le contrôle du module SEL_Q, le module HAS choisit le débit d’encodage du prochain fragment vidéo à télécharger dont sera extraite la prochaine imagette à afficher. Il existe de nombreux algorithmes permettant d’opérer ce choix, dont les stratégies sont plus ou moins sécuritaires ou agressives. On rappelle cependant que, le plus souvent, le principe général de tels algorithmes repose sur le téléchargement d’un premier fragment au débit d’encodage le plus faible proposé dans le manifeste, et sur l’évaluation du temps de récupération de ce premier fragment. Sur cette base, le module client HAS évalue si, en fonction de la taille du fragment et du temps mis pour le récupérer, les conditions réseau permettent de télécharger le fragment suivant à un débit d’encodage plus élevé. Certains algorithmes reposent sur une augmentation progressive du niveau de qualité des fragments de contenu téléchargés ; d’autres proposent des approches plus risquées, avec des sauts dans les niveaux des débits d’encodage des fragments successifs.In other words, under the control of the SEL_Q module, the HAS module chooses the encoding rate of the next video fragment to be downloaded from which the next thumbnail to be displayed will be extracted. There are many algorithms for making this choice, whose strategies are more or less secure or aggressive. It is however recalled that, most often, the general principle of such algorithms is based on the downloading of a first fragment at the lowest encoding rate proposed in the manifesto, and on the evaluation of the recovery time of this first fragment. . Based on this, the HAS client module evaluates whether, based on the size of the fragment and the time taken to retrieve it, the network conditions allow the next fragment to be downloaded at a higher encoding rate. Some algorithms rely on gradually increasing the quality level of downloaded content fragments; others propose more risky approaches, with jumps in the levels of the encoding bit rates of the successive fragments.

De tels algorithmes peuvent être adaptés à la fonction avance/retour rapide d’un lecteur de flux multimédia afin qu’ils prennent en compte des paramètres de vitesse d’accélération, de fréquence de lecture.Such algorithms can be adapted to the fast forward/backward function of a multimedia stream player so that they take into account parameters of acceleration speed and playback frequency.

Ainsi, si la bande passante est satisfaisante, et si le terminal de restitution dispose d’un débit de téléchargement instantané élevé, il est possible de télécharger un segment temporel associé à un débit d’encodage plus élevé, qui permettra de restituer à l’utilisateur une imagette de meilleure qualité visuelle. On adapte ainsi en permanence le débit d’encodage des segments temporels que l’on télécharge pour en extraire les imagettes, en fonction des conditions de ressource du terminal utilisateur.Thus, if the bandwidth is satisfactory, and if the rendering terminal has a high instantaneous download rate, it is possible to download a time segment associated with a higher encoding rate, which will make it possible to render to the user a thumbnail of better visual quality. The encoding rate of the time segments that are downloaded is thus permanently adapted to extract the thumbnails, depending on the resource conditions of the user terminal.

On présente désormais, en relation avec lafigure 3B, un exemple de sélection 306 de la qualité d’un fragment en fonction de la bande passante d’un réseau de communication local lors de la mise en œuvre d’une fonction avance/retour rapide d’un contenu numérique téléchargé en téléchargement progressif adaptatif (HAS) par un lecteur de flux multimédia 9 selonla figure 2.We now present, in relation to FIG. 3B , an example of selection 306 of the quality of a fragment according to the bandwidth of a local communication network during the implementation of a fast forward/backward function digital content downloaded in adaptive progressive download (HAS) by a multimedia stream player 9 according to FIG .

Dans cet exemple, l’utilisateur visualise un contenu vidéo diffusé en HAS avec des tailles de fragments, ou « chunks », d’une même durée D, par exemple de 2 secondes, en mode lecture normale. Le flux vidéo consommé est de qualité élevée, par exemple 5000kb/s (D5) comme illustré enfigure 3A.In this example, the user views video content broadcast in HAS with sizes of fragments, or “chunks”, of the same duration D, for example 2 seconds, in normal playback mode. The video stream consumed is of high quality, for example 5000 kb/s (D5) as illustrated in FIG. 3A .

À la position i = N, correspondant à un instant particulier du contenu vidéo représenté par le fragment C1N@D5, l’utilisateur décide de naviguer en accéléré dans le contenu vidéo C1, par exemple à la vitesse de navigation accélérée A de x64.At the position i=N, corresponding to a particular instant of the video content represented by the fragment C1 N @D5, the user decides to navigate in accelerated mode in the video content C1, for example at the accelerated navigation speed A of x64.

Le premier « chunk » qui est récupéré est le « chunk » se trouvant à la position i = N + A/D, c’est-à-dire i = N + 32 (où 32 = x64 / 2s). Par défaut, le premier « chunk » à être récupéré par le module HAS, sous le contrôle du module SEL_Q, est de qualité inférieure à la qualité atteinte en mode de lecture normale, dans cette exemple la qualité D5, afin de récupérer la première imagette à restituer le plus rapidement possible (typiquement la plus faible qualité disponible selon le manifeste).The first “chunk” that is recovered is the “chunk” at position i = N + A/D, i.e. i = N + 32 (where 32 = x64 / 2s). By default, the first "chunk" to be recovered by the HAS module, under the control of the SEL_Q module, is of lower quality than the quality reached in normal playback mode, in this example the D5 quality, in order to recover the first thumbnail to be returned as soon as possible (typically the lowest quality available according to the manifest).

Pour chaque fragment à récupérer, le module SEL_Q du lecteur de flux multimédia 9 compare dans un premier temps le temps Tresnécessaire à la restitution de l’imagette I à la durée T de l’intervalle de temps entre deux restitutions d’imagettes successives afin de déterminer si le prochain fragment à récupérer peut être d’une qualité plus élevée ou doit être d’une qualité plus faible que le fragment courant venant d’être téléchargé. Le temps Tresde restitution d’une imagette est dépendant de la bande passante du réseau de communication local. Un temps Tressupérieur à la durée T indique que la bande passante n’est pas suffisante et qu’il faut donc privilégier la récupération d’un fragment suivant de plus faible qualité par rapport au fragment courant. A contrario, un temps Tresinférieur à la durée T indique que la bande passante est suffisante pour récupérer un fragment suivant de meilleure qualité par rapport au fragment courant.For each fragment to be recovered, the module SEL_Q of the multimedia stream reader 9 initially compares the time T res necessary for the restitution of the thumbnail I to the duration T of the time interval between two restitutions of successive thumbnails to determine if the next fragment to be retrieved can be of higher quality or should be of lower quality than the current fragment just downloaded. The time T res for restoring a thumbnail is dependent on the bandwidth of the local communication network. A time T res greater than the duration T indicates that the bandwidth is not sufficient and that it is therefore necessary to give preference to the recovery of a following fragment of lower quality with respect to the current fragment. Conversely, a time T res less than the duration T indicates that the bandwidth is sufficient to recover a following fragment of better quality compared to the current fragment.

Dans cet exemple, le temps Tresmaximal de restitution de l’imagette ne doit pas dépasser 1 seconde, afin d’avoir un écoulement fluide du contenu numérique en mode de navigation accélérée . In this example, the maximum image restitution time T res must not exceed 1 second, in order to have a fluid flow of the digital content in accelerated navigation mode .

Ainsi, le premier « chunk » qui est téléchargé est le « chunk » de plus faible qualité se trouvant à la position i = N + 32 (32 = x64 / 2s) , c’est-à-dire le « chunk » en position C1n+32@D1. On a réussi à restituer cette imagette de la vidéo en moins de 1 seconde. On peut alors afficher l’imagette à l’utilisateur sans perturber l‘écoulement du temps en mode de lecture accéléré à la vitesse de x64. Le fragment suivant se trouvant à la position i = N+32, ou i = N+64, pourra être dans ce cas choisi avec une qualité supérieure à celle du fragment C1N+32@D1, si la différence de temps le permet. Ainsi, le prochain « chunk » téléchargé est par exemple le C1n+64@D4. De cette manière, il est possible d’afficher une imagette de meilleure qualité à l’utilisateur.Thus, the first chunk that is downloaded is the lowest quality chunk at position i = N + 32 (32 = x64 / 2s), i.e. the chunk at position C1 n+32 @D1. We managed to render this thumbnail of the video in less than 1 second. The thumbnail can then be displayed to the user without disturbing the passage of time in accelerated reading mode at the speed of x64. The following fragment located at position i=N+32, or i=N+64, may in this case be chosen with a higher quality than that of the fragment C1 N+32 @D1, if the time difference allows it. Thus, the next “chunk” downloaded is for example the C1 n+64 @D4. In this way, it is possible to display a thumbnail of better quality to the user.

Si on ne réussit pas à restituer l’imagette du premier « chunk » en un temps de restitution Tresde 1 seconde, car la bande passante du réseau de communication local de l’utilisateur ne le permet pas, on va donc avoir un écoulement du temps qui sera ralenti par rapport à la vitesse de navigation accélérée x64 choisie par l’utilisateur, et l’utilisateur va devoir attendre que l’imagette soit disponible pour pouvoir être affichée, ce qui nuit à son confort. Dans ce cas, si le premier « chunk » à récupérer en position i = N+32 n’est pas celui de plus faible qualité, c’est-à-dire par exemple le « chunk » C1n+32@D3, alors le module SEL_Q sélectionnera le « chunk » suivant, c’est-à-dire celui en position i = N+32 ou i = N+64, d’une qualité plus faible, par exemple le C1n+64@D2 en espérant le récupérer en moins de 1 seconde.If we do not succeed in restoring the thumbnail of the first "chunk" in a restitution time T res of 1 second, because the bandwidth of the user's local communication network does not allow it, we will therefore have a flow time which will be slowed down in relation to the x64 accelerated browsing speed chosen by the user, and the user will have to wait for the thumbnail to be available in order to be displayed, which is detrimental to his comfort. In this case, if the first “chunk” to be recovered at position i = N+32 is not the one with the lowest quality, i.e. for example the “chunk” C1 n+32 @D3, then the SEL_Q module will select the next "chunk", i.e. the one in position i = N+32 or i = N+64, of a lower quality, for example C1 n+64 @D2 hoping recover it in less than 1 second.

Dans un autre mode de réalisation selon l’invention, il est également possible de jouer, non seulement sur le débit d’encodage du segment temporel dont est extraite l’imagette à restituer, mais également sur la durée de l’intervalle de temps entre la restitution de deux imagettes successives, en fonction des contraintes de ressource du réseau local.In another embodiment according to the invention, it is also possible to act, not only on the encoding rate of the time segment from which the thumbnail to be restored is extracted, but also on the duration of the time interval between the restitution of two successive thumbnails, according to the resource constraints of the local network.

Ainsi, dans cette variante, la durée T de l’intervalle de temps entre deux restitutions d’imagettes successives n’est plus fixe mais peut être adaptée en fonction de la bande passante disponible, soit pour afficher à l’utilisateur davantage d’imagettes par seconde, si les conditions sont bonnes, soit pour espacer les restitutions d’imagettes successives.Thus, in this variant, the duration T of the time interval between two successive thumbnail renderings is no longer fixed but can be adapted according to the available bandwidth, either to display more thumbnails to the user per second, if the conditions are good, or to space out the restitutions of successive thumbnails.

Dans l’exemple décrit, si on ne réussit pas à restituer l’imagette du fragment C1N+32@D1 dans cet intervalle de temps d’une durée de 1 seconde, alors dans ce cas, afin d’assurer un écoulement du temps le plus proche possible de ce qui est demandé par l’utilisateur, le module SEL_Q détermine quel est le prochain « chunk » à télécharger. Dans cet exemple, le temps maximum de restitution Trespour récupérer une imagette sans perturber l’écoulement du temps de visualisation en mode de lecture accélérée en x64 est de 1 seconde. Si on télécharge le fragment C1N+32@D1 et on extrait l’imagette en par exemple T = 1,25s, alors le prochain « chunk » que l’on va décider de télécharger sera à la position i = T* (A/D), soit i = 1,25 x 64/2 = 40. On télécharge donc le « chunk » à la position i = N+40 et non i = N+32 afin de garantir un écoulement de l’avance rapide le plus proche possible du x64, c’est-à-dire le « chunk » C1n+40@D1.In the example described, if we do not succeed in restoring the thumbnail of fragment C1 N+32 @D1 in this time interval of 1 second duration, then in this case, in order to ensure a passage of time as close as possible to what is requested by the user, the SEL_Q module determines which is the next “chunk” to download. In this example, the maximum restitution time T res to recover a thumbnail without disturbing the flow of the viewing time in accelerated reading mode in x64 is 1 second. If we download the fragment C1 N+32 @D1 and we extract the thumbnail in for example T = 1.25s, then the next "chunk" that we will decide to download will be at position i = T* (A /D), i.e. i = 1.25 x 64/2 = 40. We therefore download the "chunk" at position i = N+40 and not i = N+32 in order to guarantee a flow of fast forward the as close as possible to x64, i.e. the C1 n+40 @D1 chunk.

Plus généralement, Le module HAS peut jouer conjointement sur le débit d’encodage des segments temporels à télécharger, et sur la fréquence de restitution des imagettes, en fonction des contraintes de ressource du réseau, pour offrir à l’utilisateur la meilleure expérience de navigation accélérée dans le contenu.More generally, the HAS module can act jointly on the encoding rate of the time segments to be downloaded, and on the frequency of restitution of the thumbnails, according to the resource constraints of the network, to offer the user the best browsing experience. accelerated in content.


ANNEXE 1 : exemple de fichier manifestAPPENDIX 1: sample manifest file

Claims (11)

Procédé de navigation accélérée dans un contenu numérique, obtenu par téléchargement progressif adaptatif par un terminal de restitution via un réseau de communication , comprenant :
- une obtention d’un fichier de description dudit contenu numérique, comprenant une liste de segments temporels dudit contenu associés chacun à plusieurs débits d’encodage dudit contenu,
- une restitution, à intervalles de temps de durée T, d’une imagette représentative dudit contenu à une position de navigation courante dans ledit contenu, ladite imagette étant extraite d’un desdits segments temporels, ladite position de navigation courante dépendant d’une vitesse de navigation dans ledit contenu,
caractérisé en ce qu’il comprend une étape de détermination d’un débit d’encodage dudit segment temporel dont est extraite ladite imagette représentative dudit contenu à ladite position de navigation courante, en fonction d’une contrainte de ressource obtenue par ledit terminal, et une étape de téléchargement dudit segment temporel dont est extraite ladite imagette représentative dudit contenu à ladite position de navigation courante, audit débit d’encodage déterminé.
Method for accelerated browsing in digital content, obtained by adaptive progressive downloading by a rendering terminal via a communication network, comprising:
- obtaining a description file of said digital content, comprising a list of time segments of said content each associated with several encoding bit rates of said content,
- a restitution, at time intervals of duration T, of a thumbnail representing said content at a current browsing position in said content, said thumbnail being extracted from one of said time segments, said current browsing position depending on a speed navigation in said content,
characterized in that it comprises a step of determining an encoding rate of said time segment from which said thumbnail representative of said content is extracted at said current navigation position, as a function of a resource constraint obtained by said terminal, and a step of downloading said time segment from which said thumbnail representative of said content is extracted at said current navigation position, at said determined encoding rate.
Procédé de navigation accélérée selon la revendication 1,caractérisé en ce queladite contrainte de ressource dépend d’un débit instantané de téléchargement dudit terminal.Accelerated navigation method according to Claim 1, characterized in that the said resource constraint depends on an instantaneous download rate of the said terminal. Procédé de navigation accélérée selon la revendication 2,caractérisé en ce queledit débit instantané de téléchargement est estimé à partir d’une durée de téléchargement d’un segment temporel dont est extraite une imagette restituée et d’une taille dudit segment temporel.Accelerated navigation method according to Claim 2, characterized in that the said instantaneous downloading rate is estimated from a duration of downloading of a time segment from which a restored thumbnail is extracted and from a size of the said time segment. Procédé de navigation accélérée selon l'une quelconque des revendications 1 à 3,caractérisé en ce qu’il comprend également une étape de détermination de ladite durée T entre deux restitutions d’imagettes successives, en fonction de ladite contrainte de ressource obtenue par ledit terminal de restitution.Accelerated navigation method according to any one of Claims 1 to 3, characterized in that it also comprises a step of determining the said duration T between two successive thumbnail restitutions, as a function of the said resource constraint obtained by the said terminal of restitution. Produit programme d’ordinateur comprenant des instructions de code de programme pour la mise en œuvre d’un procédé de navigation en accéléré dans un contenu numérique, obtenu par téléchargement progressif adaptatif par un terminal de restitution via un réseau de communication selon l'une quelconque des revendications 1 à 4, lorsqu’il est exécuté par un processeur.Computer program product comprising program code instructions for implementing an accelerated navigation process in digital content, obtained by adaptive progressive downloading by a rendering terminal via a communication network according to any of claims 1 to 4, when executed by a processor. Support d’enregistrement lisible par un ordinateur sur lequel est enregistré un programme d’ordinateur selon la revendication 5.A computer-readable recording medium on which a computer program according to claim 5 is recorded. Dispositif de gestion de navigation accélérée dans un contenu numérique, obtenu par téléchargement progressif adaptatif par un terminal de restitution via un réseau de communication local, ledit dispositif de gestion comprenant :
- un module d’obtention d’un fichier de description dudit contenu numérique, comprenant une liste de segments temporels dudit contenu associés chacun à plusieurs débits d’encodage dudit contenu,
- un module de restitution, à intervalles de temps de durée T, d’une imagette représentative dudit contenu à une position de navigation courante dans ledit contenu, ladite imagette étant extraite d’un desdits segments temporels, ladite position de navigation courante dépendant d’une vitesse de navigation dans ledit contenu,
caractérisé en ce qu’ilcomprend en outre un module de détermination d’un débit d’encodage dudit segment temporel dont est extraite ladite imagette représentative dudit contenu à ladite position de navigation courante, en fonction d’une contrainte de ressource estimée par ledit terminal, et un module de téléchargement dudit segment temporel dont est extraite ladite imagette représentative dudit contenu à ladite position de navigation courante, audit débit d’encodage déterminé.
Device for managing accelerated browsing in digital content, obtained by adaptive progressive downloading by a rendering terminal via a local communication network, said management device comprising:
- a module for obtaining a description file of said digital content, comprising a list of time segments of said content each associated with several encoding rates of said content,
- a restitution module, at time intervals of duration T, of a thumbnail representing said content at a current browsing position in said content, said thumbnail being extracted from one of said time segments, said current browsing position depending on a browsing speed in said content,
characterized in that itunderstand additionally a module for determining an encoding rate of said time segment from which said thumbnail representative of said content is extracted at said current navigation position, as a function of a resource constraint estimated by said terminal, and a download module of said time segment from which is extracted said thumbnail representative of said content at said current browsing position, at said determined encoding rate.
Dispositif de gestion de navigation accélérée dans un contenu numérique selon la revendication 7,caractérisé en ce queladite contrainte de ressource dépend d’un débit instantané de téléchargement dudit terminal.Device for managing accelerated browsing in digital content according to Claim 7, characterized in that the said resource constraint depends on an instantaneous download rate of the said terminal. Dispositif de gestion de navigation accélérée dans un contenu numérique selon la revendication 8,caractérisé en ce queledit débit instantané de téléchargement est estimé à partir d’une durée de téléchargement d’un segment temporel dont est extraite une imagette restituée et d’une taille dudit segment temporel.Device for managing accelerated browsing in digital content according to Claim 8, characterized in that the said instantaneous downloading rate is estimated from a downloading duration of a time segment from which a restored thumbnail is extracted and of a size of said time segment. Dispositif de gestion de navigation accélérée dans un contenu numérique selon l’une quelconque des revendications 7 à 9caractérisée en ce queledit module de détermination est apte à déterminer ladite durée T entre deux restitutions d’imagettes successives, en fonction de ladite contrainte de ressource estimée par ledit terminal de restitution.Device for managing accelerated browsing in digital content according to any one of Claims 7 to 9 , characterized in that the said determination module is able to determine the said duration T between two successive thumbnail renderings, as a function of the said resource constraint. estimated by said rendering terminal. Lecteur de flux multimédia, caractérisé en ce qu’il comprend un dispositif de gestion de navigation accélérée dans un contenu numérique (C1) selon l’une quelconque des revendications 7 à 10.Multimedia stream player, characterized in that it comprises a device for managing accelerated browsing in digital content (C1) according to any one of Claims 7 to 10.
FR1902218A 2019-03-05 2019-03-05 A method of accelerated browsing of digital content obtained by adaptive progressive download (HAS), manager, media player and corresponding computer program. Withdrawn FR3093603A1 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
FR1902218A FR3093603A1 (en) 2019-03-05 2019-03-05 A method of accelerated browsing of digital content obtained by adaptive progressive download (HAS), manager, media player and corresponding computer program.

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
FR1902218A FR3093603A1 (en) 2019-03-05 2019-03-05 A method of accelerated browsing of digital content obtained by adaptive progressive download (HAS), manager, media player and corresponding computer program.
FR1902218 2019-03-05

Publications (1)

Publication Number Publication Date
FR3093603A1 true FR3093603A1 (en) 2020-09-11

Family

ID=68210854

Family Applications (1)

Application Number Title Priority Date Filing Date
FR1902218A Withdrawn FR3093603A1 (en) 2019-03-05 2019-03-05 A method of accelerated browsing of digital content obtained by adaptive progressive download (HAS), manager, media player and corresponding computer program.

Country Status (1)

Country Link
FR (1) FR3093603A1 (en)

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20150067744A1 (en) * 2013-08-27 2015-03-05 Home Box Office, Inc. Providing responsive video previews during rewind and fast forward
WO2018125590A1 (en) * 2016-12-30 2018-07-05 Tivo Solutions Inc. Advanced trick-play modes for streaming video

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20150067744A1 (en) * 2013-08-27 2015-03-05 Home Box Office, Inc. Providing responsive video previews during rewind and fast forward
WO2018125590A1 (en) * 2016-12-30 2018-07-05 Tivo Solutions Inc. Advanced trick-play modes for streaming video

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
PENG ZHU ET AL: "Trick Play Function for VOD with SVC source", 2010 IEEE/IFIP 8TH INTERNATIONAL CONFERENCE ON EMBEDDED AND UBIQUITOUS COMPUTING (EUC 2010) : HONG KONG, CHINA, 11 - 13 DECEMBER 2010, 1 December 2010 (2010-12-01), Piscataway, NJ, pages 255 - 259, XP055653839, ISBN: 978-1-4244-9719-5, DOI: 10.1109/EUC.2010.44 *

Similar Documents

Publication Publication Date Title
FR3081647A1 (en) MANAGEMENT OF ADAPTIVE PROGRESSIVE DOWNLOAD (HAS) OF DIGITAL CONTENT WITHIN A REAL-TIME MULTIMEDIA STREAM READER TERMINAL.
WO2019220034A1 (en) Management of adaptive progressive download of a digital content within a restoration terminal of a local communication network
WO2021089942A1 (en) Method for managing zapping of digital multimedia contents obtained by http adaptive streaming (has), and corresponding management device, multimedia stream reader and computer program
EP4035408A1 (en) Management of adaptive streaming of an item of digital content over a mobile network with selection of a maximum authorized encoding rate on the basis of a data bucket
EP3987820A1 (en) Method for managing adaptive progressive downloading (has) of digital content which is broadcast in real time, corresponding administrator, multimedia stream player terminal and computer program
FR3093603A1 (en) A method of accelerated browsing of digital content obtained by adaptive progressive download (HAS), manager, media player and corresponding computer program.
FR3093605A1 (en) A method of accelerated browsing of digital content obtained by adaptive progressive download (HAS), manager, media player and corresponding computer program.
EP3926929B1 (en) Process for managing the playback of digital content within a multimedia content player terminal connected to a restitution device
WO2023208688A1 (en) Management of the rendering of an item of multimedia content
WO2021105585A1 (en) Method for managing a list of contents accessible for zapping, the digital contents being downloadable in an http adaptive streaming (has) mode, and corresponding management device, multimedia stream reader and computer program
EP3840391A1 (en) Management of the reproduction of multimedia content and a navigation interface on a screen
EP2819424A1 (en) Method for improving the time for switching between audiovisual programs
WO2021209706A1 (en) Management of access to digital content available via progressive and adaptive streaming and encoded using a variable bit rate encoding method, depending on a network load
FR3103668A1 (en) Management of the adaptive progressive download of digital content over the mobile network with determination of a maximum encoding rate allowed over a session based on a bucket of data
WO2020234030A1 (en) Rendering of background or insertion content as part of an adaptive progressive download (has)
EP4109905A1 (en) Management of the adaptive progressive downloading of digital content in screen saver mode
FR3096210A1 (en) A method of transmitting digital content having several versions accessible from a content server to a playback terminal.
EP3846489A1 (en) Method for managing a progressive and adaptive download of digital content by a multimedia stream reader terminal connected to a communication network, corresponding management device, multimedia stream reader terminal and computer program
FR3128084A1 (en) method for managing the playback of multimedia content.
FR3114719A1 (en) Method for managing the reading of digital content within a multimedia content player terminal connected to a rendering device
FR3116684A1 (en) Management of adaptive progressive downloading of purchased content, taking into account a history of content playback quality levels by a multimedia stream player terminal
FR3114720A1 (en) Management of adaptive progressive downloading of content taking into account the quality of the signal exchanged between the client terminal and the network access point
EP4184922A1 (en) Method for managing access to multimedia content
FR3124344A1 (en) Method for managing access to content downloaded in adaptive download mode.
EP4373099A1 (en) Method for managing access to read content of multimedia content

Legal Events

Date Code Title Description
PLFP Fee payment

Year of fee payment: 2

PLSC Publication of the preliminary search report

Effective date: 20200911

ST Notification of lapse

Effective date: 20211105