May 12, 2008

Cinema Craft Encoder MP Plug-In for Compressor 3
Sneak Peak
The Cinema Craft Encoder MP
Requirements: Compressor 3, OS 10.5 and higher, Intel Mac.
Recommended: Mac Pro with 4 Gigs of RAM for SD, 8 Gigs for HD

By Brian Gary

The Cinema Craft line of encoders set the bar within the entertainment industry for Standard Definition DVD, MPEG-2 compression and then once again with AVC/H.264 High Definition encoding for Blu-ray discs. Their résumé of SD titles is quite impressive: The Lord of the Rings: Return of the King, Spiderman 3, King Kong, Pirates of the Caribbean, the list goes on... And their résumé for Blu-ray titles is equally impressive with the benchmark for Blu-ray encoding, Ratatouille at the top of the list. Until now, these high-end, Hollywood quality encoders have been contained within expensive, PC-centric boxes that were targeted for production houses and the studios themselves.

The release of Cinema Craft Encoder MP changes all that.

For the first time the Cinema Craft Xtream software encoding engine is available outside of its proprietary, online system as a Compressor 3 plug-in. This is the same Standard Definition encoding engine that produced the titles previously listed; the same software encoder that is the benchmark for quality within Hollywood. And equally important is the fact that you can now use this software encoding engine as a plug-in right alongside your other encoding presets within Compressor.

Before we go any further, let's take a moment to discuss the difference between a full Compressor plug-in and a QuickTime Component. A full plug-in, like Cinema Craft Encoder MP or Episode Pro takes full advantage of all Compressor's functions: Frame Controls, Geometry Settings, Filters, etc. On the other hand, QuickTime Components Flip4Mac, On2 Flix ) are limited to Compressor's basic encoding management and filters; they do not have access to Frame Controls and Geometry settings. In other words, Compressor treats full plug-ins, like Cinema Craft Encoder MP, just as any of the stock Apple presets.

So this begs the question..."OK, Compressor treats the Cinema Craft Encoder MP plug-in just like the stock presets, but doesn't Compressor already ship with MPEG-2 encoding presets? Why would you need another one?"

In terms of quality, all encoders, regardless of the flavor, rely entirely on the algorithms on which they are based, meaning the math that governs the compression process--what's discarded versus what remains. Hardware--sheer processing brute force--determines the encoding speed. Therefore, you could have high quality compression that takes forever to encode and poor quality that zips right along. Cinema Craft's Xtream encoder is an online system with both software and hardware tuned to do one thing: encode SD MPEG-2 video assets--that's it. So, it encodes high quality video in real time. With the Cinema Craft Encoder MP Compressor plug-in you have the same Xtream software-based encoding engine (the algorithms that govern quality) within your Final Cut Studio 2 system.

Compressor's native MPEG-2 produces very good results, especially since the total rewrite of the codec, back in Compressor version 2.0.2. It's no secret that I'm a big fan of Compressor: I've written the Quick Reference Guides, produced the Ripple Training videos and written lots of articles and posts, but I can still be objective. The Cinema Craft MPEG-2 encoding engine is far superior to anything on the market available it should be. Meaning the entire company is based on creating excellent encoding results for some of the most demanding clients on the planet: Hollywood studios. Therefore, if your goal is to produce the highest quality SD MPEG-2 encodes that your source video will allow, then the Cinema Craft Encoder MP Compressor plug-in is for you.

What makes the Cinema Craft Xtream engine so good? Well, if you go to the Cinema Craft Encoder MP page it lists a series of impressive technical attributes that are part of the engine, ergo part of the plug-in. Unfortunately, for most people these terms don't mean a, let's break them down:

AAQM (Advanced Adaptive Quantize Matrix)

What it means.
Before tackling the "Advanced" part, let's discuss the concept of quantization. All lossy compression schemes, whether they are JPEG stills, DV, or MPEG-2 video, all need a system to reduce the amount of information required to display the image or stream. Quantization, very simply put, is a process of taking a string of values and reducing them down into a single value. For example, compressing a range of possible red values across a rose petal into a single color value that interprets the range.

