Abstract:
In an embodiment, a control unit includes a determiner and a requestor. The determiner is configured to determine media-data rate in response to the network throughput and one of multiple fill ranges to which a level of a buffer corresponds, and the requestor is configured to request a media-file segment having the determined media-data rate. For example, such a control unit may be able to control the streaming of a video file in a way that reduces or prevents buffer underflows (i.e., video “freezes”), reduces the start-up delay, and that reduces the frequency of changes from one quality level (e.g., resolution) to another quality level, while streaming the highest-quality version of the video file that the data throughput allows. That is, the control unit seeks to maximize the streamed video quality while minimizing the number of buffer underflows, the number of changes in the streamed resolution caused by changes in the throughput, and the start-up delay.