WO2014155017A1 - Transcoding and adaptive broadcasting of multimedia contents - Google Patents

Transcoding and adaptive broadcasting of multimedia contents Download PDF

Info

Publication number
WO2014155017A1
WO2014155017A1 PCT/FR2014/050740 FR2014050740W WO2014155017A1 WO 2014155017 A1 WO2014155017 A1 WO 2014155017A1 FR 2014050740 W FR2014050740 W FR 2014050740W WO 2014155017 A1 WO2014155017 A1 WO 2014155017A1
Authority
WO
WIPO (PCT)
Prior art keywords
content
level
terminal
fragment
network
Prior art date
Application number
PCT/FR2014/050740
Other languages
French (fr)
Inventor
Hervé Marchand
Mathieu Rivoalen
Original Assignee
Orange
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 filed Critical Orange
Publication of WO2014155017A1 publication Critical patent/WO2014155017A1/en

Links

Classifications

    • 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/436Interfacing a local distribution network, e.g. communicating with another STB or one or more peripheral devices inside the home
    • H04N21/43615Interfacing a Home Network, e.g. for connecting the client to a plurality of peripherals
    • 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/436Interfacing a local distribution network, e.g. communicating with another STB or one or more peripheral devices inside the home
    • H04N21/4363Adapting the video stream to a specific local network, e.g. a Bluetooth® network
    • 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/44Processing of video elementary streams, e.g. splicing a video clip retrieved from local storage with an incoming video stream or rendering scenes according to encoded video stream scene graphs
    • H04N21/4402Processing of video elementary streams, e.g. splicing a video clip retrieved from local storage with an incoming video stream or rendering scenes according to encoded video stream scene graphs involving reformatting operations of video signals for household redistribution, storage or real-time display
    • H04N21/440227Processing of video elementary streams, e.g. splicing a video clip retrieved from local storage with an incoming video stream or rendering scenes according to encoded video stream scene graphs involving reformatting operations of video signals for household redistribution, storage or real-time display by decomposing into layers, e.g. base layer and one or more enhancement layers
    • 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/44Processing of video elementary streams, e.g. splicing a video clip retrieved from local storage with an incoming video stream or rendering scenes according to encoded video stream scene graphs
    • H04N21/4402Processing of video elementary streams, e.g. splicing a video clip retrieved from local storage with an incoming video stream or rendering scenes according to encoded video stream scene graphs involving reformatting operations of video signals for household redistribution, storage or real-time display
    • H04N21/44029Processing of video elementary streams, e.g. splicing a video clip retrieved from local storage with an incoming video stream or rendering scenes according to encoded video stream scene graphs involving reformatting operations of video signals for household redistribution, storage or real-time display 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/40Client devices specifically adapted for the reception of or interaction with content, e.g. set-top-box [STB]; Operations thereof
    • H04N21/45Management operations performed by the client for facilitating the reception of or the interaction with the content or administrating data related to the end-user or to the client device itself, e.g. learning user preferences for recommending movies, resolving scheduling conflicts
    • H04N21/4508Management of client data or end-user data
    • H04N21/4516Management of client data or end-user data involving client characteristics, e.g. Set-Top-Box type, software version or amount of memory available

