Thursday, May 21, 2015

Talk: The Ultra HD Codecs - HEVC and VP9

I'm looking forward to giving this talk to broadcast professionals in Stornoway, Isle of Lewis, one of Scotland's beautiful Western Isles

The Ultra HD Codecs: HEVC and VP9
When: Friday 22nd May 2015, 11am
Where: MGAlba Studios, Seaforth Road, Stornoway

Like it or hate it, Ultra HD or 4K is making a big impact on the broadcast industry. 4K content has four times the number of pixels of full HD, making storing, transferring and streaming very demanding. This has significant implications for workflows.

The new HEVC/H.265 and VP9 video compression codecs are designed to help handle the challenges of UHD / 4K video. This talk will introduce you to these new codecs. You will learn:
- how the codecs compress and deliver 4K video
- what’s changed from older codecs such as H.264
- how the new codecs perform
- what software and hardware support is available.


If you are interested in arranging a specialist lecture on video coding or streaming technology, please get in touch.

Monday, April 27, 2015

The challenges facing a new codec

I was asked recently to comment on how easy or difficult it might be to introduce a new video compression codec. Here's a summary of my opinion - you can read the full article by John Moulding here.

At present, the market is dominated by standards-based and open source solutions, including H.264 / AVC, VP8, HEVC and VP9. What challenges might be faced by a new entrant to the market?

1. Interoperability: One of the key motivations for the development of standards has been interoperability. Streaming provider X needs to be compatible with playback client Y. Building a critical mass of support for a new codec requires widespread adoption of encoders and decoders that interoperate with each other.

2. Performance: The development of standards such as H.264 or HEVC involved rigorous and thorough testing using agreed protocols for measurement of quality, bitrate, computational requirements, etc. Performance testing needs to be repeatable, such that multiple organisations can check performance and reach the same conclusions.

3. Intellectual property: An open source or standardised solution provides a degree of transparency about who might own intellectual property that is used in a compression solution. For example, implementors of the H.264/AVC standard can take a license to several hundred patents that may be essential to the standard, via the MPEG-LA patent pool.

4. Hardware support: When you play back or stream a video on a consumer device such as a cellphone or tablet, the computationally intensive process of decoding video is assisted by dedicated hardware, enabling smoother playback and better battery life. Support for existing formats such as H.264 and VP8 is built in to chipsets, operating systems and protocols.

A new codec technology has to overcome many hurdles if it is to be widely adopted. However, I am always interested in genuinely new and disruptive approaches to video compression. Is there a challenger out there to the 25-year-old codec model that has been the basis of video compression standards from MPEG-1 to HEVC?

Thursday, December 11, 2014

Video compression - early history

Present day video codecs such as HEVC are based on fundamental concepts that go back a surprisingly long way. Key components such as motion compensated prediction, transform coding and entropy coding were developed in the decades before 1990.

I've written a short overview of the early days of video coding, when the building blocks were developed that would enable the emergence of mainstream digital video products in the 1990s. Click here to download the article, or download it from the Vcodex resources page here.

"En L'An 2000", early videophone concept, 1910

Friday, November 21, 2014

A nice example of 4K video encoded using VP9

Do you want to see 4K video in action? Phil Holland has put together a rather good demo clip, captured using a 6K RED camera and encoded using VP9 at 4K resolution (3840 x 2160 pixels).

The clip is 1 minute 55 seconds, 200MBytes in size, which works out at around 13Mbits per second. To view it for yourself, download the Zip file here, extract the .webm file from the Zip file, and drag it into a Chrome browser window. Of course, you'll need a 4K resolution monitor to get the full benefit and you may need a fast processor for smooth playback.

Monday, October 6, 2014

MPEG-LA releases its HEVC patent pool license

On 29th September 2014, licensing company MPEG LA LLC released details of a patent portfolio license covering technologies related to the new High Efficiency Video Coding (HEVC) standard.

Video coding or video compression is an essential technology for video broadcast, streaming and playback. Released in 2013, HEVC is the latest in a series of industry standards for video compression that offers higher performance than its predecessors.

The license grants certain rights to patents held by 23 organisations, which MPEG LA believes to be essential to the practice of the new standard. Under the terms of the license, licensees pay a royalty to MPEG LA for end user products over a certain threshold (currently 100,000 units per year).

MPEG LA lists a total of 55 patents in the HEVC pool (see Figure), including 22 Korean patents and 12 US patents. We can expect to see the number of patents rise over the coming months, as patent applications filed during the development of HEVC are granted.

Friday, September 5, 2014

How to stream better quality video: Part 3 - Ultra High Definition, 4K and next generation video codecs

4K or Ultra High Definition (UHD) video has four times the detail of 1080p full HD. How do you deliver such high resolution video to a TV or mobile device over a limited bandwidth connection? Next-generation video codecs may provide the answer. This article, part 3 of “How to stream better quality video”, gives an overview of two new video codecs: High Efficiency Video Coding (HEVC or H.265) and VP9.

The High Efficiency Video Coding standard

H.264 is widely used amongst broadcasters and in the online video streaming industry, but this may change with the introduction of HEVC. If you want to get up to speed on the technical side of HEVC, the Vcodex website has material to get you started.

Key features of HEVC:

  • Up to twice as efficient as H.264 - which means that you can send the same picture quality using much smaller files.
  • Support for resolution up to 8K video (7680 × 4320) and frame rates up to 120 frames per second.
  • Improved picture quality in terms of noise levels, color spaces and dynamic range.

