Toolkit support for multiuser audio/video applications [chapter]

David P. Anderson, Pamela Chan
1992 Lecture Notes in Computer Science  
The session "Multimedia Abstractions I" comprised three presentations about abstractions that provide a framework for supporting software that manipulates digital audio and video. These abstractions serve the same purpose as existing system abstractions, such as I/O libraries and windowing systems. They hide the complexity of underlying hardware and software and provide organized mechanisms for performing common manipulations. These abstractions also ease the design, implementation and
more » ... of software and promote portability. As we begin to see progress on the fundamental systems issues for supporting digital media (such as operating systems and networks), we can expect such multimedia abstractions to become more important. TOOLKIT SUPPORT FOR MULTIUSER AUDIO/VIDEO APPLICATIONS ABSTRACT Comet is a UNIX/C++ toolkit for writing programs that involve multiple users and that use digital audio and video. Comet provides a simple programming interface: the application builds a graph of objects representing speakers and microphones, mixers, files, and so on. Comet then realizes the graph by creating processes to handle mixing and file I/O if needed, and linking them by network connections to audio/video I/O servers. In addition, Comet addresses the interrelated issues of client requirements and resource management. It determines delay and throughput requirements, process placement, and data type conversion; it deals with resource managers on the application's behalf. These mechanisms are based on a negotiation protocol among the components of the object graph.
doi:10.1007/3-540-55639-7_20 fatcat:qdmkzpuzqjet3kuyrdg33uneka