It's also important to understand that engineers don't create these compression schemes in a vacuum. They are using the strengths of computational power and the limitations of human perception to their advantage. Meaning, human beings perceive external stimulus only within certain frequencies: we hear only certain ranges of sound, see only certain ranges of light etc. Therefore it makes sense to proportionally discard what we either don't perceive at all or only partially perceive. Using an example from the audio world, why carry the data overhead of a dog whistle in a recording when no one will ever hear it.

Quantization can be represented as a grid across the image (or frame of video)... hence the quantize matrix. Now, here's where the big-brain math enters: by assigning a common value (a coefficient) to a frequency range, you can then rank and weight the ranges based on how the eye perceives them. For example, humans are generally good at perceiving shifts in luminance, but not as good at perceiving the exact intensity--this is brighter than that, but exactly how bright is the brighter one? Good question. If you really want your brain to burst, then take the red pill and read this wiki about DCT coefficients (Discrete Cosine Transform).

Now, here's where it all comes together in MPEG-2: the encoder analyzes the video frame and assigns the range of visible frequencies via the quantize matrix. Then, it divides the values in the matrix by the common coefficients (DCT) for each frequency component. In many cases this value, when rounded to the nearest integer, is zero and in many other instances the value is greatly reduced--in both cases, compressed. So in the end, the frame is represented by a compressed set of data that the human eye hopefully doesn't perceive as missing any essential visual information.

Why it matters
Most software-based encoders utilize a finite set of coefficients across the entire source media. This isn't that big a deal if the entire project is very similar, a fairly static interview for example. But, unfortunately that's not very realistic because most projects contain content that varies in terms of motion, lighting, color etc. across the movie. So, this is where both the "Advanced" and "Adaptive" parts of the AAQM enter. The Cinema Craft Xtream encoding engine varies the dynamic range of the coefficient (quantization scale) automatically, depending on its analysis of the source media and it can perform this adjustment down to the level of each and every GOP (Group of Pictures). In practice then, the Cinema Craft Encoder MP plug-in will create a quantize matrix with reduced values for simple scenes with lower motion and reduced change between frames, and then create a matrix with higher values for more complex scenes with greater picture variation. And it will continually perform this function across the entire source media during each pass.

This is extremely important because the quantizing function of any encoder cuts to the core of its performance. The quantizing capability and sophistication governs how the encoder determines what to keep and what to throw away of the source media: in simplest terms, how to compress the video. Therefore the better an encoder quantizes, the better output it produces. The Xtream encoding engine is constantly adapting and conforming to the source media, therefore it's far superior compared to other encoders that do not employ this level of analysis.

AAGS (Advanced Adaptive GOP Structure)

What it means.
The encoder automatically adjusts the GOP (Group of Pictures) size within the stream based on the source media.

Why it matters.
This lets the encoder analyze the motion content of the scenes within the sequence and either shorten or lengthen the GOP accordingly, specifically adjusting the frequency of B frames between the I and P frames. Most software-based encoders apply the same basic GOP size across the source media: for example, 7 frame GOP or 15 frame GOP (until an I frame is forced). Again, this is one more way that the Xtream encoding engine refines compression across the entire media and intelligently adapts and adjusts the encoding based on the source media instead of using cookie-cutter templates and forcing the source media into them.

VMPE (Virtual Multi-Pass Encoding)

What it means
During each of the physical encoding passes where media is written or cached to disc, the encoder performs up to eight virtual passes as well. The information and calculations gathered during these virtual passes are held in memory during the course of the physical pass and are used to even further refine the encoding process.

Why it matters.
As the encoder manages the finite amount of bits available across the entire movie it's also managing the correlation between the bit rate and the overall compression (distortion) level. This is most important during scene changes or abrupt picture shifts. Therefore, by utilizing these virtual passes, the Xtream encoding engine can more finely tune the picture stability from frame to frame, especially across a scene change. Since the data isn't being written out to disc, these virtual passes do not increase encoding times. Additionally, during each of the these virtual passes within the physical passes, the encoder is continually refining the AAQM and AAGS.

Multi-Pass Encoding (Up to 99)

What it means.
It's common to see "Multi-Pass VBR" encoding as an MPEG-2 compression mode. In fact when most MPEG-2 encoders say "multi-pass" what they really mean is "two-pass." This means the encoder will first do an analysis pass of the entire source media, and then conduct a more informed compression pass the second time around. This allows the encoder to more efficiently manage and budget the bits across the entire movie. The Xtreme encoding engine will allow the user to define up to 99 passes of the source media during the encoding process.

