[foms] What data is needed for adaptive stream switching?

James Courtier-Dutton James at superbug.co.uk
Fri Dec 3 01:58:51 PST 2010


 On 22/11/10 22:30, Chris Pearce wrote:
> What data does the browser need to expose to javascript to enable 
> clients to do adaptive stream switching?
>
> We need to detect the following situations:
> (1) The network is not fast enough to play the current stream at real time.
> (2) The network is fast enough to play the current stream, but is not 
> fast enough to play a higher quality stream.
> (3) The network is fast enough to play a higher quality stream at real time.
> (4) The machine is not powerful enough to play the current stream smoothly.
> (5) The machine is powerful enough to play the current stream smoothly, 
> but not powerful enough to play a higher quality stream smoothly.
> (6) The machine is powerful enough to play a higher quality stream smoothly.
> (7) Any others?
>

(7) Detect Intermittent or higher packet loss networks - E.g. Radio
networks, WiFi, Mobile phone GPRS.
Also cases such as WiFi re-negotiating a link.
So, if you are buffering 5 seconds of stream, and the network cuts out
for 1 second, it might be better to downgrade the bandwidth available,
averaged over 5 seconds.
With radio, conditions tend to be more bursty and vary over time, so
measuring bandwidth will be less reliable.
If the radio was giving you bursts of high bandwidth followed by spaces
of very little bandwidth, it might be useful to try and fit entire
segments inside the bursts.
Sending the audio part of the segment before the video part would also
allow one to at least get audio on a live broadcast even if video is
intermittent.

So, a measure of the peak bandwidth but also a measure of how
intermittent that peak bandwidth is would be useful.
In many ways, similar to VoIP measurements, where Bandwidth, latency and
jitter are important measurements.

Kind Regards

James







More information about the foms mailing list