EP3973714A1 - Restitution d'un contenu en arrière-plan ou sous forme d'incrustation dans le cadre d'un téléchargement progressif adaptatif de type has - Google Patents

Restitution d'un contenu en arrière-plan ou sous forme d'incrustation dans le cadre d'un téléchargement progressif adaptatif de type has

Info

Publication number
EP3973714A1
EP3973714A1 EP20723886.6A EP20723886A EP3973714A1 EP 3973714 A1 EP3973714 A1 EP 3973714A1 EP 20723886 A EP20723886 A EP 20723886A EP 3973714 A1 EP3973714 A1 EP 3973714A1
Authority
EP
European Patent Office
Prior art keywords
content
time
terminal
digital content
download
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Pending
Application number
EP20723886.6A
Other languages
German (de)
English (en)
Inventor
Mathieu Rivoalen
Hervé Marchand
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Orange SA
Original Assignee
Orange SA
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Orange SA filed Critical Orange SA
Publication of EP3973714A1 publication Critical patent/EP3973714A1/fr
Pending legal-status Critical Current

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/80Generation or processing of content or additional data by content creator independently of the distribution process; Content per se
    • H04N21/83Generation or processing of protective or descriptive data associated with content; Content structuring
    • H04N21/845Structuring of content, e.g. decomposing content into time segments
    • H04N21/8456Structuring of content, e.g. decomposing content into time segments by decomposing the content in the time domain, e.g. in time segments
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L65/00Network arrangements, protocols or services for supporting real-time applications in data packet communication
    • H04L65/60Network streaming of media packets
    • H04L65/65Network streaming protocols, e.g. real-time transport protocol [RTP] or real-time control protocol [RTCP]
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L65/00Network arrangements, protocols or services for supporting real-time applications in data packet communication
    • H04L65/60Network streaming of media packets
    • H04L65/75Media network packet handling
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/01Protocols
    • H04L67/02Protocols based on web technology, e.g. hypertext transfer protocol [HTTP]
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/20Servers specifically adapted for the distribution of content, e.g. VOD servers; Operations thereof
    • H04N21/23Processing of content or additional data; Elementary server operations; Server middleware
    • H04N21/234Processing of video elementary streams, e.g. splicing of video streams or manipulating encoded video stream scene graphs
    • H04N21/2343Processing of video elementary streams, e.g. splicing of video streams or manipulating encoded video stream scene graphs involving reformatting operations of video signals for distribution or compliance with end-user requests or end-user device requirements
    • H04N21/23439Processing of video elementary streams, e.g. splicing of video streams or manipulating encoded video stream scene graphs involving reformatting operations of video signals for distribution or compliance with end-user requests or end-user device requirements for generating different versions
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/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/431Generation of visual interfaces for content selection or interaction; Content or additional data rendering
    • H04N21/4312Generation of visual interfaces for content selection or interaction; Content or additional data rendering involving specific graphical features, e.g. screen layout, special fonts or colors, blinking icons, highlights or animations
    • H04N21/4316Generation of visual interfaces for content selection or interaction; Content or additional data rendering involving specific graphical features, e.g. screen layout, special fonts or colors, blinking icons, highlights or animations for displaying supplemental content in a region of the screen, e.g. an advertisement in a separate window
    • 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/431Generation of visual interfaces for content selection or interaction; Content or additional data rendering
    • H04N21/4318Generation of visual interfaces for content selection or interaction; Content or additional data rendering by altering the content in the rendering process, e.g. blanking, blurring or masking an image region
    • 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/440281Processing 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 altering the temporal resolution, e.g. by frame skipping
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/40Client devices specifically adapted for the reception of or interaction with content, e.g. set-top-box [STB]; Operations thereof
    • H04N21/43Processing of content or additional data, e.g. demultiplexing additional data from a digital video stream; Elementary client operations, e.g. monitoring of home network or synchronising decoder's clock; Client middleware
    • H04N21/442Monitoring of processes or resources, e.g. detecting the failure of a recording device, monitoring the downstream bandwidth, the number of times a movie has been viewed, the storage space available from the internal hard disk
    • H04N21/44213Monitoring of end-user related data
    • H04N21/44222Analytics of user selections, e.g. selection of programs or purchase activity
    • H04N21/44224Monitoring of user activity on external systems, e.g. Internet browsing
    • 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/47End-user applications
    • H04N21/482End-user interface for program selection
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/60Network structure or processes for video distribution between server and client or between remote clients; Control signalling between clients, server and network components; Transmission of management data between server and client, e.g. sending from server to client commands for recording incoming content stream; Communication details between server and client 
    • H04N21/63Control signaling related to video distribution between client, server and network components; Network processes for video distribution between server and clients or between remote clients, e.g. transmitting basic layer and enhancement layers over different transmission paths, setting up a peer-to-peer communication via Internet between remote STB's; Communication protocols; Addressing
    • H04N21/637Control signals issued by the client directed to the server or network components
    • H04N21/6373Control signals issued by the client directed to the server or network components for rate control, e.g. request to the server to modify its transmission rate
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/80Generation or processing of content or additional data by content creator independently of the distribution process; Content per se
    • H04N21/83Generation or processing of protective or descriptive data associated with content; Content structuring
    • H04N21/845Structuring of content, e.g. decomposing content into time segments
    • H04N21/8455Structuring of content, e.g. decomposing content into time segments involving pointers to the content, e.g. pointers to the I-frames of the video stream

