First Look: Apple Compressor 4.1
Apple introduced Compressor 4.1 in mid-December. I just spent four days with the tool, and I can’t synthesize the results. All I can offer is a series of observations that will transfer the knowledge that I’ve acquired, and hopefully, allow you to make your own decision about whether to buy or upgrade.
Here are the key observations in roughly the order presented in the review.
- Some users, including me, experienced some issues when installing and running the program, though I was able to get all of them resolved. Others weren’t so lucky; at the time of this writing, Compressor 4.1 had 14 five-star ratings on the App store, and 18 1-star. Most users either love it or hate it.
- Compressor 4.1 has enjoyed a major facelift, which makes the program much easier to use and much more accessible to users. Apple also enabled crucial H.264 options like the High profile and entropy encoding selection. On the other hand, the low-level plumbing hasn’t been completely refurbished; it’s still a 32-bit program that uses three different interfaces for producing H.264 files for Internet delivery. And you still can’t directly choose constant or variable bitrate encoding, which is a critical configuration option.
- Compressor 4.1 produces very good quality, much better than previous versions of Compressor. But how you get there is confusing; with some files, multiple-pass encoding, supposedly the highest quality option, was clearly inferior to single-pass encoding. With others, the opposite was true. So you may have to encode each file both ways to identify the best option.
- Apple removed the quirky QMaster from the program and added the ability to add Compressor instances within the program. However, if you check Activity Monitor you see processes named QMaster running; does that mean multiple instances will be just as quirky?
- Apple added “hardware-based” H.264 encoding, but you can’t tell whether your Mac supports it. In addition, hardware-based encoding doesn’t work if you enable multiple-pass encoding or if you’ve added Compressor instances. So in addition to testing whether single- or multiple-pass encoding produces better quality, you may have to test to see whether using multiple instances is faster than hardware-based encoding.
If I had to come down one way or the other I would say give it a shot; the extra quality may be worth it, and the new interface is quite nice. Just be prepared for a bumpy ride on install and when figuring out how to configure your encoding settings. Here's a quick video tour of Compressor 4.1
So, let’s begin. In this review, I’ll describe the new interface, and then discuss quality and performance. Note that I’ll be discussing only the standalone application, not its interaction with Final Cut Pro X. I also only tested streaming formats, not Blu-ray or DVD.
Getting Started with Compressor 4.1
Let me start by saying that my test computer is a circa 2009 MacPro with two 2.93 GHz Quad Core Xeons and 16 GB of RAM. This means that it has many older versions of Final Cut Pro and Compressor installed, and three versions of OSX. It’s about as far away from a clean install as you can get. Still, it’s a computer I use every day for writing (Microsoft Word, Adobe InDesign), creating presentations (PowerPoint), editing and authoring (Adobe Creative Suite), creating screencams (Techsmith Camtasia), and encoding (Adobe Media Encoder, Sorenson Squeeze, Telestream Episode) with very little muss or fuss.
I’m sure Compressor 4.1 is working fine for many, if not most users; unfortunately, I was not one of them. In my case, once installed, Compressor worked fine during the initial installation, but I rebooted, jobs wouldn’t start encoding, they just displayed a “waiting” notice, and refused to cancel. Then I started getting an “Unable to submit to queue” error message (Figure 1). Long story short, I had to uninstall using a free utility called FCS Remover (thank you Digital Rebellion), delete some folders in the user library and reinstall. Ultimately, this worked, though if you Google “Compressor 4.1” and “FCS Remover” you’ll find some posts that indicate that I was a lucky one.
Figure 1. Never a good sign, and this signalled the need to uninstall and reinstall.
During my testing, I occasionally experienced jobs that wouldn’t cancel, a seeming hangover from previous Compressor versions. One time I opened a previous version of Compressor while 4.1 was open. This proved to be a bad idea; not only did I experience jobs that wouldn’t run or cancel, but once I rebooted, all of my Compressor 4.1 settings were deleted.
In the end, program operation was very stable. Still, if you’re going to upgrade, I wouldn’t do it at a time when I had projects to deliver. And I wouldn’t do it without Googling “Compressor 4.1” and “FCS Remover” to get a feel for the problems that potentially lie ahead.
With this as prologue, let’s get to heart of the review.
The Shiny New Compressor Interface
Figure 2 shows the new interface. Up top are three buttons, Current, Active and Completed. The figure shows the Current view, which is where you create your presets, import your source files, choose your locations and create your batches. On the left side is the Settings and Locations pane, which you use to toggle between Settings and Locations. You can build a setting from scratch, or duplicate any built-in setting and customize that.
You make all modifications to settings in the Inspector pane on the right, which is currently inspecting the selected Job (CM2.mov). We’ll get a better look at the Inspector pane below, but it has only three panels (General, Video and Audio), so all the individual panes in previous versions are gone (and not missed at all). In the top center is the Preview area, with the Batch area below that.
Figure 2. Compressor’s new interface.(Click on image to see full-size version.)
The new workflow paradigm includes Settings, or encoding presets, Locations, which is where you save the encoded file, and Actions (on the bottom right of Figure 2), which are steps taken after the file is encoded and stored in the target location. There are also Destinations, which is where Compressor sends the file after the action. Figure 3 shows a close up of the Settings pane, where the top settings with the blue arrow are destinations, which include one or more settings, plus an action.
Figure 3. Settings and Destinations. (Click on image to see full-size version.)
To explain Destinations further, I’ve highlighted Create DVD in Figure 3. The two settings are for the audio and video elementary streams. The post encode action is to configure the menus, while the final destination is the DVD. When you drag a destination onto a source file, all you have to do is make sure you complete the settings and/or provide the necessary login information, and Compressor takes care of the rest. Operationally, it’s not much different than in previous versions, but it works better in some cases and is much easier to understand.
The basic encoding workflow is simple; you input either a single or multiple source files, either using menu or button commands or drag and drop, and then apply a setting or settings or destination or destinations. If you select multiple source files and then apply a setting or destination, the applied setting/destination applies to all selected files, which is very efficient. You can apply one or more video filters like text overlay, watermark, fade In/Out and gamma correction to your source files, as well as audio filters like fade in/out and a graphics equalizer. The preview window will show these effects as you add them, but doesn’t simulate the affects of your compression settings; to see those, you’ll actually have to encode. When you’re ready to start the batch, you click Start Batch on the lower right and off you go.
Once encoding starts, you can follow the action by clicking the Active button on top; Once encoding is finished, the batch is stored in the Completed view. If you’re running experiments, you can click a Reuse button in the Completed view and reload the source file and settings, make any adjustments and re-encode, which is often very useful to fine-tune your configurations.
Confusing Configuration Options
So far, so good, the new interface is very well thought out and highly usable. The problems appear when you start to dig beneath the surface. The biggest problem is that there are three interfaces used to create H.264 files for different deployments, which is confusing. Specifically, as with Compressor 4.07, there were three different interfaces for configuring the H.264 encoding parameters for files targeted for device playback (.m4v), QuickTime playback (.mov) and HTTP Live Streaming (.mp4), all with different terminology and controls. For example, for QuickTime playback, you controlled H.264 parameters in the QuickTime codec panel, for MP4, in the Inspector panel, for M4V, in the Inspector panel with completely different controls.
When producing MP4 files, you can directly change the H.264 profile, and the key frame interval was called, well, the key frame interval. When producing m4v files for devices, you can’t choose the profile, and the key frame interval is called Frame sync.
Figure 4. Compressor retains the three different interfaces for encoding H.264, which is unnecessarily confusing.
There are some improvements to the H.264 configuration options, including the ability to access the High profile for the first time, as well as entropy coding controls (CABAC vs. CAVLC), though strangely, CABAC is unavailable when you choose multi-pass encoding. Overall, however, Apple missed an opportunity to simplify producing H.264 for different outputs, and as a result, the program is more confusing that many of its competitors.
Confusing Quality Options
Things really started heading south for me when I started running quality tests. By way of background, you expect a learning curve when working with a new or substantially updated program, but in the end, you almost always “grok” the program, understand how it works and why, and produce generally consistent results. With Compressor 4.1, I didn’t get there.
By way of background, my biggest problem with previous versions of Compressor, multiple interfaces aside, was that the Apple H.264 codec was sub par. No problem, I simply installed the x264Encoder QuickTime plugin which works within Compressor to produce much better results. This still works in Compressor 4.1, though only when producing QuickTime files, not MP4 or M4V, which is a serious limitation.
Anyway, once I heard about the upgrade, my first question was how the quality compared to x.264. So, in Compressor 4.1, I encoded my standard 720p test file to 800 kbps video/128 kbps audio using the x264Encoder and Apple codec, producing the result shown in Figure 5, which showed no improvement.
Figure 5. x264 vs. the Apple codec; no contest.
During the first round of tests, I noticed that when I enabled multi-pass encoding, which Apple recommends for the best quality, entropy coding switched from CABAC, the higher-quality option, to CAVLC, which delivers lower quality but is easier to decode. In fact, you can’t use CABAC with multi-pass encoding; the option is grayed. So I decided to try single-pass encoding with CABAC enabled, producing the result shown in Figure 6. Here, single-pass CABAC encoding was vastly superior to multi-pass CAVLC, and almost (but not quite) as good as x264.
Figure 6. Single-pass CABAC vs. Multi-pass CAVLC.
I then tested the same scenario using MP4 output, and produced the same result; the single-pass CABAC file exhibited much higher quality than the multiple-pass CAVLC. I couldn’t run the same tests for the M4V file produced for podcasting because you can’t choose either the profile or entropy coding technique.
Companies and Suppliers Mentioned