The design and performance of the Berkeley Continuous Media Toolkit (CMT) is described. CMT provides a programming environment for rapid development of continuous media applications. CMT overhead is measured in the context of a simple video playback application and is found to be only a few milliseconds per frame played. As a demonstration of CMT as a research infrastructure, an experiment comparing adaptive frame rate control policies is described.Keywords: continuous media, toolkit, prototyping.
INTRODUCTIONThis paper describes the design of the Berkeley Continuous Media Toolkit (CMT) and the results of experiments conducted to test the performance of the system. CMT provides a rapid development environment for multimedia applications that use continuous media (e.g., video, audio, etc.). The system provides objects to perform media specific operations (e.g., capture, store, play, etc.) and a simple programming model for building applications. The goal of this paper is to show the viability of a general-purpose, portable continuous media toolkit by quantifying the overhead costs of CMT in the context of a simple video playback application and by demonstrating the use of CMT as a research tool. Measurements of CMT performance indicate that the toolkit overhead is only a few milliseconds per media unit (i.e., frame of video) for basic playback functionality. The flexibility of CMT is demonstrated in a simple experiment designed to measure the performance of a variety of adaptive rate control feedback algorithms for delivering and playing MPEG and MJPEG data.Current continuous media research operates on a variety of different levels. At the lowest level, new media compression standards (e.g., MPEG 6 , h.261 8 , source channel encoding schemes, etc.) and communication protocols (e.g., RTP 20 , RSVP 26 , etc.) are explored. Often these new schemes are specifically designed for particular applications (e.g., video conferencing, animation, etc.) and are concerned with issues such as scalability and error concealment. The development and performance of specific applications is another level of continuous media research. Vic 12 and vat are examples of these research efforts. At the highest level, continuous media research involves large systems such as video-on-demand (VOD) and interactive television. A viable continuous media research system would allow different researchers to conduct experiments at any of these levels and utilize system infrastructure and applications at other levels to test end-to-end performance.CMT was developed to facilitate the construction of new applications and provide a framework for research at all levels. CMT is an extensible, open system, and it is flexible enough to support a variety of application models. Cross-platform portability is provided to operate in the heterogenous environment of the Internet. Using CMT, it is possible to conduct experiments without having to reinvent and implement an entire multimedia system. For example, using CMT researchers have investigated a numbe...