All Articles Final Cut
Compressor: H.264 Profiles & Entropy Modes
Ben Balser on Sat, September 6th 3 comments
Would you like to get the best results when encoding your video to H.264? Ben Balser shares his personal Apple Compressor workflow to make that a reality.

H.264 is pretty much a standard for web use.Yet encoding one of these files can be confusing. In this article I'll walk through the settings in Compressor and give you my personal recipe for getting the best results with a fairly small file size. But more importantly, I'll touch on some of the more esoteric settings that get overlooked. Although I will keep things very simple in this article, as the subject matter can get quite complex and mathematical.

What is H.264

H.264 is probably the most common video encoding type you'll find on the Internet today, especially with the popularity of HTML5. H.264 is not one single codec, it is a family of standards, that together are commonly recognized and readable by a wide range of hardware and software. It is made up a lot of complex variables. But for this article, know that H.264 only saves the data of each video frame for things that in that frame which are different from all the other video frames in that frame's Group-Of-Picture. So how does it fill in all of the missing data between so many frames? With Profiles and Entropy Modes.

Pic 1

What Are Profiles

The H.264 standard defines Profiles; 21 well outlined sets of capabilities. These capabilities are defined in various ways for specific types, or classes of applications. These optimize compression and decompression settings to meet the needs for specific things such as video conferencing, or internet broadcast, local area network transmission, Blu Ray optical media, or formats such as interlace or progressive, various chroma sampling ratios, and on and on.

Profile Options in Compressor

Compressor offers us the choice of 3 commonly used profiles for H.264. These are somewhat easy to differentiate between, if my explanation isn't too technical.

The Baseline Profile targets video conferencing and mobile phone use, situations where super highly compressed data needs to be sent with a lot of lost data packets, which need to be corrected for very quickly, using few resources. It only supports CALVC entropy mode, explained later.

The Main Profile was created for standard definition TV transmission over analog lines. High definition H.264 encoding schemes came along about 2004, since Main Profile has lower transmission overhead.

The High Profile was developed for Blu-Ray and high definition television broadcasting. It is a digital format, not transmitted over analog cable, but over digital cable systems.

Ben's Recipe:

I use Baseline for things with little movement (a talking head). I use High when I need the best quality I can get, sacrificing file size, and download/buffering time during playback.

Pic 2

What are Entropy Modes

An Entropy Mode is hard to define easily, but I'll give it a shot. The first bits of data that go into an encoder/decoder piece of hardware/software process are the Entropy coded signals. Thus, H.264 is entropy coding based. Basically, it compensates for the parts of H.264 compression that rely on the missing parts of data in each video frame, literally guessing what will happen next. Of the three entropy modes, there are two available to us in Compressor. The third, VLC, is not commonly used for our purposes.

Pic 3

Entropy Modes In Compressor

CABAC stands for context-sensitive binary arithmetic coding. This method uses a more highly complex algorithm to maintain image quality, thus takes more computer power to process and decode than CAVLC. It will support single/multi-pass encoding.

CAVLC stands for context-adaptive variable-length coding. This uses an algorithm much less complex than CABAC. Yet it is more modern and more efficient than the earlier CABAC entropy design. It only supports multi-pass encoding.

Ben's Recipe Note:

I always use CAVLC, since I like that it is more efficient and compatible across the board than CABAC. Unless I have a talking head, then CABAC single-pass is faster to export.

Pic 4


Profiles and Entropy Modes confuse a lot of editors. A very basic understanding of them will suffice in most situations. Transcoding is always a balancing act between speed and image quality. So for speed, go with a Baseline Profile using single-pass encoding. For quality, go with a High Profile and CAVLC Entropy Mode, using multi-pass encoding. It really does boil down to something as simple as a recipe. Of course, there are situations where more advanced and complex encoding decisions must be made, but I'll leave that up to the high end transcoding professionals.

Related Videos
Comments (3)

You must be logged in to comment.

  • Big Daddy
    Ben, I'm rendering out of FCPX to Apple Compressor and when I usually have a CABAC option, in this particular project I don't. Why would that be?
    • 6 years ago
    • By: Big Daddy
  • BenB
    What preset did you apply to start with? If you start with Built-In > Video Sharing Services > HD 720p (or pretty much any of them), you'll have plenty of choices. Inspector > Video Quicktime Settings, should be set to H.264 (multi or single pass), you should have both entropy modes available. I'm testing, no issue here. You can email me directly (benb at balser dot com) with a screen shot, I can answer your question in more detail.
    • 6 years ago
    • By: BenB
  • AMF2502
    When I record voiceover on FCP version 6.01 running on iMac i7, the result is either fast motion or slow motion. Do you know why. Never seen this before. Thanks.
    • 6 years ago
    • By: AMF2502
Transcoding Explored
Dream It. Do It.
Do you want to learn Transcoding Explored?
Yes, I want to learn!
No Thanks, I just want to read the article.
Course Advisor
Don't Know Where To Start?
Ask A Course Advisor
Ask Us!
Copy the link below and paste it into an email, forum, or Facebook to share this with your friends.
Make money when you share our links
Become a Affiliate!
The current affiliate rate is: 50%
Classes Start Next Week!
Live 8-week Online Certification Classes for: