The present invention relates to the field of digital transmission, and more particularly to a technique called “staggercasting”. As detailed below, staggercasting offers a method of protection against signal loss by transmitting (with a staggercast transmitter) a secondary stream (also referred to as “stagger stream”) which is time-shifted and redundant with respect to a primary stream (also referred to as “main stream”). This allows a staggercast receiver to pre-buffer packets of the stagger stream to replace packets of the main stream lost in transmission.
More specifically, the present invention relates to a solution (method and central device) for managing staggercast transmissions in a communication network comprising a central device (e.g. a set-top-box, a gateway or a server) and a plurality of user terminals (e.g. computers, smartphones, tablets, headphones, or any devices that can be connected to the central device), the central device comprising a staggercast transmitter and each user terminal comprising a staggercast receiver.
At home, in residential buildings or in commercial buildings, different users with different user terminals (devices) can connect (through a wireless connection) to a central device (set-top-box, gateway, server, etc.) to watch a live program, a recorded content or listen to music.
Each of these users has his own habits in term of displacements in the building or in term of applications usage. Each of these users also uses his own user terminal (computer, smartphone, tablet, etc.), the latter having its own technical features. Displacements, some applications usage or the type of user terminal may have an impact on the audio and/or video rendering and the user experience. Indeed the user may go through an area where the wireless connection is poor or with interferences, this may create data losses, and bad artifacts. Specific applications usage and the type of user terminal are parameters that may impact the energy consumption of the user terminals and consequently shorten the user terminal usage.
In other words, the different users may live different experiences of what they watch or what they listen:
Those non-exhaustive use cases may create different bad artifacts due to the loss of data or the loss of energy.
The staggercast method may palliate those losses or may help decreasing their impact, in order to improve the user experience in such cases. Indeed, in case of data losses, it will correct the damaged stream. And in case of energy loss, the user terminal may switch automatically to the stagger stream, which may have been encoded with a lower resolution and is therefore less difficult to decode, so demands less energy.
The staggercast method includes a first signal (main stream) and a second signal (stagger stream), where the first signal is delayed (a stagger delay is applied to it). Thus the stagger stream is in advance of the main stream. In case of error detection (for instance signal losses) in the first signal the second encoded signal is used. The second signal, which is basically used to repair the first signal, may also be used to save power. Indeed it may be encoded with a resolution (referred to as “stagger stream resolution”) lower than the “main stream resolution. Thus when the battery level starts to be low, the user terminal may switch automatically to the stagger stream. In other words, when using the staggercast method, one can adjust staggercast parameters of the staggercast transmitter, which are the stagger delay and the stagger stream resolution.
A drawback of the known staggercast method is that, when adjusted (i.e. set), each staggercast parameter of the staggercast transmitter takes a single value, which is used for all transmissions of the staggercast transmitter towards the plurality of staggercast receivers. Therefore, in the context of staggercast transmissions in a communication network comprising a central device (comprising a staggercast transmitter) and a plurality of user terminals (each comprising a staggercast receiver), the known staggercast method does not offer an optimal user experience improvement for all the users.
A particular aspect of the present disclosure relates to a method for managing staggercast transmissions in a communication network comprising a central device and a plurality of user terminals, said central device comprising a staggercast transmitter and each of said user terminals comprising a staggercast receiver. The staggercast transmissions includes transmitting at least one main stream and at least one stagger stream, the main stream(s) being delayed with respect to the stagger stream(s), the stagger stream(s) carrying a signal redundant with, and distinct from, at least part of a signal carried by the main stream(s), and the stagger stream(s) being adapted to be used in case of error detection in the signal carried by the main stream(s).
The central device performs, at least for a given user terminal:
The general principle of the proposed solution is to adjust differently at least one of the staggercast parameters for each user terminal (or at least for some of them). To achieve this, each user terminal (or at least some of them) has an associated profile and the central device adjusts the staggercast parameter(s) based on this profile for all transmissions intended to this user terminal. Thus, the different staggercast receivers better palliate (or better decrease the impact of) the data losses and/or energy losses than with the known solution (single value for each staggercast parameter, whatever the staggercast transmissions). In other words, the user experience is improved for all the staggercast receivers, and hence also for all users of the user terminals comprising these staggercast receivers.
In advantageous implementations, the signal carried by the stagger stream(s) is encoded with a lower resolution than the signal carried by the main stream(s).
According to a particular feature, said at least one piece of information belongs to the group comprising:
According to a particular feature, said central device belongs to the group comprising a set-top-box, a gateway and a server.
According to a particular feature, said at least one staggercast parameter belongs to the group comprising:
According to a particular feature, said at least one piece of information belongs to the group comprising (this list is not exhaustive):
According to a particular feature, said central device performs a dynamical gathering of said at least one piece of information, through a communication between said central device and said given user terminal.
Thus, the adjustment of the at least one staggercast parameter can be easily modified (changed over time) in a different manner for each user terminal.
Another aspect of the present disclosure relates to a computer program product comprising program code instructions for implementing the above-mentioned method for managing staggercast transmissions (in any of its different embodiments) when said program is executed on a computer or a processor.
Another aspect of the present disclosure relates to a non-transitory computer-readable carrier medium, storing the aforesaid computer program product.
Another aspect of the present disclosure relates to a central device of a communication network comprising said central device and a plurality of user terminals, the central device being adapted to a staggercast transmitter and each of said user terminals comprising a staggercast receiver. The staggercast transmitter is configured for transmitting at least one main stream and at least one stagger stream, the main stream(s) being delayed with respect to the stagger stream(s), the stagger stream(s) carrying a signal redundant with, and distinct from, at least part of a signal carried by the main stream(s), and the stagger stream(s) being adapted to be used in case of error detection in the signal carried by the main stream(s).
The central device comprises a computation machine configured to:
In particular embodiments, the central device comprises the staggercast transmitter.
According to a particular feature, the central device belongs to the group comprising a set-top-box, a gateway and a server.
In an advantageous implementation, the computation machine is configured for the signal carried by the stagger stream(s) being encoded with a lower resolution than the signal carried by the main stream(s).
Advantageously, the central device is configured for executing the above method for managing staggercast transmissions, in any of its various execution modes.
According to a particular feature, the computation machine is configured to perform a dynamical gathering of said at least one piece of information, through a communication between said central device and said given user terminal.
Other features and advantages of embodiments shall appear from the following description, given by way of indicative and non-exhaustive examples and from the appended drawings, of which:
In all of the figures of the present document, similar elements and steps are designated by the same numerical reference sign.
An illustrative prior art staggercast transmitter 100 is shown in
Turning now to
The communication network comprises a central device (e.g. a set-top-box 30) and a plurality of user terminals used by different users (e.g. a headphone TA used by user A, a tablet TB used by user B and a smartphone TC used by user C).
In alternative embodiments, the central device is a gateway or a server. The user terminals can be any devices that can be connected to the central device.
The set-top-box 30 comprises a computation machine 50 (see
Each of the user terminals TA, TB and TC comprises a staggercast receiver 200A, 200B and 200C respectively.
The downlink transmissions from the staggercast transmitter 100 to the staggercast receiver 200A, 200B and 200C respectively are shown by an arrow referenced 32A, 32B and 32C respectively.
The uplink transmissions from the staggercast receiver 200A, 200B and 200C respectively to the staggercast transmitter 100 are shown by an arrow referenced 33A, 33B and 33C respectively.
In step 41, for each user terminal TA, TB and TC, the set-top-box 30 performs a dynamical gathering of information, through the uplink transmissions 33A, 33B and 33C (i.e. through communications between the set-top-box 30 and the user terminals TA, TB and TC). For example, while moving and if there are losses, the loss duration is measured and transmitted by the user terminal to the set-top-box. The same measurement can be applied in case of interferences.
In step 42, for each user terminal TA, TB and TC, the set-top-box 30 determines and stores a profile comprising information relating to at least one specificity of this user terminal and/or to at least one use of this user terminal. For a given user terminal, this information may be (non exhaustive list):
In step 43, for each user terminal TA, TB and TC, the set-top-box 30 adjusts at least one staggercast parameter (stagger delay and/or stagger stream resolution), for a content transmission by the staggercast transmitter 100 towards the staggercast receiver 200A, 200B and 200C comprised in this user terminal.
Let's imagine a house with 3 users: user A, user B and user C.
User A has a headphone TA and is connected to the central device 30. He listens to the radio or an mp3 stream stored in the central device. He moves from the kitchen to his room under the roof. In the stairs, the signal is poor, and for 2 seconds it may be very bad. As the staggercast is on, the main signal will be corrected. The loss duration is measured (2 seconds), and is transmitted to the central device. Once he arrives in his room, the signal may be disturbed, but the loss duration never exceeds 2 seconds.
User B has a tablet TB, and he often plays video clips stored in the central device hard drive. He sometimes sits in the living-room and sometimes in his bedroom. His bedroom is on the opposite side of the house compare to the central device. Besides, other wireless devices are disturbing the signal. Thanks to the staggercast he doesn't experience any bad artifacts. The loss duration is measured (1 second) and is transmitted to the central device. The tablet battery is pretty old, and the battery level is quite low (10%). The battery level is also transmitted to the central device.
User C has a smartphone TC. He watches a live program which is retransmitted by the central device. He sits in the garden. The quality signal with the central device is pretty good, and his mobile device transmits a measured loss of duration of 0.5 second. But his mobile device battery is 50% empty. This battery level is transmitted to the central device.
The central device gathers all these pieces of information and creates the below profile table (one profile per user, and also per user terminal considering that each user has his own terminal).
For the next connections, the central device will apply the following settings for the staggercast transmissions:
These setting are summarized in the following parameter table:
All the steps of the method described above (see
In other words, the disclosure is not limited to a purely software-based implementation, in the form of computer program instructions, but that it can also be implemented in hardware form or any form combining a hardware portion and a software portion.
Number | Date | Country | Kind |
---|---|---|---|
16306406.6 | Oct 2016 | EP | regional |
Filing Document | Filing Date | Country | Kind |
---|---|---|---|
PCT/EP2017/076903 | 10/20/2017 | WO | 00 |