Icon

Interactive QuickTime Authoring, Part 2

iShell, therefore iAm

Welcome to Part 2 of our Interactive QuickTime Authoring series (as I now belatedly realize the title already told you). From now until we just don't feel like doing it anymore, we're going to spotlight various programs from various vendors that use QuickTime in some way or other to help developers author their interactive projects. With that as the stated goal, we're not going to get as down and dirty as we might in an actual product review; indeed, the very fact that we're including programs in this veritable cattle call means that they inherently have something to offer in this area. So, as promised in our introduction piece to this series, we're going to summarize for you what each one does, how each uses QuickTime, and where to go for more information. The idea is to pass along information for you, the reader, to be able to perform the ultimate evaluation as to whether any would be useful in your particular workflow. First up on the list is TribeWorks' iShell.

What It Does

I must admit that before February of this year I had never even heard of iShell, what with me being wrapped up in the Director cocoon for so many years and all. And while I'm in the sharing mood, I can't even recall how I stumbled upon Tribeworks' multimedia production program in the first place, which I'm sure is a very helpful statement as far as Tribeworks' sales and marketing people are concerned. My personal brain lapses notwithstanding, at the time, it only took about five minutes of reading up on iShell at Tribeworks' web site before I had registered as a member (for free), downloaded a non-commercial version of iShell, had fired it up and was learning how to use it. The relative ease by which I got started as an Tribeworks member and iShell user speaks to the ease of actually being able to quickly develop powerful multimedia projects with iShell itself, but I'm getting ahead of myself.

So what is iShell? iShell, which by the time you read this should stand at version 3.0, is a powerful, yet simple and very complete multimedia authoring program for either online or offline projects. By Tribeworks' own admission, "iShell competes with Macromedia Director and Authorware, but promises much faster development times and more stable end results." Bold statement, but after taking iShell 2.5 (initially) and the new version 3 (recently) for a spin, I was not at all disappointed. iShell is a very viable Director alternative not only in its own right, but especially so for those who may be looking for most of Director's features without 1) Director's learning curve and 2) Director's (sometimes prohibitively) expensive cross-platform authoring and publishing scheme.

iShell offers one of the most intuitive and easy-to-learn-and-use interfaces I've ever seen in a multimedia authoring program (and I'm dating myself by including HyperCard), but it also boasts a lot of advanced features. As the name suggests, an iShell project is constructed around shells or containers. Each image, movie, text document, etc. is defined as an element, and can either be the root of a container or an element of another container (fig. 1). In fact, the root document itself is nothing more than a box container that holds other containers. Each container can "talk" to all the elements in its own container as well as other containers and their component elements as well. This approach makes project organization very simple (fig. 2), and Macromedia Flash users will quickly become comfortable with this way of working, since it's very similar to the Movie Clip concept that Flash uses. Furthermore, an iShell project can reference any number of iShell documents, each with its own hierarchy of containers, meaning that iShell easily handles very large and branching projects without the developer getting bogged down in a project management nightmare.


Figure 1: Containers are what iShell is all about. Here we have a background image serving as a container for another empty container that holds my project's interface images.


Figure 2: The container metaphor means your projects are easily organized as outlines, as shown here.

What's more, Tribeworks' promise of extremely rapid development is dead-on accurate. There are several reasons for this: one, the extensive use of drag-and-drop throughout the program makes it a snap to swap out instances of elements, add actions, and assign interactivity (fig. 3). Two, just about everything you would want to do to add interactivity to your projects has been thought of as a series of events and commands (fig. 4) and provided as drag-and-drop behaviors, meaning it's very possible to create an extremely complex interactive project without writing a single lick of code anywhere. Third, iShell doesn't actually embed the media files in the iShell document, opting instead to refer to the media files as either local or web-based URLs. So at any point during production, or even after production for web-based projects, you can easily work on your media files so asset creation is completely independent of the authoring process. Finally, the shell-based interface means you can create pretty complex containers that can serve as templates throughout your project. Duplicate a container, swap out a couple of things, and you're set. To test this out myself, I re-created a pretty complex segment from a CD ROM I did last year in Director entirely in iShell. As I recall, writing the Lingo scripts in Director as reusable behaviors to handle the image, text, Flash, and QuickTime elements switching themselves in and out of the scene took the better part of a week. The same process took less than 90 minutes in iShell. Try it out for yourself, and you'll see what I mean.