Definitions

  • TITLE Restitution of content in the background or in the form of overlay as part of an adaptive progressive download of the HAS type
  • the field of the invention is that of the broadcasting of digital multimedia content, namely digital audio and / or video content. More precisely, the invention relates to the restitution of such content in the background or in the form of an overlay of PiP (for English "Picture in Picture") type, in the context of the routing of digital content according to a technique known as adaptive progressive downloading, or HAS.
  • PiP for English "Picture in Picture”
  • local such as a home network.
  • the terminal generally sends a request to a server, indicating the content chosen, and in return it receives a stream of digital data relating to this content.
  • a request passes through the network access gateway, for example the residential gateway.
  • the terminal is suitable for receiving this digital content in the form of multimedia data and for rendering it back.
  • This restitution consists in providing the digital content at the terminal level in a form accessible to the user.
  • data received corresponding to a video is generally decoded, then restored at the level of the terminal in the form of a display of the corresponding video with its associated soundtrack.
  • the digital content will be assimilated to a video and the reproduction by the terminal, or consumption by the user of the terminal, to a display on the screen of the terminal.
  • the distribution of digital content on the Internet is often based on client-server protocols of the HTTP family (standing for “Hyper Text Transport Protocol”).
  • the progressive downloading of digital content also called streaming, makes it possible to transport and consume the data in real time, that is to say that the digital data is transmitted over the network and returned by the terminal as it goes. and as they arrive.
  • the terminal receives and stores part of the digital data in a buffer memory before returning them.
  • This distribution mode is particularly useful when the bit rate available to the user is not guaranteed for the real-time transfer of the video.
  • Adaptive progressive downloading, in English HTTP Adaptive Streaming, abbreviated HAS also makes it possible to broadcast and receive data in different qualities corresponding for example to different bit rates.
  • this description file makes it possible to select the right format for the content to be consumed as a function of the available bandwidth or the storage and decoding capacities of the client terminal.
  • This type of technique makes it possible in particular to take account of the variations in bandwidth on the link between the client terminal and the content server.
  • the MPEG-DASH standard (for English “Dynamic Adaptive Streaming over HTTP", in French “dynamic adaptive streaming over HTTP") is a standard for audiovisual broadcasting format on the Internet. It is based on the preparation of the content in different presentations of varying quality and speed, cut into short segments (of the order of a few seconds), also called “chunks”. Each of these segments is made available individually by means of an exchange protocol.
  • the mainly targeted protocol is HTTP, but other protocols (eg FTP) can also be used.
  • the organization of the segments and the associated parameters are published in a manifest in XML format.
  • the principle underlying this standard is that the MPEG-DASH client makes an estimate of the bandwidth available for the reception of segments, and, depending on the filling of its reception buffer, chooses, for the next segment to load, a representation whose flow:
  • the rendering terminal must therefore find a compromise between the overall quality of the content, and its uninterrupted reproduction, by carefully selecting the next segment to download, from among the various encoding rates offered. To do this, there are different algorithms for selecting the quality of the content as a function of the available bandwidth, which may have more or less aggressive, or more or less secure, strategies.
  • HAS adaptive progressive download
  • VOD video on demand
  • Replay delayed broadcasting of television programs
  • Network PVR type offers for “Network Personal Video Recorder”, ie a service
  • real-time media streaming devices also access digital content in progressive adaptive download mode for real-time (or Live) television content. This is the case, for example, with the Chromecast ® device developed by Google ® , or the CléTV ® from Orange ® .
  • Such devices are conventionally connected to the HDMI port of a television set and communicate, by Wi-Fi ® connection , with another device of the home communication network connected to a wide Internet-type communication network (residential gateway, computer, telephone smart device (smartphone, tablet, etc.), in order to reproduce, on the television, the multimedia content received by a compatible software application.
  • a wide Internet-type communication network residential gateway, computer, telephone smart device (smartphone, tablet, etc.
  • playback terminals which do not use this adaptive progressive downloading technique, but instead allow the user to access the content using a so-called “multicast” technology, or in French “grouped distribution”.
  • multicast a set of receiving terminals interested in the same content form a broadcast group.
  • the content server sends the data packets relating to this content only once, and they are routed to all the terminals of the broadcast group. Their replication takes place as close as possible to the receiving terminals. This technology therefore has little impact on end-to-end bandwidth consumption, because it is fully distributed.
  • This multicast technology is used in particular by television systems over IP (in English "Internet Protocol") to broadcast the content of television channels to a large number of subscribers, most often through the use of set top boxes (in French “Adapter box”, or “decoder”).
  • the corresponding playback terminals most often offer their users a user interface, or HMI, allowing them to access the main menu of the television over IP service, in which the stream of one of the television channels is displayed in the background.
  • menu map or in the form of a PiP (for English "Picture in Picture") type overlay on the display terminal screen.
  • This user interface which for example allows the user to view a video in the background of the main menu, or to view a secondary on-screen TV channel that plays a main TV channel, offers an experience and a service particularly appreciated by users. It also has little impact on the consumption of stream and bandwidth in the network, due to the multicast technology used.
  • HAS type download because it is customary, with this type of service, to prevent the client from consuming bandwidth when it is not necessary. Indeed, broadcasting a stream in the background or in PiP in a menu is considered, in this type of “unicast” (or point to point) technology, as a waste of overall bandwidth, insofar as this stream of background, or overlay, is not the user's primary focus.
  • the invention responds to this need by proposing a method for managing the adaptive progressive download (HAS) of digital content within a multimedia stream reader terminal in real time, associated with a terminal for rendering the digital content.
  • a method comprises a step of obtaining a description file of the digital content, comprising a list of time segments of the content each associated with several encoding rates of the content.
  • such a method implements during a concomitant rendering, by the rendering terminal, of the digital content and of an element, called the main element, belonging to the group comprising a menu and other digital content, a partial downloading of at least some of the time segments, and restitution of a decoded image from the downloaded part of the corresponding time segment.
  • the invention is based on a completely new and inventive approach to adaptive progressive downloading of content within the framework of an OTT service, making it possible to offer the user an interface experience similar to that proposed in the framework of multicast content distribution techniques.
  • the invention proposes to offer the user, on the rendering terminal, the concomitant rendering, on the one hand, of a main element, which can be content chosen by the user, or a menu. access to the service, and on the other hand, other content, for example a real-time video stream, which is offered in the background of the main element (for example with an opacity of 50%), or as an overlay on the screen (for example in a small window at the bottom left of the screen).
  • a main element which can be content chosen by the user, or a menu.
  • other content for example a real-time video stream, which is offered in the background of the main element (for example with an opacity of 50%), or as an overlay on the screen (for example in a small window at the bottom left of the screen).
  • a time segment corresponds for example to a portion of the content of one or two seconds: it conventionally begins with an I image, also called an intra image. It then contains information making it possible to reconstruct, by motion estimation / compensation, the following images of the content, from this image I. This information relates to the parts of the image which change or evolve, with respect to the image I, for the duration of the time segment.
  • the start of the chunk also called the introductory portion of the chunk, which makes it possible to decode the image I, or intra.
  • This introductory portion of the time segment represents approximately 20% of the total segment size in bytes. After decoding of the image I, the latter is restored to the user throughout the duration of the time segment from which it is extracted.
  • the image returned to the user in the background or in PiP is therefore refreshed approximately every 2 seconds, each time a new intra image is decoded, associated with a new one. time segment.
  • This makes it possible to achieve an interesting compromise between a rich user interface, making it possible to display real-time content in the background or in overlay on the screen of the rendering terminal, and a limitation of the consumption of network resources by the server. content.
  • the video segments broadcast in HAS are made up, like conventional videos, of GOP (for English "Group Of Pictures", in French “Group of Pictures”).
  • a GOP consists of a series of images grouped together in an encoded video stream which is repeated periodically until the end of encoding. Visible images are generated from images contained in a GOP.
  • Each HAS segment begins with a GOP which itself begins with an I frame (l-Frame, or internally coded frame).
  • a GOP contains a single I image which corresponds to the first image to be encoded. It is followed by a succession of images P (images with predictive coding) and B (images with bidirectional predictive coding), the pattern of which is repeated until the end of the GOP.
  • the P images are at regular intervals and the B images complete these intervals.
  • I image is a reference image whose decoding does not depend on a previous or next image. It can be completely decoded
  • the objective of an embodiment of the invention is therefore to recover the beginning, or the introductory portion, of the video segment, which makes it possible to extract the image I (in the form of a JPG for example).
  • this partial downloading of the chunks takes place at the end of a first period of determined duration of absence of interaction of a user with the multimedia stream reader terminal in real time and / or with the return terminal.
  • it is decided not to download all of the time segments, but only their introductory portion, when it is detected that the user has no longer interacted with the playback terminal or the multimedia stream reader terminal for a few moments (e.g. example a few minutes).
  • the partial download (as opposed to the download of the entire segment), can be implemented: either when a concomitant restitution of a content and a main element is required, that is to say immediately as soon as the user accesses the service,
  • the partial download relates to an introductory portion of at least some of said time segments; in this configuration, at the end of a second period of fixed duration of absence of user interaction with the multimedia stream reader terminal in real time and / or with the reproduction terminal, the image is decoded from the introductory portion of one of the time segments and is restored for a duration of at least two consecutive time segments.
  • the consumption of bandwidth is thus further reduced, by displaying the intra decoded image from a time segment of 2 seconds for the duration of two consecutive time segments, ie 4 seconds, or even for 6 seconds or more.
  • the partially downloaded time segments are associated with an encoding rate lower than an optimum encoding rate for restitution of the content.
  • optimum encoding rate is meant here the maximum rate of a segment to be downloaded to which the user can claim depending on network conditions, according to the general principle of HAS downloading.
  • the method according to one embodiment of the invention acts on the resolution and the temporal sampling of the stream, by only downloading the beginning of some of the time segments associated with reduced encoding rates, for example to offer the user a reproduction at 10 images per minute with a resolution of 576 pixels.
  • a graphic transition between said decoded image and a previous decoded image improves the user's experience: in fact, the display in the background of the screen of real-time content of poor quality or resolution can be unattractive.
  • the use of a technique of blurring the displayed image is a subterfuge to improve the rendering of the image for the client, who can furthermore better highlight and highlight the menu buttons, in the case where content is displayed in the background of service access control buttons.
  • the method described above can also have an adaptive character, in the sense that its various aspects and characteristics can be activated gradually and successively, depending on the behavior of the user, and the duration of his period of time. 'inactivity or interaction with the terminal. For example, first of all, we start by displaying only the intra images; then, secondly, the encoding rate of the time segments of which the introductory portion is downloaded is reduced; finally, in a third step, the display duration of the intra decoded image is increased, therefore reducing the number of partially downloaded time segments, and for example graphic post-processing of the blur or opacity type is introduced. Different time counters can be implemented to determine the moment at which it is appropriate to add an additional measurement among those listed above, depending for example on the interactions detected by the user with the playback terminal or the reader terminal. multimedia stream.
  • the decoded image prior to the restitution of the decoded image, it implements a determination of the chrominance of the decoded image and, if the determined chrominance is greater than a chrominance threshold, it implements the partial download. for at least one time segment adjacent to the time segment from which the decoded image is extracted, and a determination of the chrominance of at least one decoded image from said at least one neighboring time segment, called neighboring decoded image, and a restitution of one of the neighboring decoded images of which the determined chrominance is less than the chrominance threshold.
  • the digital content is rendered, on a screen of the rendering terminal, in the background of the main element and / or in a window of the screen.
  • the invention also relates to a computer program product comprising program code instructions for implementing a method as described above, when it is executed by a processor.
  • the invention also relates to a recording medium readable by a computer on which is recorded a computer program comprising program code instructions for the execution of the steps of the adaptive progressive download management method according to the invention such as described above.
  • Such a recording medium can be any entity or device capable of storing the program.
  • the medium can comprise a storage means, such as a ROM, for example a CD ROM or a microelectronic circuit ROM, or else a magnetic recording means, for example a USB key or a hard disk.
  • such a recording medium can be a transmissible medium such as an electrical or optical signal, which can be conveyed via an electrical or optical cable, by radio or by other means, so that the program computer it contains can be executed remotely.
  • the program according to the invention can in particular be downloaded over a network, for example the Internet network.
  • the recording medium can be an integrated circuit in which the program is incorporated, the circuit being adapted to execute or to be used in the execution of the aforementioned display control method.
  • the invention also relates to a device for managing the adaptive progressive download (HAS) of digital content within a multimedia stream reader terminal in real time, associated with a terminal for rendering said digital content.
  • a device for managing the adaptive progressive download (HAS) of digital content within a multimedia stream reader terminal in real time associated with a terminal for rendering said digital content.
  • Such a device comprises a module for obtaining a description file of the digital content, comprising a list of time segments of the content each associated with several encoding rates of the content.
  • such a device comprises a module for concomitant rendering of the digital content and an element, called the main element, belonging to the group comprising a menu and other digital content, and a downloading module configured to implement, during a concomitant restitution, a partial downloading of at least some of the time segments, and the restitution module is configured to restore a decoded image from the downloaded part of the corresponding time segment.
  • the invention also relates to a real-time multimedia stream reader terminal, which comprises a device for managing the adaptive progressive download of digital content as described above.
  • the adaptive download management device and the multimedia stream reader terminal have, in combination, all or part of the characteristics set out in the whole of this document in relation to the adaptive download management method.
  • the adaptive download management device, the multimedia stream reader terminal and the corresponding computer program mentioned above have at least the same advantages as those conferred by the adaptive download management method according to the present invention.
  • FIG 1 presents a progressive download architecture based on the use of adaptive streaming according to an embodiment of the invention
  • FIG 2 shows an architecture of a multimedia stream reader terminal in real time according to one embodiment of the invention
  • FIG 3 illustrates the user interface proposed according to one embodiment of the invention
  • FIG. 4 presents a method allowing the display of the content C1 on the interface of FIG. 3 according to one embodiment of the invention.
  • the general principle of the invention is based, in order to be able to offer the user an interface experience as rich as in the context of video services based on multicast technology, on an adaptation of the nature of the video stream to be displayed behind.
  • plan or overlay as part of an OTT service based on an adaptive progressive download of the HAS type. More precisely, it is proposed to download only the start of the time segments representative of the flow to be displayed in the background or in PiP, in order to reduce the consumption of network flows, and not to restore, with a display refresh rate. adaptive, than the first frame decoded from this chunk start.
  • FIG. 1 a progressive download architecture based on the use of adaptive streaming according to the invention.
  • Terminal 3 for example an intelligent telephone of the “smartphone” type
  • terminal 4 for example a laptop computer
  • terminal 8 for example an HDMI key connected to a television 5
  • LAN network local
  • the context of the local network is given by way of example and could easily be transposed to a “best effort” type Internet network, a company network, and so on.
  • a digital content server 2 is located according to this example in the wide area network (WAN, GSM, GSM, GSM, GSM, GSM, GSM, GSM, GSM
  • the content server 2 receives, for example, digital television content channels originating from a broadcast television network, not shown, and / or videos on demand, and makes them available to the client terminals.
  • Client terminals 3, 4 and 8 can enter into communication with content server 2 in order to receive one or more content (films, documentaries, advertising sequences, etc.).
  • an adaptive progressive download technique in English “adaptive streaming”, abbreviated as HAS based on HTTP protocol.
  • HAS adaptive progressive download technique
  • This type of technique makes it possible in particular to offer a good quality of content to the user, taking into account the variations in bandwidth which may occur on the link between the client terminal 3, 4 and 8 and the service gateway 6, or between the latter and the content server 2.
  • different qualities can be encoded for the same content of a channel, corresponding for example to different bit rates. More generally, we will speak of quality to refer to a certain resolution of the digital content (spatial, temporal resolution, level of quality associated with video and / or audio compression) with a certain bit rate. Each quality level is itself split on the content server into time segments (or
  • URI Universal Resource Identifier
  • All of these parameters are generally grouped together in a parameters file, called a description file. It will be noted that this parameter file can be a computer file or a set of descriptive information about the content, accessible at a certain address.
  • Terminals 3, 4 and 8 have their own characteristics in terms of decoding, display, etc. In a progressive adaptive download context, they can adapt their requests to receive and decode the content requested by the user at the quality that best suits them. In our example, if the contents are available at 512 kb / s (kilobits per second) (Resolution 1, or level 1, denoted NI), 1024 kb / s (N2), 2048 kb / s (N3) speeds and the client terminal has a bandwidth of 3000 kb / s, it can request content at any rate below this limit, for example 2048 kb / s.
  • the content number i with the quality j is denoted “Ci @ Nj” (for example the j-th quality level Nj described in the description file).
  • the service gateway 6 is in this example a domestic gateway which ensures the routing of data between the wide area network 1 and the local network 10, manages the digital contents by ensuring in particular their reception from the network and their decoding thanks to the decoders that l 'it is assumed here that they are integrated into the gateway 6 or into the client terminals 3, 4 and 8.
  • the decoders can be located elsewhere in the extended network 1 or local 10, in particular at the level of an element of STB type (of the 'English Set-Top-Box) (not shown) associated with a television set.
  • the terminal 3, 4 or 8 firstly queries the service gateway 6 to obtain an address of the description document 7 of the desired content (for example, C1).
  • the service gateway 6 responds by providing the terminal with the address of the description file 7.
  • this file is a manifest type file according to the MPEG-DASH standard (denoted “C.mpd”) and we will refer indifferently, depending on the context, to the expression “description file” or “manifest”.
  • this file can be retrieved directly from a local Internet server or external to the local network, or be already on the service gateway or on the terminal at the time of the request.
  • MPD MPEG-DASH
  • NI 512 kb / s
  • N2 1024 kb / s
  • N3 2048 kb / s
  • the service gateway 6 proceeds to obtain the fragments via a download at these addresses. It will be noted that this download takes place here, traditionally, through an HTTP URL, but could also take place through a universal address (URI) describing another protocol (dvb: // my content segment for example).
  • URI universal address
  • the HDMI key 8 is connected to the television 5 by connection to the latter's HDMI port, and is used to reproduce, on the screen of the television 5, a television program broadcast live, which therefore has no by nature, no predetermined duration, nor end date.
  • this television program is designated under the name of content C1.
  • Such content C1 is described in a manifest file 7.
  • the content C1 can also be a deferred television program, or a video on demand, or a personal video of the user, or any other multimedia content of determined duration, for which the invention s. 'also applies.
  • the HDMI 8 key is connected via WiFi ® directly to the residential gateway 6.
  • the HDMI 8 key could also be connected via WiFi ® to another nomadic device on the home network, for example to the laptop computer. 4 or smart phone 3, through which it could access the extended communication network 1.
  • the HDMI 8 key can also be controlled by the user by means of the smart phone 3, on which a software application for controlling the HDMI 8 key is installed.
  • the content fragments obtained by the residential gateway 6 are, for example, transmitted via WiFi® to the HDMI key 8, which controls their display on the television screen 5, for return to the user.
  • the figure fig. 2 represents an architecture of a multimedia stream reader terminal in real time according to an embodiment of the invention, for example the HDMI key 8 of FIG. 1.
  • the HDMI key 8 communicates with the local network 10 and the extended Internet network 1 via the WIFI module for local wireless communication with the residential gateway 6 or another communication terminal of the local network 10, for example the smart phone 3.
  • the HDMI 8 key also includes a download module progressive adaptive HAS capable of requesting a progressive download of one of the contents at one of the qualities proposed in a description file 7. This description file 7 can be recorded for example in the memories M of the HDMI key 8 or be find outside.
  • the HDMI 8 key also includes a module for progressive adaptation of the quality of ADAP_Q content, which controls the HAS adaptive progressive download module.
  • This ADAP_Q module commands the adaptive progressive download module HAS to download only certain portions of time segments, ideally the introductory portions of these segments, in order to extract therefrom the first image representative of the segment, or intra image. In addition, it can force the latter to request a progressive download of these segments at a quality, proposed in the description file 7, lower than the optimum quality to which it could claim. It can also select only some of the time segments to be partially downloaded, according to the refresh rate of the display of the desired intra images, in particular according to the interactions detected by the user with the HDMI 8 key or the playback terminal, for example TV 5.
  • the HDMI 8 key also includes a DEC module for decoding intra images from the preliminary portions of downloaded time segments, which is also able to perform processing on these decoded images, such as a calculation of the chrominance of these images, for decide on their representativeness of the content, and various graphic post-processing, such as an application of a blur, an opacity, or a fade.
  • DEC module for decoding intra images from the preliminary portions of downloaded time segments, which is also able to perform processing on these decoded images, such as a calculation of the chrominance of these images, for decide on their representativeness of the content, and various graphic post-processing, such as an application of a blur, an opacity, or a fade.
  • the HDMI key 8 can also contain other modules such as a hard disk (not shown) for storing video fragments, a content access control module, a module for processing commands received from a tablet or a smartphone on which the application for controlling the HDMI key is installed, thanks to which the user can control its operation, etc.
  • a hard disk not shown
  • a content access control module a module for processing commands received from a tablet or a smartphone on which the application for controlling the HDMI key is installed, thanks to which the user can control its operation, etc.
  • such an HDMI 8 key does not generally contain an I / O interface module, and it is the I / O interface module of the user's smart phone or tablet that is used by the latter. to choose for example its content.
  • the HDMI Key 8 also integrates an INT module for managing the interface with the television 5, by which it obtains, for example, information on any user interactions with the television 5 (action on the television remote control for example by pressing the volume key or a channel change key), and by which it can control, for example, the simultaneous display on the television screen 5 of a menu and real-time content in the background, or in a PiP-type window, in pop-up, for example in the bottom left corner of the screen.
  • an INT module for managing the interface with the television 5, by which it obtains, for example, information on any user interactions with the television 5 (action on the television remote control for example by pressing the volume key or a channel change key), and by which it can control, for example, the simultaneous display on the television screen 5 of a menu and real-time content in the background, or in a PiP-type window, in pop-up, for example in the bottom left corner of the screen.
  • module can correspond just as well to a software component as to a hardware component or a set of hardware and software components, a software component itself corresponding to one or more computer programs or subroutines or more generally to any element of a program capable of implementing a function or a set of functions as described for the modules concerned.
  • a hardware component corresponds to any element of a hardware set (or hardware) capable of implementing a function or a set of functions for the module concerned (integrated circuit, smart card, memory card, etc. .).
  • HDMI 8 key comprises a random access memory (for example a RAM memory), a processing unit equipped for example with a processor CPU, and controlled by a computer program, representative of the progressive download management module.
  • adaptive HAS stored in read only memory (eg ROM or hard disk).
  • the code instructions of the computer program are for example loaded into the random access memory before being executed by the processor CPU of the processing unit.
  • the random access memory contains in particular the description file manifest 7.
  • the processor of the processing unit controls the evaluation of the presence or absence.
  • the HDMI key 8 or the television 5 the display of content in the background or overlay on the television screen 5, any graphic post-processing applied to it before display, and the progressive reduction of the quality and the refresh rate of the display of the downloaded content, through the choice of the time segments and the associated encoding rates to download, the decoding of the intra images which are extracted therefrom, and 'issuance of corresponding commands to the HAS client module.
  • Figure Fig. 2 only illustrates one particular way, among several possible, of making the HDMI key 8, so that it carries out the steps of the method detailed below, in relation to FIG. 4 (in any of the different embodiments, or in a combination of these embodiments). In fact, these steps can be carried out either on a reprogrammable computing machine (a PC computer, a DSP processor or a microcontroller) executing a program comprising a sequence of instructions, or on a dedicated computing machine (for example a set of logic gates such as an FPGA or ASIC, or any other hardware module).
  • a reprogrammable computing machine a PC computer, a DSP processor or a microcontroller
  • a program comprising a sequence of instructions
  • a dedicated computing machine for example a set of logic gates such as an FPGA or ASIC, or any other hardware module.
  • Figure Fig. 3 provides an overview of the user interface proposed according to one embodiment of the invention, for example on the screen of the television 5.
  • a main menu also called a “desk” as part of the service offered by Orange ® .
  • the television screen 5 displays only a set of buttons M, allowing him to access the various functionalities of the service (choice of content, adjustment of the noise level, etc.).
  • the real-time content C1 is also displayed in the background on the screen, in superposition (“overlay”) with the buttons M of the main menu, for example with an opacity by 50%.
  • this content C1 can be displayed, not in the background, but in a dedicated window on the screen, in the form
  • This PiP type inlay technique can also be used, according to one embodiment of the invention, to allow the user to view C2 content on the screen, in high resolution, while keeping an eye on a device.
  • content C1 displayed in a window of reduced size in a corner of the screen, for example to allow it to detect the start of a specific television program on another channel.
  • the flowchart in FIG. 4 details more specifically the method allowing the display of this content C1 according to one embodiment of the invention.
  • This method is implemented by a real-time multimedia stream reader terminal 30, for example the HDMI key 8 in FIGS. 1 and fig. 2.
  • the real-time multimedia stream reader terminal 30 is connected to a television set TV 5, via an HDMI link. It comprises an INT module for interfacing with the television set 301, an ADAP_Q 302 module for progressive adaptation of the quality of content rendered in the background or in PiP, and a HAS client module 303.
  • a HAS content server 2 exposes a video C1 in the form of “chunks” C1 j @Nj encoded at different encoding rates Nj, where the index i designates a temporal identifier of the “chunk” C1 j @Nj.
  • a HAS client module is responsible for coming to retrieve these “chunks” from the HAS content server 2 by choosing the video quality Nj according to the available network resource.
  • the way in which the HAS client module chooses the encoding rate of the next video fragment to download is not described in more detail here: there are indeed many algorithms allowing this choice to be made, the strategies of which are more or less secure. or aggressive.
  • the general principle of such algorithms is based on the downloading of a first fragment at the lowest encoding rate proposed in the manifesto, and on the evaluation of the recovery time of this first fragment. . Based on this, the HAS client module evaluates whether, depending on the size of the fragment and the time taken to retrieve it, the network conditions allow the next fragment to be downloaded at a higher encoding rate.
  • Some algorithms are based on a gradual increase in the quality level of the downloaded content fragments; others propose more risky approaches, with jumps in the levels of the encoding rates of successive fragments.
  • the HAS client module In the classic case, if a video "chunk" lasts 3 seconds, the recovery of the "chunk” by the HAS client module must not exceed 3 seconds, in order to allow a restitution without interruption of the content by the terminal 30. It is therefore necessary for the HAS client module to operate the best compromise between a quality of reproduction, and therefore an encoding rate, as high as possible, and the download time of the fragment, which must be low enough to allow continuous playback on the television 5.
  • the HAS client module 303 does not control the downloading of the entire fragment, nor at the optimal encoding rate, in order to optimize the consumption of network resources, in particular in the case where it is detected that the The user does not interact with the playback terminal 5, or the HDMI 8 key.
  • the HAS module 303 recovers the manifest file 7 in order to discover the available fragments of the video content C1, and the various associated video qualities Nj.
  • the HAS 303 module downloads, for example, successive fragments Cl ⁇ Nl (i.e. the first temporal fragment at an encoding rate of 500 kb / s) , then C1 2 @ N3 (i.e. the second temporal fragment at an encoding rate of 2000 kb / s), then C1 3 @ N3 (i.e. the third temporal fragment at an encoding rate of 2000 kb / s),. ..
  • the algorithm implemented by the HAS 303 client module to determine which fragment at which encoding rate must be downloaded in normal operating mode can be one of the algorithms already in existence of the prior art. This algorithm will therefore not be described in more detail here.
  • the various fragments downloaded by the HAS client module 303 are transmitted to the interface module INT 301 for their return to the user on the screen of the television set TV 5.
  • the INT module 301 monitors the user's interactions with the television 5, and receives for example, via the HDMI port, information relating to the actions performed by the user on the remote control on TV 5 and on TV 5 itself. It transmits this information to the ADAP_Q module 302, which also receives information relating to any interactions of the user with the terminal 30 itself, via its remote control or a control terminal of the smartphone or tablet type.
  • the ADAP_Q 302 module initiates for example a counter, or "timer", for example of a duration of ten or fifteen minutes, during the activation of the HDMI 8 key and of the television 5.
  • the INT 301 module monitors user activity. If, at the expiration of this counter, no user interaction with the content restitution equipment has been detected, the ADAP_Q module 302 initiates the adaptation of the nature of the video stream C1, in order to reduce consumption network resources.
  • this adaptation of the nature of the video stream can be implemented immediately, as soon as the user accesses the service, regardless of whether or not he interacts with the terminals.
  • this adaptation consists, for the ADAP_Q 302 module, in ordering the HAS 303 download module to download only the introductory portions of the time segments Cl j @Nj, for example only 20% of the size of the chunk in bytes , corresponding to the start of the time segment, making it possible to decode the intra I image that it contains.
  • the ADAP_Q 302 module can decide to download portions of time segments corresponding, in volume, to 10% of the main stream of the content Cl.
  • the ADAP_Q 302 module implements an adaptive algorithm making it possible to determine the optimal portion of chunk to download, ie the portion of the chunk necessary and sufficient for the extraction of the Intra image.
  • the ADAP_Q 302 module can, on a first time segment, initialize at 20% the portion of the segment to be downloaded.
  • the ADAP_Q 302 module can incrementally reduce the portion to download for the next segment, for example by reducing by 1% the amount of data to be recovered on this next segment, i.e. 19%. If the extraction of the intra image from this 19% portion is successful, the ADAP_Q 302 module can continue to reduce the portion of the next segment to download, incrementally, until the image I extracted from this portion is not complete, because the ADAP_Q 302 module did not retrieve enough bytes from the start of the segment. The ADAP_Q 302 module then returns to the previous value, and freezes this value as being the optimal value, that is to say necessary and sufficient, to completely extract the Intra image of the segment.
  • the ADAP_Q module 302 then initiates, for example, a second counter, and the INT module 301 continues to monitor the possible actions of the user.
  • the ADAP_Q 302 module controls the restitution, in the background of the screen of the television 5, of an intra I image extracted from the segment Cl j @Nj for the entire duration of this segment , for example two seconds. Every two seconds, the display is refreshed, offering the user the intra I image extracted from the various successive time segments.
  • the user is therefore not allowed to view the real video stream associated with the content C1, but an interface is offered to him allowing him to have an evolving overview of this content.
  • This second counter can also be independent of the detection or not of user interactions with the terminals, and serve only to trigger a new content adaptation step.
  • the ADAP_Q module 302 can decide on a new adaptation of the quality of the reproduction of the content C1 to the user.
  • this adaptation may consist of no longer displaying one intra I image per time segment, but only downloading the start of one out of two time segments or the start of one out of three time segments, in order to display an intra I image. , no longer for the duration of one but of two or three successive segments, that is to say for four or six seconds. This reduces the refresh rate of the display of the content in the background or overlay on the screen of the television 5, and therefore the consumption of network resources.
  • the DEC 304 module Before the INT 301 module controls the display of the decoded I picture from one of the time segments on the television screen 5, the DEC 304 module performs a chrominance calculation on the decoded intra picture .
  • a threshold is determined, for example of the order of 50%. If the calculated chroma value for the image is less than the 50% threshold, the image contains little color information, and is therefore too dark to be effectively representative of the content. It is therefore not displayed on the TV screen 5.
  • the ADAP_Q module 302 commands the HAS module 303 to download the start of one or two time segment (s) preceding and / or following the chunk from which the too dark image was extracted. Corresponding intra images are extracted from these partially downloaded time segments.
  • the DEC 304 module calculates their chrominance, to determine which of these images is the most representative of the content C1, and which should therefore be displayed for better rendering to the user. More simply, the module DEC 304 successively calculates the chrominance of these different images, and as soon as it identifies an image whose chrominance value is satisfactory to faithfully represent the content C1, the INT module 301 controls the display of this image on the TV screen 5.
  • a third counter is triggered during this adaptation of the refresh rate and that a new change is decided by the ADAP_Q 302 module at the end of this third "timer" if the user does not interact. still not with return terminals.
  • This new development may for example consist of a reduction in the encoding rate of the time segments of the content C1 partially downloaded by the HAS module 303.
  • the HAS module 303 changes from downloading preliminary portions of time segments to 3000 kb / s a download of introductory portions of time segments at 500kb / s.
  • the HAS 303 client module will successively download (312) the beginnings of the fragments C1 2 @ N4, C1 3 @ N3, C1 4 @ N2 and C1 5 @ N1, to reduce the quality of reproduction of the content C1, as illustrated by the arrow referenced 311, down to the lowest quality proposed in manifesto 7, corresponding to a bit rate of 500 kb / s.
  • the reduction 311 of the encoding rates of the temporal fragments is not necessarily so rapid, but can be spread out over time, for example over a period of one hour.
  • the figure fig. 4 therefore corresponds to a simplified illustration of this principle, making it possible to apprehend it visually.
  • the HAS 303 client module controls the partial download of successive time fragments at quality level N4 for a period of fifteen minutes, then lowers this level by downloading the start of the time fragments at quality level N3 for the quarter of an hour which follows, and so on, until the lowest NI quality level expected in manifest 7 is reached after about an hour.
  • the ADAP_Q module 302 can also control the implementation of graphic post-processing of the intra I images decoded and extracted from the time segments by the DEC 304 module. For example, a blur can be applied to the intra I image restored backwards. shot to the user on the television screen 5. This is particularly advantageous when the resolution of the content C1 is reduced, in order to improve the rendering and the user experience. This technique also makes it possible to better highlight the buttons M of the main menu superimposed on the content C1, and therefore to draw the user's attention to them.
  • Other graphics processing techniques can also be implemented, such as the application of a fade black, or the realization of a fade between the successive intra I images displayed, in order to increase the user's experience. that it is in the presence of a real video stream.
  • the INT 301 module detects that the user manifests his presence by operating the remote control of the television 5, or by pressing the smartphone 3 controlling the terminal 30, the ADAP_Q 302 module can send the HAS client module 303 a order back to normal. If the user has for example chosen, via one of the buttons in the menu M, to view the real-time content C1 in full screen, the HAS client module 303 then determines, depending on the network conditions, the optimal bit rate of the time fragment which it can claim, and starts downloading the next fragment at this optimal speed.

Landscapes

  • Engineering & Computer Science (AREA)
  • Multimedia (AREA)
  • Signal Processing (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Health & Medical Sciences (AREA)
  • General Health & Medical Sciences (AREA)
  • Social Psychology (AREA)
  • Business, Economics & Management (AREA)
  • Marketing (AREA)
  • Databases & Information Systems (AREA)
  • Human Computer Interaction (AREA)
  • Two-Way Televisions, Distribution Of Moving Picture Or The Like (AREA)

Abstract

L'invention concerne un procédé de gestion du téléchargement progressif adaptatif (HAS) d'un contenu numérique au sein d'un terminal lecteur de flux multimédia en temps réel, associé à un terminal de restitution dudit contenu numérique, le procédé comprenant une étape d'obtention d'un fichier de description du contenu numérique, comprenant une liste de segments temporels du contenu associés chacun à plusieurs débits d'encodage du contenu, et une étape de téléchargement des segments temporels à l'un des débits d'encodage. Selon l'invention, un tel procédé met en oeuvre une restitution concomitante, par le terminal de restitution (5), du contenu numérique (C1) et d'un élément, appelé élément principal, appartenant au groupe comprenant un menu (M) et un autre contenu numérique, et, il met en oeuvre, lors de l'étape de téléchargement, un téléchargement partiel d'une portion liminaire d'au moins certains des segments temporels, et une restitution, pendant une durée d'un des segments temporels, d'une image décodée à partir de la portion liminaire du segment temporel correspondant.

Description

DESCRIPTION
TITRE : Restitution d'un contenu en arrière-plan ou sous forme d'incrustation dans le cadre d'un téléchargement progressif adaptatif de type HAS
Domaine technique
Le domaine de l'invention est celui de la diffusion de contenus multimédia numériques, à savoir les contenus audio et/ou vidéo numériques. Plus précisément, l'invention concerne la restitution d'un tel contenu en arrière-plan ou sous forme d'incrustation de type PiP (pour l'anglais « Picture in Picture »), dans le cadre de l'acheminement de contenus numériques selon une technique dite de téléchargement progressif adaptatif, ou HAS.
Art antérieur
L'accès à un contenu multimédia, tel que la télévision ou la vidéo à la demande, depuis un réseau de type Internet, est possible aujourd'hui, pour la plupart des terminaux de restitution, notamment lorsqu'ils appartiennent à un réseau de communication local, tel qu'un réseau domestique.
Le terminal émet généralement une requête à destination d'un serveur, en indiquant le contenu choisi et il reçoit en retour un flux de données numériques relatives à ce contenu. Dans le cadre d'un réseau de communication local, une telle requête transite par la passerelle d'accès au réseau, par exemple la passerelle résidentielle.
Le terminal est adapté pour recevoir ces contenus numériques sous forme de données multimédia et pour en faire une restitution. Cette restitution consiste à fournir au niveau du terminal le contenu numérique sous une forme accessible à l'utilisateur. Par exemple, des données reçues correspondant à une vidéo sont généralement décodées, puis restituées au niveau du terminal sous la forme d'un affichage de la vidéo correspondante avec sa bande-son associée. Dans la suite, par souci de simplification, on assimilera le contenu numérique à une vidéo et la restitution par le terminal, ou consommation par l'utilisateur du terminal, à une visualisation sur l'écran du terminal.
La diffusion de contenus numériques sur Internet est souvent basée sur des protocoles client- serveur de la famille HTTP (de l'anglais « Hyper Text Transport Protocol »). En particulier, le téléchargement en mode progressif des contenus numériques, aussi appelé streaming, permet de transporter et consommer les données en temps réel, c'est-à-dire que les données numériques sont transmises sur le réseau et restituées par le terminal au fur et à mesure de leur arrivée. Le terminal reçoit et stocke une partie des données numériques dans une mémoire tampon avant de les restituer. Ce mode de distribution est particulièrement utile quand le débit dont dispose l'utilisateur n'est pas garanti pour le transfert en temps réel de la vidéo. Le téléchargement progressif adaptatif, en anglais HTTP Adaptative Streaming, d'abréviation HAS, permet de surcroît de diffuser et recevoir des données suivant différentes qualités correspondant par exemple à différents débits. Ces différentes qualités sont décrites dans un fichier de paramètres disponible en téléchargement sur un serveur de données, par exemple un serveur de contenus. Quand le terminal client souhaite accéder à un contenu, ce fichier de description permet de sélectionner le bon format pour le contenu à consommer en fonction de la bande passante disponible ou des capacités de stockage et de décodage du terminal client. Ce type de technique permet notamment de tenir compte des variations de bande passante sur la liaison entre le terminal client et le serveur de contenus.
Il existe plusieurs solutions techniques pour faciliter la distribution d'un tel contenu en streaming, comme par exemple les solutions propriétaires Microsoft® Smooth Streaming, Apple® HLS,
Adobe® HTTP Dynamic Streaming ou encore la norme MPEG-DASH de l'organisme ISO/IEC qui sera décrite ci-après. Ces méthodes proposent d'adresser au client un ou plusieurs fichiers de description intermédiaires, appelés aussi documents ou manifestes, contenant les adresses des différents segments aux différentes qualités du contenu multimédia.
Ainsi, la norme MPEG-DASH (pour l'anglais "Dynamic Adaptive Streaming over HTTP", en français « diffusion en flux adaptatif dynamique sur HTTP ») est un standard de format de diffusion audiovisuelle sur Internet. Il se base sur la préparation du contenu en différentes présentations de qualité et débit variables, découpées en segments de courte durée (de l'ordre de quelques secondes), également appelés « chunks ». Chacun de ces segments est rendu disponible individuellement au moyen d'un protocole d'échange. Le protocole principalement ciblé est le protocole HTTP, mais d'autres protocoles (par exemple FTP) peuvent également être utilisés. L'organisation des segments et les paramètres associés sont publiés dans un manifeste au format XML.
Le principe sous-jacent à cette norme est que le client MPEG-DASH effectue une estimation de la bande passante disponible pour la réception des segments, et, en fonction du remplissage de son tampon de réception, choisit, pour le prochain segment à charger, une représentation dont le débit :
assure la meilleure qualité possible,
et permet un délai de réception compatible avec le rendu ininterrompu du contenu.
Ainsi, pour s'adapter à la variation des conditions réseau, notamment en termes de bande passante, les solutions existantes de téléchargement adaptatif permettent au terminal client de passer d'une version du contenu encodée à un certain débit, à une autre encodée à un autre débit, au cours du téléchargement. En effet, chaque version du contenu est divisée en segments de même durée. Pour permettre une restitution en continu du contenu sur le terminal, chaque segment doit atteindre le terminal avant son instant programmé de restitution. La qualité perçue associée à un segment augmente avec la taille du segment, exprimée en bits, mais dans le même temps, des segments plus gros requièrent un temps de transmission plus important, et donc présentent un risque accru de ne pas être reçus à temps pour une restitution en continu du contenu.
Le terminal de restitution doit donc trouver un compromis entre la qualité globale du contenu, et sa restitution ininterrompue, en sélectionnant avec soin le prochain segment à télécharger, parmi les différents débits d'encodage proposés. Il existe pour ce faire différents algorithmes de sélection de la qualité du contenu en fonction de la bande passante disponible, qui peuvent présenter des stratégies plus ou moins agressives, ou plus ou moins sécuritaires.
La consommation de contenus numériques en téléchargement progressif adaptatif (HAS) tend à se démocratiser. Elle est notamment utilisée par de nombreux services de streaming (en français, diffusion en mode continu, ou lecture en continu), mais également par certains décodeurs TV, ou set-top-box, qui l'utilisent pour accéder à des contenus délinéarisés, tels que la vidéo à la demande (VOD), la diffusion en différé de programmes télévisuels (Replay), ou encore les offres de type Network PVR (pour « Network Personal Video Recorder », i.e. un service
d'enregistrement des contenus numériques, effectué par le fournisseur de contenus lui-même plutôt qu'au domicile de l'utilisateur final).
En outre, d'autres dispositifs tels que des appareils lecteurs de flux multimédia en temps réel accèdent également aux contenus numériques en mode de téléchargement adaptatif progressif pour des contenus télévisuels en temps réel (ou Live). C'est le cas par exemple de l'appareil Chromecast® développé par Google®, ou de la CléTV® d'Orange®.
De tels appareils se branchent classiquement sur le port HDMI d'un téléviseur et communiquent, par connexion Wi-Fi®, avec un autre appareil du réseau de communication domestique connecté à un réseau de communication étendu de type Internet (passerelle résidentielle, ordinateur, téléphone intelligent de type smartphone, tablette...), afin de restituer, sur le téléviseur, le contenu multimédia reçu par une application logicielle compatible. On désignera par la suite ces appareils sous la désignation générique de Clef HDMI.
Il existe par ailleurs d'autres terminaux de restitution qui n'utilisent pas cette technique de téléchargement progressif adaptatif, mais permettent au contraire à l'utilisateur d'accéder au contenu selon une technologie dite « multicast », ou en français « diffusion groupée ». Selon cette technique multicast, un ensemble de terminaux récepteurs intéressés par un même contenu forment un groupe de diffusion. Le serveur de contenu envoie les paquets de données relatifs à ce contenu une seule fois, et ils sont routés vers tous les terminaux du groupe de diffusion. Leur réplication intervient au plus près des terminaux récepteurs. Cette technologie n'a donc que peu d'impact sur la consommation de bande passante de bout en bout, car elle est totalement distribuée.
Cette technologie multicast est notamment utilisée par les systèmes de télévision sur IP (en anglais « Internet Protocol ») pour diffuser le contenu des chaînes télévisées à un grand nombre d'abonnés, le plus souvent via l'utilisation de set top box (en français « boîtier adaptateur », ou « décodeur »). Les terminaux de restitution correspondants proposent le plus souvent à leurs utilisateurs une interface utilisateur, ou IHM, leur permettant d'accéder au menu principal du service de télévision sur IP, dans laquelle le flux d'une des chaînes de télévision est affiché en arrière-plan du menu, ou sous forme d'une incrustation de type PiP (pour l'anglais « Picture in Picture ») sur l'écran du terminal de restitution.
Cette interface utilisateur, qui permet par exemple à l'utilisateur de visualiser une vidéo en arrière-plan du menu principal, ou de visionner une chaîne de télévision secondaire en incrustation sur l'écran qui restitue une chaîne de télévision principale, offre une expérience et un service particulièrement appréciés des utilisateurs. Elle a par ailleurs peu d'impact sur la consommation du flux et de la bande passante dans le réseau, du fait de la technologie multicast utilisée.
Elle n'est en revanche à ce jour pas proposée par les services de type OTT (en anglais « Over The Top », en français « hors offre du fournisseur d'accès à l'internet ») reposant sur un
téléchargement de type HAS, car il est d'usage, sur ce type de service, d'éviter que le client consomme de la bande passante lorsque ce n'est pas nécessaire. En effet, diffuser un flux en arrière-plan ou en PiP dans un menu est considéré, dans ce type de technologie « unicast » (ou point à point), comme du gâchis de bande passante globale, dans la mesure où ce flux d'arrière- plan, ou incrusté, ne constitue pas le centre d'intérêt principal de l'utilisateur.
En dépit des nombreux avantages de la technique de téléchargement adaptatif HAS, elle ne permet donc pas à ce jour d'offrir à ses utilisateurs le même confort et la même expérience que les techniques de diffusion multicast.
Il existe donc un besoin d'une technique permettant, dans le cadre d'un service « over the top » de téléchargement progressif adaptatif de contenu, d'offrir une expérience utilisateur, et notamment une interface, aussi riche et fonctionnelle que celle proposée dans le cadre des services de diffusion multicast, tout en limitant l'impact sur la bande passante totale consommée.
Exposé de l'invention
L'invention répond à ce besoin en proposant un procédé de gestion du téléchargement progressif adaptatif (HAS) d'un contenu numérique au sein d'un terminal lecteur de flux multimédia en temps réel, associé à un terminal de restitution du contenu numérique. Un tel procédé comprend une étape d'obtention d'un fichier de description du contenu numérique, comprenant une liste de segments temporels du contenu associés chacun à plusieurs débits d'encodage du contenu. Selon l'invention, un tel procédé met en oeuvre lors d'une restitution concomitante, par le terminal de restitution, du contenu numérique et d'un élément, appelé élément principal, appartenant au groupe comprenant un menu et un autre contenu numérique, un téléchargement partiel d'au moins certains des segments temporels, et une restitution d'une image décodée à partir de la partie téléchargée du segment temporel correspondant.
Ainsi, l'invention repose sur une approche tout à fait nouvelle et inventive du téléchargement progressif adaptatif de contenu dans le cadre d'un service OTT, permettant d'offrir à l'utilisateur une expérience d'interface similaire à celle qui est proposée dans le cadre des techniques de diffusion de contenu multicast.
En effet, l'invention propose d'offrir à l'utilisateur, sur le terminal de restitution, la restitution concomitante, d'une part, d'un élément principal, qui peut être un contenu choisi par l'utilisateur, ou un menu d'accès au service, et d'autre part, d'un autre contenu, par exemple un flux vidéo en temps réel, qui est proposé en arrière-plan de l'élément principal (par exemple avec une opacité de 50%), ou sous forme d'incrustation dans l'écran (par exemple dans une petite fenêtre en bas à gauche de l'écran).
Pour pouvoir offrir cette expérience à l'utilisateur, sans accroître de façon excessive la consommation de bande passante par le serveur de contenu, on propose de ne plus télécharger l'intégralité des segments temporels du contenu, mais seulement une partie de ces segments. En effet, un segment temporel correspond par exemple à une portion du contenu d'une ou deux secondes : il débute classiquement par une image I, également appelée image intra. Il contient ensuite des informations permettant de reconstruire, par estimation/compensation de mouvement, les images suivantes du contenu, à partir de cette image I. Ces informations sont relatives aux parties de l'image qui changent ou évoluent, par rapport à l'image I, pendant la durée du segment temporel.
Selon un mode de réalisation de l'invention, au lieu de télécharger les segments temporels complets, on ne procède donc qu'au téléchargement d'une partie du chunk, idéalement le début du chunk, également appelé portion liminaire du chunk, qui permet de décoder l'image I, ou intra. Cette portion liminaire du segment temporel représente environ 20% de la taille totale du segment en octets. Après décodage de l'image I, cette dernière est restituée à l'utilisateur pendant toute la durée du segment temporel dont elle est extraite.
Pour des segments temporels d'une durée de 2 secondes, on rafraîchit donc l'image restituée à l'utilisateur en arrière-plan ou en PiP toutes les 2 secondes environ, à chaque décodage d'une nouvelle image intra, associée à un nouveau segment temporel. Cela permet de réaliser un compromis intéressant entre une interface utilisateur riche, permettant d'afficher un contenu temps réel en arrière-plan ou en incrustation sur l'écran du terminal de restitution, et une limitation de la consommation de ressources réseau par le serveur de contenu.
En effet, les segments vidéo diffusés en HAS sont constitués, comme des vidéos classiques, de GOP (pour l'anglais « Group Of Pictures », en français « Groupe d'images »). Un GOP est constitué d'une suite d'images regroupées dans un flux vidéo encodé qui est répété périodiquement jusqu'à la fin de l'encodage. Les images visibles sont générées à partir des images contenues dans un GOP.
Chaque segment HAS commence par un GOP qui lui-même débute par une image I (l-Frame, ou image à codage interne). Un GOP contient une seule image I qui correspond à la première image à encoder. Elle est suivie d'une succession d'images P (images à codage prédictif) et B (images à codage prédictif bidirectionnel) dont le motif se répète jusqu'à la fin du GOP. Les images P se situent à intervalles réguliers et les images B complètent ces intervalles.
La particularité d'une image I est d'être une image de référence dont le décodage ne dépend pas d'une image précédente ou suivante. Elle peut être décodée de manière totalement
indépendante des autres images. L'objectif d'un mode de réalisation de l'invention est donc de récupérer le début, ou la portion liminaire, du segment vidéo, qui permet d'extraire l'image I (sous forme d'un JPG par exemple).
Il est difficile de connaître par avance la taille en octets du segment à télécharger pour récupérer l'image I en entier. Cette taille dépend du contenu de l'image lui-même.
Néanmoins, en décidant arbitrairement de télécharger environ 20% du segment entier, on s'assure normalement d'avoir téléchargé une portion suffisante du segment pour décoder l'image I, par exemple à l'aide d'outils tels que la collection de logiciels libres appelée FFmpeg, destinés au traitement de flux audio ou vidéo. Selon un aspect de l'invention, ce téléchargement partiel des chunks s'opère à l'issue d'une première période de durée déterminée d'absence d'interaction d'un utilisateur avec le terminal lecteur de flux multimédia en temps réel et/ou avec le terminal de restitution. Ainsi, on décide de ne plus télécharger l'intégralité des segments temporels, mais seulement leur portion liminaire, lorsqu'on détecte que l'utilisateur n'interagit plus avec le terminal de restitution ou le terminal lecteur de flux multimédia depuis quelques instants (par exemple quelques minutes).
Ainsi, le téléchargement partiel (par opposition au téléchargement du segment dans son intégralité), peut être mis en oeuvre : soit dès lors qu'une restitution concomitante d'un contenu et d'un élément principal est requise, c'est-à-dire immédiatement dès que l'utilisateur accède au service,
indépendamment du fait qu'il interagisse ou non avec les terminaux ;
soit, dans une variante de réalisation, seulement à l'issue d'une première période d'absence d'interaction de l'utilisateur avec le terminal de restitution, en cas de restitution concomitante.
Selon une première caractéristique de l'invention, le téléchargement partiel concerne une portion liminaire d'au moins certains desdits segments temporels ; dans cette configuration, à l'issue d'une deuxième période de durée déterminée d'absence d'interaction de l'utilisateur avec le terminal lecteur de flux multimédia en temps réel et/ou avec le terminal de restitution, l'image est décodée à partir de la portion liminaire d'un des segments temporels et est restituée pendant une durée d'au moins deux segments temporels consécutifs.
On réduit ainsi encore la consommation de bande passante, en affichant l'image intra décodée à partir d'un segment temporel de 2 secondes pendant la durée de deux segments temporels consécutifs, soit 4 secondes, voire même pendant 6 secondes ou plus. On ne télécharge alors que la portion liminaire d'un segment temporel toutes les 4 ou 6 secondes, ce qui est peu
consommateur en ressources.
Selon un autre aspect, les segments temporels partiellement téléchargés sont associés à un débit d'encodage inférieur à un débit d'encodage optimum de restitution du contenu.
Par débit d'encodage optimum, on entend ici le débit maximal d'un segment à télécharger auquel peut prétendre l'utilisateur en fonction des conditions réseau, selon le principe général du téléchargement HAS.
On peut en effet jouer sur le débit d'encodage des segments temporels qu'on télécharge, par exemple en choisissant de télécharger le début d'un segment temporel associé à un débit d'encodage de 512kb/s, plutôt qu'au débit maximum disponible de 2048kb/s. Ainsi, pour un contenu vidéo qui, dans des conditions de restitution optimale, est associé à un flux de 25 images par seconde avec une résolution propre de 1080 pixels, le procédé selon un mode de réalisation de l'invention agit sur la résolution et l'échantillonnage temporel du flux, en ne téléchargeant que le début de certains des segments temporels associés à des débits d'encodage réduits, pour proposer par exemple à l'utilisateur une restitution à 10 images par minute avec une résolution de 576 pixels.
Selon un aspect complémentaire, préalablement à la restitution de l'image décodée, il met en oeuvre un traitement graphique de ladite image décodée appartenant au groupe comprenant :
Un fondu ;
Un flou ; Une opacité ;
Une transition graphique entre ladite image décodée et une image décodée précédente. On améliore ainsi le ressenti de l'utilisateur : en effet, la restitution en arrière-plan de l'écran d'un contenu temps réel de mauvaise qualité ou résolution peut être peu esthétique. L'utilisation d'une technique de floutage de l'image affichée est un subterfuge permettant d'améliorer le rendu de l'image pour le client, qui peut en outre mieux mettre en relief et en évidence les boutons du menu, dans le cas où le contenu est affiché en arrière-plan de boutons de commande d'accès au service.
De même, il est possible de réaliser un fondu entre les images intra successives affichées, pour améliorer l'impression qu'aura l'utilisateur d'être effectivement en présence d'un flux vidéo. Une transition graphique entre deux images consécutives permet en outre d'apporter un aspect dynamique à l'incrustation.
On notera que le procédé décrit ci-avant peut en outre présenter un caractère adaptatif, en ce sens que ses différents aspects et caractéristiques peuvent être activés progressivement et successivement, en fonction du comportement de l'utilisateur, et de la durée de sa période d'inactivité ou d'interaction avec le terminal. Par exemple, dans un premier temps, on commence par n'afficher que les images intra ; puis, dans un second temps, on réduit le débit d'encodage des segments temporels dont on télécharge la portion liminaire ; enfin, dans un troisième temps, on augmente la durée d'affichage de l'image intra décodée, en réduisant donc le nombre de segments temporels partiellement téléchargés, et on introduit par exemple des post-traitements graphiques de type flou ou opacité. Différents compteurs temporels peuvent être mis en oeuvre pour déterminer l'instant auquel il est opportun d'ajouter une mesure supplémentaire parmi celles listées ci-dessus, en fonction par exemple des interactions détectées de l'utilisateur avec le terminal de restitution ou le terminal lecteur de flux multimédia.
Selon encore un autre aspect, préalablement à la restitution de l'image décodée, il met en oeuvre une détermination de chrominance de l'image décodée et, si la chrominance déterminée est supérieure à un seuil de chrominance, il met en oeuvre le téléchargement partiel pour au moins un segment temporel voisin du segment temporel dont est extraite l'image décodée, et une détermination de chrominance d'au moins une image décodée à partir dudit au moins un segment temporel voisin, appelée image décodée voisine, et une restitution d'une des images décodées voisines dont la chrominance déterminée est inférieure au seuil de chrominance.
En effet, dans la mesure où l'on n'affiche qu'une image représentative du contenu toutes les 2, 4 ou 6 secondes par exemple, il est important que cette image soit effectivement représentative du contenu, et qu'elle permette à l'utilisateur de l'identifier. Une image trop sombre par exemple ne permet pas à l'utilisateur de reconnaître le programme temps réel affiché à l'écran. Lorsqu'une image intra est décodée à partir d'un segment temporel, on détermine donc sa chrominance, et on l'écarte si par exemple elle est sombre à plus de 50%. Dans ce cas, on télécharge par exemple la portion liminaire du segment temporel directement précédent ou directement suivant celui dont est extrait cette image. On peut aussi par exemple télécharger les portions liminaires des deux segments temporels précédents ou suivants. On décode l'image intra de ces segments, on calcule sa chrominance, et on restitue sur l'écran celle de ces images qui est la plus représentative du contenu vidéo, ou plus simplement la première image décodée dont la chrominance est satisfaisante pour permettre à l'utilisateur de reconnaître le contenu.
Selon encore un autre aspect, le contenu numérique est restitué, sur un écran du terminal de restitution, en arrière-plan de l'élément principal et/ou dans une fenêtre de l'écran.
L'invention concerne également un produit programme d'ordinateur comprenant des instructions de code de programme pour la mise en oeuvre d'un procédé tel que décrit précédemment, lorsqu'il est exécuté par un processeur.
L'invention vise également un support d'enregistrement lisible par un ordinateur sur lequel est enregistré un programme d'ordinateur comprenant des instructions de code de programme pour l'exécution des étapes du procédé de gestion de téléchargement progressif adaptatif selon l'invention tel que décrit ci-dessus.
Un tel support d'enregistrement peut être n'importe quelle entité ou dispositif capable de stocker le programme. Par exemple, le support peut comporter un moyen de stockage, tel qu'une ROM, par exemple un CD ROM ou une ROM de circuit microélectronique, ou encore un moyen d'enregistrement magnétique, par exemple une clé USB ou un disque dur.
D'autre part, un tel support d'enregistrement peut être un support transmissible tel qu'un signal électrique ou optique, qui peut être acheminé via un câble électrique ou optique, par radio ou par d'autres moyens, de sorte que le programme d'ordinateur qu'il contient est exécutable à distance. Le programme selon l'invention peut être en particulier téléchargé sur un réseau par exemple le réseau Internet.
Alternativement, le support d'enregistrement peut être un circuit intégré dans lequel le programme est incorporé, le circuit étant adapté pour exécuter ou pour être utilisé dans l'exécution du procédé de contrôle d'affichage précité.
L'invention concerne également un dispositif de gestion du téléchargement progressif adaptatif (HAS) d'un contenu numérique au sein d'un terminal lecteur de flux multimédia en temps réel, associé à un terminal de restitution dudit contenu numérique. Un tel dispositif comprend un module d'obtention d'un fichier de description du contenu numérique, comprenant une liste de segments temporels du contenu associés chacun à plusieurs débits d'encodage du contenu. Selon l'invention, un tel dispositif comprend un module de restitution concomitante du contenu numérique et d'un élément, appelé élément principal, appartenant au groupe comprenant un menu et un autre contenu numérique, et un module de téléchargement configuré pour mettre en oeuvre, lors d'une restitution concomitante, un téléchargement partiel d'au moins certains des segments temporels, et le module de restitution est configuré pour restituer une image décodée à partir de la partie téléchargée du segment temporel correspondant.
L'invention concerne encore un terminal lecteur de flux multimédia en temps réel, qui comprend un dispositif de gestion du téléchargement progressif adaptatif d'un contenu numérique tel que décrit précédemment.
Le dispositif de gestion de téléchargement adaptatif et le terminal lecteur de flux multimédia présentent en combinaison tout ou partie des caractéristiques exposées dans l'ensemble de ce document en relation avec le procédé de gestion de téléchargement adaptatif.
Le dispositif de gestion de téléchargement adaptatif, le terminal lecteur de flux multimédia et le programme d'ordinateur correspondants précités présentent au moins les mêmes avantages que ceux conférés par le procédé de gestion de téléchargement adaptatif selon la présente invention. Présentation des figures
D'autres buts, caractéristiques et avantages de l'invention apparaîtront plus clairement à la lecture de la description suivante, donnée à titre de simple exemple illustratif, et non limitatif, en relation avec les figures, parmi lesquelles :
[Fig 1] présente une architecture de téléchargement progressif basée sur l'utilisation du streaming adaptatif selon un mode de réalisation de l'invention ;
[Fig 2] représente une architecture d'un terminal lecteur de flux multimédia en temps réel selon un mode de réalisation de l'invention ;
[Fig 3] illustre l'interface utilisateur proposée selon un mode de réalisation de l'invention ;
[Fig 4] présente un procédé permettant l'affichage du contenu Cl sur l'interface de la figure Fig. 3 selon un mode de réalisation de l'invention.
Description détaillée de modes de réalisation de l'invention
Le principe général de l'invention repose, pour pouvoir offrir à l'utilisateur une expérience d'interface aussi riche que dans le cadre des services vidéo reposant sur une technologie multicast, sur une adaptation de la nature du flux vidéo à afficher en arrière-plan ou en incrustation, dans le cadre d'un service OTT reposant sur un téléchargement progressif adaptatif de type HAS. Plus précisément, on propose de ne télécharger que le début des segments temporels représentatifs du flux à afficher en arrière-plan ou en PiP, afin de réduire la consommation de flux réseau, et de ne restituer, avec une fréquence de rafraîchissement de l'affichage adaptative, que la première image décodée à partir de ce début de chunk. On présente désormais, en relation avec la figure Fig. 1, une architecture de téléchargement progressif basée sur l'utilisation du streaming adaptatif selon l'invention.
Le terminal 3, par exemple un téléphone intelligent de type « smartphone », le terminal 4, par exemple un ordinateur portable, et le terminal 8, par exemple une clef HDMI connectée à un téléviseur 5, se trouvent dans cet exemple situé dans un réseau local (LAN, 10) piloté par une passerelle domestique 6. Le contexte du réseau local est donné à titre d'exemple et pourrait être transposé aisément à un réseau Internet de type « best effort », un réseau d'entreprise, etc.
Un serveur de contenus numériques 2 se trouve selon cet exemple dans le réseau étendu (WAN,
1) mais il pourrait indifféremment être situé dans le réseau local (LAN, 10), par exemple dans la passerelle domestique 6 ou tout autre équipement capable d'héberger un tel serveur de contenus. Le serveur de contenus 2 reçoit par exemple des chaînes de contenus de télévision numérique en provenance d'un réseau de télévision diffusée, non représenté, et/ou des vidéos à la demande, et les met à disposition des terminaux clients.
Les terminaux client 3, 4 et 8 peuvent entrer en communication avec le serveur de contenus 2 pour recevoir un ou plusieurs contenus (films, documentaires, séquences publicitaires, etc.).
Il est fréquent, dans ce contexte client-serveur, de recourir, pour échanger les données entre les terminaux client 3, 4 et 8 et le serveur 2, à une technique de téléchargement progressif adaptatif, en anglais « adaptive streaming », abrégé en HAS basée sur le protocole HTTP. Ce type de technique permet notamment d'offrir une bonne qualité de contenus à l'utilisateur en tenant compte des variations de bande passante qui peuvent se produire sur la liaison entre le terminal client 3, 4 et 8 et la passerelle de services 6, ou entre cette dernière et le serveur de contenus 2. Classiquement, différentes qualités peuvent être encodées pour le même contenu d'une chaîne, correspondant par exemple à différents débits. Plus généralement, on parlera de qualité pour se référer à une certaine résolution du contenu numérique (résolution spatiale, temporelle, niveau de qualité associée à la compression vidéo et/ou audio) avec un certain débit. Chaque niveau de qualité est lui-même découpé sur le serveur de contenus en segments temporels (ou
« fragments » de contenu, en anglais « chunks », ces trois mots étant utilisés indifféremment dans l'ensemble de ce document).
La description de ces différentes qualités et de la segmentation temporelle associée, ainsi que les fragments de contenu, sont décrits pour le terminal client et mis à sa disposition via leurs adresses Internet (URI : Universal Ressource Identifier). L'ensemble de ces paramètres (qualités, adresses des fragments, etc.) est en général regroupé dans un fichier de paramètres, dit fichier de description. On notera que ce fichier de paramètres peut être un fichier informatique ou un ensemble d'informations descriptives du contenu, accessible à une certaine adresse.
Les terminaux 3, 4 et 8 possèdent leurs propres caractéristiques en termes de capacité de décodage, d'affichage, etc. Dans un contexte de téléchargement adaptatif progressif, ils peuvent adapter leurs requêtes pour recevoir et décoder le contenu demandé par l'utilisateur à la qualité qui leur correspond au mieux. Dans notre exemple, si les contenus sont disponibles aux débits 512 kb/s (kilobits par seconde) (Résolution 1, ou niveau 1, noté NI), 1024 kb/s (N2), 2048 kb/s (N3) et que le terminal client dispose d'une bande passante de 3000 kb/s, il peut demander le contenu à n'importe quel débit inférieur à cette limite, par exemple 2048 kb/s. De manière générale, on note « Ci@Nj » le contenu numéro i avec la qualité j (par exemple le j-ième niveau Nj de qualité décrit dans le fichier de description).
La passerelle de service 6 est dans cet exemple une passerelle domestique qui assure le routage des données entre le réseau étendu 1 et le réseau local 10, gère les contenus numériques en assurant notamment leur réception en provenance du réseau et leur décodage grâce aux décodeurs que l'on suppose ici intégrés à la passerelle 6 ou aux terminaux clients 3, 4 et 8. En variante, les décodeurs peuvent se trouver ailleurs dans le réseau étendu 1 ou local 10, notamment au niveau d'un élément de type STB (de l'anglais Set-Top-Box) (non représenté) associé à un téléviseur.
Dans cet exemple, pour visualiser un contenu, le terminal 3, 4 ou 8 interroge tout d'abord la passerelle de service 6 pour obtenir une adresse du document de description 7 du contenu (par exemple, Cl) souhaité. La passerelle de service 6 répond en fournissant au terminal l'adresse du fichier de description 7. Dans la suite, on supposera que ce fichier est un fichier de type manifest selon la norme MPEG-DASH (noté « C.mpd ») et on se référera indifféremment, selon le contexte, à l'expression « fichier de description » ou « manifest».
Alternativement, ce fichier peut être récupéré directement auprès d'un serveur Internet local ou externe au réseau local, ou se trouver déjà sur la passerelle de service ou sur le terminal au moment de la requête.
Un exemple de fichier manifest (MPD) conforme à la norme MPEG-DASH et comportant la description de contenus disponibles dans trois qualités différentes (NI = 512 kb/s, N2 = 1024 kb/s, N3 = 2048 kb/s) des contenus fragmentés est présenté en annexe 1. Ce fichier manifest simplifié décrit des contenus numériques dans une syntaxe XML (de l'Anglais « eXtended Markup
Language»), comprenant une liste de contenus sous forme de fragments classiquement décrits entre une balise ouvrante (<SegmentList>) et une balise fermante (</SegmentList>). La découpe en fragments permet notamment de s'adapter finement aux fluctuations de la bande passante. Chaque fragment correspond à une certaine durée (champ « duration ») avec plusieurs niveaux de qualité et permet de générer leurs adresses (URL - Uniform Resource Locator). Cette génération est faite dans cet exemple à l'aide des éléments « BaseURL » (« HTTP://server.com») qui indique l'adresse du serveur de contenus et « SegmentURL » qui liste les parties complémentaires des adresses des différents fragments :
- « Cl_512kb_l.mp4 » pour le premier fragment du contenu « Cl » à 512 kilobits par seconde (« kb ») au format MPEG-4 (« mp4 »),
- « Cl_512kb_2.mp4 » pour le second fragment,
- etc.
Une fois qu'elle dispose des adresses de fragments correspondant au contenu souhaité, la passerelle de service 6 procède à l'obtention des fragments via un téléchargement à ces adresses. On notera que ce téléchargement s'opère ici, traditionnellement, au travers d'une URL HTTP, mais pourrait également s'opérer au travers d'une adresse universelle (URI) décrivant un autre protocole (dvb://monsegmentdecontenu par exemple).
On suppose ici que la clef HDMI 8 est connectée au téléviseur 5 par branchement sur le port HDMI de ce dernier, et est utilisée pour restituer, sur l'écran du téléviseur 5, un programme télévisuel diffusé en direct, qui n'a donc, par nature, pas de durée prédéterminée, ni de date de fin. Par la suite, on désigne ce programme télévisuel sous le nom de contenu Cl. Un tel contenu Cl est décrit dans un fichier manifeste 7.
En variante, on notera que le contenu Cl peut également être un programme télévisuel diffusé en différé, ou une vidéo à la demande, ou une vidéo personnelle de l'utilisateur, ou tout autre contenu multimédia de durée déterminée, pour laquelle l'invention s'applique également.
Dans cet exemple, la clef HDMI 8 est connectée en WiFi® directement à la passerelle résidentielle 6. En variante, la clef HDMI 8 pourrait également être connectée en WiFi® à un autre périphérique nomade du réseau domestique, par exemple à l'ordinateur portable 4 ou au téléphone intelligent 3, par l'intermédiaire duquel elle pourrait accéder au réseau de communication étendu 1.
La clef HDMI 8 peut également être pilotée par l'utilisateur au moyen du téléphone intelligent 3, sur lequel est installé une application logicielle de commande de la clef HDMI 8.
Les fragments de contenu obtenus par la passerelle résidentielle 6 sont par exemple transmis en WiFi® à la clef HDMI 8, qui pilote leur affichage sur l'écran du téléviseur 5, pour restitution à l'utilisateur.
La figure fig. 2 représente une architecture d'un terminal lecteur de flux multimédia en temps réel selon un mode de réalisation de l'invention, par exemple la clef HDMI 8 de la figure 1.
Il comprend, classiquement, des mémoires M associées à un processeur CPU. Les mémoires peuvent être de type ROM (de l'anglais « Read Only Memory ») ou RAM (de l'anglais « Random Access Memory ») ou encore Flash. La clef HDMI 8 communique avec le réseau local 10 et le réseau Internet étendu 1 via le module WIFI pour une communication locale sans fils avec la passerelle résidentielle 6 ou un autre terminal de communication du réseau local 10, par exemple le téléphone intelligent 3. La clef HDMI 8 comprend en outre un module de téléchargement progressif adaptatif HAS apte à demander un téléchargement progressif de l'un des contenus à l'une des qualités proposées dans un fichier de description 7. Ce fichier de description 7 peut être enregistré par exemple dans les mémoires M de la clef HDMI 8 ou se trouver à l'extérieur.
La clef HDMI 8 comprend également un module d'adaptation progressive de la qualité d'un contenu ADAP_Q, qui pilote le module de téléchargement progressif adaptatif HAS. Ce module ADAP_Q commande au module de téléchargement progressif adaptatif HAS de ne télécharger que certaines portions de segments temporels, idéalement les portions liminaires de ces segments, afin d'en extraire la première image représentative du segment, ou image intra. En outre, il peut forcer ce dernier à demander un téléchargement progressif de ces segments à une qualité, proposée dans le fichier de description 7, inférieure à la qualité optimale à laquelle il pourrait prétendre. Il peut également sélectionner seulement certains des segments temporels à télécharger partiellement, en fonction de la fréquence de rafraîchissement de l'affichage des images intra souhaitées, notamment en fonction des interactions détectées de l'utilisateur avec la clef HDMI 8 ou le terminal de restitution, par exemple la TV 5.
La clef HDMI 8 comprend également un module DEC de décodage des images intra à partir des portions liminaires de segments temporels téléchargées, qui est également apte à effectuer des traitements sur ces images décodées, tels qu'un calcul de la chrominance de ces images, pour décider de leur représentativité du contenu, et divers post-traitements graphiques, tels qu'une application d'un flou, d'une opacité, ou d'un fondu.
La clef HDMI 8 selon l'invention peut aussi contenir d'autres modules comme un disque dur non représenté pour le stockage des fragments vidéo, un module de contrôle d'accès aux contenus, un module de traitement des commandes reçues d'une tablette ou d'un smartphone sur lesquels est installée l'application de pilotage de la clef HDMI, grâce à laquelle l'utilisateur peut en contrôler le fonctionnement, etc. En effet, une telle clef HDMI 8 ne contient généralement pas de module d'interface E/S, et c'est le module d'interface E/S du téléphone intelligent de l'utilisateur ou de sa tablette qui est utilisée par ce dernier pour choisir par exemple son contenu.
La Clef HDMI 8 intègre également un module INT de gestion de l'interface avec le téléviseur 5, par lequel elle obtient par exemple des informations sur les éventuelles interactions de l'utilisateur avec le téléviseur 5 (action sur la télécommande du téléviseur par exemple par appui sur la touche volume ou une touche de changement de canal), et par lequel elle peut piloter par exemple l'affichage concomitant sur l'écran du téléviseur 5 d'un menu et d'un contenu temps réel en arrière-plan, ou dans une fenêtre de type PiP, en incrustation, par exemple dans le coin en bas à gauche de l'écran.
On notera que le terme module peut correspondre aussi bien à un composant logiciel qu'à un composant matériel ou un ensemble de composants matériels et logiciels, un composant logiciel correspondant lui-même à un ou plusieurs programmes ou sous-programmes d'ordinateur ou de manière plus générale à tout élément d'un programme apte à mettre en oeuvre une fonction ou un ensemble de fonctions telles que décrites pour les modules concernés. De la même manière, un composant matériel correspond à tout élément d'un ensemble matériel (ou hardware) apte à mettre en oeuvre une fonction ou un ensemble de fonctions pour le module concerné (circuit intégré, carte à puce, carte à mémoire, etc.).
Plus généralement, une telle clef HDMI 8 comprend une mémoire vive (par exemple une mémoire RAM), une unité de traitement équipée par exemple d'un processeur CPU, et pilotée par un programme d'ordinateur, représentatif du module de gestion du téléchargement progressif adaptatif HAS, stocké dans une mémoire morte (par exemple une mémoire ROM ou un disque dur). A l'initialisation, les instructions de code du programme d'ordinateur sont par exemple chargées dans la mémoire vive avant d'être exécutées par le processeur CPU de l'unité de traitement. La mémoire vive contient notamment le fichier de description manifest 7. Le processeur de l'unité de traitement pilote l'évaluation de la présence ou de l'absence
d'interactions de l'utilisateur avec la clef HDMI 8 ou le téléviseur 5, l'affichage de contenu en arrière-plan ou en incrustation sur l'écran du téléviseur 5, les éventuels post-traitement graphiques qui lui sont appliqués avant affichage, et la réduction progressive de la qualité et de la fréquence de rafraîchissement de l'affichage du contenu téléchargé, au travers du choix des segments temporels et des débits d'encodage associés à télécharger, du décodage des images intra qui en sont extraites, et l'émission de commandes correspondantes vers le module client HAS.
La figure Fig. 2 illustre seulement une manière particulière, parmi plusieurs possibles, de réaliser la clef HDMI 8, afin qu'elle effectue les étapes du procédé détaillé ci-après, en relation avec la figure Fig. 4 (dans l'un quelconque des différents modes de réalisation, ou dans une combinaison de ces modes de réalisation). En effet, ces étapes peuvent être réalisées indifféremment sur une machine de calcul reprogrammable (un ordinateur PC, un processeur DSP ou un microcontrôleur) exécutant un programme comprenant une séquence d'instructions, ou sur une machine de calcul dédiée (par exemple un ensemble de portes logiques comme un FPGA ou un ASIC, ou tout autre module matériel).
La figure Fig. 3 offre un aperçu de l'interface utilisateur proposée selon un mode de réalisation de l'invention, par exemple sur l'écran du téléviseur 5. Lorsque l'utilisateur accède au service de télévision de type OTT, il accède tout d'abord à un menu principal, également appelé « desk » dans le cadre du service proposé par Orange®. Selon l'art antérieur, quand l'utilisateur accède à ce menu principal, l'écran du téléviseur 5 affiche uniquement un ensemble de boutons M, lui permettant d'accéder aux différentes fonctionnalités du service (choix du contenu, réglage du niveau sonore, etc.).
Selon un mode de réalisation de l'invention en revanche, le contenu en temps réel Cl est également affiché en arrière-plan sur l'écran, en superposition (« overlay ») avec les boutons M du menu principal, par exemple avec une opacité de 50%. En variante, ce contenu Cl peut être affiché, non pas en arrière-plan, mais dans une fenêtre dédiée sur l'écran, sous forme
d'incrustation. Cette technique d'incrustation de type PiP peut également être utilisée, selon un mode de réalisation de l'invention, pour permettre à l'utilisateur de visionner un contenu C2 sur l'écran, en grande résolution, tout en gardant un œil sur un contenu Cl, affiché dans une fenêtre de taille réduite dans un coin de l'écran, par exemple pour lui permettre de détecter le début d'un programme télévisuel spécifique sur une autre chaîne.
L'organigramme de la figure Fig. 4 détaille plus spécifiquement le procédé permettant l'affichage de ce contenu Cl selon un mode de réalisation de l'invention. Ce procédé est mis en œuvre par un terminal lecteur de flux multimédia en temps réel 30, par exemple la clef HDMI 8 des figures fig. 1 et fig. 2.
Le terminal lecteur de flux multimédia en temps réel 30 est connecté à un téléviseur TV 5, par l'intermédiaire d'une liaison HDMI. Il comprend un module INT d'interface avec le téléviseur 301, un module ADAP_Q 302 d'adaptation progressive de la qualité d'un contenu restitué en arrière- plan ou en PiP, et un module client HAS 303.
Un serveur de contenu HAS 2 expose une vidéo Cl sous forme de « chunks » Clj@Nj encodés à différents débits d'encodage Nj, où l'indice i désigne un identifiant temporel du « chunk » Clj@Nj. Selon l'art antérieur, un module client HAS est chargé de venir récupérer ces « chunks » auprès du serveur de contenu HAS 2 en choisissant la qualité vidéo Nj en fonction de la ressource réseau disponible. On ne décrit pas ici plus en détail la façon dont le module client HAS choisit le débit d'encodage du prochain fragment vidéo à télécharger : il existe en effet de nombreux algorithmes permettant d'opérer ce choix, dont les stratégies sont plus ou moins sécuritaires ou agressives.
On rappelle cependant que, le plus souvent, le principe général de tels algorithmes repose sur le téléchargement d'un premier fragment au débit d'encodage le plus faible proposé dans le manifeste, et sur l'évaluation du temps de récupération de ce premier fragment. Sur cette base, le module client HAS évalue si, en fonction de la taille du fragment et du temps mis pour le récupérer, les conditions réseau permettent de télécharger le fragment suivant à un débit d'encodage plus élevé. Certains algorithmes reposent sur une augmentation progressive du niveau de qualité des fragments de contenu téléchargés ; d'autres proposent des approches plus risquées, avec des sauts dans les niveaux des débits d'encodage des fragments successifs.
Dans le cas classique, si un « chunk » vidéo dure 3 secondes, la récupération du « chunk » par le module client HAS ne doit pas excéder 3 secondes, afin de permettre une restitution sans interruption du contenu par le terminal 30. Il convient donc pour le module client HAS d'opérer le meilleur compromis entre une qualité de restitution, et donc un débit d'encodage, aussi élevés que possible, et le temps de téléchargement du fragment, qui doit être suffisamment faible pour permettre une restitution en continu sur le téléviseur 5.
Dans le mode de réalisation illustré en figure fig. 4, en revanche, le module client HAS 303 ne commande pas le téléchargement du fragment dans son intégralité, ni au débit d'encodage optimal, afin d'optimiser la consommation des ressources réseau, notamment dans le cas où l'on détecte que l'utilisateur l'interagit pas avec le terminal de restitution 5, ou la clef HDMI 8.
Au cours d'une étape référencée 310, le module HAS 303 récupère le fichier manifest 7 afin de découvrir les fragments disponibles du contenu vidéo Cl, et les différentes qualités vidéo Nj associées. Dans l'exemple de la figure fig. 4, le contenu Cl est par exemple proposé sous forme de fragments de durée 2s, avec un premier débit d'encodage NI = 500 kb/s, un deuxième débit d'encodage N2 = 1000 kb/s, un troisième débit d'encodage N3 = 2000 kb/s, etc.
Dans un mode de fonctionnement normal, non illustré sur la figure fig.4, le module HAS 303 opère le téléchargement par exemple, des fragments successifs Cl^Nl (soit le premier fragment temporel à un débit d'encodage de 500 kb/s), puis C12@N3 (soit le deuxième fragment temporel à un débit d'encodage de 2000 kb/s), puis C13@N3 (soit le troisième fragment temporel à un débit d'encodage de 2000 kb/s), ...
L'algorithme mis en oeuvre par le module client HAS 303 pour déterminer quel fragment à quel débit d'encodage doit être téléchargé en mode de fonctionnement normal (c'est-à-dire en dehors des périodes où il est piloté par le module ADAP_Q 302 d'adaptation progressive de la qualité de restitution du contenu Cl en arrière-plan ou en incrustation) peut être l'un des algorithmes déjà existants de l'art antérieur. Cet algorithme ne sera donc pas décrit ici plus en détail.
Les différents fragments téléchargés par le module client HAS 303 sont transmis au module d'interface INT 301 pour leur restitution à l'utilisateur sur l'écran du téléviseur TV 5.
C'est le cas par exemple lorsque l'utilisateur active la clef HDMI 8 et le téléviseur 5 pour accéder au service de télévision : dans un premier temps, le menu principal s'affiche, avec en arrière-plan le contenu temps réel Cl, correspondant à l'un des programmes télévisés.
En parallèle, conformément à la figure fig.4, le module INT 301 surveille les interactions de l'utilisateur avec le téléviseur 5, et reçoit par exemple, via le port HDMI, des informations relatives aux actions effectuées par l'utilisateur sur la télécommande du téléviseur 5 et sur le téléviseur 5 lui-même. Il transmet ces informations au module ADAP_Q 302, qui reçoit également des informations relatives aux interactions éventuelles de l'utilisateur avec le terminal 30 lui-même, via sa télécommande ou un terminal de commande de type smartphone ou tablette. Le module ADAP_Q 302 initie par exemple un compteur, ou « timer », par exemple d'une durée de dix ou quinze minutes, lors de l'activation de la clef HDMI 8 et du téléviseur 5. Au cours de cette première période, le module INT 301 surveille l'activité de l'utilisateur. Si, à l'expiration de ce compteur, aucune interaction de l'utilisateur avec les équipements de restitution des contenus n'a été détectée, le module ADAP_Q 302 initie l'adaptation de la nature du flux vidéo Cl, afin de réduire la consommation des ressources réseau.
En variante, cette adaptation de la nature du flux vidéo peut être mise en oeuvre immédiatement, dès que l'utilisateur accède au service et ce, indépendamment du fait qu'il interagisse ou non avec les terminaux.
Dans un premier temps, cette adaptation consiste, pour le module ADAP_Q 302, à commander au module de téléchargement HAS 303 de ne télécharger que les portions liminaires des segments temporels Clj@Nj, par exemple seulement 20% de la taille du chunk en octets, correspondant au début du segment temporel, permettant de décoder l'image intra I qu'il contient. Dans le cas où le contenu Cl n'est pas restitué en arrière-plan mais en incrustation dans une fenêtre de type PiP, on peut décider de télécharger une portion du segment temporel proportionnelle à la taille de la fenêtre dans laquelle il est restitué : par exemple, si la superficie de la fenêtre PiP représente 10% de la taille totale de l'écran du téléviseur 5, le module ADAP_Q 302 peut décider de télécharger des portions de segments temporels correspondant, en volume, à 10% du flux principal du contenu Cl.
Plus généralement, en choisissant de télécharger 20% de la taille du chunk en octets, on s'assure normalement de récupérer une portion liminaire suffisante du chunk pour réussir à en extraire l'unique image I qu'il contient, par exemple au format jpg, en utilisant un outil logiciel de type FFmpeg. Mais on peut également envisager que le module ADAP_Q 302 mette en oeuvre un algorithme adaptatif permettant de déterminer la portion optimale de chunk à télécharger, i.e. la portion du chunk nécessaire et suffisante pour l'extraction de l'image Intra. Ainsi, le module ADAP_Q 302 peut, sur un premier segment temporel, initialiser à 20% la portion du segment à télécharger. Si cette portion, représentant 20% de la taille du segment en octets, est suffisante pour en extraire l'image I, le module ADAP_Q 302 peut réduire de façon incrémentale la portion à télécharger pour le segment suivant, par exemple en réduisant de 1% la quantité de données à récupérer sur ce prochain segment, soit 19%. En cas de succès de l'extraction de l'image intra à partir de cette portion de 19%, le module ADAP_Q 302 peut continuer à réduire la portion du prochain segment à télécharger, de façon incrémentale, jusqu'à ce que l'image I extraite de cette portion ne soit pas complète, car le module ADAP_Q 302 n'a pas récupéré suffisamment d'octets du début du segment. Le module ADAP_Q 302 revient alors à la valeur précédente, et fige cette valeur comme étant la valeur optimale, c'est-à-dire nécessaire et suffisante, pour extraire de façon complète l'image Intra du segment.
A l'expiration du premier « timer », le module ADAP_Q 302 initie alors par exemple un second compteur, et le module INT 301 continue à surveiller les actions éventuelles de l'utilisateur.
Pendant la durée de ce deuxième « timer », le module ADAP_Q 302 commande la restitution, en arrière-plan de l'écran du téléviseur 5, d'une image intra I extraite du segment Clj@Nj pendant toute la durée de ce segment, soit par exemple deux secondes. Toutes les deux secondes, l'affichage est rafraîchi, en proposant à l'utilisateur l'image intra I extraite des différents segments temporels successifs.
On ne permet donc pas à l'utilisateur de visionner le véritable flux vidéo associé au contenu Cl, mais on lui propose une interface lui permettant d'avoir un aperçu qui évolue de ce contenu.
Ce second compteur peut également être indépendant de la détection ou non d'interactions de l'utilisateur avec les terminaux, et servir uniquement au déclenchement d'une nouvelle étape d'adaptation du contenu.
A l'issue de ce second compteur, si aucune interaction de l'utilisateur n'est détectée, le module ADAP_Q 302 peut décider d'une nouvelle adaptation de la qualité de la restitution du contenu Cl à l'utilisateur. Par exemple, cette adaptation peut consister à ne plus afficher une image intra I par segment temporel, mais à ne télécharger que le début d'un segment temporel sur deux ou le début d'un segment temporel sur trois, pour afficher une image intra I, non plus pendant la durée d'un mais de deux ou trois segments successifs, soit pendant quatre ou six secondes. On réduit ainsi la fréquence de rafraîchissement de l'affichage du contenu en arrière-plan ou en incrustation sur l'écran du téléviseur 5, et donc la consommation des ressources réseau.
Dans ce cas, il est cependant important que l'image, qui va être affichée pendant plusieurs secondes à l'utilisateur, soit effectivement représentative du contenu Cl, afin que l'utilisateur puisse l'identifier. Ceci n'est pas le cas si l'image est trop sombre, par exemple car elle est extraite d'une scène nocturne. Avant que le module INT 301 ne pilote l'affichage de l'image I décodée à partir de l'un des segments temporels sur l'écran du téléviseur 5, le module DEC 304 procède à un calcul de chrominance sur l'image intra décodée. On détermine un seuil, par exemple de l'ordre de 50%. Si la valeur de chrominance calculée pour l'image est inférieure au seuil de 50%, l'image contient peu d'informations de couleur, et est donc trop sombre pour être efficacement représentative du contenu. Elle n'est donc pas affichée sur l'écran du téléviseur 5.
Dans ce cas le module ADAP_Q 302 commande au module HAS 303 le téléchargement du début d'un ou de deux segment(s) temporel(s) précédent et/ou suivant le chunk dont a été extraite l'image trop sombre. Des images intra correspondantes sont extraites de ces segments temporels partiellement téléchargés. Le module DEC 304 procède au calcul de leur chrominance, pour déterminer celle de ces images qui est la plus représentative du contenu Cl, et qu'il convient donc d'afficher pour un meilleur rendu à l'utilisateur. Plus simplement, le module DEC 304 procède successivement au calcul de la chrominance de ces différentes images, et dès qu'il identifie une image dont la valeur de chrominance est satisfaisante pour représenter fidèlement le contenu Cl, le module INT 301 pilote l'affichage de cette image sur l'écran du téléviseur 5.
On peut également imaginer qu'un troisième compteur soit déclenché lors de cette adaptation de la fréquence de rafraîchissement et qu'une nouvelle évolution soit décidée par le module ADAP_Q 302 à l'issue de ce troisième « timer » si l'utilisateur n'interagit toujours pas avec les terminaux de restitution. Cette nouvelle évolution peut par exemple consister en une réduction du débit d'encodage des segments temporels du contenu Cl téléchargés partiellement par le module HAS 303. Par exemple, le module HAS 303 passe d'un téléchargement de portions liminaires de segments temporels à 3000kb/s à un téléchargement de portions liminaires de segments temporels à 500kb/s.
Ainsi, comme illustré sur la figure fig. 4, le module client HAS 303 va télécharger successivement (312) les débuts des fragments C12@N4, C13@N3, C14@N2 et C15@N1, pour réduire la qualité de restitution du contenu Cl, comme illustré par la flèche référencée 311, jusqu'à la qualité la plus faible proposée dans le manifeste 7, correspondant à un débit de 500 kb/s.
En pratique, la réduction 311 des débits d'encodage des fragments temporels n'est pas forcément aussi rapide, mais peut s'étaler dans le temps, par exemple sur une période d'une heure. La figure fig. 4 correspond donc à une illustration simplifiée de ce principe, permettant de l'appréhender visuellement. Par exemple, le module client HAS 303 pilote le téléchargement partiel de fragments temporels successifs au niveau de qualité N4 pendant une durée de quinze minutes, puis abaisse ce niveau en téléchargeant le début des fragments temporels au niveau de qualité N3 pendant le quart d'heure qui suit, et ainsi de suite, jusqu'à atteindre le niveau de qualité NI le plus faible prévu dans le manifeste 7, au bout d'une heure environ.
On notera que l'ordre de ces différentes adaptations et des compteurs associés n'est donné qu'à titre indicatif et peut être modifié : par exemple on pourrait décider de réduire le débit d'encodage, avant de réduire la fréquence de rafraîchissement du contenu restitué.
Le module ADAP_Q 302 peut en outre commander la mise en oeuvre de post-traitements graphiques des images intra I décodées et extraites des segments temporels par le module DEC 304. Par exemple, on peut appliquer un flou sur l'image intra I restituée en arrière-plan à l'utilisateur sur l'écran du téléviseur 5. Ceci est particulièrement avantageux quand la résolution du contenu Cl est réduite, afin d'améliorer le rendu et l'expérience de l'utilisateur. Cette technique permet en outre de mieux mettre en évidence les boutons M du menu principal superposé au contenu Cl, et donc d'attirer l'attention de l'utilisateur sur ces derniers. D'autres techniques de traitement graphiques peuvent également être mises en œuvre, telles que l'application d'un noir fondu, ou la réalisation d'un fondu entre les images intra I successives affichées, afin d'accroître le ressenti de l'utilisateur qu'il se trouve bien en présence d'un véritable flux vidéo.
Si, à tout moment, le module INT 301 détecte que l'utilisateur manifeste sa présence en actionnant la télécommande du téléviseur 5, ou par action sur le smartphone 3 pilotant le terminal 30, le module ADAP_Q 302 peut adresser au module client HAS 303 une commande de retour à la normale. Si l'utilisateur a par exemple choisi, via l'un des boutons du menu M, de visionner en plein écran le contenu temps réel Cl, le module client HAS 303 détermine alors, en fonction des conditions réseau, le débit optimal de fragment temporel auquel il peut prétendre, et lance le téléchargement du prochain fragment à ce débit optimal.
En variante, il est possible de ne pas opérer ce retour à la normale, même si l'on détecte que l'utilisateur interagit avec le terminal lecteur de flux multimédia, ou le terminal de restitution, pour optimiser la consommation de ressources réseau.
ANNEXE 1 : exemple de fichier manifest

Claims

REVENDICATIONS
1. Procédé de gestion du téléchargement progressif adaptatif (HAS) d'un contenu numérique (Cl) au sein d'un terminal lecteur de flux multimédia en temps réel (8, 30), associé à un terminal de restitution (5) dudit contenu numérique,
ledit procédé comprenant une étape d'obtention d'un fichier (7) de description dudit contenu numérique, comprenant une liste de segments temporels dudit contenu associés chacun à plusieurs débits d'encodage dudit contenu, ,
caractérisé en ce qu'il met en oeuvre, lors d'une restitution concomitante, par ledit terminal de restitution, dudit contenu numérique et d'un élément, appelé élément principal, appartenant au groupe comprenant un menu (M) et un autre contenu numérique, un téléchargement partiel d'au moins certains desdits segments temporels, et une restitution, d'une image décodée à partir de la partie téléchargée dudit segment temporel correspondant.
2. Procédé selon la revendication 1, caractérisé en ce que ledit téléchargement partiel est mis en oeuvre à l'issue d'une première période de durée déterminée d'absence d'interaction d'un utilisateur avec ledit terminal lecteur de flux multimédia en temps réel et/ou avec ledit terminal de restitution.
3. Procédé selon la revendication 2, caractérisé en ce que le téléchargement partiel concerne une portion liminaire d'au moins certains desdits segments temporels, et en ce que à l'issue d'une deuxième période de durée déterminée d'absence d'interaction dudit utilisateur avec ledit terminal lecteur de flux multimédia en temps réel (8, 30) et/ou avec ledit terminal de restitution (5), ladite image est décodée à partir de ladite portion liminaire d'un desdits segments temporels et est restituée pendant une durée d'au moins deux segments temporels consécutifs.
4. Procédé selon l'une quelconque des revendications 1 à 3, caractérisé en ce que lesdits segments temporels partiellement téléchargés sont associés à un débit d'encodage inférieur à un débit d'encodage optimum de restitution du contenu.
5. Procédé selon l'une quelconque des revendications 1 à 4, caractérisé en ce que,
préalablement à ladite restitution de ladite image décodée, il met en oeuvre un traitement graphique de ladite image décodée appartenant au groupe comprenant :
Un fondu ;
Un flou ;
Une opacité ;
Une transition graphique entre ladite image décodée et une image décodée précédente.
6. Procédé selon l'une quelconque des revendications 1 à 5, caractérisé en ce que
préalablement à ladite restitution de ladite image décodée, il met en oeuvre une détermination de chrominance de ladite image décodée et en ce que, si la chrominance déterminée est supérieure à un seuil de chrominance, il met en œuvre ledit téléchargement partiel pour au moins un segment temporel voisin dudit segment temporel dont est extraite ladite image décodée, et une détermination de chrominance d'au moins une image décodée à partir dudit au moins un segment temporel voisin, appelée image décodée voisine, et une restitution d'une desdites images décodées voisines dont la chrominance déterminée est inférieure audit seuil de chrominance.
7. Procédé selon l'une quelconque des revendications précédentes, caractérisé en ce que ledit contenu numérique est restitué, sur un écran dudit terminal de restitution, en arrière-plan dudit élément principal et/ou dans une fenêtre dudit écran.
8. Produit programme d'ordinateur comprenant des instructions de code de programme pour la mise en œuvre d'un procédé selon l'une quelconque des revendications 1 à 7, lorsqu'il est exécuté par un processeur.
9. Dispositif de gestion du téléchargement progressif adaptatif (HAS) d'un contenu numérique au sein d'un terminal lecteur de flux multimédia en temps réel, associé à un terminal de restitution dudit contenu numérique,
ledit dispositif comprenant un module d'obtention d'un fichier de description dudit contenu numérique, comprenant une liste de segments temporels dudit contenu associés chacun à plusieurs débits d'encodage dudit contenu, ,
caractérisé en ce qu'il comprend un module de restitution concomitante dudit contenu numérique et d'un élément, appelé élément principal, appartenant au groupe comprenant un menu et un autre contenu numérique,
et en ce qu'il comprend un module de téléchargement configuré pour mettre en œuvre, lors d'une restitution concomitante, un téléchargement partiel d'au moins certains desdits segments temporels, et ledit module de restitution est configuré pour restituer, une image décodée à partir de ladite partie téléchargée du segment temporel téléchargé.
10. Terminal lecteur de flux multimédia en temps réel, caractérisé en ce qu'il comprend un dispositif de gestion du téléchargement progressif adaptatif d'un contenu numérique selon la revendication 9.
EP20723886.6A 2019-05-20 2020-05-12 Restitution d'un contenu en arrière-plan ou sous forme d'incrustation dans le cadre d'un téléchargement progressif adaptatif de type has Pending EP3973714A1 (fr)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
FR1905266A FR3096540A1 (fr) 2019-05-20 2019-05-20 Restitution d’un contenu en arrière-plan ou sous forme d’incrustation dans le cadre d’un téléchargement progressif adaptatif de type HAS
PCT/EP2020/063109 WO2020234030A1 (fr) 2019-05-20 2020-05-12 Restitution d'un contenu en arrière-plan ou sous forme d'incrustation dans le cadre d'un téléchargement progressif adaptatif de type has

Publications (1)

Publication Number Publication Date
EP3973714A1 true EP3973714A1 (fr) 2022-03-30

Family

ID=67957059

Family Applications (1)

Application Number Title Priority Date Filing Date
EP20723886.6A Pending EP3973714A1 (fr) 2019-05-20 2020-05-12 Restitution d'un contenu en arrière-plan ou sous forme d'incrustation dans le cadre d'un téléchargement progressif adaptatif de type has

Country Status (4)

Country Link
US (1) US11736548B2 (fr)
EP (1) EP3973714A1 (fr)
FR (1) FR3096540A1 (fr)
WO (1) WO2020234030A1 (fr)

Family Cites Families (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8863187B2 (en) * 2007-04-02 2014-10-14 Tp Lab, Inc. System and method for presenting multiple pictures on a television
EP2944063A1 (fr) * 2013-01-10 2015-11-18 Telefonaktiebolaget L M Ericsson (Publ) Appareil et procédé pour commander une diffusion en continu adaptative de contenu multimédia
EP3092806A4 (fr) * 2014-01-07 2017-08-23 Nokia Technologies Oy Procédé et appareil de codage et de décodage vidéo
US20150312303A1 (en) * 2014-04-25 2015-10-29 Qualcomm Incorporated Determining whether to use sidx information when streaming media data
FR3021489A1 (fr) * 2014-05-22 2015-11-27 Orange Procede de telechargement adaptatif de contenus numeriques pour plusieurs ecrans
KR102288087B1 (ko) * 2014-11-25 2021-08-10 엘지전자 주식회사 멀티미디어 디바이스 및 그 제어 방법
EP3393129A1 (fr) * 2017-04-21 2018-10-24 Alcatel-Lucent España, S.A. Distribution de contenu multimédia à retard réduit

Also Published As

Publication number Publication date
WO2020234030A1 (fr) 2020-11-26
US11736548B2 (en) 2023-08-22
FR3096540A1 (fr) 2020-11-27
US20220224745A1 (en) 2022-07-14

Similar Documents

Publication Publication Date Title
EP3496407A1 (fr) Procédé de gestion de la consommation électrique d&#39;un dispositif électronique
FR3081647A1 (fr) Gestion du telechargement progressif adaptatif (has) d&#39;un contenu numerique au sein d&#39;un terminal lecteur de flux multimedia en temps reel.
WO2019220034A1 (fr) Gestion du téléchargement progressif adaptatif d&#39;un contenu numérique au sein d&#39;un terminal de restitution d&#39;un réseau de communication local
WO2021058910A1 (fr) Gestion du téléchargement progressif adaptatif d&#39;un contenu numérique sur réseau mobile avec sélection d&#39;un débit d&#39;encodage maximum autorisé en fonction d&#39;un godet de données
EP3987820A1 (fr) Procédé de gestion du téléchargement progressif adaptatif (has) d&#39;un contenu numérique diffusé en temps réel, gestionnaire, terminal lecteur de flux multimédia et programme d&#39;ordinateur correspondants
WO2021089942A1 (fr) Procédé de gestion de zapping de contenus multimédias numériques obtenu par téléchargement progressif adaptatif (has), dispositif de gestion, lecteur de flux multimédia et programme d&#39;ordinateur correspondants
EP3973714A1 (fr) Restitution d&#39;un contenu en arrière-plan ou sous forme d&#39;incrustation dans le cadre d&#39;un téléchargement progressif adaptatif de type has
EP3926929B1 (fr) Procédé de gestion de la lecture d&#39;un contenu numérique au sein d&#39;un terminal lecteur de contenus multimédias connecté à un dispositif de restitution
WO2023208688A1 (fr) Gestion de la restitution d&#39;un contenu multimédia
FR3093603A1 (fr) Procédé de navigation accélérée dans un contenu numérique obtenu par téléchargement progressif adaptatif (HAS), gestionnaire, lecteur de flux multimédia et programme d’ordinateur correspondants.
FR3093605A1 (fr) Procédé de navigation accélérée dans un contenu numérique obtenu par téléchargement progressif adaptatif (HAS), gestionnaire, lecteur de flux multimédia et programme d’ordinateur correspondants.
EP4109905A1 (fr) Gestion du téléchargement progressif adaptatif d&#39;un contenu numérique en mode économiseur d&#39;écran
FR3114719A1 (fr) Procédé de gestion de la lecture d’un contenu numérique au sein d’un terminal lecteur de contenus multimédias connecté à un dispositif de restitution
EP4066512A1 (fr) Procédé de gestion d&#39;une liste de contenus accessibles au zapping, les contenus numériques étant téléchargeables en mode de téléchargement progressif adaptatif (has), dispositif de gestion, lecteur de flux multimédia et programme d&#39;ordinateur correspondants
EP3840391A1 (fr) Gestion de la restitution d&#39;un contenu multimédia et d&#39;une interface de navigation sur un écran
FR3103668A1 (fr) Gestion du téléchargement progressif adaptatif d’un contenu numérique sur réseau mobile avec détermination d’un débit d’encodage maximum autorisé sur une session en fonction d’un godet de données
FR3096210A1 (fr) Procédé de transmission d’un contenu numérique ayant plusieurs versions accessibles depuis un serveur de contenus à destination d’un terminal de restitution.
WO2021209706A1 (fr) Gestion de l&#39;accès à des contenus numériques accessibles en téléchargement progressif adaptatif et encodés selon une méthode d&#39;encodage à débit variable, en fonction d&#39;une charge réseau
EP4184922A1 (fr) Procédé de gestion de l&#39; accès à un contenu multimédia
FR3116684A1 (fr) Gestion du téléchargement progressif adaptatif d’un contenu acheté, tenant compte d’un historique de niveaux de qualité de lecture de contenu par un terminal lecteur de flux multimédia
FR3128084A1 (fr) procédé de gestion de la lecture d’un contenu multimédia.
EP3846489A1 (fr) Procédé de gestion d&#39;un téléchargement progressif et adaptatif d&#39;un contenu numérique par un terminal lecteur de flux multimédia connecté à un réseau de communication, dispositif de gestion, terminal lecteur de flux multimédia et programme d&#39;ordinateur correspondants
FR3135857A1 (fr) Gestion de la restitution d’un contenu multimédia sur plusieurs écrans.
EP4297409A1 (fr) Procédé de gestion de la lecture d&#39;un contenu multimédia.
FR3114720A1 (fr) Gestion du téléchargement progressif adaptatif d’un contenu tenant compte de la qualité du signal échangé entre le terminal client et le point d’accès au réseau

Legal Events

Date Code Title Description
STAA Information on the status of an ep patent application or granted ep patent

Free format text: STATUS: UNKNOWN

STAA Information on the status of an ep patent application or granted ep patent

Free format text: STATUS: THE INTERNATIONAL PUBLICATION HAS BEEN MADE

PUAI Public reference made under article 153(3) epc to a published international application that has entered the european phase

Free format text: ORIGINAL CODE: 0009012

STAA Information on the status of an ep patent application or granted ep patent

Free format text: STATUS: REQUEST FOR EXAMINATION WAS MADE

17P Request for examination filed

Effective date: 20211025

AK Designated contracting states

Kind code of ref document: A1

Designated state(s): AL AT BE BG CH CY CZ DE DK EE ES FI FR GB GR HR HU IE IS IT LI LT LU LV MC MK MT NL NO PL PT RO RS SE SI SK SM TR

DAV Request for validation of the european patent (deleted)
DAX Request for extension of the european patent (deleted)
STAA Information on the status of an ep patent application or granted ep patent

Free format text: STATUS: EXAMINATION IS IN PROGRESS