What can you do with Xical?
With Xical you can produce web-based slide shows, tutorials, tests and whatever else you can think of that can make use of integrated rich media, such as audio (speech and music), video, animations or interactive visual diagrams and the likes.
You can also use Xical to make distributable presentations that run locally. So you can use Xical just like you would use any other media rich presentation application. In fact, Xical offers a solid base of mechanisims and framework for exactly that. It's just extended with caching mechanisims to ensure near simular presentation expierience, regardless whether you use Xical over the web or just locally, on a computer with no connection to a network.
How does Xical work?
The Xical player is a small Flash/ActionScript application. As of now, the time of it's first stable release into the public (April 2004), it's roughly 60 to 100 KB in size, depending on what features and visual components you want to be integrated. Since Xical is aimed to become everyone's prime choice for flexible and media rich presentations, web-based or not, it's size shouldn't vary or grow to much in future releases.
Here's how it works: Once the Xical player is started, it loads a small XML init file with a certain set of basic options that tell the Xical player stuff like where the main Xical document lies and where to find the directories containing the external media files, such as sounds, pictures and animations.
It then loads the main Xical XML document - which is basically the center of all of Xicals activities that the author of a Xical preresentation wants to control. This main document then is scanned by Xical for references to external files, scene headlines, scene numbers and other rough-grained data. Links to external media components are internally assigned to load lists and enhanced caching algorithims and then loaded and cached by Xical in the order in which they will appear in the Xical presentation. All this happens independently of the presentation itself, thus providing a seamless, streaming-like presentation.
The Xical caching algorithm, which is another big part of what Xical is all about, does a whole lot of things to ensure optimal use of bandwidth, such as avoiding the double-loading of dupes. Let's say, for instance, a tune that is played both at the start and the end of a presentation and thus is referenced at the start and the end of the main Xical document, is loaded only once the first time it is called and then kept in cache for any other occasions it may be needed.