Tuesday, November 15, 2011

Video Codecs 101

If you work in video compression, this has happened to you:

Someone asks what kind of work you do.  Maybe it's your aunt, or your dentist, or that nice girl you've started dating.  Now you're trapped.  Your only choices are (1) a long string of jargon that nobody wants to hear and makes folks sorry they asked, or (2) "I work with computers."

The problem is simple: most people don't know what video compression is, and you can't talk about it until they do.

What if you had a simple, three-minute animated video that explains the whole thing?  What if you could show it from your phone — right now, right there in the dentist's chair?  Now you can: Video Codecs 101.

Video Codecs 101

One video didn't seem like enough, so we made a second one that picks up where Video Codecs 101 leaves off.  After all, now that your dentist and your 10-year old niece are so smart about codecs, they'll want to know more.  So, how about another two minutes or so about what the WebM Project is doing to make video on the web faster, simpler and easier?

WebM: A Video Codec for the Web

We hope you find these videos fun and useful — and that they make your life a little easier, now that your friends finally know what you do. Enjoy.

You can learn more about WebM and even contribute to its success at webmproject.org.

Lou Quillio is Webmaster for the WebM Project.

Friday, November 11, 2011

Time of Dragonflies

Today, we are releasing the fourth generation of the Hantro H-Series 1 VP8 Hardware Encoder, developed under working title Dragonfly.

With the H1 v4 release we are offering the world’s best real-time VP8 video encoding of up to 1080p in mobile. It delivers an average PSNR improvement of 0.27 dB over the previous generation and produces higher quality video than any of our previous RTL designs.

The fourth version’s major improvements reducing the bitrate required for great video quality include:
- the usage of bicubic filter in motion estimation and reconstruction phases
- additional candidates in macroblock mode selection
- improved rate-distortion optimization in macroblock mode selection

The following figure compares the Dragonfly SSIM performance with the previous VP8 releases. One of our previous products, the 8290 H.264 hardware encoder, is also shown as a reference.

H1 Encoder SSIM comparison, Foreman CIF sequence at 200 kbps.

The visual comparison below shows how the level of preserved details increases with each new encoder release.

Foreman CIF sequence at 200 kbps.

Top-left: H1 v1, top-right: H1 v2, bottom-left: H1 v3, bottom-right: H1 v4.

H1 encoder helps users enjoy more hours1 of high-definition WebM video applications, such as those utilizing the open source WebRTC framework that allows free browser to browser video chat capability. For example, in battery operated devices like tablets, smartphones or netbooks, 1080p 30fps encoding with H1 requires less than 3 MHz of CPU cycles and 76 mW of power, while such a feat using the quad-core ARM Cortex A9 would take 2.3 GHz per core draining your battery at a rate of 3700 milliwatts 2.

H-Series 1 VP8 encoder as well as the silicon-proven G-Series 1 VP8 decoder, are available at no cost to chip manufacturers from the WebM Project’s hardware page. Our reseller partner Verisilicon also licenses the VP8 encoder as a part of the multi-format (VP8/H.264/MVC/JPEG) Hantro H1 encoder and offers support and maintenance service for the free VP8 cores.

In total, over 50 semiconductor companies have licensed the VP8 technology today. The first devices with 1080p VP8 decoding are today in the consumer market from nearly a dozen different brands (see example here), and the first chips capable of VP8 encoding will ship in 2012.

In our next release, we are focusing on speed improvements and silicon cost reduction, as well as adding new pre-processing and error resilience functionality to the encoder. We intend to implement new software and hardware algorithms to allow both objective and visual quality optimizations. The next release is planned for early Q1 next year.

Aki Kuusela is Engineering Manager of the WebM Project hardware team.

1 Using a typical smartphone battery of 1500 mAh at the operating voltage of 3.5V, the H1 v4 encoder can theoretically encode 1080p video for 69 hours without charging the device.
2 Power consumption of the H1 encoder logic measured with the TSMC65nm LP process. SRAM or external RAM not included. ARM Cortex A9 CPU load measured using the libvpx Cayuga release on a quad-core ARM CA9 development board. Power consumption figure based on a 0.4 mW / MHz / core estimate.