My research interests are in developing tools and algorithms for multimedia and continuous media systems and applications. My research group is developing a toolkit for building distributed multimedia applications that are portable, scalable, and fault-tolerant. Researchers and applications programmers construct systems by using tools from the kit to build their applications. This strategy is similar to what has been used for graphical user interface toolkits. The toolkit is being used to develop a distributed continuous media file server and playback application, which will be used to develop advanced multimedia applications and serve as a basis for study communication, storage, and processing algorithms for multimedia data.
I am also exploring algorithms for high performance software processing of compressed audio and video data. Included in this class of studies are methods for computing transition effects on motion-jpeg compressed video data and transcoding between mpeg, motion-jpeg, and H.261 encodings without decompression. The algorithms are novel because they process compressed video data without decompressing it. This technique not only eliminates time consuming decompression/compression, it also reduces the volume of data, allowing the data to be processed in software at video data rates.
Finally, I am developing a new programming language, Rivl (pronounced "rival"), in which images and video are first-class data types. Image and video operators are resolution independent: Rivl programs are well defined regardless of whether the video is quicktime (thumbnail size at 10 frames/second) or HDTV quality (large format at 30 frames/second). The Rivl interpreter maps the operators in a Rivl program into the underlying pixel manipulations, analogous to the way programming languages map floating point operations into the underlying bit manipulations. For image and video processing, Rivl is not only easier to use than traditional languages, it is also more efficient. The Rivl runtime system optimizes image and video calculations, exploiting common sub-expressions and operator composition for increased speed of computation and quality of results. Rivl is currently implemented as an extension to the Tcl/Tk language. We are extending Rivl to run on workstation clusters, building a video editor in Rivl, and adding audio as a data type to the language.
If you have questions or comments please contact: firstname.lastname@example.org.