|
I just got through a "first read" of Robert Reinhardt's Flash CS3 Professional Video Studio Techniques. I know I will be returning to it often. I recommend it to any budding-and-beyond Flash videographers out there.
There
is a good chance you already know about Robert: He's been a highly
visible figure on the Flash scene for the last eight years or so, as
the lead author of the Flash Bible series and the Flash ActionScript Bible,
and a frequent speaker at industry events like FlashForward,
FlashintheCan, and SIGGRAPH. He also maintains the Flash resource site,
FlashSupport.com. (In fact, one of the cool things about buying one of Robert's books is that it comes with a support forum on FlashSupport.com,
where you may find answers to questions pertaining to to the book. If
not, post your question, and Robert himself will likely answer it, if
he's not too busy being VP of the Multimedia Platforms Group at Schematic.)
In Flash CS3 Professional Video Studio Techniques,
Robert provides a nice balance of conceptual background and hands-on
step-by-step instructions, fundamentals and more advanced material.
The
book sets out to provide soup-to-nuts guidance on deploying video on
the Web using Flash, and does an excellent job, within the limits of
350 or so pages. It goes light on the process of actually creating the
video -- planning, selecting a video format and camera, and so on. It
provides brief but useful step-by-step instructions on capturing video
using Premiere Pro, and using After Effects to perform operations such
as color temperature correction, color correction, deinterlacing, and
noise removal. Also concise but potentially very helpful is the
discussion of the strengths, weaknesses and best uses of Sorenson Spark
and ON VP6 compression. There is also a ten-page section on delivery
and deployment options, such as embedded video vs. external video, live
streaming vs. prerecorded video, and the trade-offs in using a Web
Server, Flash Media Server (FMS) or Content Deliver Network (CDN).
All
of the above is presented in a practical and hands-on fashion -- not as
theoretical background, but as basic advice about what you should do,
depending on your particular needs and situation. For example, live
streaming with Flash Media Server prevents video from being cached to
the user's local disk, making it harder to steal the content. On the
down side, many corporate networks block the Real Time Messaging
Protocol (RTMP) used by FMS, so users on those networks can't play your
videos. How that trade-off plays out for you depends on the audience
you're trying to reach and your need to protect your intellectual
property.
All
of this introductory information takes up about a quarter of the book
(75 pages). There's nothing terribly unique or original about it, nor
does it attempt to go into any great depth on the topics it addresses.
But it does provide a good, solid, objective orientation to the world
of Flash video deployment. I predict most readers will feel a lot
clearer-headed after reading these 75 pages than, say, after hours of
cruising the net browsing similar information, much of which is
provided either by companies trying to get you to buy whatever it is
they are selling, or by high-level geeks providing detailed, in-depth
answers to questions you may not need to ask.
The
meat of the book is using the Flash authoring environment (and, to a
lesser extent, other Adobe products such as After Effects and
Dreamweaver, as well as third-party software such as SWFObject) to
deliver a smooth, trouble-free video experience. The author takes a
"laddered" approach, starting with the simplest and least flexible
deployment methods and working up to increasingly complex and adaptable
ones.
He
starts with using Dreamweaver to insert an FLV file in an HTML page.
This procedure, which can be performed through Dreamweaver's graphical
user interface and requires no coding, is explained in step-by-step
detail in about two pages. So, if you're a code-shy Dreamweaver user
with an FLV file that needed to be on the Web yesterday, go to page 79,
and you should be happy in about five minutes.
Of
course, your happiness may be short-lived if you read on to page 82,
where the author lists the disadvantages associated with the deployment
method you just implemented. No problem, though. He also offers a
better solution: SWFObject,
an open-source JavaScript library created by Geoff Stearns, and
offering advantages such as convenient specification of Flash movie
attributes in a single JavaScript code block in your HTML file, easy
Flash Player version detection, and improved search engine
compatibility. Unlike the Dreamweaver approach, you do have to edit
some JavaScript. Still, in just a couple of pages, the author tells you
everything you need to know to get up and running with SWFObject, not
to mention integrating Adobe's ExpressInstall to prompt users to
upgrade to the latest Flash Player version, if they don't already have
it installed in their browser.
That's
two straightforward ways of getting your FLV video online, and you
haven't even cracked open the Flash authoring environment yet.
That
comes next, in the section on playing video with Flash CS3 components.
This gets a little more involved, largely because the author offers
several different approaches, depending on factors such as 1) which
Flash Player version(s) you need to support and 2) whether you want to
"drag and drop" components to the Stage, or instantiate them
dynamically at run time using ActionScript. This is pretty much
standard throughout the rest of the book: The author demonstrates
several ways to accomplish the same goal -- for instance, an approach
that requires Flash Player 9 and one or more other approaches that can
support Flash Players going back as far as version 6. The Flash Player
9 approach requires ActionScript 3 (either "under the hood" in
components that you use, or as code that you write), while the other
approaches use ActionScript 2. Having multiple examples is particularly
useful if you want to support several different approaches on your
site, or if you are transitioning from one approach to another -- for
instance, if you've been using Flash Player 8 and ActionScript 2 and
want to move to Flash Player 9 and ActionScript 3.
The
book deals extensively with cue points (markers in the video that can
be used for navigation or for triggering events such as captions). Cue
points can be created either when encoding the FLV file (using software
such as the Flash CS3 Video Encoder, Sorenson Squeeze or Flix Pro), or
at run time using ActionScript. The book goes into all this in some
detail, including a sample application on the DVD that accompanies the
book.
The
next step in the "ladder" beyond using components is implementing a
video player from scratch using ActionScript. As usual, the book shows
how to do this with both ActionScript 2 and ActionScript 3. Advantages
of the ActionScript-centric approach include smaller file size
(potentially as small and as 1KB, compared to 32KB for a component) and
more flexibility in customizing the player. The requirement, of course,
is a higher comfort level with ActionScript.
The
"Production Essentials" section of the book finishes with a discussion
of bit rate detection and supporting multiple bit rates, to provide an
optimal experience to both high bandwidth and low bandwidth clients.
Specifically, the goal is to offer a stellar experience to high
bandwidth clients, while lower bandwidth clients can still have a
smooth and reliable experience. The approach demonstrated uses SMIL, an XML based format designed for describing audiovisual presentations.
Also
demonstrated is "dual buffering", a technique that involves setting an
initial low value for the video buffer time, so that the user
experiences a quick start when clicking the "Play" button, and then
setting the buffer time to a higher value after playback has started,
so that the user continues to to experience smooth video playback even
if the flow of bits across the Internet is momentarily interrupted for
some reason. There's a substantial amount of ActionScript coding
involved here, so if you need either or both of these features
(multiple bit rates and dual buffering) -- and the SMIL approach to
multiple bit rates gives you what you need -- this chapter can save you
a lot of time.
The
rest of the book (other than appendices) is devoted to "creative
explorations" -- four sample applications, which you can adapt and
customize for your needs (or perhaps even use as is). The applications
are: 1) building a video index and playlist, 2) constructing banner ads
and captioned videos, 3) constructing an interactive video host (where
the video content "responds" to user clicks) and 4) an application
demonstrating "progressive enhancement" techniques aimed at insuring
that all clients can access basic content, while those with more
advanced browsers, later versions of the Flash Player, or higher
bandwidth connections, can have an enhanced experience. This last
application is the one most likely to be usable "out of the box", just
by substituting your video for the one in the sample application. If
you want "progressive enhancement" for your site (and I would think it
would be highly desirable for most Flash sites open to the general
public) then this chapter alone is probably worth the price of the book.
All
in all, this is a valuable book, especially for those looking to push
their Flash sites to professional levels of reliability and
user-friendliness. I give it five cows.
     
Practical,
expert advice on Flash-based video deployment, from quick and easy
solutions to more sophisticated, reliable and adaptable ones. Five Cows.
Michael
Hurwicz
|
|