Horus and Multi-Media



next up previous
Next: Conclusion and ongoing Up: Support for Complex Multi-Media Previous: Horus

Horus and Multi-Media

Advances in network technology make it possible for applications to present their functionality in a mixture of media like text, graphics, audio and video. A number of advances have been made in how to deal with the media distribution and dissemination aspects of multi-media systems, but as these applications are, conceptually, distributed, they benefit from using the distribution framework that Horus offers. In many cases, a large part of the complexity of a multi-media application is devoted to distributed control and collaboration mechanisms.

The Berkeley Video-On-Demand [5] service, for example, is able to greatly enhance its reliability in both availability and predictability by moving its media transport system into Horus and replacing its TCL/DP-basedgif control mechanism with some of the basic Horus blocks. We are converting this system to use Horus for all its distributed activities and it is one of the systems that we use for experiments in the NYNET NY-state-wide ATM environment. The Video-On-Demand system was built using the CM toolkit, which consists of a set of libraries implemented in C and TCL/DP. The system has three distinct parts:

  1. a collection of file servers that store video and audio data. The data can be striped over several servers by storing segments of a movie at different servers.
  2. a display server, responsible for receiving the data that comes from the file servers and displaying using the X-windows shared memory extensions.
  3. a VCR-style control application (cmplayer), controlling the flow of data from the file servers to the display server.

Using cmplayer, the user selects a movie from a configuration data base. The application will then, based on the configuration for that movie, request a data stream to be started between the display server and the file server that has the starting segment. When the segment is finished, cmplayer will ensure that the server with the next movie segment will start transmitting. The user has regular VCR controls to manipulate the data stream, and can control display speed and direction with a fine granularity. The control mechanism uses a logical time stamp (lts) mechanism, which is implemented as a TCL/DP distributed object.

Although the original system works, it needs improvements to the robustness and system control and management functionality. Progress in these areas has stalled because of the lack of an integrated approach to the distributed aspects of the system. By porting the system to Horus it is possible to make several of these improvements:

We are reaching the point where we can demonstrate this integrated functionality, and plan to make the resulting software available early in 1995.



next up previous
Next: Conclusion and ongoing Up: Support for Complex Multi-Media Previous: Horus



Robbert VanRenesse
Tue Dec 13 13:08:33 EST 1994