Archive for the ‘ Compression ’ Category

Apple H264 vs. MainConcept H264

This one doesn’t require much explanation.  Basic rule of thumb when you want your video to look good as H.264 – DON’T USE APPLE’S VERISON IN COMPRESSOR.  It sucks big time.  Most editors have several other options, but I’ve found the best in my toolkit is Adobe Media Encoder’s version of Main Concept’s H.264.

These are identical data rates of the same frame (approx 1mbps at 1080×1920).

Downloading Video with Firebug

Learn how to download video from websites that give you permission.


 
This is a tip that I received a couple of years ago from engineers at Justin.tv and I use it very frequently. The limitations are basically the big video sites. Those include ABC, Fox, Netflix, Youtube, Hulu, MTV, etc… Those sites are either streaming or mask the location of the served video. Either way it shouldn’t matter, because you don’t have a right to any of the programs on those sites.

This technique works particularly well with swf video players. The URL for the firefox add on is:


https://addons.mozilla.org/en-US/firefox/addon/firebug/

Netflix Splits DVD and Streaming to Create Qwikster

Today, in what was probably the worst time for Netflix, they announced they are creating a new brand to split their DVD and online streaming services.  This news comes right after users (like myself) have dealt with increased pricing and the loss of their major online content provider – Starz.

You can make judgements for yourself on the deal, but this continues to solidify my understanding of the near future – DVDs will be dead (and soon).  Netflix has kept their bread and butter, powerful brand name with the streaming service.  They have given an aging DVD platform a dot com bust name like Qwikster so that when it dies – it will have less association with its’ parent company.


I know, I know, everyone is up in arms with the price changes and the lack of current content.  I believe it is only a matter of a few months before Netflix streaming signs some other great deals to get premium shows again.  People forget that it was Starz that got greedy (not Netflix).  Netflix reportedly offered 300 million, which was 10x the original contract to Starz and then Starz rejected it.

Anyway, for me and my family – I will stick with Netflix until Starz runs out at the end of February 2012, and then play it by ear.  One thing is for certain – I will never sign up for DirecTV, Dish Network, or Comcast TV service ever again.

MediaInfo Mac – What were those specs?

One question I recieve weekly from producers is, “Can you just make a video deliverable like the other one?” – they continue on showing you an example that worked for the same client in the past.

There are lots of tools out there that can show you basic codec and frame rate information, but I have found MediaInfo Mac (now called Media Inspector on the app store) a life saver.  This is FAR more accurate than using command + i in quicktime player, or even looking at details in VLC or Mpeg Streamclip.  Whenever I need to know how somebody encoded a particular video I use MediaInfo Mac.

The new version that Diego Massanti is selling on the app store only costs $3, but I have found the older version also linked above to be awesome (and its free).  Give it a shot next time you get that question from a client or producer.

Compressing to the Perfect Web Resolution

In the video/film industry there are generally several ways to do things and they can get you a similar result.  Likewise, with compressing video for web you can make a video a lot of different sizes (resolution),  but in a technical and real world workflow there are right resolutions.

To make a long story short, mpeg (and most all modern compression codecs), use a shorthand to display image data (from 1′s, and 0′s) called macroblocks.  The largest of these macroblocks is 16 pixels wide by 16 pixels tall.  These macroblocks are very visible if you ever use your HDTV via an antenna to watch a broadcast that is not coming in all of the way.  You don’t see scrambled snow like the old days, you see the actual macroblocks scrambled up.

Ok enough boring background, in real world scenarios the reason using the following resolution below are the right video resolutions are two-fold.  This is because both the width and height are divisible by the size of a large macroblock (16×16).  And here are those reasons:

  • It is easiest for a processer to decode the compressed video
  • It is easiest for the codec to create a clean encoded video

All of this theory and practice comes from the fact that there are 8 bits in a byte since the creation of the personal computer.  You remember the time you bought a fancy 500GB hard drive and it wasn’t really 500GB? Same reason.  OK, so now you know why these resolutions are ideal – here they are:

16:9 Resolutions:

  • 256×144
  • 512×288
  • 768×432 (my favorite for general use)
  • 1024×576
  • 1280×720 (perfect for youtube uploads)

4:3 Resolutions:

  • 320×240
  • 640×480

Here is an example of what I mean by divisible by 16, using 768×432 as an example.  768/16=48 and 432/16=27 – both 48 and 27 are whole numbers and not a fraction, which means you would not be compromising part of a large macroblock to create that resolution video.

Hopefully this helps some people down the road.  There of course are times when you get silly requirements that you can’t do anything about, but when you can choose – always choose wisely.

Compressing Video for HTML5 – H.264 (Part 3)

