TAPAS

a tool for rapid prototyping of adaptive streaming algorithms

View project on GitHub

TAPAS is an open-source Tool for rApid Prototyping of Adaptive Streaming control algorithms. TAPAS is a flexible and extensible video streaming client written in python language that allows to easily design and carry out experimental performance evaluations of adaptive streaming controllers without needing to write the code to download video segments, parse manifest files, and decode the video. TAPAS currently supports DASH and HLS and has been designed to minimize the CPU and memory footprint so that experiments involving a large number of concurrent video flows can be carried out using a single client machine.

TAPAS architecture is shown in the following block diagram.

TAPAS architecture

In order to implement a new controller it is sufficient to create a new controller class, f.i. MyController, in a python file placed in the controller/ directory. The MyController class has to inherit from BaseController class and implement only a few methods. For an exhaustive description, please refer to the available documentation shipped with the source code and the TAPAS paper (see References section).

References

Luca De Cicco, Vito Caldaralo, Vittorio Palmisano, Saverio Mascolo, TAPAS: a Tool for rApid Prototyping of Adaptive Streaming algorithms, Proc. of ACM VideoNext Workshop, Sydney, Australia, December 2014 (PDF)

Authors and Contributors

TAPAS has been written by:

Support or Contact

Please contact Luca De Cicco (@ldecicco ldecicco@gmail.com).