


This approach is not robust to bandwidth fluctuation at small time scales, which can consequently lead to stalls, bandwidth waste, and unstable quality, mainly due to the inability to mitigate significant bandwidth reduction during the segment download. Conventional approach to adaptation is to make a decision on the next video segment quality based on hysteresis of prior throughput measurements. However, effective adaptation that minimizes stalls and start-up time while maximizing quality and stability remains elusive, especially when available bandwidth is variable or multiple players compete for the bottleneck capacity.

To cope with diverse network conditions, HTTP Adaptive Streaming (HAS) enables video players to dynamically change the video quality throughout the video stream.