This is the 3rd part and my favorite web delivery codec of all time – H.264!  H.264 will play happily in all Apple i-devices, Safari, Internet Explorer, and many others in the HTML5 protocol.  What is important to understand about H.264, is there are several flavors of it.  With my most recent testing last year, the open source version of X264 was by far the leader.  Other vendors include Apple (the worst by far), Dicas (not included anymore in current software), and Main Concept (Adobe Media Encoder, Episode).

What is so awesome about this is, the BEST VERSION OF H.264 IS FREE! You can usually find good recent builds of this in Handbrake, a lifesaver of a free DVD encoding tool, as well as in MyCometG3′s radical plugin.  You can download the plugin here:


http://www003.upp.so-net.ne.jp/mycometg3/

Yes, the website is ghetto, but the video output is amazing.  You quickly install the quicktime component into your library and can compress with X264 via quicktime pro and compressor.  A few of the great options available are:

  • ability to encode in high profile H.264
  • ability to encode in CABAC
  • and a check box to force 2.2 gamma on the video – (no more ‘corrections’ in compressors filters)

Ever since I was opened up to the world of this plugin, I never use anything else for my day to day compressions.  There are more options than any h.264 encoder on the market, and it is regularly updated to make it even better.  It rocks!

Compressing Video for HTML5 – Webm (Part 2)

Hopefully the part 1 post about HTML5 isn’t too long winded, but in reverence to your valuable time I will make this post short and to the point.  Webm is another video format that is used in HTML5 delivery.  Firefox 4.0 and Chrome are the players here.

The bad news here however is that there is not a good free option that I have found.  To create good Webm video I am using a software package known as “Episode” for the mac.  Version 6.1 is what I am currently running.  Episode is a great tool, but does come with a $500 price tag and with the advent of a freely available X264 quicktime plugin component available, I rarely use Episode aside from creating WEBM (aka VP8).

In the previous version of Episode, it only supported 25 or 30fps webm encodes.  This has since been fixed.

The video settings I use for making WEBm in Episode are:

  • 800-1400 kbps bit rate
  • check box for two-pass encoding
  • Forced keyframes every 240 frames (10 seconds)
  • Constant bit rate
  • Decode buffer time at 1 second
  • Maximum number of threads at 2

Compressing Video for HTML5 – Ogg Theora (Part 1)

Thankfully with the advent of ‘smart’ phones in everyone’s hands nowadays, I am no longer compressing video in tiny 3GP old school mpeg wrappers for mobile customers.  However, one big thing that I learned while creating compression profiles for ATT Media Mall and Verizon V-Cast back in the day was the appreciation of this constant compromise:

How do I make video look and play good  (or good enough) on so many cell phones or newly dubbed ‘devices’?

I thought I might be able to make some other editors and compressionist lives easier by doing a 3 part blog about encoding for today’s web browsers and what I use that works.  In the past few months we launched 2 fully capable HTML5 websites – one for Coke Zero’s Tron iPhone game and one for American Express’s new travel service called Nextpedition.

Well, going back to the question “how do i make video look and play good”, the answer now is – Make a lot of compressions and TEST. Don’t just watch them with one setting applied use several and see what is looking best for your edited show.  Current HTML5 sites need to supply 3 different video sources, those are:

  • Ogg Theora (to support Firefox)
  • Webm (to support Chrome, my favorite browser)
  • H.264 (to support everyone else, and by far the most advanced codec using X264)

Enough boring banter, here is how I am currently creating Ogg Theora video to supply my web developers for HTML5 sites.

  1. Create a scaled master in After Effects to the output resolution (for me lately this has been 512×288, although I’l like to lean more toward 768×432 in the future)
  2. Use Chris and Trish Meyer’s trick with unsharpen mask and composite CC to sharpen it up when possible
  3. Here is the catch – Export as Animation codec (the terminal tool won’t accept ProRes)
  4. Download ffmpeg2theora and install
  5. Open terminal on a mac
  6. type the following:  ”ffmpeg2theora -V 800 –soft-target –optimize –two-pass -a 3″ without the quotes, this is a good setting to use for a lower end server.  If you have a better server you can easily get away with setting the data rate (-V 1400) kbps and get a cleaner encode.
  7. this encodes a .ogv video at the same path as your source.  Test with VLC player.

Compressing Ogg Theora video for HTML5 from Chadwick Shoults on Vimeo.

Another useful tip is if you type in “man ffmpeg2theora” in the terminal, you will pull up the manual which is super helpful for understanding the options available.  If you are not so inclined to use terminal, there also is a quicktime component plugin from xiph that also creates usable Ogg video (just not as customizable and quality suffers a little).

Follow

Get every new post delivered to your Inbox.