High Efficiency Video Coding
High Efficiency Video Coding (HEVC), also known as H.265 and MPEG-H Part 2, is a video compression standard, one of several potential successors to the widely used AVC (H.264 or MPEG-4 Part 10). In comparison to AVC, HEVC offers about double the data compression ratio at the same level of video quality, or substantially improved video quality at the same bit rate. It supports resolutions up to 8192×4320, including 8K UHD.
In most ways, HEVC is an extension of the concepts in H.264/MPEG-4 AVC. Both work by comparing different parts of a frame of video to find areas that are redundant, both within a single frame as well as subsequent frames. These redundant areas are then replaced with a short description instead of the original pixels. The primary changes for HEVC include the expansion of the pattern comparison and difference-coding areas from 16×16 pixel to sizes up to 64×64, improved variable-block-size segmentation, improved "intra" prediction within the same picture, improved motion vector prediction and motion region merging, improved motion compensation filtering, and an additional filtering step called sample-adaptive offset filtering. Effective use of these improvements requires much more signal processing capability for compressing the video, but has less impact on the amount of computation needed for decompression.
HEVC was developed by the JCT-VC organization, a collaboration between the ISO/IEC MPEG and ITU-T VCEG. The ISO/IEC group refers to it as MPEG-H Part 2 and the ITU-T as H.265. The first version of HEVC was completed in January 2013 and published in June 2013. The second version was completed and approved in 2014 and published in early 2015. Additional 3D-HEVC extensions for 3D video were completed in early 2015. Further extensions remain in development for completion in early 2016, covering video containing rendered graphics, text, or animation as well as (or instead of) camera-captured video scenes.
HEVC is protected by patents owned by various parties. Use of HEVC technologies requires the payment of royalties to licensors of HEVC patents, such as MPEG LA, HEVC Advance, and Technicolor SA. The licensing fees are many times higher than the fees for AVC. The problematic licensing situation is one of the main reasons HEVC adoption has been very low on the web and is why some of the largest tech companies (Amazon, AMD, ARM, Cisco, Google, Intel, Microsoft, Mozilla, Netflix, NVIDIA and more) have joined the Alliance for Open Media,[1] which aims to deploy the royalty-free alternative codec AV1 in 2017.
History
Previous work
In 2004, the ITU-T Video Coding Experts Group (VCEG) began significant study of technology advances that could enable creation of a new video compression standard (or substantial compression-oriented enhancements of the H.264/MPEG-4 AVC standard).[2] In October 2004, various techniques for potential enhancement of the H.264/MPEG-4 AVC standard were surveyed. In January 2005, at the next meeting of VCEG, VCEG began designating certain topics as "Key Technical Areas" (KTA) for further investigation. A software codebase called the KTA codebase was established for evaluating such proposals.[3] The KTA software was based on the Joint Model (JM) reference software that was developed by the MPEG & VCEG Joint Video Team for H.264/MPEG-4 AVC. Additional proposed technologies were integrated into the KTA software and tested in experiment evaluations over the next four years.[4][2][5][6] MPEG and VCEG established a Joint Collaborative Team on Video Coding (JCT-VC) to develop the HEVC standard.[2][7][8][9]
Two approaches for standardizing enhanced compression technology were considered: either creating a new standard or creating extensions of H.264/MPEG-4 AVC. The project had tentative names H.265 and H.NGVC (Next-generation Video Coding), and was a major part of the work of VCEG until its evolution into the HEVC joint project with MPEG in 2010.[10][11][12]
The preliminary requirements for NGVC was the capability to have a bit rate reduction of 50% at the same subjective image quality compared to the H.264/MPEG-4 AVC High profile and computational complexity ranging from 1/2 to 3 times that of the High profile.[12] NGVC would be able to provide 25% bit rate reduction along with 50% reduction in complexity at the same perceived video quality as the High profile, or to provide greater bit rate reduction with somewhat higher complexity.[12][13]
The ISO/IEC Moving Picture Experts Group (MPEG) started a similar project in 2007, tentatively named High-performance Video Coding.[14][15] An agreement of getting a bit rate reduction of 50% had been decided as the goal of the project by July 2007.[14] Early evaluations were performed with modifications of the KTA reference software encoder developed by VCEG.[2] By July 2009, experimental results showed average bit reduction of around 20% compared with AVC High Profile; these results prompted MPEG to initiate its standardization effort in collaboration with VCEG.[15]
Standardization
A formal joint Call for Proposals on video compression technology was issued in January 2010 by VCEG and MPEG, and proposals were evaluated at the first meeting of the MPEG & VCEG Joint Collaborative Team on Video Coding (JCT-VC), which took place in April 2010. A total of 27 full proposals were submitted.[10][16] Evaluations showed that some proposals could reach the same visual quality as AVC at only half the bit rate in many of the test cases, at the cost of 2×–10× increase in computational complexity, and some proposals achieved good subjective quality and bit rate results with lower computational complexity than the reference AVC High profile encodings. At that meeting, the name High Efficiency Video Coding (HEVC) was adopted for the joint project.[2][10] Starting at that meeting, the JCT-VC integrated features of some of the best proposals into a single software codebase and a "Test Model under Consideration", and performed further experiments to evaluate various proposed features.[2][17] The first working draft specification of HEVC was produced at the third JCT-VC meeting in October 2010. Many changes in the coding tools and configuration of HEVC were made in later JCT-VC meetings.[2]
On January 25, 2013, the ITU announced that HEVC had received first stage approval (consent) in the ITU-T Alternative Approval Process (AAP).[18][19][20] On the same day, MPEG announced that HEVC had been promoted to Final Draft International Standard (FDIS) status in the MPEG standardization process.[21][22]
On April 13, 2013, HEVC/H.265 was approved as an ITU-T standard.[23][24][25] The standard was formally published by the ITU-T on June 7, 2013 and by the ISO/IEC on November 25, 2013.[7][6]
On July 11, 2014, MPEG announced that the 2nd edition of HEVC will contain three recently completed extensions which are the multiview extensions (MV-HEVC), the range extensions (RExt), and the scalability extensions (SHVC).[26]
On October 29, 2014, HEVC/H.265 version 2 was approved as an ITU-T standard.[27][28][29] It was then formally published on January 12, 2015.[7]
On April 29, 2015, HEVC/H.265 version 3 was approved as an ITU-T standard.[30][31][32]
On June 3, 2016, HEVC/H.265 version 4 was consented in the ITU-T and was not approved during a vote in October 2016.[33][34]
Patent licensing
On September 29, 2014, MPEG LA announced their HEVC license which covers the essential patents from 23 companies.[35] The first 100,000 "devices" (which includes software implementations) are royalty free, and after that the fee is $0.20 per device up to an annual cap of $25 million.[36] This is significantly more expensive than the fees on AVC, which were $0.10 per device, with the same 100,000 waiver, and an annual cap of $6.5 million. MPEG LA does not charge any fee on the content itself, something they had attempted when initially licensing AVC, but subsequently dropped when content producers refused to pay it.[37] The license has been expanded to include the profiles in version 2 of the HEVC standard.[38]
When the MPEG LA terms were announced, commenters noted that a number of prominent players were not part of the group. Among these were AT&T, Microsoft, Nokia, and Motorola. Speculation at the time was that these companies would form their own licensing pool to compete with or add to the MPEG LA pool. Such a group was formally announced on March 26, 2015 as HEVC Advance.[39] The terms, covering 500 essential patents, were announced on July 22, 2015, with rates that depend on the country of sale, type of device, HEVC profile, HEVC extensions, and HEVC optional features. Unlike the MPEG LA terms, HEVC Advance reintroduced license fees on content encoded with HEVC, through a revenue sharing fee.[40]
The initial HEVC Advance license had a maximum royalty rate of US$2.60 per device for Region 1 countries and a content royalty rate of 0.5% of the revenue generated from HEVC video services. Region 1 countries in the HEVC Advance license include the United States, Canada, European Union, Japan, South Korea, Australia, New Zealand, and others. Region 2 countries are countries not listed in the Region 1 country list. The HEVC Advance license had a maximum royalty rate of US$1.30 per device for Region 2 countries. Unlike MPEG LA, there was no annual cap. On top of this, HEVC Advance also charged a royalty rate of 0.5% of the revenue generated from video services encoding content in HEVC.[40]
When they were announced, there was considerable backlash from industry observers about the "unreasonable and greedy" fees on devices, which were about seven times that of the MPEG LA's fees. Added together, a device would require licenses costing $2.80, twenty-eight times as expensive as AVC, as well as license fees on the content. This led to calls for "content owners [to] band together and agree not to license from HEVC Advance".[41] Others argued the rates might cause companies to switch to competing standards such as Daala and VP9.[42]
On December 18, 2015, HEVC Advance announced changes in the royalty rates. The changes include a reduction in the maximum royalty rate for Region 1 countries to US$2.03 per device, the creation of annual royalty caps, and a waiving of royalties on content that is free to end users. The annual royalty caps for a company is US$40 million for devices, US$5 million for content, and US$2 million for optional features.[43]
On February 3, 2016, Technicolor SA announced that they had withdrawn from the HEVC Advance patent pool[44] and would be directly licensing their HEVC patents.[45]
On November 22, 2016, HEVC Advance announced a major initiative, revising their policy to allow software implementations of HEVC to be distributed directly to consumer mobile devices and personal computers royalty free, without requiring a patent license.[46]
Versions
Versions of the HEVC/H.265 standard using the ITU-T approval dates.[7]
- Version 1: (April 13, 2013) First approved version of the HEVC/H.265 standard containing Main, Main 10, and Main Still Picture profiles.[23][24][25]
- Version 2: (October 29, 2014) Second approved version of the HEVC/H.265 standard which adds 21 range extensions profiles, two scalable extensions profiles, and one multi-view extensions profile.[27][28][29]
- Version 3: (April 29, 2015) Third approved version of the HEVC/H.265 standard which adds the 3D Main profile.[30][31][32]
Implementations and products
- 2012
On February 29, 2012, at the 2012 Mobile World Congress, Qualcomm demonstrated a HEVC decoder running on an Android tablet, with a Qualcomm Snapdragon S4 dual-core processor running at 1.5 GHz, showing H.264/MPEG-4 AVC and HEVC versions of the same video content playing side by side. In this demonstration, HEVC reportedly showed almost a 50% bit rate reduction compared to H.264/MPEG-4 AVC.[47]
- 2013
On April 3, 2013, ATEME announced the availability of the first open source implementation of a HEVC software player based on the OpenHEVC decoder and GPAC video player which are both licensed under LGPL. The OpenHEVC decoder supports the Main profile of HEVC and can decode 1080p at 30 fps video using a single core CPU.[48] A live transcoder that supports HEVC and used in combination with the GPAC video player was shown at the ATEME booth at the NAB Show in April 2013.[48][49]
On July 23, 2013, MulticoreWare announced, and made the source code available for the x265 HEVC Encoder Library under the GPL v2 license.[50][51]
On August 8, 2013, Nippon Telegraph and Telephone announced the release of their HEVC-1000 SDK software encoder which supports the Main 10 profile, resolutions up to 7680x4320, and frame rates up to 120 fps.[52]
On November 14, 2013, DivX developers released information on HEVC decoding performance using an Intel i7 CPU at 3.5 GHz which had 4 cores and 8 threads.[53] The DivX 10.1 Beta decoder was capable of 210.9 fps at 720p, 101.5 fps at 1080p, and 29.6 fps at 4K.[53]
On December 18, 2013, ViXS Systems announced shipments of their XCode 6400 SoC which is the first SoC to support the Main 10 profile of HEVC.[54]
- 2014
On April 5, 2014, at the NAB show, eBrisk Video, Inc. and Altera Corporation demonstrated an FPGA-accelerated HEVC Main10 encoder that encoded 4Kp60/10-bit video in real-time, using a dual-Xeon E5-2697-v2 platform.[55][56]
On August 13, 2014, Ittiam Systems announces availability of its third generation H.265/HEVC codec with 4:2:2 12-bit support.[57]
On September 5, 2014, the Blu-ray Disc Association announced that the 4K Blu-ray Disc specification will support 4K video at 60 fps, High Efficiency Video Coding, the Rec. 2020 color space, high dynamic range, and 10-bit color depth.[58][59] 4K Blu-ray Disc will have a data rate of at least 50 Mbit/s and may include support for 66/100 GB discs.[58][59] 4K Blu-ray Disc will be licensed in the spring or summer of 2015 and 4K Blu-ray Disc players have an expected release date of late 2015.[58][59]
On September 9, 2014, Apple announced the iPhone 6 and iPhone 6 Plus which supports HEVC/H.265 for FaceTime over cellular.[60]
On September 18, 2014, Nvidia released the GeForce GTX 980(GM204) & GTX 970(GM204), which includes Nvidia NVENC, the world's first HEVC hardware encoder in a discrete graphics card.[61]
On October 31, 2014, Microsoft confirmed that Windows 10 will support HEVC out of the box, according to a statement from Gabriel Aul, the leader of Microsoft Operating Systems Group's Data and Fundamentals Team.[62][63] Windows 10 Technical Preview Build 9860 added platform level support for HEVC and Matroska.[64][65]
On November 3, 2014, Android Lollipop was released with out of the box support for HEVC using Ittiam Systems' software.[66]
- 2015
On January 5, 2015, ViXS Systems announced the XCode 6800 which is the first SoC to support the Main 12 profile of HEVC.[67]
On January 5, 2015, Nvidia officially announced the Tegra X1 SoC with full fixed-function HEVC hardware decoding.[68][69]
On January 22, 2015, Nvidia released the GeForce GTX 960(GM206), which includes the world's first full fixed function HEVC hardware decoder in a discrete graphics card.[70]
On February 23, 2015, Advanced Micro Devices (AMD) announced that their UVD ASIC to be found in the Carrizo APUs would be the first x86 based CPUs to have a HEVC hardware decoder.[71]
On February 27, 2015, VLC media player version 2.2.0 was released with robust support of HEVC playback. The corresponding versions on Android and iOS are also able to play HEVC.
On March 31, 2015, VITEC announced the MGW Ace which was the first 100% hardware-based portable HEVC encoder that provides mobile HEVC encoding.[72]
On August 5, 2015, Intel launched Skylake products with full fixed function Main/8bit decoding/encoding and hybrid/partial Main10/10bit decoding.
On August 20, 2015, Nvidia released the GeForce GTX 950(GM206), which includes the full fixed function HEVC hardware decoder like the GTX 960.
- 2016
On April 11, 2016, full HEVC (H.265) support was announced in the newest MythTV version (0.28).[73]
On May 27, 2016, Nvidia released the GeForce GTX 1080(GP104), which includes full fixed function HEVC Main10/Main12 hardware decoder and later released additional GPU models.[74]
On August 30, 2016, Intel officially announced 7th generation Core CPUs (Kaby Lake) products with full fixed function HEVC Main10 hardware decoding support.[75]
Coding efficiency
The design of most video coding standards is primarily aimed at having the highest coding efficiency. Coding efficiency is the ability to encode video at the lowest possible bit rate while maintaining a certain level of video quality. There are two standard ways to measure the coding efficiency of a video coding standard, which are to use an objective metric, such as peak signal-to-noise ratio (PSNR), or to use subjective assessment of video quality. Subjective assessment of video quality is considered to be the most important way to measure a video coding standard since humans perceive video quality subjectively.[76]
HEVC benefits from the use of larger coding tree unit (CTU) sizes. This has been shown in PSNR tests with a HM-8.0 HEVC encoder where it was forced to use progressively smaller CTU sizes. For all test sequences, when compared to a 64×64 CTU size, it was shown that the HEVC bit rate increased by 2.2% when forced to use a 32×32 CTU size, and increased by 11.0% when forced to use a 16×16 CTU size. In the Class A test sequences, where the resolution of the video was 2560×1600, when compared to a 64×64 CTU size, it was shown that the HEVC bit rate increased by 5.7% when forced to use a 32×32 CTU size, and increased by 28.2% when forced to use a 16×16 CTU size. The tests showed that large CTU sizes increase coding efficiency while also reducing decoding time.[76]
The HEVC Main Profile (MP) has been compared in coding efficiency to H.264/MPEG-4 AVC High Profile (HP), MPEG-4 Advanced Simple Profile (ASP), H.263 High Latency Profile (HLP), and H.262/MPEG-2 Main Profile (MP). The video encoding was done for entertainment applications and twelve different bitrates were made for the nine video test sequences with a HM-8.0 HEVC encoder being used. Of the nine video test sequences, five were at HD resolution, while four were at WVGA (800×480) resolution. The bit rate reductions for HEVC were determined based on PSNR with HEVC having a bit rate reduction of 35.4% compared to H.264/MPEG-4 AVC HP, 63.7% compared to MPEG-4 ASP, 65.1% compared to H.263 HLP, and 70.8% compared to H.262/MPEG-2 MP.[76]
HEVC MP has also been compared to H.264/MPEG-4 AVC HP for subjective video quality. The video encoding was done for entertainment applications and four different bitrates were made for nine video test sequences with a HM-5.0 HEVC encoder being used. The subjective assessment was done at an earlier date than the PSNR comparison and so it used an earlier version of the HEVC encoder that had slightly lower performance. The bit rate reductions were determined based on subjective assessment using mean opinion score values. The overall subjective bitrate reduction for HEVC MP compared to H.264/MPEG-4 AVC HP was 49.3%.[76]
École Polytechnique Fédérale de Lausanne (EPFL) did a study to evaluate the subjective video quality of HEVC at resolutions higher than HDTV. The study was done with three videos with resolutions of 3840x1744 at 24 fps, 3840x2048 at 30 fps, and 3840x2160 at 30 fps. The five second video sequences showed people on a street, traffic, and a scene from the open source computer animated movie Sintel. The video sequences were encoded at five different bitrates using the HM-6.1.1 HEVC encoder and the JM-18.3 H.264/MPEG-4 AVC encoder. The subjective bit rate reductions were determined based on subjective assessment using mean opinion score values. The study compared HEVC MP with H.264/MPEG-4 AVC HP and showed that, for HEVC MP, the average bitrate reduction based on PSNR was 44.4%, while the average bitrate reduction based on subjective video quality was 66.5%.[77][78][79][80]
In a HEVC performance comparison released in April 2013, the HEVC MP and Main 10 Profile (M10P) were compared to H.264/MPEG-4 AVC HP and High 10 Profile (H10P) using 3840x2160 video sequences. The video sequences were encoded using the HM-10.0 HEVC encoder and the JM-18.4 H.264/MPEG-4 AVC encoder. The average bit rate reduction based on PSNR was 45% for inter frame video.
In a video encoder comparison released in December 2013, the HM-10.0 HEVC encoder was compared to the x264 encoder (version r2334) and the VP9 encoder (version v1.2.0-3088-ga81bd12). The comparison used the Bjøntegaard-Delta bit-rate (BD-BR) measurement method, in which negative values tell how much lower the bit rate is reduced, and positive values tell how much the bit rate is increased for the same PSNR. In the comparison, the HM-10.0 HEVC encoder had the highest coding efficiency and, on average, to get the same objective quality, the x264 encoder needed to increase the bit rate by 66.4%, while the VP9 encoder needed to increase the bit rate by 79.4%.[81]
In a subjective video performance comparison released in May 2014, the JCT-VC compared the HEVC Main profile to the H.264/MPEG-4 AVC High profile. The comparison used mean opinion score values and was conducted by the BBC and the University of the West of Scotland. The video sequences were encoded using the HM-12.1 HEVC encoder and the JM-18.5 H.264/MPEG-4 AVC encoder. The comparison used a range of resolutions and the average bit rate reduction for HEVC was 59%. The average bit rate reduction for HEVC was 52% for 480p, 56% for 720p, 62% for 1080p, and 64% for 4K UHD.[82]
Video coding standard | Average bit rate reduction compared to H.264/MPEG-4 AVC HP | ||||
---|---|---|---|---|---|
480p | 720p | 1080p | 4K UHD | ||
HEVC | 52% | 56% | 62% | 64% | |
In a subjective video codec comparison released in August 2014 by the EPFL, the HM-15.0 HEVC encoder was compared to the VP9 1.2.0–5183 encoder and the JM-18.8 H.264/MPEG-4 AVC encoder. Four 4K resolutions sequences were encoded at five different bit rates with the encoders set to use an intra period of one second. In the comparison, the HM-15.0 HEVC encoder had the highest coding efficiency and, on average, for the same subjective quality the bit rate could be reduced by 49.4% compared to the VP9 1.2.0–5183 encoder, and it could be reduced by 52.6% compared to the JM-18.8 H.264/MPEG-4 AVC encoder.[83][84][85]
In August, 2016, Netflix published the results of a large-scale study comparing the leading open-source HEVC encoder, x265, with the leading open-source AVC encoder, x264 and the reference VP9 encoder, libvpx.[86] Using their advanced Video Multimethod Assessment Fusion (VMAF) video quality measurement tool, Netflix found that x265 delivered identical quality at bit rates ranging from 35.4% to 53.3% lower than x264, and from 17.8% to 21.8% lower than VP9.[87]
Features
HEVC was designed to substantially improve coding efficiency compared to H.264/MPEG-4 AVC HP, i.e. to reduce bitrate requirements by half with comparable image quality, at the expense of increased computational complexity.[2] HEVC was designed with the goal of allowing video content to have a data compression ratio of up to 1000:1.[88] Depending on the application requirements, HEVC encoders can trade off computational complexity, compression rate, robustness to errors, and encoding delay time.[2] Two of the key features where HEVC was improved compared to H.264/MPEG-4 AVC was support for higher resolution video and improved parallel processing methods.[2]
HEVC is targeted at next-generation HDTV displays and content capture systems which feature progressive scanned frame rates and display resolutions from QVGA (320x240) to 4320p (7680x4320), as well as improved picture quality in terms of noise level, color spaces, and dynamic range.[13][89][90][91]
Video coding layer
The HEVC video coding layer uses the same "hybrid" approach used in all modern video standards, starting from H.261, in that it uses inter-/intra-picture prediction and 2D transform coding.[2] A HEVC encoder first proceeds by splitting a picture into block shaped regions for the first picture, or the first picture of a random access point, which uses intra-picture prediction.[2] Intra-picture prediction is when the prediction of the blocks in the picture is based only on the information in that picture.[2] For all other pictures, inter-picture prediction is used, in which prediction information is used from other pictures.[2] After the prediction methods are finished and the picture goes through the loop filters, the final picture representation is stored in the decoded picture buffer.[2] Pictures stored in the decoded picture buffer can be used for the prediction of other pictures.[2]
HEVC was designed with the idea that progressive scan video would be used and no coding tools were added specifically for interlaced video.[2] Interlace specific coding tools, such as MBAFF and PAFF, are not supported in HEVC.[92] HEVC instead sends metadata that tells how the interlaced video was sent.[2] Interlaced video may be sent either by coding each frame as a separate picture or by coding each field as a separate picture.[2] For interlaced video HEVC can change between frame coding and field coding using Sequence Adaptive Frame Field (SAFF), which allows the coding mode to be changed for each video sequence.[93] This allows interlaced video to be sent with HEVC without needing special interlaced decoding processes to be added to HEVC decoders.[2]
- Color spaces
The HEVC standard supports color spaces such as generic film, NTSC, PAL, Rec. 601, Rec. 709, Rec. 2020, SMPTE 170M, SMPTE 240M, sRGB, sYCC, xvYCC, XYZ, and externally specified color spaces.[7] HEVC supports color encoding representations such as RGB, YCbCr, and YCoCg.[7]
Coding tools
Coding tree unit
HEVC replaces 16×16 pixel macroblocks, which were used with previous standards, with coding tree units (CTUs) which can use larger block structures of up to 64x64 samples and can better sub-partition the picture into variable sized structures.[2][94] HEVC initially divides the picture into CTUs which can be 64×64, 32×32, or 16×16 with a larger pixel block size usually increasing the coding efficiency.[2]
Parallel processing tools
- Tiles allow for the picture to be divided into a grid of rectangular regions that can independently be decoded/encoded. The main purpose of tiles is to allow for parallel processing.[2] Tiles can be independently decoded and can even allow for random access to specific regions of a picture in a video stream.[2]
- Wavefront parallel processing (WPP) is when a slice is divided into rows of CTUs in which the first row is decoded normally but each additional row requires that decisions be made in the previous row.[2] WPP has the entropy encoder use information from the preceding row of CTUs and allows for a method of parallel processing that may allow for better compression than tiles.[2]
- Tiles and WPP are allowed, but are optional.[2][7] If tiles are present, they must be at least 64 pixels high and 256 pixels wide with a level specific limit on the number of tiles allowed.[2][7]
- Slices can, for the most part, be decoded independently from each other with the main purpose of tiles being the re-synchronization in case of data loss in the video stream.[2] Slices can be defined as self-contained in that prediction is not made across slice boundaries.[2] When in-loop filtering is done on a picture though, information across slice boundaries may be required.[2] Slices are CTUs decoded in the order of the raster scan, and different coding types can be used for slices such as I types, P types, or B types.[2]
- Dependent slices can allow for data related to tiles or WPP to be accessed more quickly by the system than if the entire slice had to be decoded.[2] The main purpose of dependent slices is to allow for low-delay video encoding due to its lower latency.[2]
Other coding tools
- Entropy coding
HEVC uses a context-adaptive binary arithmetic coding (CABAC) algorithm that is fundamentally similar to CABAC in H.264/MPEG-4 AVC.[2] CABAC is the only entropy encoder method that is allowed in HEVC while there are two entropy encoder methods allowed by H.264/MPEG-4 AVC.[2] CABAC and the entropy coding of transform coefficients in HEVC were designed for a higher throughput than H.264/MPEG-4 AVC,[95] while maintaining higher compression efficiency for larger transform block sizes relative to simple extensions.[96] For instance, the number of context coded bins have been reduced by 8× and the CABAC bypass-mode has been improved in terms of its design to increase throughput.[2][95][97] Another improvement with HEVC is that the dependencies between the coded data has been changed to further increase throughput.[2][95] Context modeling in HEVC has also been improved so that CABAC can better select a context that increases efficiency when compared to H.264/MPEG-4 AVC.[2]
- Intra prediction
HEVC specifies 33 directional modes for intra prediction compared to the 8 directional modes for intra prediction specified by H.264/MPEG-4 AVC.[2] HEVC also specifies DC intra prediction and planar prediction modes.[2] The DC intra prediction mode generates a mean value by averaging reference samples and can be used for flat surfaces.[2] The planar prediction mode in HEVC supports all block sizes defined in HEVC while the planar prediction mode in H.264/MPEG-4 AVC is limited to a block size of 16x16 pixels.[2] The intra prediction modes use data from neighboring prediction blocks that have been previously decoded from within the same picture.[2]
- Motion compensation
For the interpolation of fractional luma sample positions HEVC uses separable application of one-dimensional half-sample interpolation with an 8-tap filter or quarter-sample interpolation with a 7-tap filter while, in comparison, H.264/MPEG-4 AVC uses a two-stage process that first derives values at half-sample positions using separable one-dimensional 6-tap interpolation followed by integer rounding and then applies linear interpolation between values at nearby half-sample positions to generate values at quarter-sample positions.[2] HEVC has improved precision due to the longer interpolation filter and the elimination of the intermediate rounding error.[2] For 4:2:0 video, the chroma samples are interpolated with separable one-dimensional 4-tap filtering to generate eighth-sample precision, while in comparison H.264/MPEG-4 AVC uses only a 2-tap bilinear filter (also with eighth-sample precision).[2]
As in H.264/MPEG-4 AVC, weighted prediction in HEVC can be used either with uni-prediction (in which a single prediction value is used) or bi-prediction (in which the prediction values from two prediction blocks are combined).[2]
- Motion vector prediction
HEVC defines a signed 16-bit range for both horizontal and vertical motion vectors (MVs).[7][98][99][100] This was added to HEVC at the July 2012 HEVC meeting with the mvLX variables.[7][98][99][100] HEVC horizontal/vertical MVs have a range of −32768 to 32767 which given the quarter pixel precision used by HEVC allows for a MV range of −8192 to 8191.75 luma samples.[7][98][99][100] This compares to H.264/MPEG-4 AVC which allows for a horizontal MV range of −2048 to 2047.75 luma samples and a vertical MV range of −512 to 511.75 luma samples.[99]
HEVC allows for two MV modes which are Advanced Motion Vector Prediction (AMVP) and merge mode.[2] AMVP uses data from the reference picture and can also use data from adjacent prediction blocks.[2] The merge mode allows for the MVs to be inherited from neighboring prediction blocks.[2] Merge mode in HEVC is similar to "skipped" and "direct" motion inference modes in H.264/MPEG-4 AVC but with two improvements.[2] The first improvement is that HEVC uses index information to select one of several available candidates.[2] The second improvement is that HEVC uses information from the reference picture list and reference picture index.[2]
- Inverse transforms
HEVC specifies four transform units (TUs) sizes of 4x4, 8x8, 16x16, and 32x32 to code the prediction residual.[2] A CTB may be recursively partitioned into 4 or more TUs.[2] TUs use integer basis functions that are similar to the discrete cosine transform (DCT).[2] In addition 4x4 luma transform blocks that belong to an intra coded region are transformed using an integer transform that is derived from discrete sine transform (DST).[2] This provides a 1% bit rate reduction but was restricted to 4x4 luma transform blocks due to marginal benefits for the other transform cases.[2] Chroma uses the same TU sizes as luma so there is no 2x2 transform for chroma.[2]
Loop filters
HEVC specifies two loop filters that are applied sequentially, with the deblocking filter (DBF) applied first and the sample adaptive offset (SAO) filter applied afterwards.[2] Both loop filters are applied in the inter-picture prediction loop, i.e. the filtered image is stored in the decoded picture buffer (DPB) as a reference for inter-picture prediction.[2]
- Deblocking filter
The DBF is similar to the one used by H.264/MPEG-4 AVC but with a simpler design and better support for parallel processing.[2] In HEVC the DBF only applies to a 8x8 sample grid while with H.264/MPEG-4 AVC the DBF applies to a 4x4 sample grid.[2] DBF uses a 8x8 sample grid since it causes no noticeable degradation and significantly improves parallel processing because the DBF no longer causes cascading interactions with other operations.[2] Another change is that HEVC only allows for three DBF strengths of 0 to 2.[2] HEVC also requires that the DBF first apply horizontal filtering for vertical edges to the picture and only after that does it apply vertical filtering for horizontal edges to the picture.[2] This allows for multiple parallel threads to be used for the DBF.[2]
- Sample adaptive offset
The SAO filter is applied after the DBF and is designed to allow for better reconstruction of the original signal amplitudes by applying offsets stored in a lookup table in the bitstream.[2][101] Per CTB the SAO filter can be disabled or applied in one of two modes: edge offset mode or band offset mode.[2][101] The edge offset mode operates by comparing the value of a sample to two of its eight neighbors using one of four directional gradient patterns.[2][101] Based on a comparison with these two neighbors, the sample is classified into one of five categories: minimum, maximum, an edge with the sample having the lower value, an edge with the sample having the higher value, or monotonic.[2][101] For each of the first four categories an offset is applied.[2][101] The band offset mode applies an offset based on the amplitude of a single sample.[2][101] A sample is categorized by its amplitude into one of 32 bands (histogram bins).[2][101] Offsets are specified for four consecutive of the 32 bands, because in flat areas which are prone to banding artifacts, sample amplitudes tend to be clustered in a small range.[2][101] The SAO filter was designed to increase picture quality, reduce banding artifacts, and reduce ringing artifacts.[2][101]
Range extensions
Additional coding tool options have been added in the range extensions.[7] This includes new definitions of profiles and levels:
- Profiles supporting bit depths beyond 10 bits per sample.[7] Profiles that support a range of bit depths can use different bit depths for luma and chroma with YCbCr color spaces.[7]
- Profiles that support 4:0:0 (monochrome), 4:2:2 (half-horizontal chroma resolution), and 4:4:4 (full chroma resolution) chroma sampling.[7]
- Additional profiles supporting only all-intra coding and only still-picture coding for applications that do not need inter-picture (temporal) prediction.[7]
- The Still Picture profiles can use an unbounded level, level 8.5, for which no limit is imposed on the picture size.[7] Decoders for level 8.5 are not required to decode all level 8.5 bitstreams, since some may exceed their picture size capability.[7]
Within these new profiles are enhanced coding features that include:
- High precision weighted prediction uses an increased precision for weighted prediction that increases the coding efficiency for fading video scenes at high bit depths.[102]
- Cross-component prediction, using prediction between the chroma/luma components to improve coding efficiency.[7] The reduction in bit rate can be up to 7% for YCbCr 4:4:4 video and up to 26% for RGB video.[102][103] RGB video has a larger reduction in bit rate due to the greater correlation between the components.[7]
- Intra smoothing disabling, allowing the neighbor region filtering process ordinarily applied in intra prediction to be disabled.[7]
- Persistent Rice adaptation, using a Rice coding parameter derivation for entropy coding that has memory that persists across transform coefficient sub-block boundaries.[7]
- Modifications of transform skip mode processing:
- Residual DPCM (RDPCM), allowing a vertical or horizontal spatial-predictive coding of residual data in transform skip and transform-quantization bypass blocks (which can be selected for use in intra blocks, inter blocks, or both).[7]
- Transform skip block size flexibility, supporting block sizes up to 32x32 (versus only 4x4 support in version 1).[7]
- Transform skip rotation, allowing the encoder to indicate a rotation of residual data for 4x4 transform skip blocks.[7]
- Transform skip context enabling, using a separate context for entropy coding the indication of which blocks are coded using transform skipping.[7]
- Extended precision processing, using an extended dynamic range for inter prediction interpolation and inverse transform.[7]
- CABAC bypass alignment, allowing for the alignment of the data to a byte boundary before bypass decoding is supported in the High Throughput 4:4:4 16 Intra profile.[7]
The second version of HEVC adds several supplemental enhancement information (SEI) messages which include:
- Color remapping information SEI message, provides information on remapping from one color space to a different color space.[7] An example would be to preserve the artistic intent when converting wide color gamut (WCG) video from the Rec. 2020 color space for output on a Rec. 709 display.[104] The color remapping information SEI message was proposed for future UHDTV applications.[104] Multiple color remapping processes can be supported for different display scenarios.[7]
- Knee function information SEI message, provides information on how to convert from one dynamic range to a different dynamic range.[7] An example would be to compress the upper range of high dynamic range (HDR) video that has a luminance level of 800 cd/m2 for output on a 100 cd/m2 display.[105] Multiple knee function processes can be supported for different display scenarios.[7]
- Mastering display color volume SEI message, provides information on the color primaries and dynamic range of the display that was used to author the video.[7]
- Time code SEI message, provides information on the time of origin when the video was recorded.[7]
Screen content coding extensions
Additional coding tool options have been added in the March 2016 draft of the screen content coding (SCC) extensions:[106]
- Adaptive color transform.[106]
- Adaptive motion vector resolution.[106]
- Intra block copying.[106]
- Palette mode.[106]
SCC extensions also added support for Hybrid Log-Gamma (HLG) which is a HDR standard that was jointly developed by the BBC and NHK.[106][107]
The fourth version of HEVC adds several supplemental enhancement information (SEI) messages which include:
- Alternative transfer characteristics information SEI message, provides information on the preferred transfer function to use.[106] An example would be to deliver HLG video in a way that would be backward compatible with legacy devices.[108]
- Ambient viewing environment SEI message, provides information on the ambient light of the viewing environment that was used to author the video.[106][109]
Profiles
Version 1 of the HEVC standard defines three profiles: Main, Main 10, and Main Still Picture.[7] Version 2 of HEVC adds 21 range extensions profiles, two scalable extensions profiles, and one multi-view profile.[7] HEVC also contains provisions for additional profiles.[7] Extensions that were added to HEVC include increased bit depth, 4:2:2/4:4:4 chroma sampling, Multiview Video Coding (MVC), and Scalable Video Coding (SVC).[2][110] The HEVC range extensions, HEVC scalable extensions, and HEVC multi-view extensions were completed in July 2014.[111][112][113][113] In July 2014 a draft of the second version of HEVC was released.[111] Screen content coding (SCC) extensions are under development for screen content video, which contains text and graphics, with an expected final draft release date of 2015.[114][115]
A profile is a defined set of coding tools that can be used to create a bitstream that conforms to that profile.[2] An encoder for a profile may choose which coding tools to use as long as it generates a conforming bitstream while a decoder for a profile must support all coding tools that can be used in that profile.[2]
Feature | Version 1 | Version 2 | ||||||||
---|---|---|---|---|---|---|---|---|---|---|
Main | Main 10 | Main 12 | Main 4:2:2 10 | Main 4:2:2 12 | Main 4:4:4 | Main 4:4:4 10 | Main 4:4:4 12 | Main 4:4:4 16 Intra | ||
Bit depth | 8 | 8 to 10 | 8 to 12 | 8 to 10 | 8 to 12 | 8 | 8 to 10 | 8 to 12 | 8 to 16 | |
Chroma sampling formats | 4:2:0 | 4:2:0 | 4:2:0 | 4:2:0/4:2:2 | 4:2:0/4:2:2 | 4:2:0/4:2:2/4:4:4 | 4:2:0/4:2:2/4:4:4 | 4:2:0/4:2:2/4:4:4 | 4:2:0/4:2:2/4:4:4 | |
4:0:0 (Monochrome) | No | No | Yes | Yes | Yes | Yes | Yes | Yes | Yes | |
High precision weighted prediction | No | No | Yes | Yes | Yes | Yes | Yes | Yes | Yes | |
Chroma QP offset list | No | No | Yes | Yes | Yes | Yes | Yes | Yes | Yes | |
Cross-component prediction | No | No | No | No | No | Yes | Yes | Yes | Yes | |
Intra smoothing disabling | No | No | No | No | No | Yes | Yes | Yes | Yes | |
Persistent Rice adaptation | No | No | No | No | No | Yes | Yes | Yes | Yes | |
RDPCM implicit/explicit | No | No | No | No | No | Yes | Yes | Yes | Yes | |
Transform skip block sizes larger than 4x4 | No | No | No | No | No | Yes | Yes | Yes | Yes | |
Transform skip context/rotation | No | No | No | No | No | Yes | Yes | Yes | Yes | |
Extended precision processing | No | No | No | No | No | No | No | No | Yes |
Version 1 profiles
Main
The Main profile allows for a bit depth of 8-bits per sample with 4:2:0 chroma sampling, which is the most common type of video used with consumer devices.[2][7][112]
Main 10
The Main 10 profile allows for a bit depth of 8-bits to 10-bits per sample with 4:2:0 chroma sampling. HEVC decoders that conform to the Main 10 profile must be capable of decoding bitstreams made with the following profiles: Main and Main 10.[7] A higher bit depth allows for a greater number of colors. 8-bits per sample allows for 256 shades per primary color (a total of 16.78 million colors) while 10-bits per sample allows for 1024 shades per primary color (a total of 1.07 billion colors). A higher bit depth allows for a smoother transition of color which resolves the problem known as color banding.[116][117]
The Main 10 profile allows for improved video quality since it can support video with a higher bit depth than what is supported by the Main profile.[118] Additionally, in the Main 10 profile 8-bit video can be coded with a higher bit depth of 10-bits, which allows improved coding efficiency compared to the Main profile.[119][120][121][122]
Ericsson has stated that the Main 10 profile will bring the benefits of 10-bits per sample video to consumer TV. They also state that for higher resolutions there is no bit rate penalty for encoding video at 10-bits per sample.[116] Imagination Technologies states that 10-bits per sample video will allow for larger color spaces and is required for the Rec. 2020 color space that will be used by UHDTV. They also state that the Rec. 2020 color space will drive the widespread adoption of 10-bits per sample video.[117][123]
In a PSNR based performance comparison released in April 2013 the Main 10 profile was compared to the Main profile using a set of 3840x2160 10-bit video sequences. The 10-bit video sequences were converted to 8-bits for the Main profile and remained at 10-bits for the Main 10 profile. The reference PSNR was based on the original 10-bit video sequences. In the performance comparison the Main 10 profile provided a 5% bit rate reduction for inter frame video coding compared to the Main profile. The performance comparison states that for the tested video sequences the Main 10 profile outperformed the Main profile.[119] The Main 10 profile was added at the October 2012 HEVC meeting based on proposal JCTVC-K0109 which proposed that a 10-bit profile be added to HEVC for consumer applications. The proposal stated that this was to allow for improved video quality and to support the Rec. 2020 color space that has become widely used in UHDTV systems and to be able to deliver higher dynamic range and color fidelity avoiding the banding artifacts. A variety of companies supported the proposal which included ATEME, BBC, BSkyB, CISCO, DirecTV, Ericsson, Motorola Mobility, NGCodec, NHK, RAI, ST, SVT, Thomson Video Networks, Technicolor, and ViXS Systems.[118]
Main Still Picture
The Main Still Picture profile allows for a single still picture to be encoded with the same constraints as the Main profile. As a subset of the Main profile the Main Still Picture profile allows for a bit depth of 8-bits per sample with 4:2:0 chroma sampling.[2][7][112] An objective performance comparison was done in April 2012 in which HEVC reduced the average bit rate for images by 56% compared to JPEG.[124] A PSNR based performance comparison for still image compression was done in May 2012 using the HEVC HM 6.0 encoder and the reference software encoders for the other standards. For still images HEVC reduced the average bit rate by 15.8% compared to H.264/MPEG-4 AVC, 22.6% compared to JPEG 2000, 30.0% compared to JPEG XR, 31.0% compared to WebP, and 43.0% compared to JPEG.[125]
A performance comparison for still image compression was done in January 2013 using the HEVC HM 8.0rc2 encoder, Kakadu version 6.0 for JPEG 2000, and IJG version 6b for JPEG. The performance comparison used PSNR for the objective assessment and mean opinion score (MOS) values for the subjective assessment. The subjective assessment used the same test methodology and images as those used by the JPEG committee when it evaluated JPEG XR. For 4:2:0 chroma sampled images the average bit rate reduction for HEVC compared to JPEG 2000 was 20.26% for PSNR and 30.96% for MOS while compared to JPEG it was 61.63% for PSNR and 43.10% for MOS.[126]
Still image coding standard (test method) |
Average bit rate reduction compared to | |
---|---|---|
JPEG 2000 | JPEG | |
HEVC (PSNR) | 20.26% | 61.63% |
HEVC (MOS) | 30.96% | 43.10% |
A PSNR based HEVC performance comparison for still image compression was done in April 2013 by Nokia. HEVC has a larger performance improvement for higher resolution images than lower resolution images and a larger performance improvement for lower bit rates than higher bit rates. For lossy compression to get the same PSNR as HEVC took on average 1.4× more bits with JPEG 2000, 1.6× more bits with JPEG-XR, and 2.3× more bits with JPEG.[127]
A compression efficiency study of HEVC, JPEG, JPEG XR, and WebP was done in October 2013 by Mozilla. The study showed that HEVC was significantly better at compression than the other image formats that were tested. Four different methods for comparing image quality were used in the study which were Y-SSIM, RGB-SSIM, IW-SSIM, and PSNR-HVS-M.[128][129]
Version 2 profiles
Version 2 of HEVC adds 21 range extensions profiles, two scalable extensions profiles, and one multi-view profile: Monochrome, Monochrome 12, Monochrome 16, Main 12, Main 4:2:2 10, Main 4:2:2 12, Main 4:4:4, Main 4:4:4 10, Main 4:4:4 12, Monochrome 12 Intra, Monochrome 16 Intra, Main 12 Intra, Main 4:2:2 10 Intra, Main 4:2:2 12 Intra, Main 4:4:4 Intra, Main 4:4:4 10 Intra, Main 4:4:4 12 Intra, Main 4:4:4 16 Intra, Main 4:4:4 Still Picture, Main 4:4:4 16 Still Picture, High Throughput 4:4:4 16 Intra, Scalable Main, Scalable Main 10, and Multiview Main.[7][130] All of the inter frame range extensions profiles have an Intra profile.[7]
- Monochrome
The Monochrome profile allows for a bit depth of 8-bits per sample with support for 4:0:0 chroma sampling.[7]
- Monochrome 12
The Monochrome 12 profile allows for a bit depth of 8-bits to 12-bits per sample with support for 4:0:0 chroma sampling.[7]
- Monochrome 16
The Monochrome 16 profile allows for a bit depth of 8-bits to 16-bits per sample with support for 4:0:0 chroma sampling. HEVC decoders that conform to the Monochrome 16 profile must be capable of decoding bitstreams made with the following profiles: Monochrome, Monochrome 12, and Monochrome 16.[7]
- Main 12
The Main 12 profile allows for a bit depth of 8-bits to 12-bits per sample with support for 4:0:0 and 4:2:0 chroma sampling. HEVC decoders that conform to the Main 12 profile must be capable of decoding bitstreams made with the following profiles: Monochrome, Monochrome 12, Main, Main 10, and Main 12.[7]
- Main 4|2|2 10
The Main 4:2:2 10 profile allows for a bit depth of 8-bits to 10-bits per sample with support for 4:0:0, 4:2:0, and 4:2:2 chroma sampling. HEVC decoders that conform to the Main 4:2:2 10 profile must be capable of decoding bitstreams made with the following profiles: Monochrome, Main, Main 10, and Main 4:2:2 10.[7]
- Main 4|2|2 12
The Main 4:2:2 12 profile allows for a bit depth of 8-bits to 12-bits per sample with support for 4:0:0, 4:2:0, and 4:2:2 chroma sampling. HEVC decoders that conform to the Main 4:2:2 12 profile must be capable of decoding bitstreams made with the following profiles: Monochrome, Monochrome 12, Main, Main 10, Main 12, Main 4:2:2 10, and Main 4:2:2 12.[7]
- Main 4|4|4
The Main 4:4:4 profile allows for a bit depth of 8-bits per sample with support for 4:0:0, 4:2:0, 4:2:2, and 4:4:4 chroma sampling. HEVC decoders that conform to the Main 4:4:4 profile must be capable of decoding bitstreams made with the following profiles: Monochrome, Main, and Main 4:4:4.[7]
- Main 4|4|4 10
The Main 4:4:4 10 profile allows for a bit depth of 8-bits to 10-bits per sample with support for 4:0:0, 4:2:0, 4:2:2, and 4:4:4 chroma sampling. HEVC decoders that conform to the Main 4:4:4 10 profile must be capable of decoding bitstreams made with the following profiles: Monochrome, Main, Main 10, Main 4:2:2 10, Main 4:4:4, and Main 4:4:4 10.[7]
- Main 4|4|4 12
The Main 4:4:4 12 profile allows for a bit depth of 8-bits to 12-bits per sample with support for 4:0:0, 4:2:0, 4:2:2, and 4:4:4 chroma sampling. HEVC decoders that conform to the Main 4:4:4 12 profile must be capable of decoding bitstreams made with the following profiles: Monochrome, Main, Main 10, Main 12, Main 4:2:2 10, Main 4:2:2 12, Main 4:4:4, Main 4:4:4 10, Main 4:4:4 12, and Monochrome 12.[7]
- Main 4|4|4 16 Intra
The Main 4:4:4 16 Intra profile allows for a bit depth of 8-bits to 16-bits per sample with support for 4:0:0, 4:2:0, 4:2:2, and 4:4:4 chroma sampling. HEVC decoders that conform to the Main 4:4:4 16 Intra profile must be capable of decoding bitstreams made with the following profiles: Monochrome Intra, Monochrome 12 Intra, Monochrome 16 Intra, Main Intra, Main 10 Intra, Main 12 Intra, Main 4:2:2 10 Intra, Main 4:2:2 12 Intra, Main 4:4:4 Intra, Main 4:4:4 10 Intra, and Main 4:4:4 12 Intra.[7]
- High Throughput 4|4|4 16 Intra
The High Throughput 4:4:4 16 Intra profile allows for a bit depth of 8-bits to 16-bits per sample with support for 4:0:0, 4:2:0, 4:2:2, and 4:4:4 chroma sampling. The High Throughput 4:4:4 16 Intra profile has an HbrFactor 12 times higher than other HEVC profiles allowing it to have a maximum bit rate 12 times higher than the Main 4:4:4 16 Intra profile.[7][131] The High Throughput 4:4:4 16 Intra profile is designed for high end professional content creation and decoders for this profile are not required to support other profiles.[131]
- Main 4|4|4 Still Picture
The Main 4:4:4 Still Picture profile allows for a single still picture to be encoded with the same constraints as the Main 4:4:4 profile. As a subset of the Main 4:4:4 profile the Main 4:4:4 Still Picture profile allows for a bit depth of 8-bits per sample with support for 4:0:0, 4:2:0, 4:2:2, and 4:4:4 chroma sampling.[7]
- Main 4|4|4 16 Still Picture
The Main 4:4:4 16 Still Picture profile allows for a single still picture to be encoded with the same constraints as the Main 4:4:4 16 Intra profile. As a subset of the Main 4:4:4 16 Intra profile the Main 4:4:4 16 Still Picture profile allows for a bit depth of 8-bits to 16-bits per sample with support for 4:0:0, 4:2:0, 4:2:2, and 4:4:4 chroma sampling.[7]
- Scalable Main
The Scalable Main profile allows for a base layer that conforms to the Main profile of HEVC.[7]
- Scalable Main 10
The Scalable Main 10 profile allows for a base layer that conforms to the Main 10 profile of HEVC.[7]
- Multiview Main
The Multiview Main profile allows for a base layer that conforms to the Main profile of HEVC.[7]
Version 3 and higher profiles
Version 3 of HEVC added one 3D profile: 3D Main. The February 2016 draft of the screen content coding extensions added seven screen content coding extensions profiles, three high throughput extensions profiles, and four scalable extensions profiles: Screen-Extended Main, Screen-Extended Main 10, Screen-Extended Main 4:4:4, Screen-Extended Main 4:4:4 10, Screen-Extended High Throughput 4:4:4, Screen-Extended High Throughput 4:4:4 10, Screen-Extended High Throughput 4:4:4 14, High Throughput 4:4:4, High Throughput 4:4:4 10, High Throughput 4:4:4 14, Scalable Monochrome, Scalable Monochrome 12, Scalable Monochrome 16, and Scalable Main 4:4:4.[7][106]
- 3D Main
The 3D Main profile allows for a base layer that conforms to the Main profile of HEVC.[7]
- Screen-Extended Main
The Screen-Extended Main profile allows for a bit depth of 8-bits per sample with support for 4:0:0 and 4:2:0 chroma sampling. HEVC decoders that conform to the Screen-Extended Main profile must be capable of decoding bitstreams made with the following profiles: Monochrome, Main, and Screen-Extended Main.[106]
- Screen-Extended Main 10
The Screen-Extended Main 10 profile allows for a bit depth of 8-bits to 10-bits per sample with support for 4:0:0 and 4:2:0 chroma sampling. HEVC decoders that conform to the Screen-Extended Main 10 profile must be capable of decoding bitstreams made with the following profiles: Monochrome, Main, Main 10, Screen-Extended Main, and Screen-Extended Main 10.[106]
- Screen-Extended Main 4|4|4
The Screen-Extended Main 4:4:4 profile allows for a bit depth of 8-bits per sample with support for 4:0:0, 4:2:0, 4:2:2, and 4:4:4 chroma sampling. HEVC decoders that conform to the Screen-Extended Main 4:4:4 profile must be capable of decoding bitstreams made with the following profiles: Monochrome, Main, Main 4:4:4, Screen-Extended Main, and Screen-Extended Main 4:4:4.[106]
- Screen-Extended Main 4|4|4 10
The Screen-Extended Main 4:4:4 10 profile allows for a bit depth of 8-bits to 10-bits per sample with support for 4:0:0, 4:2:0, 4:2:2, and 4:4:4 chroma sampling. HEVC decoders that conform to the Screen-Extended Main 4:4:4 10 profile must be capable of decoding bitstreams made with the following profiles: Monochrome, Main, Main 10, Main 4:2:2 10, Main 4:4:4, Main 4:4:4 10, Screen-Extended Main, Screen-Extended Main 10, Screen-Extended Main 4:4:4, and Screen-Extended Main 4:4:4 10.[106]
- Screen-Extended High Throughput 4|4|4
The Screen-Extended High Throughput 4:4:4 profile allows for a bit depth of 8-bits per sample with support for 4:0:0, 4:2:0, 4:2:2, and 4:4:4 chroma sampling. The Screen-Extended High Throughput 4:4:4 profile has an HbrFactor 6 times higher than most inter frame HEVC profiles allowing it to have a maximum bit rate 6 times higher than the Main 4:4:4 profile. HEVC decoders that conform to the Screen-Extended High Throughput 4:4:4 profile must be capable of decoding bitstreams made with the following profiles: Monochrome, Main, Main 4:4:4, Screen-Extended Main, Screen-Extended Main 4:4:4, Screen-Extended High Throughput 4:4:4, and High Throughput 4:4:4.[106]
- Screen-Extended High Throughput 4|4|4 10
The Screen-Extended High Throughput 4:4:4 10 profile allows for a bit depth of 8-bits to 10-bits per sample with support for 4:0:0, 4:2:0, 4:2:2, and 4:4:4 chroma sampling. The Screen-Extended High Throughput 4:4:4 10 profile has an HbrFactor 6 times higher than most inter frame HEVC profiles allowing it to have a maximum bit rate 6 times higher than the Main 4:4:4 10 profile. HEVC decoders that conform to the Screen-Extended High Throughput 4:4:4 10 profile must be capable of decoding bitstreams made with the following profiles: Monochrome, Main, Main 10, Main 4:2:2 10, Main 4:4:4, Main 4:4:4 10, Screen-Extended Main, Screen-Extended Main 10, Screen-Extended Main 4:4:4, Screen-Extended Main 4:4:4 10, Screen-Extended High Throughput 4:4:4, Screen-Extended High Throughput 4:4:4 10, High Throughput 4:4:4, and High Throughput 4:4:4.[106]
- Screen-Extended High Throughput 4|4|4 14
The Screen-Extended High Throughput 4:4:4 14 profile allows for a bit depth of 8-bits to 14-bits per sample with support for 4:0:0, 4:2:0, 4:2:2, and 4:4:4 chroma sampling. The Screen-Extended High Throughput 4:4:4 14 profile has an HbrFactor 6 times higher than most inter frame HEVC profiles. HEVC decoders that conform to the Screen-Extended High Throughput 4:4:4 14 profile must be capable of decoding bitstreams made with the following profiles: Monochrome, Main, Main 10, Main 4:2:2 10, Main 4:4:4, Main 4:4:4 10, Screen-Extended Main, Screen-Extended Main 10, Screen-Extended Main 4:4:4, Screen-Extended Main 4:4:4 10, Screen-Extended High Throughput 4:4:4, Screen-Extended High Throughput 4:4:4 10, Screen-Extended High Throughput 4:4:4 14, High Throughput 4:4:4, High Throughput 4:4:4 10, and High Throughput 4:4:4 14.[106]
- High Throughput 4|4|4
The High Throughput 4:4:4 profile allows for a bit depth of 8-bits per sample with support for 4:0:0, 4:2:0, 4:2:2, and 4:4:4 chroma sampling. The High Throughput 4:4:4 profile has an HbrFactor 6 times higher than most inter frame HEVC profiles allowing it to have a maximum bit rate 6 times higher than the Main 4:4:4 profile. HEVC decoders that conform to the High Throughput 4:4:4 profile must be capable of decoding bitstreams made with the following profiles: High Throughput 4:4:4.[106]
- High Throughput 4|4|4 10
The High Throughput 4:4:4 10 profile allows for a bit depth of 8-bits to 10-bits per sample with support for 4:0:0, 4:2:0, 4:2:2, and 4:4:4 chroma sampling. The High Throughput 4:4:4 10 profile has an HbrFactor 6 times higher than most inter frame HEVC profiles allowing it to have a maximum bit rate 6 times higher than the Main 4:4:4 10 profile. HEVC decoders that conform to the High Throughput 4:4:4 10 profile must be capable of decoding bitstreams made with the following profiles: High Throughput 4:4:4 and High Throughput 4:4:4 10.[106]
- High Throughput 4|4|4 14
The High Throughput 4:4:4 14 profile allows for a bit depth of 8-bits to 14-bits per sample with support for 4:0:0, 4:2:0, 4:2:2, and 4:4:4 chroma sampling. The High Throughput 4:4:4 14 profile has an HbrFactor 6 times higher than most inter frame HEVC profiles. HEVC decoders that conform to the High Throughput 4:4:4 14 profile must be capable of decoding bitstreams made with the following profiles: High Throughput 4:4:4, High Throughput 4:4:4 10, and High Throughput 4:4:4 14.[106]
- Scalable Monochrome
The Scalable Monochrome profile allows for a base layer that conforms to the Monochrome profile of HEVC.[106]
- Scalable Monochrome 12
The Scalable Monochrome 12 profile allows for a base layer that conforms to the Monochrome 12 profile of HEVC.[106]
- Scalable Monochrome 16
The Scalable Monochrome 16 profile allows for a base layer that conforms to the Monochrome 16 profile of HEVC.[106]
- Scalable Main 4|4|4
The Scalable Main 4:4:4 profile allows for a base layer that conforms to the Main 4:4:4 profile of HEVC.[106]
Tiers and levels
The HEVC standard defines two tiers, Main and High, and thirteen levels. A level is a set of constraints for a bitstream. For levels below level 4 only the Main tier is allowed. The Main tier is a lower tier than the High tier. The tiers were made to deal with applications that differ in terms of their maximum bit rate. The Main tier was designed for most applications while the High tier was designed for very demanding applications.A decoder that conforms to a given tier/level is required to be capable of decoding all bitstreams that are encoded for that tier/level and for all lower tiers/levels.[2][7]
Level | Max luma sample rate (samples/s) |
Max luma picture size (samples) |
Max bit rate for Main and Main 10 profiles (kbit/s)[A] |
Example picture resolution @ highest frame rate[B] (MaxDpbSize[C]) More/Fewer examples | |
---|---|---|---|---|---|
Main tier | High tier | ||||
1 | 552,960 | 36,864 | 128 | – | 128×[email protected] (6) 176×[email protected] (6) |
2 | 3,686,400 | 122,880 | 1,500 | – | 176×[email protected] (16) 352×[email protected] (6) |
2.1 | 7,372,800 | 245,760 | 3,000 | – | 352×[email protected] (12) 640×[email protected] (6) |
3 | 16,588,800 | 552,960 | 6,000 | – | 960×[email protected] (6) |
3.1 | 33,177,600 | 983,040 | 10,000 | – | 1280×[email protected] (6) |
4 | 66,846,720 | 2,228,224 | 12,000 | 30,000 | 2,048×1,[email protected] (6) |
4.1 | 133,693,440 | 20,000 | 50,000 | 2,048×1,[email protected] (6) | |
5 | 267,386,880 | 8,912,896 | 25,000 | 100,000 | 4,096×2,[email protected] (6) |
5.1 | 534,773,760 | 40,000 | 160,000 | 4,096×2,[email protected] (6) | |
5.2 | 1,069,547,520 | 60,000 | 240,000 | 4,096×2,[email protected] (6) | |
6 | 1,069,547,520 | 35,651,584 | 60,000 | 240,000 | 8,192×4,[email protected] (6) |
6.1 | 2,139,095,040 | 120,000 | 480,000 | 8,192×4,[email protected] (6) | |
6.2 | 4,278,190,080 | 240,000 | 800,000 | 8,192×4,[email protected] (6) |
- A The maximum bit rate of the profile is based on the combination of bit depth, chroma sampling, and the type of profile. For bit depth the maximum bit rate increases by 1.5× for 12-bit profiles and 2× for 16-bit profiles. For chroma sampling the maximum bit rate increases by 1.5× for 4:2:2 profiles and 2× for 4:4:4 profiles. For the Intra profiles the maximum bit rate increases by 2×.[7]
- B The maximum frame rate supported by HEVC is 300 fps.[7]
- C The MaxDpbSize is the maximum number of pictures in the decoded picture buffer.[7]
Decoded picture buffer
Previously decoded pictures are stored in a decoded picture buffer (DPB), and are used by HEVC encoders to form predictions for subsequent pictures. The maximum number of pictures that can be stored in the DPB, called the DPB capacity, is 6 (including the current picture) for all HEVC levels when operating at the maximum picture size supported by the level. The DPB capacity (in units of pictures) increases from 6 to 8, 12, or 16 as the picture size decreases from the maximum picture size supported by the level. The encoder selects which specific pictures are retained in the DPB on a picture-by-picture basis, so the encoder has the flexibility to determine for itself the best way to use the DPB capacity when encoding the video content.[7]
Containers
MPEG has published an amendment which added HEVC support to the MPEG transport stream used by ATSC, DVB, and Blu-ray Disc; MPEG decided not to update the MPEG program stream used by DVD-Video.[132][133] MPEG has also added HEVC support to the ISO base media file format.[134][135] HEVC is also supported by the MPEG media transport standard.[132][136] Support for HEVC was added to Matroska starting with the release of MKVToolNix v6.8.0 after a patch from DivX was merged.[137][138] A draft document has been submitted to the Internet Engineering Task Force which describes a method to add HEVC support to the Real-time Transport Protocol.[139]
Using HEVC's intra frame encoding, a still-image coded format called Better Portable Graphics (BPG) has been proposed by the programmer Fabrice Bellard.[140] It is essentially a wrapper for images coded using the HEVC Main 4:4:4 16 Still Picture profile with up to 14 bits per sample, although it uses an abbreviated header syntax and adds explicit support for Exif, ICC profiles, and XMP metadata.[140][141]
Patent License Royalties
License fees for HEVC patents, compared to its main competitors:
Video format | Licensor | Royalty Free Allowance | Codec Royalties | Max Annual Codec Royalty | Content distribution fee |
---|---|---|---|---|---|
HEVC | MPEG LA | First 100,000 units each year[142] | US $0.20 per hardware or software implementation | US $25 million | 0 |
HEVC Advance | US $25,000 each year[143] Most software HEVC implementations distributed to consumer devices after first sale[144] | Region 1: US$0.40 (mobile), US$0.80 (PC), US$1.20 (TV) Region 2: US$0.20 (mobile), US$0.40 (PC), US$0.60 (TV)[145] | US $40 million | 0 for content that is free to end users Paid By Title Model US$0.025 per paid title Paid Subscriber Model US$0.005 per month per paid subscriber US$2.5 million annual cap per business model US $5 million total annual cap | |
Technicolor | tailor made agreements[45] | ||||
AVC | MPEG LA | Codecs to end users and OEM for PC but not part of PC OS First 100,000 units each year | >100,000 units/year = US $0.20 >5,000,000 units/year = US$0.10 [146] | US $8.125 million | Free Television one time $2,500 per transmission encoder or $2,500 to $10,000 annual fee Internet Broadcast 0 Paid Subscriber Model 0-100,000 subscribers = 0 100,000 - 250,000 subscribers = $25,000/yr 250,000 - 500,000 subscribers = $50,000/yr >500,000 to 1M subscribers = $75,000/yr >1M subscribers = $100,000/yr Paid by Title 12 minutes or less = no royalty >12 minutes in length = lower of 2% or US $0.02 per title Maximum Annual Content Related Royalty US $8.125 million |
MPEG LA | Branded OEM Codecs for PC OS First 100,000 units each year | >100,000 units/year = US $0.20 >5,000,000 units/year = US$0.10 [146] | US $8.125 million | ||
VP9 | 0 | 0 | 0 | ||
AV1 | Alliance for Open Media | 0 | 0 | 0 |
Note: Maximum Annual Royalty Cap for MPEG LA AVC Royalties will increase to $9.75 million per year in 2017-2020 for all of the above product types
Provision for costless software
Like its predecessor AVC, software which implements HEVC must pay a price per distributed copy.† While this licensing model is unproblematic for paid software, it is an obstacle to most free and open-source software, which is crucially meant to be freely distributable. In the opinion of MulticoreWare, developers of x265, enabling royalty-free software encoders and decoders is in the interest of accelerating HEVC adoption.[147][148] HEVC Advance made an exception that specifically waives the royalties on software-only implementations (both decoders and encoders) when not bundled with hardware.[149] However, in order for such software to be fully royalty-free, the exception would also need to be made by MPEG LA and Technicolor.
While the obstacle to free software is no concern in for example TV broadcast networks, this problem, combined with the prospect of future collective lock-in to the format, makes several ideal organizations like Wikipedia,[150] Mozilla (see OpenH264) and the Free Software Foundation wary of royalty bearing formats for internet use.
^† : Irrespective of how the software is licensed from the software authors (see software licensing), if what it does is patented, it is (additionally) bound by the patent holders' licenses.
See also
- x265 – open source software implementation of HEVC
- H.264/MPEG-4 AVC – the predecessor video standard of HEVC
- VP8 – an open format competitor to H.264/MPEG-4 AVC that was made an open format by Google
- VP9 – an open format developed by Google as a competitor to HEVC
- AV1 – an open format developed by Alliance for Open Media as successor to VP9 & a competitor to HEVC
- Dirac (video compression format) – an open format competitor to the H.264/MPEG-4 AVC video standard that was developed by the BBC
- Thor (video codec) – a competitor to HEVC that is being developed by Cisco
- Daala – an open format competitor to HEVC that is being developed by Mozilla Foundation and Xiph.Org Foundation
- UHDTV – digital television formats with resolutions of 4K / 2160p (3840x2160) and 8K / 4320p (7680x4320)
- Rec. 2020 – ITU-R Recommendation for UHDTV
- List of multimedia (audio/video) codecs
- List of open-source codecs
References
Citations
- ↑ http://www.streamingmedia.com/Articles/Editorial/Featured-Articles/A-Progress-Report-The-Alliance-for-Open-Media-and-the-AV1-Codec-110383.aspx
- 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 Sullivan 2012.
- ↑ T. Wedi and T. K. Tan, AHG report – Coding Efficiency Improvements, VCEG document VCEG-AA06, 17–18 October 2005.
- ↑ Meeting Report for 31st VCEG Meeting VCEG document VCEG-AE01r1, Marrakech, MA, 15–16 January 2007
- ↑ ITU TSB (2010-05-21). "Joint Collaborative Team on Video Coding". ITU-T. Retrieved 2012-08-24.
- 1 2 "ISO/IEC 23008-2:2013". International Organization for Standardization. 2013-11-25. Retrieved 2013-11-29.
- 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 ITU 2015.
- ↑ G. J. Sullivan; J. M. Boyce; Y. Chen; J.-R. Ohm; C. A. Segall; A. Vetro (December 2013). "Standardized Extensions of High Efficiency Video Coding" (PDF). IEEE Journal on Selected Topics in Signal Processing. IEEE. 7 (6). Retrieved 2015-02-21.
- ↑ Gerhard Tech; Krzysztof Wegner; Ying Chen; Sehoon Yea (2015-02-18). "3D-HEVC Draft Text 7". JCT-3V. Retrieved 2015-02-26.
- 1 2 3 Jie Dong (2010-06-19). "The First JCT-VC Meeting, Dresden, DE". H265.net. Retrieved 2012-11-25.
- ↑ Jie Dong (2008-07-01). "Current Status of H.265 (as at July 2008)". H265.net. Retrieved 2012-11-25.
- 1 2 3 Yu Liu (2009-04-15). "The Preliminary Requirements for NGVC". H265.net. Retrieved 2012-11-25.
- 1 2 "Draft requirements for "EPVC" enhanced performance video coding project". ITU-T VCEG. 2009-07-10. Retrieved 2012-08-24.
- 1 2 "An Interview With Dr. Thomas Wiegand". in-cites. 2007-07-01. Retrieved 2012-08-18.
- 1 2 Yu Liu (2009-07-03). "Current Status of HVC (High-Performance Video Coding) in MPEG". H265.net. Retrieved 2012-11-25.
- ↑ "Dresden Meeting – Document Register". ITU-T. Retrieved 2012-11-24.
- ↑ "Documents of the first meeting of the Joint Collaborative Team on Video Coding (JCT-VC) – Dresden, Germany, 15–23 April 2010". ITU-T. 2010-04-23. Retrieved 2012-08-24.
- ↑ "New video codec to ease pressure on global networks". ITU. 2013-01-25. Retrieved 2013-01-25.
- ↑ Todd Spangler (2013-01-25). "ITU OKs Next-Generation Video Codec Standard". Multichannel News. Retrieved 2013-01-25.
- ↑ "ITU-T Work Programme". ITU. Retrieved 2013-01-27.
- ↑ "MPEG HEVC – The next major milestone in MPEG video history is achieved" (DOC). MPEG. 2013-01-25. Retrieved 2013-01-27.
- ↑ "MPEG Basics". MPEG. Retrieved 2013-01-28.
- 1 2 "ITU-T Home : Study groups : ITU-T Recommendations : ITU-T H.265 (04/2013)". ITU. 2013-04-13. Retrieved 2013-04-16.
- 1 2 "AAP Recommendation: H.265". ITU. 2013-04-13. Retrieved 2013-04-16.
- 1 2 "AAP Announcement No. 09". ITU. 2013-04-15. Retrieved 2013-04-16.
- ↑ "Reference model for mixed and augmented reality defines architecture and terminology for MAR applications" (DOCX). MPEG. 2014-07-11. Retrieved 2014-07-26.
- 1 2 "ITU-T Home : Study groups : ITU-T Recommendations : ITU-T H.265 (V2) (10/2014)". ITU. 2014-10-29. Retrieved 2014-11-01.
- 1 2 "AAP Recommendation: H.265 (V2)". ITU. 2014-10-29. Retrieved 2014-11-01.
- 1 2 "AAP Announcement No. 45". ITU. 2014-10-31. Retrieved 2014-11-01.
- 1 2 "ITU-T Home : Study groups : ITU-T Recommendations : ITU-T H.265 (04/2015)". ITU. 2015-04-29. Retrieved 2015-06-26.
- 1 2 "AAP Recommendation: H.265 (V3)". ITU. 2015-04-29. Retrieved 2015-06-26.
- 1 2 "AAP Announcement No. 56". ITU. 2015-04-30. Retrieved 2015-06-26.
- ↑ "AAP Recommendation: H.265 (V4)". ITU. 2016-10-29. Retrieved 2016-10-31.
- ↑ "AAP Announcement No. 91". ITU. 2016-10-31. Retrieved 2016-10-31.
- ↑ "MPEG LA Offers HEVC Patent Portfolio License". Yahoo Finance. 2014-09-29. Retrieved 2014-09-29.
- ↑ "HEVC Patent Portfolio License Briefing" (PDF). MPEG LA. 2014-09-29. Retrieved 2014-09-29.
- ↑ Ozer, Jan (2015-01-15). "MPEG LA Announces Proposed HEVC Licensing Terms".
- ↑ "MPEG LA Expands HEVC License Coverage". Yahoo Finance. 2015-03-19. Retrieved 2015-03-20.
- ↑ Ozer, Jan (1 April 2015). "New HEVC Patent Pool: What Are the Implications?".
- 1 2 "Royalty Rates Summary" (PDF). HEVC Advance. 2015-07-22. Retrieved 2015-07-22.
- ↑ Dan Rayburn (2015-07-23). "New Patent Pool Wants 0.5% Of Gross Revenue From Apple, Facebook & Others Over Higher Quality Video". The Huffington Post. Retrieved 2015-07-23.
- ↑ Peter Bright (2015-07-23). "New patent group threatens to derail 4K HEVC video streaming". Ars Technica. Retrieved 2015-07-23.
- ↑ "Royalty Rates Summary" (PDF). HEVC Advance. 2015-12-18. Retrieved 2015-12-20.
- ↑ Dan Rayburn (2016-02-03). "Technicolor withdraws from the HEVC Advance pool to enable direct licensing of its HEVC IP portfolio". GlobeNewswire. Retrieved 2016-02-04.
- 1 2 Joff Wild (2016-05-16). "Technicolor CIPO explains why the company left the HEVC Advance patent pool". Retrieved 2016-05-18.
- ↑ http://www.prnewswire.com/news-releases/hevc-advance-announces-royalty-free-hevc-software-300367212.html
- ↑ "Qualcomm shows horsepower of next-gen H.265 video". CNET. 2012-02-29. Retrieved 2012-10-12.
- 1 2 "ATEME Enables Industry First Open Source Implementation Supporting HEVC". Reuters. 2013-04-03. Retrieved 2013-04-04.
- ↑ "ATEME Enables Industry First Open Source Implementation Supporting HEVC". PR Newswire. 2013-04-03. Retrieved 2013-04-04.
- ↑ Joel Hruska (2013-07-23). "H.265 benchmarked: Does the next-generation video codec live up to expectations?". ExtremeTech. Retrieved 2013-07-23.
- ↑ Chris Angelini (2013-07-23). "Next-Gen Video Encoding: x265 Tackles HEVC/H.265". Tom's Hardware. Retrieved 2013-07-23.
- ↑ "NTT Develops World's Highest-level Compression Software Encoding Engine Fully Compliant with Next-gen "HEVC/H.265" Video Coding Standard, Rolls Out "HEVC-1000 SDK" Codec Development Kit". Nippon Telegraph and Telephone. 2013-08-08. Retrieved 2013-08-17.
- 1 2 "DivX HEVC Encoder and Decoder Performance". DivX. 2013-11-14. Archived from the original on 2013-12-10. Retrieved 2013-11-14.
- ↑ "ViXS Begins Shipments of Industry's First SoC to Support Ultra HD 4K and 10-bit HEVC". Yahoo Finance. 2013-12-18. Retrieved 2014-01-07.
- ↑ "Harmonic Chooses Altera Solution for H.265 4Kp60 Video Encoding". NewsRoom Altera. 2014-04-07. Retrieved 2015-03-24.
- ↑ "Real-time 4K60fps HEVC Encoder". Youtube. 2014-12-17. Retrieved 2015-03-24.
- ↑ "Ittiam Systems announces availability of its third generation H.265/HEVC codec with 422 12-bit support". Ittiam Systems. August 8, 2014. Retrieved November 1, 2014.
- 1 2 3 "4K Blu-ray discs arriving in 2015 to fight streaming media". CNET. September 5, 2014. Retrieved September 6, 2014.
- 1 2 3 "BDA Updates Blu-ray 4K Timeline". Home Media Magazine. September 5, 2014. Retrieved September 6, 2014.
- ↑ Mikey Campbell (September 12, 2014). "Apple's iPhone 6, iPhone 6 Plus use H.265 codec for FaceTime over cellular". AppleInsider. Retrieved September 13, 2014.
- ↑ Ryan Smith (2014-09-18). "The NVIDIA GeForce GTX 980 Review". AnandTech. Retrieved 2015-05-03.
- ↑ Gabriel Aul (October 31, 2014). "HEVC also supported in-box.". Twitter. Retrieved November 3, 2014.
- ↑ John Callaham (November 1, 2014). "Microsoft: Windows 10 will support the HEVC video compression standard". Windows Central. Retrieved November 3, 2014.
- ↑ Bogdan Popa (November 3, 2014). "Microsoft Confirms MKV File Support in Windows 10". Softpedia. Retrieved November 15, 2014.
- ↑ Gabe Aul (November 12, 2014). "New build available to the Windows Insider Program". Microsoft. Retrieved November 15, 2014.
- ↑ http://www.ittiam.com/News/en/Press-releases/2014/162-Ittiam%E2%80%99s-H265-Software-Solution-Enables-HEVC-Support-in-Android%E2%80%99s-Lollipop-Release.aspx
- ↑ "ViXS Announces World's First SoC With High Dynamic Range and 4K Ultra HD 12-Bit Color". Yahoo Finance. 2015-01-05. Retrieved 2015-01-10.
- ↑ http://www.nvidia.com/object/tegra-x1-processor.html
- ↑ http://www.anandtech.com/show/8811/nvidia-tegra-x1-preview
- ↑ http://www.anandtech.com/show/8923/nvidia-launches-geforce-gtx-960
- ↑ Rick Merritt (2015-01-05). "AMD Describes Notebook Processor". EE Times. Retrieved 2015-01-10.
- ↑ "VITEC Unveils World's First Hardware-Based Portable HEVC Encoding and Streaming Appliance". Reuters. 2015-03-31. Retrieved 2016-02-01.
- ↑ "Release Notes – 0.28". 11 April 2016. Retrieved 23 April 2016.
- ↑ "Nvidia GeForce GTX 1080 Pascal Review". Tom's Hardware. 2016-05-17. Retrieved 2016-07-31.
- ↑ http://www.anandtech.com/show/10610/intel-announces-7th-gen-kaby-lake-14nm-plus-six-notebook-skus-desktop-coming-in-january/3
- 1 2 3 4 Ohm 2012.
- ↑ Hanhart 2012.
- ↑ Slides 2012.
- ↑ "Subjective quality evaluation of the upcoming HEVC video compression standard". École Polytechnique Fédérale de Lausanne (EPFL). Retrieved 2012-11-08.
- ↑ Nic Healey (2012-08-29). "HEVC video compression could be the next step for 4K". cnet. Retrieved 2012-11-08.
- ↑ Dan Grois; Detlev Marpe; Amit Mulayoff; Benaya Itzhaky; Ofer Hadar (2013-12-08). "Performance Comparison of H.265/MPEG-HEVC, VP9, and H.264/MPEG-AVC Encoders" (PDF). Fraunhofer Heinrich Hertz Institute. Retrieved 2012-12-14.
- 1 2 TK Tan; Marta Mrak; Vittorio Baroncini; Naeem Ramzan (2014-05-18). "Report on HEVC compression performance verification testing". JCT-VC. Retrieved 2014-05-25.
- ↑ "Comparison of compression efficiency between HEVC/H.265 and VP9 based on subjective assessments". École Polytechnique Fédérale de Lausanne (EPFL). Retrieved 2014-08-26.
- ↑ Martin Rerabek; Touradj Ebrahimi (2014-08-18). "Comparison of compression efficiency between HEVC/H.265 and VP9 based on subjective assessments" (PDF). École Polytechnique Fédérale de Lausanne (EPFL). Retrieved 2014-08-26.
- ↑ Martin Rerabek; Touradj Ebrahimi (2014-08-23). "Comparison of compression efficiency between HEVC/H.265 and VP9 based on subjective assessments". slideshare.com. Retrieved 2014-08-26.
- ↑ http://techblog.netflix.com/2016/08/a-large-scale-comparison-of-x264-x265.html
- ↑ http://www.streamingmedia.com/Articles/Editorial/Featured-Articles/Netflix-Finds-x265-20-More-Efficient-than-VP9-113346.aspx
- ↑ Gary Sullivan; Jens-Rainer Ohm (2013-07-27). "Meeting report of the 13th meeting of the Joint Collaborative Team on Video Coding (JCT-VC), Incheon, KR, 18–26 Apr. 2013". JCT-VC. Retrieved 2013-09-01.
- ↑ "Highlights of the 88th Meeting". MPEG. 2009-04-24. Retrieved 2012-08-24.
- ↑ "Vision, Applications and Requirements for High Efficiency Video Coding (HEVC). ISO/IEC JTC1/SC29/WG11/N11872". ISO/IEC. January 2011. Retrieved 2012-08-24.
- ↑ Christian Timmerer (2009-02-09). "Vision and Requirements for High-Performance Video Coding (HVC). ISO/IEC JTC1/SC29/WG11/N10361". ISO/IEC. Retrieved 2012-08-24.
- ↑ Jérôme VIERON (2012-11-27). "HEVC: High-Efficiency Video Coding Next generation video compression" (PDF). Ateme. Retrieved 2013-05-21.
- ↑ Gregory Cox (2013-09-11). "An Introduction to Ultra HDTV and HEVC" (PDF). Ateme. Retrieved 2014-12-03.
- ↑ "Description of High Efficiency Video Coding (HEVC)". JCT-VC. 2011-01-01. Retrieved 2012-09-15.
- 1 2 3 V. Sze; M. Budagavi (2013-01-13). "High Throughput CABAC Entropy Coding in HEVC" (PDF). IEEE Transactions on Circuits and Systems for Video Technology. Retrieved 2013-01-13.
- ↑ Tung, Nguyen; Philipp, Helle; Martin, Winken; Benjamin, Bross; Detlev, Marpe; Heiko, Schwarz; Thomas, Wiegand (Dec 2013). "Transform Coding Techniques in HEVC". Journal of Selected Topics in Signal Processing. 7: 978–989.
- ↑ Tung, Nguyen; Detlev, Marpe; Heiko, Schwarz; Thomas, Wiegand. "Reduced-Complexity Entropy Coding of Transform Coefficient Levels Using Truncated Golomb-Rice Codes in Video Compression" (PDF).
- 1 2 3 Gary Sullivan; Jens-Rainer Ohm (2012-10-13). "Meeting report of the 10th meeting of the Joint Collaborative Team on Video Coding (JCT-VC), Stockholm, SE, 11–20 July 2012". JCT-VC. Retrieved 2013-04-28.
- 1 2 3 4 Alistair Goudie (2012-07-02). "Restrictions to the maximum motion vector range". JCT-VC. Retrieved 2012-11-26.
- 1 2 3 Keiichi Chono; Minhua Zhou (2012-07-19). "BoG on miscellaneous limits". JCT-VC. Retrieved 2012-11-26.
- 1 2 3 4 5 6 7 8 9 Chih-Ming Fu; Elena Alshina; Alexander Alshin; Yu-Wen Huang; Ching-Yeh Chen; Chia-Yang Tsai; Chih-Wei Hsu; Shaw-Min Lei; Jeong-Hoon Park; Woo-Jin Han (2012-12-25). "Sample adaptive offset in the HEVC standard" (PDF). IEEE Transactions on Circuits and Systems for Video Technology. Retrieved 2013-01-24.
- 1 2 "Meeting report of the 15th meeting of the Joint Collaborative Team on Video Coding (JCT-VC), Geneva, CH, 23 Oct. – 1 Nov. 2013" (DOC). ITU-T. 2013-11-03. Retrieved 2013-11-09.
- ↑ Ali, Khairat; Tung, Nguyen; Mischa, Siekmann; Detlev, Marpe. "Adaptive Cross-Component Prediction for 4:4:4 High Efficiency Video Coding" (PDF).
- 1 2 Pierre Andrivon; Philippe Bordes; Edouard François (2014-04-02). "SEI message for Colour Mapping Information". JCT-VC. Retrieved 2014-07-17.
- ↑ Sally Hattori; Ohji Nakagami; Teruhiko Suzuki (2014-01-15). "HLS: SEI message for Knee Function Information". JCT-VC. Retrieved 2014-07-17.
- 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 Rajan Joshi; Shan Liu; Gary Sullivan; Gerhard Tech; Ye-Kui Wang; Jizheng Xu; Yan Ye (2016-03-24). "HEVC Screen Content Coding Draft Text 6". JCT-VC. Retrieved 2016-03-26.
- ↑ "High Dynamic Range" (PDF). European Broadcasting Union. Retrieved 2015-11-01.
- ↑ Matteo Naccari; Andrew Cotton; Sebastian Schwarz; Manish Pindoria; Marta Mrak; Tim Borer (2015-06-09). "High dynamic range compatibility information SEI message". JCT-VC. Retrieved 2016-10-31.
- ↑ Gary Sullivan (2015-06-10). "Ambient viewing environment SEI message". JCT-VC. Retrieved 2016-11-02.
- ↑ Adrian Pennington (2012-08-01). "Ultra HD: Standards and broadcasters align". www.tvbeurope.com. p. 45. Retrieved 2012-11-25.
- 1 2 Jill Boyce; Jianle Chen; Ying Chen; David Flynn; Miska M. Hannuksela; Matteo Naccari; Chris Rosewarne; Karl Sharman; Joel Sole; Gary J. Sullivan; Teruhiko Suzuki; Gerhard Tech; Ye-Kui Wang; Krzysztof Wegner; Yan Ye (2014-07-11). "Draft high efficiency video coding (HEVC) version 2, combined format range extensions (RExt), scalability (SHVC), and multi-view (MV-HEVC) extensions". JCT-VC. Retrieved 2014-07-11.
- 1 2 3 Per Fröjdh; Andrey Norkin; Rickard Sjöberg (2013-04-23). "Next generation video compression" (PDF). Ericsson. Retrieved 2013-04-24.
- 1 2 Jens-Rainer Ohm (2014-01-28). "Recent MPEG/JCT-VC/JCT-3V Video Coding Standardization" (PDF). MPEG. Retrieved 2014-04-18.
- ↑ "Joint Call for Proposals for Coding of Screen Content" (PDF). JCT-VC. 2014-01-17. Retrieved 2014-11-15.
- ↑ "Meeting Report of 18th JCT-VC Meeting". ITU-T. 2014-10-17. Retrieved 2014-11-15.
- 1 2 Carl Furgusson (2013-06-11). "Focus on...HEVC: The background behind the game-changing standard- Ericsson". Ericsson. Retrieved 2013-06-21.
- 1 2 Simon Forrest (2013-06-20). "The emergence of HEVC and 10-bit colour formats". Imagination Technologies. Retrieved 2013-06-21.
- 1 2 Alberto Dueñas; Adam Malamy (2012-10-18). "On a 10-bit consumer-oriented profile in High Efficiency Video Coding (HEVC)". JCT-VC. Retrieved 2012-11-03.
- 1 2 Pierre Andrivon; Marco Arena; Philippe Salmon; Philippe Bordes; Paola Sunna (2013-04-08). "Comparison of Compression Performance of HEVC Draft 10 with AVC for UHD-1 material". JCT-VC. Retrieved 2013-04-28.
- ↑ Philippe Bordes; Gordon Clare; Félix Henry; Mickaël Raulet; Jérôme Viéron (2012-07-20). "An overview of the emerging HEVC standard" (PDF). Technicolor. Retrieved 2012-10-05.
- ↑ "Rennes Research & Innovation Center: Publication". Technicolor. 2012-07-20. Retrieved 2012-10-05.
- ↑ Detlev Marpe; Heiko Schwarz; Sebastian Bosse; Benjamin Bross; Philipp Helle; Tobias Hinz; Heiner Kirchhoffer; Haricharan Lakshman; et al. "Video Compression Using Nested Quadtree Structures, Leaf Merging and Improved Techniques for Motion Representation and Entropy Coding" (PDF). IEEE Transactions on Circuits and Systems for Video Technology. Retrieved 2012-11-08.
- ↑ Alexandru Voica (2013-06-20). "Decoding HEVC in 10-bit colours at 4K resolutions: PowerVR D5500, a Rosetta Stone for video decode". Imagination Technologies. Retrieved 2013-06-21.
- ↑ Jani Lainema; Kemal Ugur (2012-04-20). "On HEVC still picture coding performance". JCT-VC. Retrieved 2013-01-22.
- ↑ T. Nguyen; D. Marpe (2012-05-03). "Performance Comparison of HM 6.0 with Existing Still Image Compression Schemes Using a Test Set of Popular Still Images". JCT-VC. Retrieved 2012-12-31.
- 1 2 Philippe Hanhart; Martin Rerabek; Pavel Korshunov; Touradj Ebrahimi (2013-01-09). "AhG4: Subjective evaluation of HEVC intra coding for still image compression". JCT-VC. Retrieved 2013-01-11.
- ↑ Kemal Ugur; Jani Lainema (2013-04-04). "Updated results on HEVC still picture coding performance". JCT-VC. Retrieved 2013-04-04.
- ↑ "Studying Lossy Image Compression Efficiency". Mozilla. 2013-10-17. Retrieved 2013-10-19.
- ↑ "Lossy Compressed Image Formats Study". Mozilla. 2013-10-17. Retrieved 2013-10-19.
- ↑ Jianle Chen; Jill Boyce; Yan Ye; Miska M. Hannuksela; Gary J. Sullivan; Ye-kui Wang (2014-07-10). "HEVC Scalable Extensions (SHVC) Draft Text 7 (separated text)". JCT-VC. Retrieved 2014-07-13.
- 1 2 K. Sharman; N. Saunders; J. Gamei; T. Suzuki; A. Tabatabai (2014-06-20). "High 4:4:4 16 Intra profile specification". JCT-VC. Retrieved 2014-07-13.
- 1 2 "Work plan and time line". MPEG. Retrieved 2013-05-31.
- ↑ "ISO/IEC 13818-1:2013/Amd 3:2014". International Organization for Standardization. 2014-04-10. Retrieved 2014-04-20.
- ↑ "ISO/IEC 14496-15:2014". International Organization for Standardization. 2014-06-24. Retrieved 2014-06-28.
- ↑ "Text of ISO/IEC 14496-15:2013/DCOR 1". MPEG. 2013-11-05. Retrieved 2013-12-14.
- ↑ "ISO/IEC 23008-1:2014". International Organization for Standardization. 2014-05-23. Retrieved 2014-11-01.
- ↑ "DivX HEVC Support in MKV". DivX. Retrieved 2013-06-05.
- ↑ "Using MKVToolNix". DivX. Retrieved 2013-06-05.
- ↑ "RTP Payload Format for High Efficiency Video Coding". Internet Engineering Task Force. 2013-09-06. Retrieved 2013-12-15.
- 1 2 Fabrice Bellard. "BPG Specification". Fabrice Bellard. Retrieved 2014-12-14.
- ↑ https://lwn.net/Articles/625535/
- ↑ http://www.mpegla.com/main/programs/HEVC/Documents/HEVCweb.pdf
- ↑ http://epdf.hevcadvance.com/pdf/embed?hash=45b481aa5e22256d59fb6de7f22f03cb#23
- ↑ http://epdf.hevcadvance.com/pdf/embed?hash=84f7cae5df5424fcfbc82fb2d83fbca5#1
- ↑ http://epdf.hevcadvance.com/pdf/embed?hash=45a69e5fbd2854d3a1da9dc4bdd9421b#2
- 1 2 http://www.mpegla.com/main/programs/AVC/Documents/avcweb.pdf
- ↑ http://www.streamingmedia.com/Articles/Editorial/Featured-Articles/Its-Time-to-Move-Forward-with-HEVC-113278.aspx
- ↑ http://www.streamingmedia.com/Articles/Editorial/Featured-Articles/Opinion-Is-A-Codec-War-in-Our-Future-112919.aspx
- ↑ Ozer, Jan (22 November 2016). "HEVC Advance Makes Some Software Royalty Free". Retrieved 3 December 2016.
- ↑ "RFC: MP4 video". Wikimedia Commons. Retrieved 9 October 2016.
Bibliography
- G. J. Sullivan; J.-R. Ohm; W.-J. Han; T. Wiegand (December 2012). "Overview of the High Efficiency Video Coding (HEVC) Standard" (PDF). IEEE Transactions on Circuits and Systems for Video Technology. IEEE. 22 (12). Retrieved 2012-09-14.
- "H.265 : High efficiency video coding". ITU. 2015-07-09. Retrieved 2015-08-02.
- J.-R. Ohm; G. J. Sullivan; H. Schwarz; T. K. Tan; T. Wiegand (December 2012). "Comparison of the Coding Efficiency of Video Coding Standards – Including High Efficiency Video Coding (HEVC)" (PDF). IEEE Trans. on Circuits and Systems for Video Technology. IEEE. 22 (12). Retrieved 2012-09-22.
- Philippe Hanhart; Martin Rerabek; Francesca De Simone; Touradj Ebrahimi (2012-08-13). "Subjective quality evaluation of the upcoming HEVC video compression standard" (PDF). École Polytechnique Fédérale de Lausanne (EPFL). Retrieved 2012-11-08.
- Related slides: Philippe Hanhart; Martin Rerabek; Francesca De Simone; Touradj Ebrahimi (2012-08-15). "Subjective quality evaluation of the upcoming HEVC video compression standard". slideshare.com. Retrieved 2012-11-08.
External links
Official websites
- Fraunhofer Heinrich Hertz Institute HEVC website
- Joint Collaborative Team on Video Coding (JCT-VC)
- JCT-VC Document Management System
- Moving Picture Experts Group (MPEG) website
- ITU-T Recommendation H.265 – High Efficiency Video Coding
Videos
- HEVC 4K Video Demonstration (DiVX)
- Standardization of High Efficiency Video Coding (HEVC)
- Motorola's Ajay Luthra discusses HEVC
- MainConcept HEVC Demonstration Video – IBC 2012
- Couple videos in different resolutions/bitrates in HEVC/AAC multiplexed TS from Elecard
- Example HEVC bitstreams from NGCodec
- https://x265.com/hevc-video-files/
- http://www.libde265.org/downloads-videos/
Comparison Videos
- Tears_400_x265.mp4
- Tears_400_x264.mp4
- Tractor_500kbps_x265.mp4
- Tractor_500kbps_x264.mp4
- BigBuckBunny_2000hevc.mp4
- BigBuckBunny_2000h264.mp4
Open Source and Free Codecs
- x265 – Open source HEVC/H.265 encoder (GNU GPL v2) bitbucket.org/multicoreware
- x265 – Open source HEVC/H.265 encoder (GNU GPL v2) multicoreware
- libde265 – Open HEVC/H.265 video codec implementation (LGPL) github.com/strukturag
- libde265 – Open HEVC/H.265 video codec implementation (LGPL) libde265.org
- OpenHEVC – Open source HEVC decoder github.com/OpenHEVC
- Kvazaar – Open source HEVC/H.265 encoder (LGPL)
- f265 – Open source HEVC/H.265 encoder (BSD) 2016-01-11
- DivX's Free HEVC/H.265 Encoder and Decoder
Codecs Products
- Cinemartin Cinec HEVC – H.265 encoder software for windows
- Lentoid – HEVC/H.265 Encoder/Decoder strongene
- x265.com – HEVC/H.265 encoder (GNU GPL v2) multicoreware
Websites
- Intel's HEVC/H.265 Encoder, Decoder and Analysis Tools
- H2B2VS. HEVC Hybrid Broadcast Broadband Video Services. European R&D project on HEVC TV and Hybrid TV
- Elecard HEVC Analyzer – in-depth analysis tool for HEVC encoded video