Support for multiple bitrates

Status: operational prototype available


The Internet has become in the last years more and more a means of conveyance for multimedia delivering. Many solutions have been proposed to gain high quality of service for video on demand in client-server environments, with adaptive algorithms that adjust the bit-rate of a video stream depending on the client's available bandwidth. Providing video on demand over decentralized peer-to-peer systems is an active research field. The variable bit-rate environment that characterizes peer-to-peer networks causes significant difficulties to ensure quality of service and playback continuity for video on demand applications.


We address the challenge of serving high quality video on demand by designing and implementing a multi bit-rate video on demand architecture for peer-to-peer networks. We propose a switching scheme, an encoding methodology and a novel algorithm for multiple bit-rate video streaming over peer-to-peer networks.

Identical video content is encoded into three different sets of streams with different average bit-rates. The novel multi bit-rate algorithm will switch dynamically between the three sets of streams depending on the available bandwidth. Through a series of experiments we present the effectiveness of this architecture in fluctuating bandwidth scenarios.

Operational prototype

An operational prototype is available in Tribler's svn repositories under my own branch:

For more information please refer to