Why it matters.
First and foremost, the more times the encoder analyzes the source media the better output movies it will produce because it will continually refine its compression plan with each consecutive pass. In reality will you use 99 passes? No. But you will see great advantage by allowing the encoder to process the source media five to ten times. Fortunately, this consecutive process is not a factor, meaning if you do ten passes it does NOT take ten times longer to process then one pass. Think of the overall encoding process as a pyramid with a wide base at the bottom narrowing to a point at the top. The wide base is that first analysis pass the Xtream encoder will take, with each successive pass represented by the narrowing levels of the pyramid. Therefore adding passes will not significantly increase the encoding time relative to the added quality gained by the multiple looks. Here's a real world example: I took a 2:30 scene from a feature film shot in DVCPro HD and encoded it using the Cinema Craft Encoder MP plug-in within Compressor on a Quad Mac Pro. A two-pass encode took 1:45 to process and a four-pass encode took 2:20 to process. As you can see the first pass carries most of the water back from the well. And both passes were faster than real time.

All of this encoding wizardry produces a Compressor plug-in that's based on high-level engineering and expert application of the MPEG-2 codec--as it should be, because that's Cinema Craft's core focus. That's what they do and they lead an industry in that regard.

The plug-in will be available in late May 2008 and will retail for $795. When you purchase the software you'll also receive a hardware key (dongle). Installing the plug-in is quite simple.

The first step is to install the HASP (dongle) software, by launching the HDD_Installer_MaxOSX image. Follow the steps for installation then connect the dongle via USB. Next, install the plug-in itself by launching the Cinema Craft Encoder MP package and then following the installation instructions. The installer will place the plug-in in the following directory: Library > Application Support > Apple QMaster. Using the plug-in is just as simple. Launch Compressor and from the Settings window click the Create a New Setting pop-up menu and then choose Cinema Craft Encoder MP from the list.

This will create a new custom setting in the Custom folder. Select the new CCE-MP setting to load it into the Inspector and then click the Encoder button.

The lower field displays a summary of the current CCE-MP, MPEG-2 encoder settings. The default settings employ a single-pass, CBR, 4:3 encode at 29.97fps. You can change the default settings by clicking the Options button.

CCE-MP presents the Templates window first, where you set the basic output settings. Just like Compressor in general, you're always defining targets based on the nature of the output media and that's the case with the left and middle columns of this window. The right column, on the other hand references the source media. So for example, if you want to create a NTSC DVD that has Video source media, then you would choose the above settings. But let's say your source is Film, then you'd select that option in the right column. If your destination is a PAL disc, then select that choice in the left column. And so on... The File Extension field by default displays "mpv" as the extension for the output media. You can change this to "m2v" if you prefer; DVD Studio Pro accepts both as valid extensions for authoring. Click OK to commit the settings.

This will take you back to the Compressor window where you'll need to click "Options" again to see the template's settings. If you chose: NTSC, DVD, Video, then you'll see this window.

For most 29.97, NTSC projects though, I'd change the settings to match these:

Changing the mode from Constant to Variable places values in the "min" and "max" Bitrate fields. For most video up to 90 minutes (bound for a DVD5) these are good Bitrate settings--obviously you'll have to experiment with your unique footage accordingly. You can also reference Ken's Bit Budget spreadsheet for more complex projects. Variable Bitrate is a more efficient use of the MPEG-2 data stream versus a Constant Bitrate because it lets the encoder allocate more data to complex sections and less data to simple sections of the source media. The field next to Variable is called the Bitrate Constancy Value; in this example it's set to "30." This is an interesting tweak to the variable bitrate that CCE-MP allows. The value in this field controls whether the variable bitrate behaves more like a CBR or more like a full VBR. CCE-MP assigns a value of 100 to CBR and a value of zero to full VBR with 99 levels in between. Therefore, if you place 100 in this field, even though you have a variable bitrate encode selected, the output media would in reality become CBR (based on the value set in the "avg" field). Conversely a value of zero would create a fully variable stream that uses the full range between minimum and maximum values. Cinema Craft says that a value of 30 is the sweet spot, basically creating a mostly variable stream. Think of it as trimming the sails on a boat, tightening the line to the wind, but still leaving enough slack for the sail to fill.

