Method for managing downloading, by a reading terminal, of a digital content item accessible in multiple formats
Patent Information
- Application Number
- EP2023793396
- Authority / Receiving Office
- EP · EP
- Patent Type
- Applications
- Current Assignee / Owner
- Priority Date
- 2022-10-31
- Filing Date
- 2023-10-23
- Publication Date
- 2025-09-10
AI Technical Summary
Current digital multimedia content management systems face delays in content restitution due to the lack of specific hardware decoders on reading terminals, particularly for formats like WebP, which are quickly downloaded but slow to decode without a dedicated GPU decoder, leading to suboptimal rendering times.
A method that calculates the waiting time for rendering different formats of digital content and selects the format based on these calculations, potentially choosing a lower compression rate format like JPEG over a higher compression rate format like WebP, even if it's larger, to ensure faster decoding and optimal rendering times, using a processor that can handle various decoders.
This approach ensures faster content restitution by selecting formats that minimize overall waiting time, even if they have a lower compression rate, by leveraging hardware decoders present on the terminal and reducing the need for repeated bandwidth calculations in stable networks.
Smart Images

Figure 1.1
Abstract
Description
[0001] DESCRIPTION
[0002] TITLE: Method for managing the downloading by a reading terminal of digital content accessible in several formats
[0003] Technical field
[0004] The field of the invention is that of managing the restitution of digital multimedia content, namely digital audio and / or video content. More specifically, the invention relates to managing the selection of the type of content to be downloaded from a set of available content.
[0005] The content in question is coded and therefore requires decoders specific to the type of content to be decoded for playback on a playback device.
[0006] Content can be an image, audio content, video content, or any other similar content. We will see later that the content used to illustrate the invention is an image.
[0007] State of the art
[0008] Rendering a user interface that includes images on a rendering device requires the images to be made available on a server. The images are then downloaded, decoded by a decoder, and displayed on a rendering device.
[0009] To reduce the size of such images, they are compressed (or encoded) using compression techniques known to those skilled in the art. These compression techniques offer more or less optimized compression formats (JPG, WebP, GIF, PNG, etc.) which reduce the size (in KB) of content to a greater or lesser extent depending on the compression technique used.
[0010] It is better to offer images with a high compression rate because the download time is faster and therefore theoretically a shorter time before rendering than with images with a lower compression rate.
[0011] Today, video playback devices are equipped with hardware image decoders (called accelerated image decoders or accelerators) that only support a limited number of compression formats. Playback terminals that do not have a hardware decoding accelerator perform decoding via the CPU (Central Processing Unit) of the playback terminal, in software, which requires much more decoding time than when it is done via a hardware decoder. It may therefore happen that an image with a high compression rate, therefore downloaded quickly, suffers a delay in playback due to the absence of the decoder specific to this type of image on the playback terminal. Examples of compression formats are WebP and JPEG (Joint Photography Experts Group).The WebP format is an image format that has a better compression rate than the JPEG format; there can be a ratio of two between the weight in Kilobytes of a WebP image and that of a JPEG image for an equivalent rendering quality. We therefore save time when retrieving WebP images from a server from which it is downloaded because for equal quality the size of the image in KB is much smaller. However, the time before rendering a WebP image is optimal if a decoder specific to the WebP format is installed on the reading terminal; however, today this is not always the case. Indeed, only the most recent or high-end devices are equipped with such a decoder.If the reading terminal is not equipped with a hardware decoder, such as a GPU (Graphics Processing Unit), specific to the WebP format, decoding is then done by the reading terminal's processor, in software, which requires much more time.
[0012] The invention improves the situation.
[0013] The invention
[0014] The invention relates to a method for managing the downloading, from a communication network, by a terminal of digital content accessible in several formats, the terminal comprising several types of content decoders capable of decoding several content formats respectively, characterized in that it comprises, for different formats of the same content, a calculation of the respective waiting times before restitution of the content and in that the content format selected to be downloaded is a function of the result of the calculation.
[0015] The invention is therefore based on a calculation of the expected waiting time before restitution to decide, when several formats of the same content are available, the content format to download and to restore. The selected format will not necessarily be the format associated with the best compression rate; a content format associated with a lower compression rate may be associated with a lower waiting time before restitution.
[0016] In a context where fast restitution is desired, the invention ensures an optimal time before restitution. For example, it may therefore be more interesting to retrieve JPEG images, rather than WebP images, which are larger in kilobytes to download but faster to decode.
[0017] It will be seen below that the example chosen to illustrate the invention aims at the shortest possible duration before restitution. However, the invention is not limited to a target duration before restitution of the shortest possible duration. The target duration before restitution may be the longest duration, or another duration chosen according to the context.
[0018] According to a first embodiment of the method, the calculation is carried out for content whose associated decoder is present in the reading terminal. This first mode makes it possible to exclude content that would be decoded by the CPU processor, which consumes more decoding time than a hardware decoder.
[0019] According to a second particular embodiment of the invention, which may be implemented alternatively or cumulatively with the previous one, the calculation of the waiting time before restitution comprises a first calculation of a content downloading time, and a second calculation of a content decoding time. According to this second embodiment, the result of the first calculation is reused several times during subsequent calculations of waiting times before restitution. This mode makes it possible to save time for the calculation of the predictable duration before restitution by retaining the first calculation several times during successive calculations of estimation of waiting times before restitution and therefore by not recalculating the first duration each time. Indeed, in a network in which the bandwidth fluctuates very little, the first calculation does not need to be recalculated at each calculation. This time saving accelerates the selection of the content and therefore its restitution.
[0020] In a variant of the second mode, the content is downloaded via a communication network having a fluctuating bandwidth; in this configuration, the result of the first calculation is reused as long as the bandwidth is within a given bandwidth interval. This third mode reduces the number of times the first calculation is performed; this reduction in the number of calculations performed speeds up the selection of the content and therefore its restitution.According to a material aspect, the invention relates to an entity for managing the downloading, from a communication network, by a terminal, of digital content accessible in several formats, the terminal comprising several types of content decoders capable of decoding several content formats respectively, characterized in that it comprises a processor configured to carry out, for different formats of the same content, a calculation of the respective waiting times before restitution of the content, and to select the selected content format to be downloaded according to the result of the calculation.
[0021] According to another material aspect, the invention relates to a reader terminal comprising a management entity as defined above.
[0022] According to another material aspect, the invention relates to a computer program capable of being implemented on a management entity as defined above, the program comprising code instructions which, when executed by a processor, carries out the steps of the management method defined above.
[0023] According to another material aspect, the invention relates to a data medium on which at least one series of program code instructions has been stored for the execution of a management method as defined above.
[0024] The medium in question may be any entity or device capable of storing the program. For example, the medium may comprise a storage means, such as a ROM, for example a CD ROM or a microelectronic circuit ROM, or a magnetic recording means, for example a hard disk. Furthermore, the information medium may be a transmissible medium such as an electrical or optical signal, which may be conveyed via an electrical or optical cable, by radio or by other means. The program according to the invention may in particular be downloaded from a network such as the Internet. Alternatively, the information medium may be an integrated circuit in which the program is incorporated, the circuit being adapted to execute or to be used in the execution of the method in question.
[0025] The invention will be better understood upon reading the following description, given by way of example and with reference to the appended drawings in which: Figure 1 represents an architecture for progressive downloading on the Internet based on the use of adaptive streaming according to an embodiment of the method of the invention;
[0026] Figure 2 schematically illustrates the hardware structure of a media stream player terminal;
[0027] Figure 3 illustrates steps of one embodiment.
[0028] Detailed description of embodiments of the invention
[0029] We now present, in relation to Figure 1, a computer system SYS comprising an SRV server from which contents can be downloaded, and a playback terminal STB from which contents can be played.
[0030] Different types of IMG1 / IMG2 digital content that have been encoded or compressed in different ways are accessible from the SRV server.
[0031] Figure 2 schematically illustrates an STB reading terminal. The latter has a classic computer architecture; the decoder conventionally comprises memories M associated with a CPU processor. The memories can be of the ROM (Read Only Memory) or RAM (Random Access Memory) type or even Flash. The decoder communicates with the server either directly through a WAN or indirectly through a GTW home gateway and the WAN Internet network. Communication via a LAN network is carried out via a COM11 module connected to the CPU processor ensuring local wireless communication of the WiFi type with the GTW residential gateway.
[0032] The STB playback terminal further includes a download module to request a download of content stored on the SRV server.
[0033] In our example, the STB reading terminal is connected to a TV, via a COMM2 communication module of the HDMI link type.
[0034] IMG1 / IMG2 encoded contents stored on the SRV server are suitable for decoding by specific decoders DEC1 and DEC2, respectively. When content is downloaded and received by the playback terminal, a decoder decodes the content and requests a rendering of the content. Decoding can be performed either by a hardware decoder or a software decoder; the software decoder is managed by the processor while a hardware decoder is equipped with a processor separate from the CPU processor.
[0035] In other words, software decoding uses the CPU processor to decode and play content while GPU-based DEC1 / DEC2 hardware decoding is mainly based on a graphics processing unit, or GPU, which is more powerful than a CPU processor to process multimedia content.
[0036] According to the invention, an ENT management entity performs, for several content formats, a calculation of respective waiting times before rendering the content. This calculation makes it possible to obtain an estimate of times preceding the rendering of the content considered. Then a content is selected according to the result of the calculation. The selected content is then downloaded and rendered.
[0037] Assume that the SRV server stores images IMG1 and IMG2 encoded using two respective encoding techniques. In our example, the images are a JPEG image and a WebP image.
[0038] WebP is an image format with a higher compression rate than JPEG. There is a ratio of two between the weight in KB of a WebP image compared to a JPEG image for equivalent quality. Therefore, when optimal image quality is sought, there is a definite advantage in favoring downloading content encoded in WebP format rather than JPEG.
[0039] Most terminals are equipped with JPEG hardware decoders. This is not the case for WebP images; only a few playback terminals or high-end terminals have integrated WebP hardware decoders. If there is no specific WebP hardware decoder, decoding is done by default via the CPU processor's software decoder, which requires much more processing time, much more than with a WebP decoder. It is understandable that, depending on whether the playback terminal is equipped with the hardware decoder or not, it can sometimes be more interesting to retrieve a JPEG image that is larger in size than a WebP image but faster to decode due to the absence of a WebP decoder.
[0040] In our example, it is assumed that the terminal has, in addition to the software decoder, a JPEG hardware decoder and that it is not equipped with a WebP decoder. Figure 3 illustrates steps of an embodiment illustrating the invention. The method comprises several steps referenced ETn (n = 1,...,8).
[0041] During a first step ET1, the STB decoder reading terminal receives a request for access to an image.
[0042] As we saw previously, the same image is encoded in several formats. During a second step ET2, the decoder reading terminal STB retrieves information for each image format: the size in kilobytes of the different encoded images and the types of formats, namely in our example JPEG and WebP. Other information can be retrieved such as image resolution, or other information that may have an impact on the waiting time before rendering.
[0043] During a third step ET3, the reading terminal calculates respective waiting times before rendering the content for each image format; During this calculation, a first calculation estimates, based on the current bandwidth, the download time based on the size of the chosen image and the current bandwidth. The bandwidth can be determined using an algorithm known to those skilled in the art. Such an algorithm is, for example, a so-called adaptive progressive download algorithm, abbreviated to HAS.
[0044] We briefly recall that, most often, the general principle of such HAS algorithms is based on the downloading of a segment encoded at the lowest encoding rate proposed in a “Manifest” file (also called a description file by those skilled in the art), and on the evaluation of the recovery time of this first segment. This recovery time can be assimilated to the download time of the segment.
[0045] Let's assume that the JPEG encoded image is 1.5MB in size (MB = Mega Bytes). Let's also assume that the user's bandwidth (calculated by a HAS-like algorithm) is 10MB. The JPEG image download time will therefore be 0.15 seconds. The same image encoded in WebP is 1MB in size and requires a download time of 0.1 seconds.
[0046] Then, the second calculation consists of determining, based on the terminal's capabilities, namely based on the presence or absence of the hardware decoder specific to the JPEG or WebP image, and the characteristics of the image (resolution / weight in KB), the expected decoding time of the image. This second calculation could also include the transmission delay of the decoded image until the image is restored; however, in this example, this delay is considered to be of no interest because it is substantially the same for all decoded images and negligible compared to the decoding delay.
[0047] Generally speaking, retrieving an image from a server includes two durations, namely the downloading duration and the decoding duration; the other durations, namely the transmission duration of a request to download an image, or the transmission time of the decoded image to the screen, or any other durations are not taken into account in our example because they are of substantially equal durations regardless of the selected image format.
[0048] The sum of the two previous results, results from the first and second calculations, corresponds to a time before rendering an image. In our example, concretely, thanks to the second calculation we determine that the JPG image can be decoded by the JPEG hardware decoder in 0.05 sec and that the WebP image can be decoded by the CPU processor in 0.25 sec.
[0049] The overall calculation combining download time and decoding time gives the following results:
[0050] For the IMG1 image, the expected download time added to the expected decoding time of the JPG image (0.15 + 0.05) gives 0.155 sec of time before rendering.
[0051] For the IMG2 image, the expected download time added to the expected decoding time of the JPG image, the download time added to the decoding of the WebP image (0.1 + 0.25) gives 0.35 sec of waiting time before rendering.
[0052] If the need is to obtain an image as quickly as possible, the JPG image is selected because the expected waiting time before restitution is much shorter than with the WebP image. In our example, during a fourth step ET4, the ENT management entity therefore selects the JPEG image to download, which is of lower quality but has the shortest waiting time before restitution.
[0053] In a fifth step ET5, the STB reading terminal requests a download of the JPEG image from the server.
[0054] In a sixth step ET6, the STB playback terminal receives the selected JPEG image and decodes this image in a seventh step. In an eighth step ET8, the JPEG image is restored.
[0055] It is understood here that in the chosen embodiment the reading terminal ensures an optimal waiting time before restitution.
[0056] The method described above may be subject to variations.
[0057] According to a first variant, to save time in the calculation, the result of the first calculation can be kept several times during subsequent calculations. Indeed, in a network in which the bandwidth fluctuates very little, performing the global calculation (first calculation and second calculation) without performing the first calculation, namely the calculation of the download time, each time, reduces the calculation time to the calculation time linked to the decoding duration.
[0058] According to a second variant, the time before restitution is based solely on the second time linked to the type of decoder present on the reading terminal. In this mode, the download time is not taken into account.
[0059] According to a third variant, an IMG1 and IMG2 image not having a specific decoder present in the STB playback terminal is not accessible for selection for downloading. Taking the example above in which the playback terminal only includes the JPEG decoder and no WebP decoder; in this case, the WebP image is not selectable for downloading. Only the JPEG image is accessible for downloading. This variant is interesting when we consider that the decoding time performed by the CPU processor is, in all cases, greater than the decoding time performed by a hardware decoder.
[0060] Finally, let us also specify here that the term "entity" can correspond to a software component as well 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 sub-programs or more generally to any element of a program capable of implementing a function or a set of functions as described for the modules concerned. In the same way, a hardware component corresponds to any element of a hardware assembly capable of implementing a function or a set of functions for the module concerned (integrated circuit, smart card, memory card, etc.)
Claims
CLAIMS . Method for managing the downloading, from a communication network, by a reading terminal (STB) of digital content (IMG1, IMG2) accessible in several formats, the terminal comprising several types of content decoders capable of decoding several content formats respectively, characterized in that it comprises, for different formats of the same content, a calculation of the respective waiting times before restitution of the content and in that the content format selected to be downloaded is a function of the result of the calculation. . Management method according to claim 1, characterized in that the calculation is carried out for contents whose associated decoder is present in the reading terminal. .Management method according to claim 1, in that the calculation of waiting time before restitution comprises a first calculation of a downloading time and a second calculation of a decoding time, and in that the result of the first calculation is reused several times during subsequent calculations of waiting times before restitution. . Management entity (ENT) for downloading, from a communication network, by a terminal, digital content accessible in several formats, the terminal comprising several types of content decoders capable of decoding several content formats respectively, characterized in that it comprises a processor configured to carry out, for different formats of the same content, a calculation of the respective waiting times before restitution of the content, and selecting the selected content format to be downloaded is a function of the result of the calculation. .Reader terminal (STB) comprising a management entity (ENT) as defined in claim 4. . Computer program capable of being implemented on a management entity (ENT) as defined in claim 4, the program comprising code instructions which, when executed by a processor, carry out the steps of the method defined in claim 1. . Data medium on which at least one series of program code instructions has been stored for the execution of a method according to claim 1.