This means you can shoot and produce video at the higher resolutions of UHD/4K without dramatically increasing the bandwidth required to broadcast or stream your video.


VP9 is Google’s answer to the problem of streaming 4K video. Offered as royalty free by Google, VP9 also claims to be significantly more efficient than H.264. Like HEVC, VP9 supports compression of videos at resolutions above HD as part of the WebM media format.

When can I start using 4K / Ultra High Definition?

You can try 4K on the web right now. For example, this Youtube playlist features 4K/UHD videos, which your display may or may not be able to handle. DivX's HEVC showcase includes examples of 4K videos. You'll need to download the DivX HEVC plugin to play back these clips.

Hardware support for HEVC is increasing, with a number of demonstrations at this year's IBC show. A reference hardware implementation of VP9 is available for chip developers.

New codecs - a performance comparison

We ran a comparison test to find out how HEVC and VP9 codecs performed compared with H.264 using a 720p video clip downloaded from the Xiph website. Following standard test guidelines for video quality assessment, we carried out subjective video quality tests with 10 non-expert users.
Figure 1: File size versus perceptual quality for H.264, VP9 and HEVC codecs

Figure 1 shows the variation of perceptual video quality measured as mean opinion score (MOS), with file size for different codecs. At the higher end of the quality scale (i.e. lower compression), both HEVC and VP9 achieve a similar viewing quality to H.264 with a 40-45% reduction in file size. At lower quality ratings, the gains of HEVC and VP9 are smaller.

This implies that you should see the most benefit from HEVC and VP9 codecs at high quality / low compression settings.

We hope the three-part series of the blog "How to stream better quality video" has been useful. To find out more about video compression and streaming, please visit the Vcodex website here.

About the authors:

Iain Richardson is an internationally known expert on video compression and the author of several books, including The H.264 Advanced Video Compression Standard:

Abharana Bhat specialises in video compression, media streaming and video quality assessment.

Copyright (c) Vcodex Limited 2014-2015

Thursday, September 4, 2014

How to stream better quality video: Part 2 - Adaptive streaming

by Iain Richardson and Abharana Bhat
You want to stream a video clip to several customers. One customer has a high bandwidth leased line connection, while another is trying to view your clip on a mobile device using a poor-quality 3G signal. How do you make sure they each get the best possible video quality? Adaptive streaming may be the answer.

Video streaming sends your video (source) to play back on a computer or mobile device (client), using an internet connection to transport the video. Streaming video is a complex process involving many different components. In this series of articles, we help you understand the basics of streaming video and the various factors that can make a big difference to the quality of your video clip.

In our first article, we looked at the basics of streaming video and discussed good and bad practice. In this article, we look at how to stream video effectively over networks with varying connection speeds.

1. Adaptive streaming: the basics

The general concept of adaptive streaming is shown in Figure 1.

a. Multiple versions:

Starting with a high quality video source such as a High Definition video clip, a video encoder produces versions at multiple qualities and bitrates, for example:

  1. An HD version at 2Mbps 
  2. A Standard Definition (SD) version at 1Mbps 
  3. A very low resolution version at 50kbps. 

Each of these versions is split into small chunks, typically each a few seconds long, and stored on a web server ready for streaming.

b. Index file:

The server maintains an index or playlist file which lists all the media chunks, including the bitrate of each stream and the starting position of each chunk.

c. Streaming to the client:

When the client (the user's software application) requests playback of the video stream, the server returns the index file to the client.

The client requests chunks at the most suitable bitrate, based on considerations such as the available connection bandwidth, playback delay and device capabilities. The server sends each requested chunk in order.

The result: video and audio playback that adapts to suit the network conditions.

2. Examples
Example 1:

The client is initially connected to the internet via a good quality WiFi connection. Streaming starts at 2Mbps and the user sees good quality, HD video with low delay.

The WiFi signal is lost and the client switches to a 3G mobile connection. Streaming switches to 1Mbps, then to 50kbps. The user sees continuous video playback. The video quality steps down to SD then to lower resolution because of the drop in network bandwidth.

Example 2:

The client is configured to start playback as quickly as possible. It automatically requests the lowest quality stream and steps up if the bandwidth is good enough. The user sees basic quality playback very soon after pressing "play". After a few seconds, the video quality improves progressively without any delays or breaks in playback.

Example 3:

Click the link below and play each video to see adaptive streaming in action. Click on the "HD" button on the player to select one of 5 different bitrates, or select "Auto" to allow the stream to adapt according to your network connection.

3. Practical considerations
Adaptive streaming format. There are a number of choices of adaptive streaming methods, including:

Each of these methods has pros and cons. When selecting an adaptive streaming technology, it is important to consider:
  • Availability and cost of encoding software tools 
  • Compatibility with your target clients. 
Stream count. How many streams should be created for each video file? More streams will give the client more flexibility to choose the best stream based on the available bitrate and display capabilities. However, each stream needs to be converted (transcoded) from the original and stored on a server. This may increase computing and storage costs.

Chunks and key frames. How many seconds per chunk? Each chunk starts with a key frame, i.e. a video frame encoded without any prediction from other frames. Key frames require significantly more bit rate to transmit than predicted ("inter") frames. Smaller chunks make it possible for the client to switch streams more frequently, leading to faster startup and smoother adaptation. However, smaller chunks require more frequent key frames, leading to poorer transmission efficiency. A good compromise may be to use smaller chunks early in the video stream, increasing the size later on.

4. Going further Part 3 in this series will compare the latest video codecs in depth.

Copyright (c) Vcodex Limited / Onecodec Limited, 2014