Figure 3: Here I'm dragging an image into the URL field of an element I'm switching out. iShell has extensive drag-and-drop functionality, making not only changes, but overall development very fast.


Figure 4: A sample of some of iShell's drag-and-drop Events and Commands.

How It Uses QuickTime

Since this is, after all, a series about interactive QuickTime authoring, I suppose we should figure out where our old buddy QuickTime fits into the iShell picture. iShell uses QuickTime in three primary ways. Whereas a program like Director has its own home-grown file type importers, iShell uses QuickTime as the "engine" by which it understands file types to import. Anything QuickTime can open is anything iShell can open, from .mov files to QTVR panoramas to Flash movies to all the various still image types QuickTime understands, and as QuickTime's abilities are upgraded, by extension, so are iShell's. Second, iShell relies on the various QuickTime filters for its effects engine. Need a crossfade effect? No problem, since QuickTime effects includes one (fig. 5). Third, iShell provides commands to access the various tracks QuickTime files are apt to have embedded in them (fig. 6), meaning you can author complex QuickTime movies in external programs like LiveStage Professional (which we'll be spotlighting next, incidentally), bring them into iShell, and have elements in your iShell project interact with tracks in the QuickTime movie.


Figure 5: iShell uses QuickTime's built-in effects for transitions and filters.


Figure 6: You have full access to whatever tracks your QuickTime files contain; in this case, QTVR nodes.

So what does all this mean? Well, first, while iShell does make extensive use of QuickTime to do what it does. iShell doesn't actually provide a nice and neat QuickTime .mov file as the end product. iShell is actually two programs, the Editor and the Runtime (fig. 7). During the authoring process, the iShell Editor acts as the "traffic cop," telling its own internal Key language how to talk to the QuickTime content. When it's time to run your multimedia program, the iShell project files (which, incidentally, are now standard XML files as of version 3, opening up a whole can of worms as far as potential for data-driven projects go) are read and interpreted by the iShell Runtime program. And while the media used in iShell projects can be entirely web-based if you'd like, there is no iShell browser plug-in, meaning every iShell project must be distributed with the project files and the platform-specific iShell Runtime in order to work. In practice, this isn't really a big deal, since iShell includes a CD Launcher program that packages up the runtime along with the QuickTime installer to provide a seamless installation and run sequence for your users.


Figure 7: The two applications that make up iShell.

So Now What?

Whether you're new to multimedia or a seasoned pro, iShell definitely has something to offer, and I highly recommend giving it a serious look. The commercial version of iShell 3 is available now for Mac OS X, OS 9, and Windows. Tribeworks has several membership tiers, ranging from free non-commercial use to several levels of commercial and educational membership, some subscription-based, some not. In all tiers, you get both the Mac and Windows versions of the Editor and the Runtime, meaning you can pick your authoring platform of choice and distribute to just about anybody without rewriting any of your project.

I also have to mention the customer service Tribeworks provides. Way before I ever contacted them in a journalistic capacity to showcase iShell for this series, I was just a peon free member, evaluating whether iShell would be a good product to add to the arsenal. Out of the blue, a Tribeworks representative called me personally just to check and see if I needed any help in getting up and running. Some may consider this intrusive telemarketing, but there wasn't any push for me to plop down money, so in this case I saw it as good, proactive customer service. Tribeworks also has a dedicated community of developers and maintains web boards for users, which as I saw personally are a fantastic developer resource. All the way around, iShell is a great product, and as far as this particular feature goes, a fantastic way to develop interactive projects using QuickTime.

NEXT TIME - Part 3: Is LiveStage Professional Totally Hip?

^ Top of Page

Got Feedback? to send an email. I'll do my best to answer. Really.