We discussed Multi-Pass earlier--you can go up to 99--but there is one more feature to discuss. Even if you place a value of one in the field, CCE-MP will, in reality, perform two passes. The plug-in always performs an analysis pass of the source media. So, if you place four in the field, CCE-MP will pass through the media a total of five times.

Enabling Stuffing Bits keeps the CCE-MP plug-in from being, well, too crafty. If the encoder decides that it needs fewer than the minimum allocated bits for a certain section, Stuffing Bits, ensures that the encoder will always use at least the minimum bitrate setting when compressing the source media. The Aspect Ratio radio buttons will apply the proper flags to the output movie, so choose according to your source media.

Lastly, the "Advanced" and "Compromise" buttons open two separate windows that offer settings that allow you to address very specific and isolated issues that may arise during DVD authoring. In reality, most users will never have to alter any of these settings so it's best to only change something in response to a specific need or issue.

For example, in the "Advanced" window you can set an option to force an I frame at the last frame of the output movie. You may want to do this when creating DVD motion menus and the goal is avoiding any distortion as one motion menu transitions to another menu or movie--the last frame will be a full I frame instead of a B frame. Again, that's an isolated situation that requires a specific option not addressed by the normal encoding settings.

Always click OK to the commit the changes in any of these windows. The summary field on the Encoder pane will update with the new settings.

You can apply the custom CCE-MP settings just like any other setting within Compressor.

If you need to adjust any of the settings for a custom CCE-MP preset, just load it into the Inspector and click the Options button; the settings window will then open (the Templates window only opens the first time for each custom CCE-MP preset). You can also create as many CCE-MP custom settings as needed, just repeat the steps above.

Most of my tests were performed on a Quad Mac Pro with eight gigs of RAM running 10.5.2 with all of the latest Final Cut Studio 2 dot releases. In almost all the cases, the Cinema Craft Encoder MP plug-in produced speed results faster than real time. The plug-in is multi-processor/core aware and it utilizes those resources very well.

All eight cores were utilized between 70% and 90% max usage during encoding.

In addition to the output media, CCE-MP exports two additional files: a .vaf file that can be used by the techs at Cinema Craft to troubleshoot any issues, and a log file of the full encode.

Here are some results from both my testing and those performed by Cinema Craft:

Durations are in minutes:seconds.

This article is a basic introduction to the Cinema Craft Encoder MP plug-in, but in future articles I'll go into all of the power-uses of the CCE-MP plug-in, for example:

The Cinema Craft Encoder MP plug-in is a huge step forward for professional, high quality MPEG-2 encoding on the Mac platform. Prior to its release, this level of encoding was only available via expensive hardware based solutions. It's very common to hear or see the question, "How do I get my DVDs to look like what Hollywood releases?" The question is answered in two parts: first, shoot and edit great looking content; and second, encode your video assets with the best possible compression utilities available. Hollywood uses Cinema, so can Final Cut Studio 2 users.

Award-winning director, writer, and producer, Brian Gary heads Flying Chaucer Films LLC in Los Angeles. Under that shingle, Gary has directed commercials for clients such as Verizon, Lucky Brand Jeans and Dow Jones./Reuters; independent feature films; television; and new media content. As a film producer, Gary's involvement includes independent fare like LOCAL COLOR and major release features like CLANDESTINE (the prequel to L.A. CONFIDENTIAL). He also actively produces content for television, video and the Internet. Rounding out Gary's multi-hyphenate approach to filmmaking is accomplished editor, where he has cut independent feature films, cable television shows for networks such as ESPN, commercial, industrial and new media/ interactive content. Also, in that vein, Brian Gary is a published author with the Apple Certified texts on Compressor and QuickTime and he produces Compressor related training content for Steve Martin's Ripple Training.


copyright © Brian Gary 2008

© 2000 -2008 Ken Stone. All rights reserved. Apple, the Apple logo, Final Cut Pro, Macintosh and Power Mac
are either registered trademarks or trademarks of Apple. Other company and product names may be trademarks of their respective owners.

All screen captures, images, and textual references are the property and trademark of their creators/owners/publishers.