NCSA Home
Contact Us | Intranet | Search

Tuesday, October 7, 2003

Introduction to Egg & Malti

NCSA Seminar Series
Experimental Technologies Division Staff
John Martirano, NCSA
1:00 pm - 2:00 pm CDT
Room E102A, SRP Building Z, 1901 S. First St., Champaign, IL

This talk is an introduction to some of the application infrastructure and tools being developed by the Experimental Technologies Division at NCSA. The Egg is a C++ application infrastructure. Malti, which is built on Egg, is a multi-channel media processing and transport framework. Virtual Director 2, an animation package also built on Egg and utilizing Malti will be breifly discussed in the context of Egg.

Egg

The Egg library is a small framework originally created as a dynamic dependency graph tool for Virtual Director 2, an animation package. The purpose was to allow the application user to modify all aspects of an animation's "actors", including the ability to link some aspect of one actor to another, such as linking an object and a camera to produce a follow cam. Or you could link the color of an object to the loudness of the computer's sound input. The underlying Egg framework enables the programmer to create such objects, and open up the parameters to the end-user. Egg also provides: command support with a plain-text interpreter, undo support, reference counted memory management, preliminary support for persistence, and primitive networking. The current development is geared towards finishing persistence, binding Egg to Python, and improving the API.

Malti

Malti is a multi-layered communications infrastructure which has been chiefly utilized for its real-time multi-channel media processing and transport layers. The transport layer abstracts RTP, UDP and TCP transport mechanisms to simplify application integration. The application layer allows multi-channel real-time media processing applications to be built by linking together modules into graph structures (The application layer is similar to D2K in this respect). Malti was recently redesigned on top of the Egg library in order to benefit from the object oriented infrastructure and enable better integration with Virtual Director efforts.

If you have questions concerning this seminar, please contact training@ncsa.uiuc.edu.