This article was provided by Jan Ozer, the chief instructor at StreamingLearningCenter.com.
If I were to take a long-term view of the successive Creative Suite (CS) releases from San Jose, Calif.-based Adobe Systems, I would equate them to a product created a bit further north in Napa Valley. As you may recall, for most Windows-based users, CS3 was a bit thin—Mac compatibility was the most prominent new feature. At some point, seemingly late in the game, it felt like Adobe measured the value of CS3 for Windows users, decided it was weak, and bought Serious Magic so it could throw OnLocation (then DV Rack) into the suite.
In contrast, CS4 was very robust and full-bodied. Not only did Adobe deliver AVCHD support, it also extended Dynamic Link from Premiere Pro to Encore, so you didn’t have to render between editing and authoring, which was a huge timesaver. Adobe also debuted Adobe Media Encoder, a competent and easy-to-use batch encoding utility. Throw in lots of smaller but highly useful improvements—such as multiple sequences with different parameters in Premiere Pro, one-to-many edits in Premiere Pro (i.e., the ability to apply one filter to multiple clips simultaneously), multitrack capability in Soundbooth, a new interface for OnLocation, and many others—and you had a true vintage release.
Where does CS5 sit in this continuum of good years and relatively inconsequential ones? As I sit here playing with one of the late-stage betas, the story has yet to be completely written because the final performance numbers are not in. At a high level, however, CS5 has two main focuses: performance—specifically the Mercury Engine and GPU acceleration—and script-to-screen metadata workflow. Since performance affects all producers, let’s start there. Just to let you know, I focused my attention on Premiere Pro and Adobe Media Encoder (and, to a lesser extent, Encore) since these are the apps that I use and know the most. If you’re looking for extensive information about Photoshop, After Effects, Flash, or any other CS5 component, you’ll have to look elsewhere unfortunately.
As you may have heard, several programs within CS5 (but not all programs) are now 64-bit applications that only run on 64-bit systems. These include Premiere Pro, After Effects, and Adobe Media Encoder, but not Soundbooth or Encore. I don’t think the fact that all components are not 64-bit is significant since 32-bit apps run fine on 64-bit systems. I just wanted to be clear on this point.
Leveraging the new 64-bit architecture, the most significant performance boost in Premiere Pro comes from the new Mercury Engine, which combines 64-bit native code with enhanced memory optimization and multithreaded efficiency. If you happen to have a supported NVIDIA graphics card and apply GPU-accelerated effects, the Mercury Engine will also use the CUDA GPU to accelerate preview and rendering out to Adobe Media Encoder, though not compressing to your final format. New in Premiere Pro CS5 are small icons beside the effects that tell you if they’re GPU-accelerated and whether they operate in 32-bit color space or YUV. In Figure 1 (below), you see the Fast Color Corrector, an accelerated effect, applied to an AVCHD clip on the timeline.
You can also see the yellow bar just beneath the timescale. This tells you that the effect is GPU-accelerated and that any effect will be rendered in real time. If I clicked the Enter (or Return) key to render the effect, it would start to play immediately; no rendering required. In CS4, previewing 1 minute of color-corrected AVCHD footage took 58 seconds of rendering; in CS5 it’s instantaneous. In addition, if I exported the sequence to the Adobe Media Encoder (AME) to compress to final format, say MPEG-2-compatible DVD, the GPU would apply the effect to the video clip before handing the frames off to AME. The GPU would also deinterlace the video and perform any scaling, further reducing the load on the CPU and speeding the process. In previous versions, Premiere Pro would have to render the color correction, deinterlace and scale in software using only the CPU, and then hand the frames over to AME for encoding to MPEG-2. To be painfully clear, the conversion to MPEG-2 isn’t accelerated by the GPU, only the application of the Fast Color Corrector effect and the scaling and deinterlacing. Still, in certain projects with certain effects applied, the reduction in overall processing time can be staggering.
For example, the test project shown in Figure 1 was an actual single-camera AVCHD shoot. As you can see in Table 1 (below) (the Laura project, third project from the bottom), on the 12-core HP Z800, CS4 took 36:23 (min:sec) to render the 53- minute source file to MPEG-2 using Premiere Pro’s NTSC Widescreen HQ preset, while CS5 took 14:31, a reduction of 60%. When producing H.264 for uploading to YouTube, the timesavings was even more dramatic, a reduction of 86%.
I asked an Adobe rep about the performance boost, and in addition to the Mercury Engine and GPU acceleration, he attributed some of the performance boost to a new H.264 codec from Main Concept, which should accelerate both AVCHD and H.264 output from Digital SLRs such as the Canon EOS 7D. I confirmed this with a real-world test involving footage from the 7D. Specifically, in the Beth Audition project (second from the bottom in Table 1), I shot a ballet audition for a local dancer that ended up being a little more than 21 minutes long, a conglomeration of about 13 single-camera takes. I applied no color correction or other effects, but rendering to widescreen MPEG-2 for the DVD took 84:45 in CS4 and an astounding 3:57 in CS5. A quick glance at Windows Task Manager explained why: While CS4 struggled to achieve 15% utilization on my 12-core Z800 (24 cores with HyperThreaded Technology enabled, as in the figure), CS5 bounced between 90% and 100% utilization (Figure 2, below).
As you can see in Table 1 (above(), the picture isn’t totally rosy; in particular, the Nutcracker project, which CS4 rendered in 39:02, now takes 69:05, and several DV source projects slowed as well. Adobe attributes the longer rendering times to higher quality, but slower scaling algorithms. But I was working with beta code, so there’s a chance that these performance numbers could change before shipping. I’ll rerun the tests once I get final code and will update the results here if there’s any change.
Here are a couple of other performance-related housekeeping details I would like to cover before I move on: First, GPU acceleration only applies to a limited set of NVIDIA graphics cards, including the Quadro FX 3800 (about $800 street price), Quadro FX 4800 ( about $1,600 street), Quadro FX 5800 (about $3,000 street), and GeForce GTX 285 (about $400). I used the FX 4800 in my test computer. Note that performance will vary with the card and that the GTX 285 will deliver much less functionality than any of the Quadro cards. I should also tell you that this is the first time I’ve seen the graphics card decision possibly dramatically impacting editing performance, so you should choose your graphics card wisely going forward. More on this later.
Second, plan on configuring your system with copious amounts of RAM to achieve these performance boosts. One of the benefits of 64-bit operation is the ability for individual programs to use RAM in excess of the 4GB 32-bit limit. During several test encodes, I noticed that Premiere Pro, or PProHeadless, the program that renders Premiere Pro projects when the namesake program isn’t running, grabbed as much as 13GB of working room. You can see PProHeadless consuming 10.2GB in Figure 3 (below). I’m sure the magic number varies by format and project type. But to be safe, you probably need at least 16GB of RAM for HD formats, perhaps even the 24GB that I had configured in my Z800.
The bottom line is that if you install CS5 on a minimally configured 64-bit system—say, 6GB of memory and an ATI graphics card—you probably won’t see any of the performance benefits detailed here. If you have a beast like the 12-core Z800 (see my In the Studio review in April’s issue) with 24GB of RAM and the Quadro 4800, and work with H.264- based formats, prepare to be staggered by the new release.
In addition to rendering times, GPU acceleration also improves the frame rate of your previews. To be clear, this applies primarily when using GPU-accelerated effects, and your mileage will vary based upon source footage and project configuration. I ran some tests on the Canon EOS 7D project, which I color-corrected slightly and added a title. As you can see in Figure 4 (below), with CUDA acceleration (NVIDIA calls the current incarnation of its GPU acceleration CUDA), the CPU load to display this clip was 12.43%. With CUDA acceleration disabled, the CPU load was about 58%.
If I had disabled color correction and didn’t use a title, CUDA acceleration would provide little benefit. That said, how often do you edit a clip without at least some color correction or a title? In addition to color correction, there are 31 GPU-accelerated effects, including brightness and contrast, gamma correction, cropping, color balance, basic 3D, and Gaussian blur. CUDA will also accelerate motion, opacity, deinterlacing and many compositing effects, including titles. Most producers who preview frequently will see an immediate increase in productivity.
Another nice addition to Premiere Pro is the integration of chromakey tool Ultra, which started life as a stand-alone tool at Serious Magic. I’ve used the same four chromakey test clips for several years now, and Ultra made short work of three of them, including my much younger self shown in Figure 5 (below). This was a pretty crude chromakey clip shot solely with overhead lighting, but Ultra did a great job removing the green.
With the three successful clips, operation was simple, at least at first. You apply the effect then click the Key Color eyedropper and choose the background color; Ultra does its best to completely remove it. If you have to tweak the results, as you probably will, be prepared to roll up your sleeves and start experimenting. Between you, me, and the nearest Taco Bell, I wish Adobe would standardize the language on tools like these. For example, to expand the range of color eliminated with the old Color Key effect, you adjust Color Tolerance. Increasing tolerance expands the range eliminated, generally removing any background residue, which is a simple enough concept to understand.
With Ultra, you adjust … well, you just try all the tools until you find one that works. There’s Matte Generation, Matte Cleanup, Spill Suppression, and Color Correction, each with unique adjustments. There was a tolerance adjustment in Matte Generation, but that didn’t have the same effect as the Color Key and proved to be of no help.
Ultimately, with the three successful test clips, adjusting the contrast of the Matte Cleanup did the trick, which was hardly intuitive (at least to me), but then I didn’t have the Help file available when I did my tests. Spill Suppression also worked differently from how it’s presented in After Effects, which was also confusing. Basically, I just wanted some kind of “Easy” button, and there wasn’t one. What about the fourth clip? This is a very challenging clip in the Red format, which I downloaded from some forgotten website long ago. With this clip, I produced clearly superior results in After Effects using the third-party Keylight filter, which has been my goto workflow for chromakey effects for quite some time.
Still, it’s all good: Ultra is faster to apply, should work most of the time, and is a GPUaccelerated effect that previews in real time, which the Keylight plug-in can’t match. Start by applying Ultra; if that doesn’t work, you can always try the Keylight plug-in, which Adobe continues to bundle in CS5.
SCRIPT-TO-SCREEN METADATA WORKFLOW
CS5 also debuts Adobe’s script-to-screen workflow, which starts with Adobe Story, a script development tool that’s offered as part of a new product suite called CS Online Services. It’s separate from CS5, but it’s free for now and integrates well with OnLocation. Specifically, you write your script in Adobe Story, including location, character-related information, and the dialogue itself. You then export the script from Story and import it into OnLocation, where you can create a place-holder shot list to direct your shoot. You can see the script-related information in OnLocation in the metadata panel to the right of Figure 6 (below) and the shot list on the bottom.
If you have a camera attached to your computer at the shoot, you can record your video directly to disk as before. If you’re working with an unattached camcorder, you can now time stamp your shots in OnLocation and later automatically link them to the captured clips. The schema uses time stamps on the video clips to match the OnLocation place holders, so you have to sync camera and computer time, which you can do at the shoot or just before importing the clips into OnLocation. You can even link clips from multiple camera shoots. As before, you can add comments during or after the shoot (good shot, bad shot, reshoot, take 1, take 8) that get stored in with the rest of the metadata.
Once you link the clips in OnLocation, you can set In and Out points and then import the clips into Premiere Pro, with metadata and In and Out points intact. There, you can search for footage based upon the dialogue or set In and Out points for your rough cut based upon the script. Though I didn’t test this, the metadata can be incorporated into Flash productions produced in Encore, which makes your video files searchable.
Obviously, this workflow is primarily targeted toward those producing script-based projects, but it could speed up some documentary-style event work as well. If you’re shooting with a camera with an IEEE 1394 connector, you can also use OnLocation for its waveform and histogram functions, which for me, are still its most valuable features.
CS5 has some other goodies worth noting, including presets for DSLRs such as the Canon EOS series and presets for Canon’s new 50Mbps XF MPEG-2 format (Figure 7, below), which is making its debut in a handheld camcorder at NAB 2010.
Running through other programs in the Premiere Pro suite, Adobe Media Encoder (AME) now automatically starts when an encoding job is added, which enhances its utility when used with a watch folder. With CS4, you had to manually start encoding after files were added to the queue, so it wasn’t a true automated solution. AME CS5 sports an encoding preview window on the bottom right, which helps you monitor the progress of your encodes and catch any egregious errors (Figure 8, below).
Adobe also added some “match source attribute” settings that make it easy to encode to a format that matches your source footage. Unfortunately, Adobe no longer displays the resolution of the source and encoded file, information that I’ve found useful over many an encode. Finally, befitting the script-to-screen workflow discussed earlier, there’s now a metadata button in AME that you can use to add or access your metadata before final encoding.
FLASH FOR DUMMIES
Though my primary focus is the upgrades to Premiere Pro, Encore, Adobe Media Encoder, and Soundbooth, one great new addition to the suite that I’d be remiss not to mention is the Flash Catalyst, which I dubbed “Flash for Dummies” at the Adobe Editor’s Day presentation to resounding silence and stony looks. Hmph. Some folks just can’t take a joke. Here’s the back story, though: I’ve never been particularly facile with Flash, but Flash CS3 had a wizard that allowed me to quickly create a very simple player like the one shown in Figure 9 (below). The wizard was gone in CS4, and I kept one CS3 installation around specifically to produce simple Flash Players.
Though Flash Catalyst doesn’t have a wizard, you can quickly create a new project with an “artboard.” To do so, import a video file in FLV or F4V format, which automatically loads the required player. Make sure the artboard and player fit reasonably well, and then publish the project, including all the required components. All of this should take 5 minutes or less—you know, Flash for Dummies. I don’t do this every day, but sometimes I need a simple player to show a client a draft copy of a production or to add a video file to my website that I don’t want to display through Vimeo. I’m sure Flash Catalyst does much, much more. But if you just need to create a simple player, it’s a great tool to have.
So what’s the overall verdict on Adobe Production Premium CS5? If you have the computing horsepower, the Mercury Engine and CUDA acceleration deliver the closest that I’ve seen to the real-time, all-the-time experience we’ve been hearing about and waiting for since the last century. AVCHD and DSLR producers in particular could see absolutely shocking drops in preview and rendering time.
I should also say that I’ve been running the suite through a pretty grueling test bed of eight real-world projects and nine synthetic projects assembled just to test performance with specific formats or functions.
Looking back, I can’t remember a single crash of any component, which is just as impressive as the performance boosts. As with fine wines, you hate to judge a software program at the time of its release because major problems sometimes only appear after a few months in the field. With CS5, though, the exceptional combination of performance and stability makes me pretty confident that it’s going to be another vintage release for Adobe— perhaps the best one yet.
Jan Ozer (janozer at doceo.com) is a frequent contributor to industry magazines and websites on digital video-related topics. He is chief instructor at StreamingLearningCenter.com.