By Michael Hurwicz
Flash MX, Macromedia's Flash authoring tool, creates a "rich client" browser, where "rich" means graphics, animation, video, and sound, as well as text and XML-formatted information. For now, however, two problems hinder most Web users from enjoying the rich client experience.
The first is bandwidth: CD-quality sound runs about 1mb per minute. Video varies depending on compressibility, but commonly requires multiple megabytes per minute. That's a lot for the still-typical 56Kbps modem connection. Many current Flash-heavy sites are too "rich" for 56Kbps.
The second problem is compatibility: It will probably be about a year before the Flash Player 6 browser plug-in, required for most new features, is widely installed.
|This image was created using the Flash MX drawing API with random curves.|
Still, neither of these difficulties will stop the show forever. The Web is moving in the rich-client direction, and Macro media is positioned to take advantage of it with robust technology, wide support in browsers, and no serious competition in its core territory of Web animation.
New Flash MX features include video (previously available only in products like Wildform Flix-see pg. 12), the loading of external sounds and JPGs at runtime, components, and scriptable graphics and masks.
Flash MX allows you to import standard video formats such as AVI, MOV, MPEG, or QuickTime, and scale, rotate, skew, mask, and animate the resulting video object, as well as make it interactive using scripting. The Sorenson Spark Basic video codec in Flash MX only does constant bit rate (CBR) encoding. CBR is less desirable than variable bit rate (VBR) encoding, which adds extra compression to frames whose contents are more compressible. Add-ons like the Sorenson Spark Pro codec ($299) or Wildform's Flix 2.1 ($129) can provide VBR.
With built-in video support, many developers can consider Flash as an alternative to Macromedia Director for some kiosk and CD ROM projects. Un for tunately, the bandwidth issue will delay the video revolution on the Web.
In Flash 5, you couldn't dynamically load a JPG or a sound file (e.g. WAV, AIFF, AU, MP3) at runtime. With Flash MX, you can dynamically load MP3s and JPGs (though not progressive JPGs). The dynamic MP3 loading runs into a problem with looping sounds, because most MP3 en coders add silence to the beginning or end of the sound file. Developers working in Flash MX report that the silence makes it difficult or impossible to loop the sound seamlessly. Flash corrects this when you import at author time.
In Flash 5, you also couldn't manipulate masks or create graphics through scripting. In Flash MX, you can script every graphic possible. This new approach to Flash artistry has demonstrated its aptitude for geometrical shapes, 3D, kaleidoscopic displays, and gracefully or wildly random lines and curves. Two drawbacks are that precise control requires math, usually trigonometry, and that performance and processor load can be limiting factors.
User interface components, such as scroll bars, combo boxes, and list boxes, are often among the most troublesome and time-consuming elements of a Flash development project. Flash MX now features a professional-strength component architecture and comes with a set of seven ready-to-use, full-featured UI components. You can download (for free) two other sets of components. This feature alone represents many person-years of highly skilled labor.
Many little improvements in the UI and the workflow cumulatively add up to significantly enhanced productivity. One example is the ActionScript editor, which lets you select a block of code and hit tab to indent the whole block. In Flash 5, this deleted the block, but indenting is a more standard and useful behavior.
Macromedia is also focusing on Web user interfaces and applications. In Flash MX, this is reflected in a more pervasive and solid object-oriented programming infrastructure; faster and more robust XML; and better scripting and debugging tools.
Still to come, in mid-2002: ColdFusion MX for dynamic content management; an application server gateway that will connect Flash MX clients to application servers based on Macromedia, .NET, and J2EE tech nology; and a Macromedia communications server enabling real-time communication features for Flash applications.
With so many new opportunities open ing up in video, math-based drawing, network applications, object-oriented user interfaces, and business applications, the biggest problem for the individual Flash practitioner may be deciding where to focus.
Michael Hurwicz is a writer and animator. He can be contacted at firstname.lastname@example.org.
Price: $499 list
Minimum System Requirements: 200MHz Pentium: Windows 98/NT/2000/SE/ME/XP. Power Macintosh, OS 9.1, Mac OS X 10.1.