TAPAS: a Tool for rApid Prototyping of Adaptive Streaming algorithms Luca De Cicco Vito Caldaralo Politecnico di Bari, Italy Quavlive srl, Italy
[email protected] [email protected] Vittorio Palmisano Saverio Mascolo Quavlive srl, Italy Politecnico di Bari, Italy
[email protected] [email protected] ABSTRACT and user screen resolution. The two leading standardiza- tion efforts related to adaptive streaming are the HTTP The central component of any adaptive video streaming sys- 1 tem is the stream-switching controller. This paper intro- Live Streaming (HLS) proposed by Apple and the ISO duces TAPAS, an open-source Tool for rApid Prototyping standard Dynamic Adaptive Streaming over HTTP (MPEG- of Adaptive Streaming control algorithms. TAPAS is a flex- DASH) [10]. Both the standards require the video content ible and extensible video streaming client written in python to be encoded at different bitrates and resolutions, the video that allows to easily design and carry out experimental per- levels or representations. Then, each video level is logically or physically divided into segments, or chunks, of fixed dura- formance evaluations of adaptive streaming controllers with- 2 out needing to write the code to download video segments, tions. A manifest file is stored at the server and is used to parse manifest files, and decode the video. TAPAS currently associate to each (chunk,video level) pair its corresponding supports DASH and HLS and has been designed to minimize URL. The client downloads and parses the manifest file and the CPU and memory footprint so that experiments involv- constructs a data structure that is used to request consec- ing a large number of concurrent video flows can be carried utive video segments of possibly different representations.