H.265 (HEVC) vs H.264 (AVC) Compression: Explained!

Описание к видео H.265 (HEVC) vs H.264 (AVC) Compression: Explained!

What is H.265 (HEVC)? Why is it better quality than H.264 (AVC), especially for 4K? Do your devices support H.265? This video will explain all of the questions you might have about the newest video compression standard.

--
Hey, I'm HandyAndy and thanks for watching my video. If you enjoyed it, then please SUBSCRIBE to my channel!
--

My notes on this topic:
Video compression has undergone many changes over the past two decades. But it seems like every new standard promises the same thing - identical image quality at half the bitrate of the previous one. Indeed, a HD H.265 video running at 5Mbit/s will have virtually identical quality to a H.264 at 10Mbit/s.

How is this achieved? Through improvements in both interframe and intraframe compression.

Interframe compression involves a comparison between previous and future frames and the current one, and it only encodes what's changed in the picture. Intraframe compression involves comparing areas within the same frame.

The main method used in interframe encoding is to divide the picture into small areas, which - in H.264 - were called "macroblocks", sized 16 x 16 pixels. So we start on a frame, called an I-frame or intraframe, that's stored as a full image - much like a JPEG. We then divide it into macroblocks, advance to the next frame, and compare its macroblocks with that of the I-frame. If several are virtually the same, we give the new frame the status of a "P-frame", or a predicted frame; this means that only the differences between it and the I-frame must be stored.

In H.265, macroblocks have been renamed to "coding tree units", and with a new name comes a new improvement. The size of each is now variable, and can range from 16 x 16 pixels - the original size - to up to 64 x 64 pixels. Furthermore, in H.265, a single coding tree unit (or macroblock) can be divided into coding units, which can be sized from 64 x 64 - which, coincidentally, is the same as the maximum size of a coding tree unit - down to 8 x 8.

Why is this such a big improvement? Well, remember that - when H.264 was standardized in 2003 - 1080p video was the height of technology. But now, more efficient encoding is needed for higher resolutions, such as 4K.

The second big improvement - mainly to do with intraframe compression - is the increase in prediction directions. Coding units, in H.265, can be further partitioned into smaller groups, called prediction units. These allow us to predict pixel values within the exact same image.

I could make use of several angular modes, which are directional. The angular modes allow me to extrapolate certain trends - so using a simple example, I could have a line coming down, and use an angular intra prediction mode to continue its progress throughout my prediction block.

H.264 only allows me to use 9 such modes. This could result in errors in my estimation, especially if I have a large block. But H.265 has... wait for it... 33 different modes!

One major problem with the new standard (at the moment) is that adoption has been limited. Even though it was first standardized back in 2013, there's still a lot of things that you can't do, including uploading videos encoded with it to YouTube. But the format was given a big boost recently, as it's been adopted as a default codec on 4K Blu-Ray.

Комментарии

Информация по комментариям в разработке