There is a description of the research of the Berkeley Multimedia Research Group followed by their papers.
The Berkeley Multimedia Research Group is doing research on continuous media (CM) applications. Examples of continuous media are video and audio. The group does research on a variety of topics including: software toolkits to develop CM applications, software compression/decompression (e.g., MPEG, wavelet, etc.), and CM applications. Video-on-demand (VOD) servers and desktop video conferencing are examples of CM applications.
Our primary research goal is to build a large VOD server. The server will be a distributed system composed of a data- base server, one or more video file servers, and a tertiary storage server. The database server will manage a video database containing metadata and indexes about the continu- ous media data (e.g., content outlines, scripts, keyword indexes, etc.). Users will be able to query this database and play selected videos in a window on their display. Because video data requires a lot of space, they will be stored on a tertiary storage device (e.g., a tape jukebox) managed by the tertiary storage server. Videos will be copied to a video file server where they can be played by the user. The video database will track the location of data cached on different file servers and schedule the movement of data between the tertiary store and the file server(s). If a video the user wants to play is not available on a file server, he or she can enter a request to fetch it from the tertiary store. Our goal is to implement the browser on all major desktop platforms (e.g., Apple Macintosh, PC/Windows, and Unix workstations) and to support both local and wide area network access to the VODS system.
We have built a continuous media player (cmplayer, described in paper on toe.CS.Berkeley.EDU [128.32.149.117] in pub/multimedia/papers/CMPlayer.ps.Z here ) that plays audio and video stored on a file server. The current system supports three stream types: 1) motion JPEG, 2) MPEG video, and 3) Sparc audio format. Our intent is to distribute the CMPlayer system in the near future.
We have implemented and distributed a software decoder for MPEG video. That software and a paper describing it is available on toe.CS.Berkeley.EDU in pub/multimedia/mpeg and pub/multimedia/papers/Mpeg93.ps.Z. here This code has been ported to over 25 platforms including most Unix systems, PC's running DOS and Windows, and the Macintosh.
A key part of the cmplayer is the distributed architecture of the system. We have developed a process, called the Continuous Media X Server (CMX). The CMX server fetches/receives audio and video packets and synchronizes their play on the client either directly to the hardware (e.g., the audio DSP) or indirectly through the X Server. It is controlled by a user application and communicates with processes on a file server to fetch the CM data. Consequently, applications are inherently distributed. The CMX server and file system processes, called CM Source(s), include Tcl interpreters which simplified their design and implementation. The user applications, such as the cmplayer, is actually a Tcl/Tk program that controls video playback by communicating with the CMX server. We developed Tcl-DP to implement these processes and the com- munication protocols.
Our immediate goal is to create a VOD server at Berkeley that people can access over the Internet and play video. It will, of course, be lower quality due to the bandwidth limi- tations on the Internet, but you will be able to see and hear video we have digitized.
We recently distributed an MPEG video encoder. We have implemented the system so that it can be run in parallel on a network of workstations. We are currently doing experiments with the parallel system. We hope to complete and publish them by the end of 1993.