Definitions

  • the invention relates to multimedia content communications.
  • Multimedia content means any audio or video content, or more generally any other digital content.
  • the invention relates more specifically to the preparation, transmission and reception of video content over a network, in particular the continuous downloading, also called streaming, of multimedia content on a home network from a client terminal (hereinafter referred to as "streaming"). simply terminal) able to access such content.
  • a client terminal To access multimedia content on an Internet-type network, or similarly on a local network, that is to say a network that links together, with or without wires, the terminal equipment of a house (computers, printing devices, storage devices, etc.), a client terminal generally performs a request as follows: a first step is to download to a first server a document describing the parameters of access to the service via the HTTP protocol (from English Hyper Text Transport Protocol), a client-server communication protocol developed for Internet networks and in particular the Web.
  • This document may be a computer file or a set of descriptive information content accessible at a certain address on a second server, said content server. In the following, we will refer to it under the expression "description file”.
  • the client terminal accesses the content on the second server and the service actually starts, that is to say that the client terminal can receive and display the content.
  • HAS HTTP Adaptive streaming
  • HAS HTTP Adaptive Streaming
  • This type of technique makes it possible in particular to offer a good experience to the user while taking into account, for example, bandwidth variations on the link between the client terminal and the content server.
  • different streams are encoded, or transcoded, for the same video, for example corresponding to different bit rates, different resolutions, different qualities.
  • level a video stream corresponding to a certain quality and / or bit rate and / or spatial or temporal resolution.
  • the coding of a video is intended to provide a representation of the initial content of the video according to certain parameters (average bit rate, instantaneous bit rate, coding / decoding standard used, spatial resolution, frequency, etc.) in a form that is generally more compact.
  • Transcoding consists of re-encoding an already encoded video with new parameters. Each level is itself divided into time segments, also called “fragments” (or “chunks” in English) usually corresponding to a few seconds of content. The description of these different levels and the associated segmentation is generally described in the description file.
  • the client terminal chooses the various fragments that are proposed to it in the description file according to certain criteria, such as its decoding capabilities, the size of its screen, the available bandwidth, the most suitable video coding format, etc. To adapt this choice over time, according to the variation of such criteria (for example the evolution of the bandwidth), the fragment format can evolve dynamically throughout the video playback.
  • the client terminal is connected to a service gateway, that is to say a network equipment capable of providing, directly or indirectly, access to the contents.
  • This type of equipment can also be called multimedia content server, or service platform, home gateway, etc.
  • the number of "levels" available in the description file is deliberately limited and therefore the level chosen by the client terminal may be far from the optimum level: for example, if the content has been received initial at 2048 kilobits per second (kbps) and transcoded at 256, 512, 1024 kbps, a request to obtain a bit rate of 700 kbps will result in the supply of the next lower level, ie 512 kbps, which is quite far from 700 kbps.
  • the invention offers a solution that does not have the drawbacks of the state of the art.
  • the subject of the invention is a method for managing a multimedia content able to be restored by a terminal of a network connected to a service gateway, said content being able to be transcoded in data fragments according to several resolutions, said method comprising the steps of:
  • the gateway it is sufficient for the gateway to transcode a first fragment (a few seconds of the video) in at least a first level of flow / quality / resolution. Then, upon receipt of a request from a client terminal, the gateway provides this first fragment and at the same time commands the transcoding in the rate / quality / resolution (second level) required by the client terminal, the second fragment. In this way, it is no longer necessary to transcode in advance all the fragments corresponding to all the levels to be provided for the local network, which is extremely expensive for the gateway.
  • this method according to the invention ensures that the client terminal is served closer to its request: as it is no longer necessary to perform in advance a number of transcodings, necessarily limited (by the characteristics of the gateway ) to a small number of levels that can be remote from the request of the client terminal, it can receive exactly the level it has requested and not one of the previously transcoded levels that does not necessarily correspond to it.
  • a method as described above is further characterized in that the first and the second level are described in a description file of the digital content.
  • the description file is not not limited, since the transcoding is performed later at the request of the client terminal in the second level required. The invention thus makes it possible to have richer description files for the client terminals of the network.
  • such a method is further characterized in that the description file of the digital content is adapted according to the terminal.
  • This variant allows the gateway to use the characteristics of the terminal that issued the request to provide a suitable description file. Indeed, it is not advisable to describe for a terminal a level that is not accessible to him (for example, it is useless to offer very high resolutions to a small screen terminal such as a digital tablet). In particular, if the number of levels described is limited in the description file (for example to five), it is advisable to use this limited number of levels to describe content closer to the capabilities of the client terminal. According to a second variant of this mode of implementation of the invention, which may be implemented alternatively or cumulatively with the previous one, such a method is further characterized in that the description file of the digital content is adapted according to the available throughput on the network.
  • This variant allows the gateway to use the characteristics of the network to provide the client terminal with a suitable description file. Indeed, it is not wise to describe for a terminal a level that is not accessible to him because the network is not able to deliver it (for example, because it is congested). In particular, it is advisable to use available throughput information to restrict or increase the fragment size: for example, if the bandwidth decreases for the network, or for a given terminal, a fragment may correspond to a second of video instead of the three originally planned.
  • such a method is further characterized in that the encoding format of the digital content is adapted according to of the terminal.
  • such a method is further characterized in that the first level is the lowest level of the digital content description file.
  • the invention thus makes it possible to ensure that the first level provided to the client terminal is a level that can actually be consumed by the client terminal: if it is the smallest level in terms of resolution / rate / quality, it It is very likely that the client terminal will be able to decode it and display it while waiting to receive the higher level that it required, thus avoiding a long and painful wait.
  • the invention also relates to a device for managing a multimedia content able to be reproduced by a terminal of a network, said content being able to be transcoded into data fragments according to several resolutions, said device comprising:
  • the invention also relates to a service gateway comprising a device for managing a multimedia content as claimed above.
  • the invention also relates to a computer program comprising code instructions for the implementation of a method for managing a multimedia content as described above, when these are executed. by a processor.
  • the invention relates to a recording medium readable by a data processor on which is recorded a program comprising program code instructions for performing the steps of the method defined above.
  • FIG. 1 represents a streaming architecture based on the use of the HTTP protocol in a local network according to the state of the art.
  • FIG. 2 represents a streaming architecture based on the use of the HTTP protocol in a local network according to one embodiment of the invention.
  • FIG. 3 represents an architecture of a service gateway implementing one embodiment of the invention.
  • Figure 4 shows a timing diagram according to an embodiment of the invention.
  • FIG. 1 represents an adaptive streaming architecture based on the use of the HTTP protocol in a local network according to the state of the art.
  • the context of the local network is given as an example and could be easily transposed to that of any Internet network.
  • a client terminal (2-4) wishes to communicate with a content server (5) for downloading multimedia content composed of one or more media (audio, video, etc.)
  • the content server is according to this example in the broadband network (12) but it could indifferently be located in the local network (1), for example in the service gateway (6) or any other equipment capable of hosting a network. such content server.
  • Each of the terminals (2-4) has its own characteristics in terms of decoding capability, display, etc.
  • N1-N3 different levels corresponding to different rates and resolution (N1-N3) for the video sequence (C) for the three terminals shown: lowest resolution (N3) for the tablet (4), intermediate (N2) for the PC (3) and high (N1) for the TV (2).
  • Each level is divided into fragments (frags) of content whose boundaries are represented by black vertical borders.
  • fragments of identical duration whatever the spatial resolution of the video but of course any other arrangement within the reach of the skilled person is conceivable.
  • the terminal may be a terminal of the local network (1) or be more generally on a data network, connected to a service gateway (6), for example a mobile terminal on a mobile network (3G, 4G, etc.). )
  • the service gateway (6) is a home gateway that routes the data between the broadband network (12) and the local network (1), manages the multimedia contents, in particular by ensuring their reception from the broadband network (12) or the local network (1) and their transcoding through transcoders (8-10).
  • the transcoders (8-10) can be located elsewhere in the broadband network (12) or local (1), in particular at the STB (Set-Top-Box) element if the it is independent of the gateway.
  • Each level transcoded by one of the transcoders (8-10) is stored on the service gateway (6) or alternatively on another storage space accessible by the service gateway (6), located in the local network or at the same time. 'outside.
  • the service gateway (6) located in the local network or at the same time. 'outside.
  • the terminal (2-4) first interrogates the service gateway (6) to obtain an address of the description document (7) of the desired multimedia content (C).
  • the service gateway (6) responds by providing the terminal with the address of the description file.
  • this document is a manifest type file according to the MPEG-DASH (C.mpd) standard.
  • this file can be retrieved directly from a local Internet server or external to the local network, or already be on the service gateway at the time of the request.
  • MPD manifest file
  • MPEG / DASH and comprising the description of three resolutions (N1, N2, N3) of the fragmented content C is presented in Appendix 1.
  • the MPD file describes the fragments and generates their addresses (URL).
  • this generation is done using the elements "BaseURL” ("http://x.com/Bunny") and "SegmentList” which lists the complementary parts of the addresses of the different fragments: "bunny_1 s_500kb / bunny_1 s1 .m4s "for the first one-second fragment of the Bunny sequence at 500kbps in MPEG-4 format (m4s),” bunny_1 s_500kb / bunny_1 s2.m4s "for the second fragment, and so on.
  • the access URLs to the first two video fragments for the lowest N3, corresponding to the lowest bit rate of 500 kbps are http://x.com/Bunny/ bunny l s_500kb / bunny_1 s1 .m4s
  • the client terminal proceeds to obtain the fragments of media via a download to these addresses.
  • this download is traditionally done through an HTTP URL, but could also be done through a universal address (URI) describing another protocol (dvb: // monsegmentdecontenu for example).
  • URI universal address
  • the invention proposes, as illustrated in FIG. 2, to control in real time a single transcoder (1 1), based on a richer description file (manifest) and possibly adapted to the characteristics of the client terminal or to the bandwidth of the network.
  • the client terminal In nominal operation, the client terminal (for example PC3) always requests the same format (N2 in our example). The transcoder transcode therefore always in this format (N2).
  • a request is sent by the client terminal to a web server located for example on the home gateway (6), which proposes the manifest (7) associated with the video.
  • the server interprets this request of new format and controls the transcoder adequately to change the format of the next fragment: as shown in Figure 2, the transcoder generates fragments (Frags) of different rates over time.
  • the server transmits the previously generated fragment (which may be suboptimal because it does not correspond to the required resolution immediately).
  • the transcoding chain of the invention thus makes it possible to adapt dynamically to the content requested by the client terminal with only one shift fragment (the first fragment can be suboptimal) using a single transcoder.
  • the manifest file of Annex 1 can be modified to propose, not only three resolutions, but as much as desired, thus offering an unlimited choice to the client terminal.
  • the request is accompanied by a parameter that makes it possible to identify the capabilities of the client terminal, for example in terms of display resolution.
  • the manifest file can then be adapted on the fly to the client terminal: there is no point in proposing levels that it will not be able to decode.
  • the gateway analyzes the state of the bandwidth of the network and adapts the manifest accordingly.
  • FIG. 3 represents the architecture of a device that implements an embodiment of the invention, for example the service gateway (6) of FIG. 2.
  • the gateway (6) communicates with the local network and the broadband network (12) via the Ethernet module (ETH) on the one hand and possibly the WIFI module for local wireless communication.
  • the service gateway (6) further comprises, in accordance with the invention, a transcoding management module TRANSC and a transcoder (1 1).
  • the TRANSC module which may be software and / or hardware, is in particular capable of dynamically providing and fitting the description files (DESC), of controlling (PIL) the transcoder (s) (1 1) and to make available a website on which the client terminals come to connect and search the Manifest files.
  • the service gateway according to the invention may also contain a hard disk (15) for storing video fragments, and possibly other modules, such as an access control module (CAS), an interface module video, etc.
  • a hard disk for storing video fragments, and possibly other modules, such as an access control module (CAS), an interface module video, etc.
  • CAS access control module
  • interface module video etc.
  • FIG. 4 describes the different streaming steps according to the invention in the form of a timing diagram.
  • the client terminal Before accessing the first segment of the video (C) it wishes to view, the client terminal must first retrieve the manifest description file (7).
  • the terminal (3) requests the description file "C.mpd” (7) transmitted to it by the platform (6) during a step E10.
  • the service gateway (6) responds by providing the terminal with the address of the manifest file, or the manifest file itself.
  • the URL "http://x.com/C.mpd” represents the address of a manifest type description file (.mpd) that can be downloaded from the "x.com” site.
  • URI universal address
  • the description document (7) can be downloaded to the gateway (6).
  • an identification ⁇ ID> of the client terminal is performed as a parameter of the HTTP request: for example, the "USER AGENT" field of the HTTP request may be used.
  • a suitable manifest file can be transmitted to the terminal: for example, if the terminal issuing the request is a tablet, it is useless to provide it with very high resolutions. On the contrary it may be interesting to offer him more debit points at the same resolution, or lower resolutions than those originally contained in the manifest file.
  • the client terminal retrieves the first fragment of the video (f1) at the lowest level (N3).
  • N3 an access URL to this first video fragment for a quality of 500 kbps (N3) is http://x.com/bunny/bunny_1 s_500kbit / bunny_1 s1 .m4s, schematized in the figure by "f1 .N3"
  • the first fragment can be immediately transmitted to the client terminal (3) following this step.
  • the terminal receives it during a step E2.
  • the client terminal analyzes the description file (7) that was provided to it during a step E3 and generates an address of a second fragment of content (http://x.com/bunny/bunny_1 s_1 Mb / bunny_1 s2.m4s summarized in the figure at http://x.com/N2/f2) corresponding to the desired characteristics (flow / resolution / quality) of the N2 level.
  • the Web server receives this request and transmits to the transcoder control module the format chosen by the client terminal (N2).
  • the transcoder control module requests the transcoder (1 1) to generate the following fragments (f2, f3, etc.) according to the format chosen by the client terminal (N2, 1000 kbps) during a step E22.
  • the corresponding fragments are optionally stored on the disk and then transmitted to the client terminal during a step E16. We will thus be able to quickly approach (depending on the duration of the fragments generated) the optimal format required.
  • the control module will reset the video transcoder module while waiting for a new request.
  • the hardware encoding is faster than the rate of consumption of content by the client terminal (which can, moreover, put the stream reading on hold or off without the gateway is notified). It is therefore preferable not to generate too many fragments in advance because we could no longer adapt to the changes requested by the client terminal.
  • the transcoder controlled by the pilot module thus continues to generate the fragments dynamically by respecting the pause and control phases until the end of the playback of the video content that can be viewed by the client terminal during a session. step E5 optional.
  • steps E10 to E16 are performed again on the service gateway.
  • the service gateway can monitor changes in the bandwidth in the network and adapt the size of the fragments accordingly: for example, if the bandwidth decreases, it may be preferable to generate smaller fragments, and therefore, for example, modify their value in the manifest ("duration" attribute) supplied to the client terminal.
  • xmlns "http://www.w3.org/2001/ XMLSchema-instance"
  • xmlns "urn: mpeg: DASH: schema: MPD: 201 1"
  • ⁇ lnitialization sourceURL "bunny_1 s_500kbit / bunny_500kbit_dash.mp4" /> ⁇ / SegmentBase>
  • ⁇ SegmentURL media "bunny_1 s_1000kb / bunny_1 s1 .m4s" />

Landscapes

  • Engineering & Computer Science (AREA)
  • Multimedia (AREA)
  • Signal Processing (AREA)
  • Databases & Information Systems (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Information Transfer Between Computers (AREA)
  • Data Exchanges In Wide-Area Networks (AREA)

Abstract

The invention relates to a method of managing a multimedia content able to be played back by a terminal (2-4) of a network (1,12) connected to a service gateway (6). The content is able to be transcoded into fragments (Frags) of data according to several resolutions (N1-N3) by the service gateway. The method comprises:-a step of receiving a request (E10) for the playback of a content (C) according to a second level (N1-N2);-a step of making available to the terminal at least one first fragment (f1.N3) of the content (C) according to a first level (N3);-a step of control of transcoding of at least one fragment (f1.N2, f2.N2) according to the second level (N2);-and a step of making available to the terminal (2-4) at least one fragment (f1.N2, f2.N2) according to the second level (N2).

Description

Transcodage et diffusion adaptative de contenus multimédia  Transcoding and adaptive diffusion of multimedia contents
Domaine technique Technical area
L'invention se rapporte aux communications de contenus multimédia. The invention relates to multimedia content communications.
On entend par contenu multimédia tout contenu audio ou vidéo, ou plus généralement tout autre contenu numérique. Multimedia content means any audio or video content, or more generally any other digital content.
L'invention concerne plus spécifiquement la préparation, la transmission et la réception de contenus vidéo sur un réseau, en particulier le téléchargement continu, aussi appelé streaming, de contenus multimédia sur un réseau domestique à partir d'un terminal client (dans la suite appelé simplement terminal) capable d'accéder à un tel contenu. The invention relates more specifically to the preparation, transmission and reception of video content over a network, in particular the continuous downloading, also called streaming, of multimedia content on a home network from a client terminal (hereinafter referred to as "streaming"). simply terminal) able to access such content.
Etat de la technique State of the art
Pour accéder à un contenu multimédia sur un réseau de type Internet, ou de manière similaire sur un réseau local, c'est-à-dire un réseau qui relie ensemble, avec ou sans fils, les équipements terminaux d'une maison (ordinateurs, périphériques d'impression, de stockage, etc.), un terminal client effectue généralement une requête de la manière suivante : une première étape consiste à télécharger sur un premier serveur un document décrivant les paramètres d'accès au service via le protocole HTTP (de l'anglais Hyper Text Transport Protocol), un protocole de communication client-serveur développé pour les réseaux Internet et en particulier le Web. Ce document peut être un fichier informatique ou un ensemble d'informations descriptives du contenu accessible à une certaine adresse sur un second serveur, dit serveur de contenus. Dans la suite, on y référera sous l'expression « fichier de description ». Lors d'une seconde étape, le terminal client accède au contenu sur le second serveur et le service démarre effectivement, c'est-à-dire que le terminal client peut recevoir et afficher le contenu. To access multimedia content on an Internet-type network, or similarly on a local network, that is to say a network that links together, with or without wires, the terminal equipment of a house (computers, printing devices, storage devices, etc.), a client terminal generally performs a request as follows: a first step is to download to a first server a document describing the parameters of access to the service via the HTTP protocol (from English Hyper Text Transport Protocol), a client-server communication protocol developed for Internet networks and in particular the Web. This document may be a computer file or a set of descriptive information content accessible at a certain address on a second server, said content server. In the following, we will refer to it under the expression "description file". In a second step, the client terminal accesses the content on the second server and the service actually starts, that is to say that the client terminal can receive and display the content.
Il est fréquent, dans ce contexte du protocole HTTP, de recourir, pour échanger les données entre le terminal client et le serveur, à une technique de type dit « streaming adaptatif » (HAS pour « HTTP Adaptive Streaming »). Ce type de technique permet notamment d'offrir une bonne expérience à l'utilisateur tout en tenant compte, par exemple, des variations de bande passante sur la liaison entre le terminal client et le serveur de contenus. Classiquement, différents flux sont encodés, ou transcodés, pour la même vidéo, correspondant par exemple à différents débits, différentes résolutions, différentes qualités. Dans la suite, on appellera « niveau » un flux vidéo correspondant à une certaine qualité et/ou débit et/ou résolution spatiale ou temporelle. Le codage d'une vidéo a pour but de fournir une représentation du contenu initial de la vidéo conforme à certains paramètres (débit moyen, débit instantané, norme de codage-décodage utilisée, résolution spatiale, fréquentielle, etc.) sous une forme généralement plus compacte. Le transcodage consiste à ré-encoder une vidéo déjà encodée avec de nouveaux paramètres. Chaque niveau est lui-même découpé en segments temporels, aussi appelés « fragments » (ou « chunks » en anglais) correspondant généralement à quelques secondes de contenu. La description de ces différents niveaux et de la segmentation associée est généralement décrite dans le fichier de description. It is common, in this context of the HTTP protocol, to use, to exchange data between the client terminal and the server, a technique called "adaptive streaming" (HAS for "HTTP Adaptive Streaming"). This type of technique makes it possible in particular to offer a good experience to the user while taking into account, for example, bandwidth variations on the link between the client terminal and the content server. Conventionally, different streams are encoded, or transcoded, for the same video, for example corresponding to different bit rates, different resolutions, different qualities. In the following, we will call "level" a video stream corresponding to a certain quality and / or bit rate and / or spatial or temporal resolution. The coding of a video is intended to provide a representation of the initial content of the video according to certain parameters (average bit rate, instantaneous bit rate, coding / decoding standard used, spatial resolution, frequency, etc.) in a form that is generally more compact. Transcoding consists of re-encoding an already encoded video with new parameters. Each level is itself divided into time segments, also called "fragments" (or "chunks" in English) usually corresponding to a few seconds of content. The description of these different levels and the associated segmentation is generally described in the description file.
Il existe plusieurs solutions pour faciliter la mise à disposition et distribution d'un tel contenu en streaming, comme par exemple les solutions propriétaires Microsoft Smooth Streaming et Apple HTTP Live Streaming (HLS), ou encore la norme MPEG DASH (pour Dynamic Adaptive Streaming over HTTP - norme ISO/IEC 23009-1 :2012(E)), une norme de l'organisme ISO/IEC dédiée au streaming de contenus multimédia sur Internet. There are several solutions to facilitate the provision and distribution of such streaming content, such as Microsoft Smooth Streaming and Apple HTTP Live Streaming (HLS) proprietary solutions, or the Dynamic Adaptive Streaming over (MPEG DASH) standard. HTTP - ISO / IEC 23009-1: 2012 (E)), an ISO / IEC standard dedicated to the streaming of multimedia content on the Internet.
Cette dernière norme permet notamment à des périphériques connectés au réseau (TV, tablettes, etc.) de consommer des contenus multimédia via le protocole HTTP. Dans le cas de MPEG DASH, l'accès au contenu se fait traditionnellement selon deux étapes : The latter standard allows in particular devices connected to the network (TV, tablets, etc.) to consume multimedia content via the HTTP protocol. In the case of MPEG DASH, access to content is traditionally done in two steps:
1 ) Obtention d'un document de description, typiquement via le téléchargement, au travers d'une adresse HTTP, d'un fichier contenant notamment les adresses des fragments de média du contenu multimédia (fichier d'extension « .mpd » (pour Media Présentation Description).  1) Obtaining a description document, typically by downloading, via an HTTP address, a file containing the addresses of the media fragments of the multimedia content (".mpd" extension file (for Media Presentation Description).
2) Obtention des fragments de média, typiquement via un téléchargement, à l'aide des adresses contenues dans le document de description. Ainsi, le terminal client choisit les différents fragments qui lui sont proposés dans le fichier de description en fonction de certains critères, comme ses capacités de décodage, la taille de son écran, la bande passante disponible, le format de codage vidéo le plus adapté, etc. Pour adapter ce choix au cours du temps, selon la variation de tels critères (par exemple l'évolution de la bande passante), le format des fragments peut évoluer dynamiquement tout au long de la lecture de la vidéo. 2) Obtaining media fragments, typically via a download, using the addresses contained in the description document. Thus, the client terminal chooses the various fragments that are proposed to it in the description file according to certain criteria, such as its decoding capabilities, the size of its screen, the available bandwidth, the most suitable video coding format, etc. To adapt this choice over time, according to the variation of such criteria (for example the evolution of the bandwidth), the fragment format can evolve dynamically throughout the video playback.
Il n'y a cependant pas, aujourd'hui, de corrélation entre le format du contenu vidéo réellement consommé (par exemple visualisé) par le terminal client et la génération des différents formats disponibles. Ceci est particulièrement gênant dans le contexte d'un réseau qui ne garantit pas la qualité de service, comme par exemple un réseau local ou le réseau Internet. However, today there is no correlation between the format of the video content actually consumed (for example displayed) by the client terminal and the generation of the different formats available. This is particularly troublesome in the context of a network that does not guarantee the quality of service, such as a local network or the Internet.
Dans la suite, on considère que le terminal client est connecté à une passerelle de service, c'est à dire un équipement du réseau capable de lui fournir, directement ou indirectement, l'accès aux contenus. Ce type d'équipement peut aussi s'appeler serveur de contenus multimédia, ou plateforme de services, passerelle domestique, etc. In the following, it is considered that the client terminal is connected to a service gateway, that is to say a network equipment capable of providing, directly or indirectly, access to the contents. This type of equipment can also be called multimedia content server, or service platform, home gateway, etc.
Si l'on considère qu'un contenu vidéo, dit contenu initial, arrive à la passerelle de service, il doit être transcodé en autant de niveaux qu'il y a de différents débits/qualités/résolutions proposés dans le fichier de description, ce qui introduit une grande complexité sur le module de transcodage, nécessitant des capacités d'encodage très importantes. De plus la passerelle de service doit stocker ou faire stocker tous les niveaux transcodés, ce qui nécessite des capacités de stockage importantes. If we consider that a video content, said initial content, arrives at the service gateway, it must be transcoded into as many levels as there are different data rates / qualities / resolutions proposed in the description file. which introduces a great complexity on the transcoding module, requiring very important encoding capacities. In addition the service gateway must store or store all transcoded levels, which requires significant storage capacity.
Ainsi, il n'est généralement pas possible de stocker plus de quatre ou cinq niveaux différents pour un même contenu vidéo initial. Pour s'accommoder de cette limitation, le nombre de « niveaux » disponible dans le fichier de description est volontairement limité et donc le niveau choisi par le terminal client peut être éloigné du niveau optimum : par exemple, si l'on a reçu le contenu initial à 2048 kilobits par seconde (kbps) et transcodé à 256, 512, 1024 kbps, une requête pour obtenir un débit de 700 kbps entraînera la fourniture du niveau inférieur le plus proche, c'est à dire 512 kbps, qui est assez éloignée de 700 kbps. Thus, it is generally not possible to store more than four or five different levels for the same initial video content. To accommodate this limitation, the number of "levels" available in the description file is deliberately limited and therefore the level chosen by the client terminal may be far from the optimum level: for example, if the content has been received initial at 2048 kilobits per second (kbps) and transcoded at 256, 512, 1024 kbps, a request to obtain a bit rate of 700 kbps will result in the supply of the next lower level, ie 512 kbps, which is quite far from 700 kbps.
L'invention offre une solution ne présentant pas les inconvénients de l'état de la technique. The invention offers a solution that does not have the drawbacks of the state of the art.
L'invention The invention
A cet effet, selon un aspect fonctionnel, l'invention a pour objet un procédé de gestion d'un contenu multimédia apte à être restitué par un terminal d'un réseau connecté à une passerelle de service, ledit contenu étant apte à être transcodé en fragments de données selon plusieurs résolutions, ledit procédé comprenant les étapes de :  For this purpose, according to a functional aspect, the subject of the invention is a method for managing a multimedia content able to be restored by a terminal of a network connected to a service gateway, said content being able to be transcoded in data fragments according to several resolutions, said method comprising the steps of:
- Réception d'une requête en provenance d'un terminal pour la restitution d'un contenu selon un second niveau ;  - Receipt of a request from a terminal for the return of content according to a second level;
- Mise à disposition du terminal d'au moins un premier fragment du contenu selon un premier niveau ;  - Provision of the terminal of at least a first fragment of the content according to a first level;
- Commande de transcodage d'au moins un fragment selon le second niveau ;  Transcoding control of at least one fragment according to the second level;
Mise à disposition du terminal d'au moins un fragment selon le second niveau.  Providing the terminal with at least one fragment according to the second level.
II est ainsi possible, selon l'invention, de recevoir un contenu vidéo de manière adaptative sans créer de surcharge au niveau de la passerelle de service : il suffit à la passerelle de transcoder un premier fragment (quelques secondes de la vidéo) dans au moins un premier niveau de débit/qualité/résolution. Puis, dès réception d'une requête en provenance d'un terminal client, la passerelle lui fournit ce premier fragment et dans le même temps commande le transcodage dans le débit/qualité/résolution (second niveau) requis par le terminal client, du second fragment. De cette manière, il n'est plus nécessaire de transcoder à l'avance tous les fragments correspondant à tous les niveaux à prévoir pour le réseau local, ce qui est extrêmement coûteux pour la passerelle. De plus ce procédé selon l'invention garantit que le terminal client est servi au plus près de sa requête : comme il n'est plus nécessaire d'effectuer à l'avance un nombre de transcodages, forcément limité (par les caractéristiques de la passerelle) à un petit nombre de niveaux qui peuvent être éloignés de la requête du terminal client, celui-ci peut recevoir exactement le niveau qu'il a demandé et non pas l'un des niveaux préalablement transcodés qui ne lui correspond pas forcément. It is thus possible, according to the invention, to receive video content in an adaptive manner without creating an overload at the level of the service gateway: it is sufficient for the gateway to transcode a first fragment (a few seconds of the video) in at least a first level of flow / quality / resolution. Then, upon receipt of a request from a client terminal, the gateway provides this first fragment and at the same time commands the transcoding in the rate / quality / resolution (second level) required by the client terminal, the second fragment. In this way, it is no longer necessary to transcode in advance all the fragments corresponding to all the levels to be provided for the local network, which is extremely expensive for the gateway. Moreover, this method according to the invention ensures that the client terminal is served closer to its request: as it is no longer necessary to perform in advance a number of transcodings, necessarily limited (by the characteristics of the gateway ) to a small number of levels that can be remote from the request of the client terminal, it can receive exactly the level it has requested and not one of the previously transcoded levels that does not necessarily correspond to it.
Selon un mode de mise en œuvre particulier de l'invention, un procédé tel que décrit ci-dessus est en outre caractérisé en ce que le premier et le second niveau sont décrits dans un fichier de description du contenu numérique. According to a particular embodiment of the invention, a method as described above is further characterized in that the first and the second level are described in a description file of the digital content.
Il est ainsi possible, selon ce mode de mise en œuvre, de lister dans un fichier de description, normalisé ou non, par exemple selon le format MPEG- DASH de l'organisme international précité, les formats qui peuvent être délivrés aux terminaux clients du réseau, par exemple un réseau local. Contrairement à l'état de l'art, qui limite le nombre de niveaux décrits dans ce fichier au nombre de niveaux pouvant être raisonnablement transcodés par la passerelle (généralement moins de cinq niveaux), le fichier de description selon l'invention n'est pas limité, puisque le transcodage est effectué ultérieurement à la requête du terminal client dans le second niveau requis. L'invention permet ainsi de disposer de fichiers de description plus riches pour les terminaux clients du réseau.  It is thus possible, according to this mode of implementation, to list in a description file, standardized or not, for example according to the MPEG-DASH format of the aforementioned international organization, the formats that can be delivered to the client terminals of the network, for example a local network. Unlike the state of the art, which limits the number of levels described in this file to the number of levels that can be reasonably transcoded by the gateway (generally less than five levels), the description file according to the invention is not not limited, since the transcoding is performed later at the request of the client terminal in the second level required. The invention thus makes it possible to have richer description files for the client terminals of the network.
Selon une première variante de ce mode de mise en œuvre de l'invention, un tel procédé est en outre caractérisé en ce que le fichier de description du contenu numérique est adapté en fonction du terminal. According to a first variant of this embodiment of the invention, such a method is further characterized in that the description file of the digital content is adapted according to the terminal.
Cette variante permet à la passerelle d'utiliser les caractéristiques du terminal qui a émis la requête pour lui fournir un fichier de description adapté. En effet, il n'est pas judicieux de décrire pour un terminal un niveau qui ne lui est pas accessible (par exemple, il est inutile d'offrir des résolutions très élevées à un terminal de petit écran tel une tablette numérique). En particulier, si le nombre de niveaux décrits est limité dans le fichier de description (par exemple à cinq), il est judicieux d'utiliser ce nombre restreint de niveaux pour décrire des contenus au plus proche des capacités du terminal client. Selon une seconde variante de ce mode de mise en œuvre de l'invention, qui pourra être mise en œuvre alternativement ou cumulativement avec la précédente, un tel procédé est en outre caractérisé en ce que le fichier de description du contenu numérique est adapté en fonction du débit disponible sur le réseau. This variant allows the gateway to use the characteristics of the terminal that issued the request to provide a suitable description file. Indeed, it is not advisable to describe for a terminal a level that is not accessible to him (for example, it is useless to offer very high resolutions to a small screen terminal such as a digital tablet). In particular, if the number of levels described is limited in the description file (for example to five), it is advisable to use this limited number of levels to describe content closer to the capabilities of the client terminal. According to a second variant of this mode of implementation of the invention, which may be implemented alternatively or cumulatively with the previous one, such a method is further characterized in that the description file of the digital content is adapted according to the available throughput on the network.
Cette variante permet à la passerelle d'utiliser les caractéristiques du réseau pour fournir au terminal client un fichier de description adapté. En effet, il n'est pas judicieux de décrire pour un terminal un niveau qui ne lui est pas accessible parce que le réseau n'est pas capable de le lui délivrer (par exemple, parce qu'il est encombré). En particulier, il est judicieux d'utiliser une information relative au débit disponible pour restreindre ou augmenter la taille des fragments : par exemple, si la bande passante diminue pour le réseau, ou pour un terminal donné, un fragment peut correspondre à une seconde de vidéo au lieu des trois initialement prévues. This variant allows the gateway to use the characteristics of the network to provide the client terminal with a suitable description file. Indeed, it is not wise to describe for a terminal a level that is not accessible to him because the network is not able to deliver it (for example, because it is congested). In particular, it is advisable to use available throughput information to restrict or increase the fragment size: for example, if the bandwidth decreases for the network, or for a given terminal, a fragment may correspond to a second of video instead of the three originally planned.
Selon une troisième variante de ce mode de mise en œuvre de l'invention, qui pourra être mise en œuvre alternativement ou cumulativement avec les précédentes, un tel procédé est en outre caractérisé en ce que le format de codage du contenu numérique est adapté en fonction du terminal. According to a third variant of this embodiment of the invention, which may be implemented alternatively or cumulatively with the previous ones, such a method is further characterized in that the encoding format of the digital content is adapted according to of the terminal.
Ainsi il est possible, selon la nature du terminal qui a émis la requête, de choisir un certain type de codeur vidéo. En effet, il n'est pas judicieux de fournir au terminal un flux vidéo qu'il n'est pas en mesure de décoder parce qu'il n'a pas, par exemple, installé le décodeur prévu à l'origine dans le fichier de description, ou parce que ses capacités ne lui permettent pas de se conformer à un certain profil de codage vidéo, etc. Thus it is possible, depending on the nature of the terminal that issued the request, to choose a certain type of video encoder. Indeed, it is not advisable to provide the terminal with a video stream that it is not able to decode because it has not, for example, installed the decoder originally planned in the file. description, or because its capabilities do not allow it to conform to a certain video coding profile, etc.
Selon une quatrième variante de ce mode de mise en œuvre de l'invention, qui pourra être mise en œuvre alternativement ou cumulativement avec les précédentes, un tel procédé est en outre caractérisé en ce que le premier niveau est le niveau le plus faible du fichier de description du contenu numérique. According to a fourth variant of this embodiment of the invention, which can be implemented alternatively or cumulatively with the previous ones, such a method is further characterized in that the first level is the lowest level of the digital content description file.
L'invention permet ainsi de s'assurer que le premier niveau fourni au terminal client est un niveau qui peut être réellement consommé par le terminal client : s'il s'agit du plus petit niveau en termes de résolution/débit/qualité, il est très vraisemblable que le terminal client pourra le décoder et l'afficher en attendant de recevoir le niveau supérieur qu'il a requis, lui évitant ainsi une attente longue et pénible. The invention thus makes it possible to ensure that the first level provided to the client terminal is a level that can actually be consumed by the client terminal: if it is the smallest level in terms of resolution / rate / quality, it It is very likely that the client terminal will be able to decode it and display it while waiting to receive the higher level that it required, thus avoiding a long and painful wait.
Selon un aspect matériel, l'invention concerne également un dispositif de gestion d'un contenu multimédia apte à être restitué par un terminal d'un réseau, ledit contenu étant apte à être transcodé en fragments de données selon plusieurs résolutions, ledit dispositif comprenant : According to a material aspect, the invention also relates to a device for managing a multimedia content able to be reproduced by a terminal of a network, said content being able to be transcoded into data fragments according to several resolutions, said device comprising:
- Un module de réception d'une requête en provenance d'un terminal pour la restitution d'un contenu selon un second niveau ;  - A module for receiving a request from a terminal for the return of content according to a second level;
Un module pour la mise à disposition du terminal d'au moins un premier fragment du contenu selon un premier niveau ;  A module for the provision of the terminal of at least a first fragment of the content according to a first level;
Un module de pilotage du transcodage d'au moins un fragment selon le second niveau ;  A module for controlling the transcoding of at least one fragment according to the second level;
- Un module de mise à disposition du terminal d'au moins un fragment selon le second niveau.  - A module for providing the terminal of at least one fragment according to the second level.
Selon un autre aspect matériel, l'invention concerne également une passerelle de service comportant un dispositif de gestion d'un contenu multimédia tel que revendiqué ci-dessus. According to another hardware aspect, the invention also relates to a service gateway comprising a device for managing a multimedia content as claimed above.
Selon un autre aspect matériel, l'invention concerne également un programme d'ordinateur comportant des instructions de code pour la mise en œuvre d'un procédé de gestion d'un contenu multimédia tel que décrit ci-dessus, lorsque celles-ci est exécutée par un processeur. Selon encore un autre aspect matériel, l'invention a trait à un support d'enregistrement lisible par un processeur de données sur lequel est enregistré un programme comprenant des instructions de code de programme pour l'exécution des étapes du procédé défini ci-dessus. According to another material aspect, the invention also relates to a computer program comprising code instructions for the implementation of a method for managing a multimedia content as described above, when these are executed. by a processor. According to yet another material aspect, the invention relates to a recording medium readable by a data processor on which is recorded a program comprising program code instructions for performing the steps of the method defined above.
Les objets selon les aspects matériels de l'invention procurent au moins les mêmes avantages que ceux procurés par les procédés selon l'aspect fonctionnel. Objects according to the material aspects of the invention provide at least the same advantages as those provided by the methods according to the functional aspect.
L'invention sera mieux comprise à la lecture de la description qui suit, donnée à titre d'exemple et faite en référence aux dessins annexés. The invention will be better understood on reading the description which follows, given by way of example and with reference to the accompanying drawings.
Les figures: The figures:
La figure 1 représente une architecture de streaming basée sur l'utilisation du protocole HTTP dans un réseau local selon l'état de l'art. FIG. 1 represents a streaming architecture based on the use of the HTTP protocol in a local network according to the state of the art.
La figure 2 représente une architecture de streaming basée sur l'utilisation du protocole HTTP dans un réseau local selon un mode de réalisation de l'invention. FIG. 2 represents a streaming architecture based on the use of the HTTP protocol in a local network according to one embodiment of the invention.
La figure 3 représente une architecture d'une passerelle de service implémentant un mode de réalisation de l'invention. FIG. 3 represents an architecture of a service gateway implementing one embodiment of the invention.
La figure 4 représente un chronogramme selon un mode de réalisation de l'invention. Figure 4 shows a timing diagram according to an embodiment of the invention.
Description détaillée d'un exemple de réalisation illustrant l'invention Detailed description of an exemplary embodiment illustrating the invention
La figure 1 représente une architecture de streaming adaptatif basée sur l'utilisation du protocole HTTP dans un réseau local selon l'état de la technique. Le contexte du réseau local est donné à titre d'exemple et pourrait être transposé aisément à celui d'un réseau Internet quelconque. FIG. 1 represents an adaptive streaming architecture based on the use of the HTTP protocol in a local network according to the state of the art. The context of the local network is given as an example and could be easily transposed to that of any Internet network.
Classiquement, un terminal client (2-4) souhaite entrer en communication avec un serveur de contenus (5) pour télécharger un contenu multimédia composé d'un ou plusieurs médias (audio, vidéo, etc.) Conventionally, a client terminal (2-4) wishes to communicate with a content server (5) for downloading multimedia content composed of one or more media (audio, video, etc.)
Le serveur de contenus se trouve selon cet exemple dans le réseau large bande (12) mais il pourrait indifféremment être situé dans le réseau local (1 ), par exemple dans la passerelle de service (6) ou tout autre équipement capable d'héberger un tel serveur de contenus. The content server is according to this example in the broadband network (12) but it could indifferently be located in the local network (1), for example in the service gateway (6) or any other equipment capable of hosting a network. such content server.
Chacun des terminaux (2-4) possède ses propres caractéristiques en termes de capacité de décodage, d'affichage, etc. Par exemple sur la figure sont schématisés trois niveaux différents correspondant à des débits et résolution différents (N1 -N3) pour la séquence vidéo (C) destinée aux trois terminaux représentés : résolution la plus faible (N3) pour la tablette (4), intermédiaire (N2) pour le PC (3) et élevée (N1 ) pour le TV (2). Chaque niveau est découpé en fragments (frags) de contenu dont les limites sont schématisées par des bordures verticales noires. Dans cet exemple, on a représenté des fragments de durée identique quelque soit la résolution spatiale de la vidéo mais naturellement tout autre arrangement à la portée de l'homme du métier est concevable. Each of the terminals (2-4) has its own characteristics in terms of decoding capability, display, etc. For example in the figure are schematically three different levels corresponding to different rates and resolution (N1-N3) for the video sequence (C) for the three terminals shown: lowest resolution (N3) for the tablet (4), intermediate (N2) for the PC (3) and high (N1) for the TV (2). Each level is divided into fragments (frags) of content whose boundaries are represented by black vertical borders. In this example, there are shown fragments of identical duration whatever the spatial resolution of the video but of course any other arrangement within the reach of the skilled person is conceivable.
Un terminal donné doit récupérer les fragments correspondant à la résolution qui lui correspond au mieux. Le terminal peut être un terminal du réseau local (1 ) ou se trouver plus généralement sur un réseau de données, connecté à une passerelle de services (6), par exemple un terminal en mobilité sur un réseau mobile (3G, 4G, etc.) A given terminal must retrieve the fragments corresponding to the resolution that corresponds to it best. The terminal may be a terminal of the local network (1) or be more generally on a data network, connected to a service gateway (6), for example a mobile terminal on a mobile network (3G, 4G, etc.). )
La passerelle de service (6) est dans cet exemple une passerelle domestique qui assure le routage des données entre le réseau large-bande (12) et le réseau local (1 ), gère les contenus multimédia en assurant notamment leur réception en provenance du réseau large-bande (12) ou du réseau local (1 ) et leur transcodage grâce aux transcodeurs (8-10). En variante, les transcodeurs (8-10) peuvent se trouver ailleurs dans le réseau large-bande (12) ou local (1 ), notamment au niveau de l'élément STB (de l'anglais Set-Top-Box) si celui-ci est indépendant de la passerelle. In this example, the service gateway (6) is a home gateway that routes the data between the broadband network (12) and the local network (1), manages the multimedia contents, in particular by ensuring their reception from the broadband network (12) or the local network (1) and their transcoding through transcoders (8-10). As a variant, the transcoders (8-10) can be located elsewhere in the broadband network (12) or local (1), in particular at the STB (Set-Top-Box) element if the it is independent of the gateway.
Chaque niveau transcodé par l'un des transcodeurs (8-10) est stocké sur la passerelle de service (6) ou alternativement sur un autre espace de stockage accessible par la passerelle de service (6), situé dans le réseau local ou à l'extérieur. Dans la suite de l'exemple, comme exposé ci-dessus, on se positionne dans un contexte de streaming adaptatif selon la norme MPEG-DASH. Each level transcoded by one of the transcoders (8-10) is stored on the service gateway (6) or alternatively on another storage space accessible by the service gateway (6), located in the local network or at the same time. 'outside. In the remainder of the example, as explained above, we position ourselves in an adaptive streaming context according to the MPEG-DASH standard.
Le terminal (2-4) interroge tout d'abord la passerelle de service (6) pour obtenir une adresse du document de description (7) du contenu multimédia (C) souhaité. La passerelle de service (6) répond en fournissant au terminal l'adresse du fichier de description. Dans la suite, ce document est un fichier de type manifest selon la norme MPEG-DASH (C.mpd). 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 au moment de la requête.  The terminal (2-4) first interrogates the service gateway (6) to obtain an address of the description document (7) of the desired multimedia content (C). The service gateway (6) responds by providing the terminal with the address of the description file. In the following, this document is a manifest type file according to the MPEG-DASH (C.mpd) standard. 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 at the time of the request.
Un exemple de fichier manifest (MPD) conforme à la norme An example of a manifest file (MPD) conforming to the standard
MPEG/DASH et comportant la description de trois résolutions (N1 , N2, N3) du contenu C fragmenté est présenté en annexe 1 . MPEG / DASH and comprising the description of three resolutions (N1, N2, N3) of the fragmented content C is presented in Appendix 1.
Le fichier MPD décrit les fragments et permet de générer leurs adresses (URL). Dans cet exemple simplifié, cette génération est faite à l'aide des éléments « BaseURL » (« http://x.com/Bunny ») et « SegmentList » qui liste les parties complémentaires des adresses des différents fragments : « bunny_1 s_500kb/bunny_1 s1 .m4s » pour le premier fragment d'une seconde de la séquence Bunny à 500kbps au format MPEG-4 (m4s), « bunny_1 s_500kb/bunny_1 s2.m4s » pour le second fragment, etc.  The MPD file describes the fragments and generates their addresses (URL). In this simplified example, this generation is done using the elements "BaseURL" ("http://x.com/Bunny") and "SegmentList" which lists the complementary parts of the addresses of the different fragments: "bunny_1 s_500kb / bunny_1 s1 .m4s "for the first one-second fragment of the Bunny sequence at 500kbps in MPEG-4 format (m4s)," bunny_1 s_500kb / bunny_1 s2.m4s "for the second fragment, and so on.
Le champ duration spécifié comme attribut de la balise « Segment The duration field specified as the attribute of the "Segment" tag
List » indique la durée d'un segment en secondes. Le champ « codées » de la représentation indique que l'on utilise un encodeur de type AVC, etc. Ainsi, les URL d'accès aux deux premiers fragments vidéo pour le N3 le plus faible, correspondant au débit le plus faible de 500 kbps sont http://x.com/Bunny/ bunny l s_500kb/bunny_1 s1 .m4s List "indicates the duration of a segment in seconds. The "coded" field of the representation indicates that an AVC encoder, etc. is used. Thus, the access URLs to the first two video fragments for the lowest N3, corresponding to the lowest bit rate of 500 kbps are http://x.com/Bunny/ bunny l s_500kb / bunny_1 s1 .m4s
http://x.com/Bunny/ bunny l s_500kb/bunny_1 s2.m4s  http://x.com/Bunny/ bunny l s_500kb / bunny_1 s2.m4s
Une fois qu'il dispose de ces adresses de fragments, le terminal client (la tablette 4 dans notre exemple) procède à l'obtention des fragments de média via un téléchargement à ces adresses. On notera que ce téléchargement s'opère 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 these fragment addresses, the client terminal (the tablet 4 in our example) proceeds to obtain the fragments of media via a download to these addresses. Note that this download is traditionally done through an HTTP URL, but could also be done through a universal address (URI) describing another protocol (dvb: // monsegmentdecontenu for example).
Actuellement, un transcodage multiple accompagné d'une description adéquate permet donc d'accéder à un nombre restreint de niveaux (résolutions/débits/qualités) vidéo. Comme il a été dit précédemment, ce mécanisme suppose cependant l'existence d'autant de transcodeurs que l'on souhaite générer de niveaux (trois dans notre exemple). De surcroît, il est impossible d'accéder à des fragments correspondant à un niveau qui n'a pas été prévu dans le fichier manifest. C'est donc une méthode coûteuse et peu flexible.  Currently, a multiple transcoding accompanied by an adequate description thus allows access to a limited number of levels (resolutions / bit rates / qualities) video. As has been said previously, this mechanism assumes however the existence of as many transcoders that one wishes to generate levels (three in our example). In addition, it is impossible to access fragments corresponding to a level that was not provided in the manifest file. It is therefore an expensive and inflexible method.
C'est pourquoi l'invention propose, comme illustré en figure 2, de piloter en temps réel un transcodeur unique (1 1 ), en se basant sur un fichier de description (manifest) plus riche et éventuellement adapté aux caractéristiques du terminal client ou à la bande passante du réseau. This is why the invention proposes, as illustrated in FIG. 2, to control in real time a single transcoder (1 1), based on a richer description file (manifest) and possibly adapted to the characteristics of the client terminal or to the bandwidth of the network.
En fonctionnement nominal, le terminal client (par exemple le PC3) demande toujours le même format (N2 dans notre exemple). Le transcodeur transcode donc toujours dans ce format (N2). Lors d'une demande de changement de format par le terminal client (3), une requête est envoyée par le terminal client à un serveur web situé par exemple sur la passerelle domestique (6), qui propose le manifest (7) associé à la vidéo. Le serveur interprète cette requête de nouveau format et pilote le transcodeur de manière adéquate pour changer le format du prochain fragment : comme illustré sur la figure 2, le transcodeur génère des fragments (Frags) de débits différents au cours du temps. Sur requête de l'un des terminaux, le serveur lui transmet le fragment généré précédemment (qui peut-être sous-optimal car ne correspondant pas à la résolution requise immédiatement). In nominal operation, the client terminal (for example PC3) always requests the same format (N2 in our example). The transcoder transcode therefore always in this format (N2). When requesting a change of format by the client terminal (3), a request is sent by the client terminal to a web server located for example on the home gateway (6), which proposes the manifest (7) associated with the video. The server interprets this request of new format and controls the transcoder adequately to change the format of the next fragment: as shown in Figure 2, the transcoder generates fragments (Frags) of different rates over time. At the request of one of the terminals, the server transmits the previously generated fragment (which may be suboptimal because it does not correspond to the required resolution immediately).
La chaîne de transcodage de l'invention permet ainsi de s'adapter dynamiquement au contenu demandé par le terminal client avec seulement un fragment de décalage (le premier fragment pouvant être sous-optimal) à l'aide d'un transcodeur unique. Il devient intéressant, dans ce contexte, de proposer un nombre important de niveaux dans le fichier de description manifest et de transcoder en temps réel la vidéo uniquement dans le format demandé par le terminal client. Notamment, le fichier manifest de l'annexe 1 peut être modifié pour proposer, non plus seulement trois résolutions, mais autant qu'on le souhaite, offrant ainsi un choix illimité au terminal client.  The transcoding chain of the invention thus makes it possible to adapt dynamically to the content requested by the client terminal with only one shift fragment (the first fragment can be suboptimal) using a single transcoder. In this context, it becomes interesting to propose a large number of levels in the manifest description file and to transcode in real time the video only in the format requested by the client terminal. In particular, the manifest file of Annex 1 can be modified to propose, not only three resolutions, but as much as desired, thus offering an unlimited choice to the client terminal.
Selon une variante, la requête est accompagnée d'un paramètre qui permet d'identifier les capacités du terminal client, par exemple en termes de résolution d'affichage. Le fichier manifest peut alors être adapté à la volée au terminal client : rien ne sert de lui proposer des niveaux qu'il ne sera pas capable de décoder.  According to one variant, the request is accompanied by a parameter that makes it possible to identify the capabilities of the client terminal, for example in terms of display resolution. The manifest file can then be adapted on the fly to the client terminal: there is no point in proposing levels that it will not be able to decode.
Selon une autre variante, la passerelle analyse l'état de la bande passante du réseau et adapte le manifest en conséquence.  According to another variant, the gateway analyzes the state of the bandwidth of the network and adapts the manifest accordingly.
De façon à ne pas trop pénaliser le terminal client du fait du temps nécessaire à la récupération des fragments, on doit pré-transcoder lors de l'initialisation au moins un fragment vidéo en avance sur celui qui va être téléchargé par le terminal client. Il est judicieux de transcoder ce fragment au niveau le plus faible possible en termes de résolution/débit/qualité, dans l'exemple 500kbps, afin que tous les terminaux puissent en bénéficier. In order not to penalize the client terminal too much because of the time necessary for the recovery of the fragments, it is necessary to pre-transcode during the initialization at least one video fragment in advance of that which will be downloaded by the client terminal. It is a good idea to transcode this fragment to the lowest level possible in terms of resolution / bit rate / quality, in the 500kbps example, so that all terminals can benefit from it.
La figure 3 représente l'architecture d'un équipement qui implémente un mode de réalisation de l'invention, comme par exemple la passerelle de service (6) de la figure 2. FIG. 3 represents the architecture of a device that implements an embodiment of the invention, for example the service gateway (6) of FIG. 2.
Elle 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. La passerelle (6) communique avec le réseau local et le réseau large bande (12) via le module Ethernet (ETH) d'une part et éventuellement le module WIFI pour une communication locale sans fils. La passerelle de service (6) comprend en outre, conformément à l'invention, un module de gestion du transcodage TRANSC et un transcodeur (1 1 ). Le module TRANSC, qui peut être logiciel et/ou matériel, est notamment capable de fournir et adapter les fichiers de description (DESC) de manière dynamique, de piloter (PIL) le (ou les) transcodeur(s) (1 1 ) et de mettre à disposition un site Web sur lequel les terminaux clients viennent se connecter et chercher les fichiers Manifest. It comprises, conventionally, memories (M) associated with a processor (CPU). The memories can be type ROM (English Read Only Memory) or RAM (English Random Access Memory) or Flash. The gateway (6) communicates with the local network and the broadband network (12) via the Ethernet module (ETH) on the one hand and possibly the WIFI module for local wireless communication. The service gateway (6) further comprises, in accordance with the invention, a transcoding management module TRANSC and a transcoder (1 1). The TRANSC module, which may be software and / or hardware, is in particular capable of dynamically providing and fitting the description files (DESC), of controlling (PIL) the transcoder (s) (1 1) and to make available a website on which the client terminals come to connect and search the Manifest files.
La passerelle de service selon l'invention peut aussi contenir un disque dur (15) pour le stockage des fragments vidéo, et éventuellement d'autres modules, comme par exemple un module de contrôle d'accès (CAS), un module d'interface vidéo, etc.  The service gateway according to the invention may also contain a hard disk (15) for storing video fragments, and possibly other modules, such as an access control module (CAS), an interface module video, etc.
La figure 4 décrit les différentes étapes de streaming selon l'invention sous forme de chronogramme. FIG. 4 describes the different streaming steps according to the invention in the form of a timing diagram.
Comme expliqué plus haut, avant d'avoir accès au premier segment de la vidéo (C) qu'il souhaite visualiser, le terminal client doit commencer par récupérer le fichier de description manifest (7).  As explained above, before accessing the first segment of the video (C) it wishes to view, the client terminal must first retrieve the manifest description file (7).
Ainsi lors d'une étape E1 , le terminal (3) demande le fichier de description « C.mpd » (7) qui lui est transmis par la plate-forme (6) au cours d'une étape E10. La passerelle de service (6) répond en fournissant au terminal l'adresse du fichier manifest, ou le fichier manifest lui-même. Dans cet exemple, l'adresse URL « http://x.com/C.mpd » représente l'adresse d'un fichier C de description de type manifest (.mpd) qui peut être téléchargé sur le site « x.com » de la passerelle, mais il pourrait aussi s'agir d'une adresse universelle (URI) décrivant un autre protocole (« ftp://monfichierdedescription » par exemple) et/ou d'un accès sur un autre réseau, ou serveur. A partir de cette URL (ou URI), le document de description (7) peut être téléchargé sur la passerelle (6).  Thus, during a step E1, the terminal (3) requests the description file "C.mpd" (7) transmitted to it by the platform (6) during a step E10. The service gateway (6) responds by providing the terminal with the address of the manifest file, or the manifest file itself. In this example, the URL "http://x.com/C.mpd" represents the address of a manifest type description file (.mpd) that can be downloaded from the "x.com" site. Of the gateway, but it could also be a universal address (URI) describing another protocol (for example, "ftp: // mydisclosurefile") and / or access on another network, or server. From this URL (or URI), the description document (7) can be downloaded to the gateway (6).
Selon une variante, une identification <ID> du terminal client est effectuée en paramètre de la requête HTTP : par exemple, le champ « USER- AGENT » de la requête HTTP peut être utilisé. On peut en déduire pour chaque terminal client la taille de l'écran qu'il supporte. Selon le paramètre de cette requête, un fichier manifest adapté peut être transmis au terminal : par exemple, si le terminal qui émet la requête est une tablette, il est inutile de lui fournir des résolutions très élevées. Au contraire il peut être intéressant de lui proposer davantage de points de débit à une même résolution, ou des résolutions plus faibles que celles initialement contenues dans le fichier manifest. According to a variant, an identification <ID> of the client terminal is performed as a parameter of the HTTP request: for example, the "USER AGENT" field of the HTTP request may be used. We can deduce for each client terminal the size of the screen that it supports. Depending on the parameter of this request, a suitable manifest file can be transmitted to the terminal: for example, if the terminal issuing the request is a tablet, it is useless to provide it with very high resolutions. On the contrary it may be interesting to offer him more debit points at the same resolution, or lower resolutions than those originally contained in the manifest file.
Selon une autre variante, on peut déduire pour chaque terminal client les capacités de décodage supportées et adapter en conséquence le choix du codeur/décodeur à utiliser (attributs « codée » et « mimeType » du fichier manifest). Lors d'une étape d'initialisation E1 1 Le serveur Web de la passerelle (6) intime au module de pilotage du transcodeur de générer immédiatement le premier fragment vidéo (f1 ) au plus petit niveau décrit dans le fichier manifest requis (N3), puis le module de pilotage stocke éventuellement le fichier sur le disque et met le module transcodeur vidéo en pause (E12). Ainsi, quel que soit le format choisi ultérieurement par le terminal client, celui-ci pourra recevoir et consommer le fragment précédemment généré, puisque le niveau utilisé lors de sa génération est forcément inférieur ou égal à celui qui sera réellement requis par le terminal client. Notamment, s'il s'agit de la première requête, le terminal client récupère le premier fragment de la vidéo (f1 ) au niveau le plus faible (N3). Comme décrit à l'appui de la figure 1 , une URL d'accès à ce premier fragment vidéo pour une qualité de 500 kbps (N3) est http://x.com/bunny/bunny_1 s_500kbit/bunny_1 s1 .m4s, schématisé sur la figure par "f1 .N3"  According to another variant, it is possible to deduce for each client terminal the supported decoding capacities and to adapt accordingly the choice of the coder / decoder to be used (attributes "coded" and "mimeType" of the manifest file). During an initialization step E1 1 The web server of the intimate gateway (6) to the transcoder control module immediately generates the first video fragment (f1) at the lowest level described in the required manifest file (N3), then the control module optionally stores the file on the disk and puts the transcoder video module in pause (E12). Thus, regardless of the format chosen later by the client terminal, it can receive and consume the previously generated fragment, since the level used in its generation is necessarily less than or equal to that which will actually be required by the client terminal. In particular, if it is the first request, the client terminal retrieves the first fragment of the video (f1) at the lowest level (N3). As described in support of Figure 1, an access URL to this first video fragment for a quality of 500 kbps (N3) is http://x.com/bunny/bunny_1 s_500kbit / bunny_1 s1 .m4s, schematized in the figure by "f1 .N3"
Le premier fragment peut être immédiatement transmis au terminal client (3) à la suite de cette étape. Le terminal le reçoit lors d'une étape E2.  The first fragment can be immediately transmitted to the client terminal (3) following this step. The terminal receives it during a step E2.
Puis le terminal client analyse le fichier de description (7) qui lui a été fourni lors d'une étape E3 et génère une adresse d'un second fragment de contenu (http://x.com/bunny/bunny_1 s_1 Mb/bunny_1 s2.m4s résumée sur la figure en en http://x.com/N2/f2) correspondant aux caractéristiques souhaitées (débit/résolution/qualité) du niveau N2. Then the client terminal analyzes the description file (7) that was provided to it during a step E3 and generates an address of a second fragment of content (http://x.com/bunny/bunny_1 s_1 Mb / bunny_1 s2.m4s summarized in the figure at http://x.com/N2/f2) corresponding to the desired characteristics (flow / resolution / quality) of the N2 level.
Lors d'une étape E14, Le serveur Web reçoit cette requête et transmet au module de pilotage du transcodeur le format choisi par le terminal client (N2). Le module de pilotage du transcodeur demande au transcodeur (1 1 ) de générer les fragments suivants (f2, f3, etc.) selon le format choisi par le terminal client (N2, 1000kbps) au cours d'une étape E22. During a step E14, the Web server receives this request and transmits to the transcoder control module the format chosen by the client terminal (N2). The transcoder control module requests the transcoder (1 1) to generate the following fragments (f2, f3, etc.) according to the format chosen by the client terminal (N2, 1000 kbps) during a step E22.
Les fragments correspondant sont éventuellement stockés sur le disque puis transmis au terminal client lors d'une étape E16. On va ainsi pouvoir se rapprocher rapidement (en fonction de la durée des fragments générés) du format optimal requis.  The corresponding fragments are optionally stored on the disk and then transmitted to the client terminal during a step E16. We will thus be able to quickly approach (depending on the duration of the fragments generated) the optimal format required.
Puis le module de pilotage va remettre le module transcodeur vidéo en pause dans l'attente d'une nouvelle requête. En effet, en général, l'encodage matériel est plus rapide que la vitesse de consommation de contenu par le terminal client (qui peut, de plus, mettre la lecture du flux en attente ou en arrêt sans que la passerelle en soit avertie). Il est donc préférable de ne pas générer trop de fragments en avance car on ne pourrait plus s'adapter aux changements demandés par le terminal client. Le transcodeur contrôlé par le module pilote continue ainsi à générer les fragments de manière dynamique en respectant les phases de pause et d'asservissement jusqu'à la fin de la lecture du contenu vidéo qui peut être visualisé par le terminal client au cours d'une étape E5 facultative.  Then the control module will reset the video transcoder module while waiting for a new request. Indeed, in general, the hardware encoding is faster than the rate of consumption of content by the client terminal (which can, moreover, put the stream reading on hold or off without the gateway is notified). It is therefore preferable not to generate too many fragments in advance because we could no longer adapt to the changes requested by the client terminal. The transcoder controlled by the pilot module thus continues to generate the fragments dynamically by respecting the pause and control phases until the end of the playback of the video content that can be viewed by the client terminal during a session. step E5 optional.
Lors d'une nouvelle requête pour un nouveau fichier manifeste, les étapes E10 à E16 sont effectuées de nouveau sur la passerelle de service. During a new request for a new manifest file, steps E10 to E16 are performed again on the service gateway.
En variante, la passerelle de service peut surveiller les évolutions de la bande passante dans le réseau et adapter en conséquence la taille des fragments : par exemple si la bande passante diminue, il peut être préférable de générer des fragments plus petits, et donc par exemple de modifier leur valeur dans le manifest (attribut « duration ») fourni au terminal client. As a variant, the service gateway can monitor changes in the bandwidth in the network and adapt the size of the fragments accordingly: for example, if the bandwidth decreases, it may be preferable to generate smaller fragments, and therefore, for example, modify their value in the manifest ("duration" attribute) supplied to the client terminal.
Il va de soi que le mode de réalisation qui a été décrit ci-dessus a été donné à titre purement indicatif et nullement limitatif, et que de nombreuses modifications peuvent y être facilement apportées par l'homme de l'art sans pour autant sortir du cadre de l'invention. Annexe 1 : exemple de fichier manifest MPEG-DASH It goes without saying that the embodiment which has been described above has been given for purely indicative and non-limiting reasons, and that many modifications can easily be made by those skilled in the art without departing from the framework of the invention. Appendix 1: Sample MPEG-DASH manifest file
<?xml version="1 .0"?>  <? xml version = "1 .0"?>
<MPD <MPD
xmlns:xsi="http://www.w3.org/2001 /XMLSchema-instance"  xmlns: xsi = "http://www.w3.org/2001/ XMLSchema-instance"
xmlns="urn:mpeg:DASH:schema:MPD:201 1 "  xmlns = "urn: mpeg: DASH: schema: MPD: 201 1"
xsi:schemaLocation="urn:mpeg:DASH:schema:MPD:201 1 DASH-MPD.xsd" type="dynamic"  xsi: schemaLocation = "urn: mpeg: DASH: schema: PDM: 201 1 DASH-MPD.xsd" type = "dynamic"
minimumUpdatePeriod=" PT1 .0S "  minimumUpdatePeriod = "PT1 .0S"
profiles="urn:mpeg:dash:profile:isoff-live:201 1 ">  profiles = "mpeg: dash: profile: isoff-live: 201 1">
<Representation id="0" codecs="avc1 " mimeType="video/mp4" <Representation id = "0" codecs = "avc1" mimeType = "video / mp4"
width="320" height="240" startWithSAP="1 " bandwidth="46986"> width = "320" height = "240" startWithSAP = "1" bandwidth = "46986">
<BaseURL>http://x.com/ Bunny</BaseURL>  <BaseURL> http://x.com/ Bunny </ BaseURL>
<SegmentBase> <SegmentBase>
<lnitialization sourceURL="bunny_1 s_500kbit/bunny_500kbit_dash.mp4"/> </SegmentBase>  <lnitialization sourceURL = "bunny_1 s_500kbit / bunny_500kbit_dash.mp4" /> </ SegmentBase>
<SegmentList duration="1 ">  <SegmentList duration = "1">
<SegmentURL media="bunny_1 s_500kb/bunny_1 s1 .m4s"/>  <SegmentURL media = "bunny_1 s_500kb / bunny_1 s1 .m4s" />
<SegmentURL media="bunny_1 s_500kb/bunny_1 s2.m4s"/>  <SegmentURL media = "bunny_1 s_500kb / bunny_1 s2.m4s" />
<SegmentURL media="bunny_1 s_500kb/bunny_1 s3.m4s"/>  <SegmentURL media = "bunny_1 s_500kb / bunny_1 s3.m4s" />
</SegmentList> </ SegmentList>
<SegmentList duration="1 ">  <SegmentList duration = "1">
<SegmentURL media="bunny_1 s_1000kb/bunny_1 s1 .m4s"/>  <SegmentURL media = "bunny_1 s_1000kb / bunny_1 s1 .m4s" />
<SegmentURL media="bunny_1 s_1000kb/bunny_1 s2.m4s"/>  <SegmentURL media = "bunny_1 s_1000kb / bunny_1 s2.m4s" />
<SegmentURL media="bunny_1 s_1000kb/bunny_1 s3.m4s7>  <SegmentURL media = "bunny_1 s_1000kb / bunny_1 s3.m4s7>
</SegmentList> </ SegmentList>
<SegmentList duration="1 ">  <SegmentList duration = "1">
<SegmentURL media="bunny_1 s_2000kb/bunny_1 s1 .m4s7>  <SegmentURL media = "bunny_1 s_2000kb / bunny_1 s1 .m4s7>
<SegmentURL media="bunny_1 s_2000kb/bunny_1 s2.m4s7>  <SegmentURL media = "bunny_1 s_2000kb / bunny_1 s2.m4s7>
<SegmentURL media="bunny_1 s_2000kb/bunny_1 s3.m4s7>  <SegmentURL media = "bunny_1 s_2000kb / bunny_1 s3.m4s7>
</SegmentList> </ SegmentList>
</MPD>  </ MPD>

Claims

Procédé de gestion d'un contenu multimédia apte à être restitué par un terminal (2-4) d'un réseau (1 ,12) connecté à une passerelle de service (6), ledit contenu étant apte à être transcodé en fragments (Frags) de données selon plusieurs résolutions (N1 -N3), ledit procédé comprenant les étapes de :  Method for managing a multimedia content that can be reproduced by a terminal (2-4) of a network (1, 12) connected to a service gateway (6), said content being able to be transcoded into fragments (Frags ) of data according to several resolutions (N1-N3), said method comprising the steps of:
Réception d'une requête (E10) pour la restitution d'un contenu (C) selon un second niveau (N1 -N2);  Receiving a request (E10) for the return of a content (C) according to a second level (N1-N2);
Mise à disposition du terminal d'au moins un premier fragment (f 1 .N3) du contenu (C) selon un premier niveau (N3) ;  Providing the terminal with at least a first fragment (f 1 .N3) of the content (C) according to a first level (N3);
- Commande de transcodage d'au moins un fragment (f1 .N2, f2.N2) selon le second niveau (N2) ;  Transcoding control of at least one fragment (f1 .N2, f2.N2) according to the second level (N2);
Mise à disposition du terminal (2-4) d'au moins un fragment (f1 .N2, f2.N2) selon le second niveau (N2).  Provision of the terminal (2-4) of at least one fragment (f1 .N2, f2.N2) according to the second level (N2).
Procédé selon la revendication 1 , caractérisé en ce que le premier et le second niveau (N1 , N2, N3) sont décrits dans un fichier de description (C.mpd, manifest) du contenu numérique (C).  Method according to claim 1, characterized in that the first and second levels (N1, N2, N3) are described in a description file (C.mpd, manifest) of the digital content (C).
Procédé selon la revendication 2, caractérisé en ce que le fichier de description (C.mpd, manifest) du contenu numérique (C) est adapté en fonction du terminal. Method according to claim 2, characterized in that the description file (C.mpd, manifest) of the digital content (C) is adapted according to the terminal.
Procédé selon la revendication 2, caractérisé en ce que le fichier de description (C.mpd, manifest) du contenu numérique (C) est adapté (chunks, duration, 1s) en fonction du débit disponible sur le réseau. Method according to claim 2, characterized in that the description file (C.mpd, manifest) of the digital content (C) is adapted (chunks, duration, 1s) as a function of the bit rate available on the network.
Procédé selon la revendication 2, caractérisé en ce que le format de codage (mimeType, codée, avd ) du contenu numérique (C) est adapté en fonction du terminal. Method according to claim 2, characterized in that the coding format (mimeType, coded, avd) of the digital content (C) is adapted according to the terminal.
Procédé selon la revendication 2, caractérisé en ce que le premier niveau est le niveau le plus faible du fichier de description (C.mpd) du contenu numérique (C). Method according to claim 2, characterized in that the first level is the lowest level of the description file (C.mpd) of the digital content (C).
Dispositif (TRANSC) de gestion d'un contenu multimédia apte à être restitué par un terminal (2-4) d'un réseau (1 ,12), ledit contenu étant apte à être transcodé en fragments (Frags) de données selon plusieurs résolutions (N1 - N3), ledit dispositif comprenant : Device (TRANSC) for managing a multimedia content that can be reproduced by a terminal (2-4) of a network (1, 12), said content being able to be transcoded fragments (Frags) of data according to several resolutions (N1 - N3), said device comprising:
- Un module de réception d'une requête (E10) pour la restitution d'un contenu (C) selon un second niveau (N1 -N2);  A module for receiving a request (E10) for the return of a content (C) according to a second level (N1-N2);
Un module (WIFI, ETH) pour la mise à disposition du terminal d'au moins un premier fragment (f1 .N3) du contenu (C) selon un premier niveau (N3) ;  A module (WIFI, ETH) for providing the terminal with at least a first fragment (f1 .N3) of the content (C) in a first level (N3);
- Un module de pilotage (PIL) du transcodage d'au moins un fragment (f1 .N2, f2.N2) selon le second niveau (N2) ;  A control module (PIL) for transcoding at least one fragment (f1 .N2, f2.N2) according to the second level (N2);
Un module (WIFI, ETH) de mise à disposition du terminal (2-4) d'au moins un fragment (f1 .N2, f2.N2) selon le second niveau (N2).  A module (WIFI, ETH) for providing the terminal (2-4) with at least one fragment (f1 .N2, f2.N2) according to the second level (N2).
Passerelle de service (6) comportant un dispositif de gestion d'un contenu multimédia (TRANSC) selon la revendication 7.  Service gateway (6) having a multimedia content management device (TRANSC) according to claim 7.
Programme d'ordinateur comportant des instructions de code pour la mise en œuvre de la gestion d'un contenu multimédia conforme à la revendication 1 , lorsque celle-ci est exécutée par un processeur.  A computer program comprising code instructions for implementing the management of multimedia content according to claim 1, when the latter is executed by a processor.
PCT/FR2014/050740 2013-03-29 2014-03-28 Transcoding and adaptive broadcasting of multimedia contents WO2014155017A1 (en)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
FR1352878 2013-03-29
FR1352878A FR3004055A1 (en) 2013-03-29 2013-03-29 TRANSCODING AND ADAPTIVE DIFFUSION OF MULTIMEDIA CONTENT

Publications (1)

Publication Number Publication Date
WO2014155017A1 true WO2014155017A1 (en) 2014-10-02

Family

ID=48656115

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/FR2014/050740 WO2014155017A1 (en) 2013-03-29 2014-03-28 Transcoding and adaptive broadcasting of multimedia contents

Country Status (2)

Country Link
FR (1) FR3004055A1 (en)
WO (1) WO2014155017A1 (en)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP3229480A1 (en) * 2016-04-04 2017-10-11 LSIS Co., Ltd. Remote management system supporting n-screen function
FR3071374A1 (en) * 2017-09-15 2019-03-22 Neotion METHOD AND SYSTEM FOR DISTRIBUTING MULTIMEDIA CONTENT TO COMPUTER TERMINALS

Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2005029224A2 (en) * 2003-09-12 2005-03-31 Arkados, Inc. Method and system for distributed content management and delivery
US20080141303A1 (en) * 2005-12-29 2008-06-12 United Video Properties, Inc. Interactive media guidance system having multiple devices
US20080181578A1 (en) * 2007-01-31 2008-07-31 Hanes David H Transcoding of media content
US20080195744A1 (en) * 2007-02-14 2008-08-14 Microsoft Corporation Adaptive media playback
US20090103607A1 (en) * 2004-06-07 2009-04-23 Sling Media Pvt. Ltd. Systems and methods for controlling the encoding of a media stream
WO2010014123A1 (en) * 2008-07-26 2010-02-04 Thomson Licensing A real-time transport protocol (rtp) packetization method for fast channel change applications using scalable video coding (svc)

Patent Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2005029224A2 (en) * 2003-09-12 2005-03-31 Arkados, Inc. Method and system for distributed content management and delivery
US20090103607A1 (en) * 2004-06-07 2009-04-23 Sling Media Pvt. Ltd. Systems and methods for controlling the encoding of a media stream
US20080141303A1 (en) * 2005-12-29 2008-06-12 United Video Properties, Inc. Interactive media guidance system having multiple devices
US20080181578A1 (en) * 2007-01-31 2008-07-31 Hanes David H Transcoding of media content
US20080195744A1 (en) * 2007-02-14 2008-08-14 Microsoft Corporation Adaptive media playback
WO2010014123A1 (en) * 2008-07-26 2010-02-04 Thomson Licensing A real-time transport protocol (rtp) packetization method for fast channel change applications using scalable video coding (svc)

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP3229480A1 (en) * 2016-04-04 2017-10-11 LSIS Co., Ltd. Remote management system supporting n-screen function
US10068313B2 (en) 2016-04-04 2018-09-04 Lsis Co., Ltd. Remote management system supporting N-screen function
FR3071374A1 (en) * 2017-09-15 2019-03-22 Neotion METHOD AND SYSTEM FOR DISTRIBUTING MULTIMEDIA CONTENT TO COMPUTER TERMINALS

Also Published As

Publication number Publication date
FR3004055A1 (en) 2014-10-03

Similar Documents

Publication Publication Date Title
US9351020B2 (en) On the fly transcoding of video on demand content for adaptive streaming
EP3072303B1 (en) Adaptive broadcasting of multimedia content
EP3127336A1 (en) Device and method for remotely controlling the rendering of multimedia content
EP2947888B1 (en) Adaptive method for downloading digital content for a plurality of screens
Chakraborty et al. Dynamic http live streaming method for live feeds
EP3496407A1 (en) Method for managing the power consumption of an electronic device
WO2014155017A1 (en) Transcoding and adaptive broadcasting of multimedia contents
WO2019220034A1 (en) Management of adaptive progressive download of a digital content within a restoration terminal of a local communication network
WO2016113364A1 (en) Method for transmitting a data flow using a direct broadcasting protocol
FR3081647A1 (en) MANAGEMENT OF ADAPTIVE PROGRESSIVE DOWNLOAD (HAS) OF DIGITAL CONTENT WITHIN A REAL-TIME MULTIMEDIA STREAM READER TERMINAL.
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
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
EP2819424A1 (en) Method for improving the time for switching between audiovisual programs
EP2879352A1 (en) Control of multimedia content broadcasts
FR3096210A1 (en) A method of transmitting digital content having several versions accessible from a content server to a playback terminal.
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
EP4066512A1 (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
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
FR3111502A1 (en) Method for managing the reading of digital content within a multimedia content reader terminal connected to a playback device
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
FR3114719A1 (en) Method for managing the reading of digital content within a multimedia content player terminal connected to a rendering device
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.
FR3091446A1 (en) method and system for distributing audiovisual content

Legal Events

Date Code Title Description
121 Ep: the epo has been informed by wipo that ep was designated in this application

Ref document number: 14720650

Country of ref document: EP

Kind code of ref document: A1

NENP Non-entry into the national phase

Ref country code: DE

122 Ep: pct application non-entry in european phase

Ref document number: 14720650

Country of ref document: EP

Kind code of ref document: A1