faculty.gif (20410 bytes)
choices.gif (4488 bytes)

Brian Smith

Assistant Professor

PhD UC Berkeley, 1994

My research is aimed at developing tools and techniques for bringing multimedia data into the computing environment, with the goal of making computing with video as easy as computing with text and numbers.

My research this last year focused on programming language support for building processing-intensive multimedia applications. We developed a library, called Dali, that allows programmers to easily write high performance processing-intensive multimedia applications. The functions and abstractions in Dali allow

brian.tif (84338 bytes)
programmers to concisely write programs that process multimedia data, but whose performance is competitive with hand-tuned C code. For example, an MPEG decoder written using Dali is 150 lines long and 10% faster than the Berkeley MPEG player.

We used Dali to build the Lecture Browser, which has three main goals:

1. Automatically construct high-quality interactive multimedia documents from a lecture or presentation, providing a "rich" viewing experience.

2. Provide content-based access to these documents, via mechanisms such as a table of contents and a full-text index.

3. Accomplish the first two goals without requiring lecturers to appreciably change their style of presentation.

We equipped a large lecture hall at Cornell with two computer controlled cameras. One camera automatically tracks the lecturer while the other provides an overview of the stage. The camera data is automatically captured and encoded using MPEG. The captured data is then indexed using electronic masters of the slides and combined to form an edited presentation that can be viewed over the Web. The resulting presentation contains synchronized audio, video, and slides, and is indexed by time and slide number. The system is fully automatic_the only requirements are that the lecturer must start the system and provide it with electronic masters of the slides. A demo of the Lecture Browser can be seen at http://www.cs.cornell.edu/demo


Fellow, Alfred P. Sloan Foundation, 1997-1998

Professional Activities

Associate Program Chair: ACM Multimedia 97, Seattle, WA Nov., 1997; SPIE Multimedia Computing and Networking 98, San Jose, CA, Feb. 1998; IEEE Multimedia 97, Austin, TX, July 1997.


  • High performance tools for multimedia data processing. Computer Science, SUNY Buffalo, NY, Feb. 25, 1998.

  • ___. Computer Science, Univ. Illinois, Urbana-Champaign, IL, Feb. 28, 1998.

  • ___. Computer Science, Univ. Michigan, Ann Arbor, MI, Feb. 18, 1998.

  • ___. Computer Science, Univ. Utah, Salt Lake City, UT, Jan. 29, 1998.

  • A toolkit for multimedia processing. Keynote address, IDMS 97, Darmstadt, Germany, Sept. 1997.


  • Compressed domain transcoding of MPEG. Proc. IEEE Multimedia 98, Austin, TX (July 1998) (with S. Acharya).

  • An experiment to characterize videos stored on the web. Proc. Multimedia Computing and Networking (MMCN'98), San Jose, CA (Jan 1998) (with S. Acharya).

  • Motion and feature based video metamorphosis. Proc. ACM Multimedia 97, Seattle, WA (Nov. 1997) (with R. Szewczyk, A. Ferencz, and H. Andrews).

  • Jacl: A Tcl implementation in Java. Proc. Fifth Ann. Tcl/TkWorkshop, Boston, MA (July 14-17, 1997) (with I. Lam).

Software Publications

  • Dali, a high-performance multimedia processing system, http://www.cs.cornell.edu/dali/

  • Teki, a Tcl extension installer, http://www/zeno/projects/TEKI/

  • Jacl, A Tcl interpreter written in Java, http://sunscript.sun.com/java/