Now that the GPAC / Osmo4 player supports HEVC decoding and playback, it's becoming easier to compare the quality of the new High Efficiency Video Coding (HEVC) standard with its predecessor, H.264/AVC. I've uploaded three versions of the same sequence:
a. Encoded using HEVC / HM10
b. Encoded using H.264 / x264 at twice the bitrate of a.
c. Encoded using H.264 / x264 at the same bitrate as a.
To compare H.264 and HEVC / H.265:
1. Download and install the latest version of GPAC, which includes the Osmo4 player:
http://gpac.wp.mines-telecom.fr/downloads/gpac-nightly-builds/
(Choose Latest Available Binaries)
(Choose Latest Available Binaries)
2. Download the following test sequences:
a. Kristen and Sara, 720p, 10 seconds, 60 frames per second, HEVC / HM10 Anchor (Random Access, QP=32), approx 420 kbps.
b. Kristen and Sara, H.264 / x264 / veryslow preset, QP=31, approx 810 kbps. https://www.box.com/s/is2sdqh7tqdiuc1i76g6
c. Kristen and Sara, H.264 / x264 / veryslow preset, QP=37, approx 440 kbps.
3. Play back each test sequence using the Osmo4 player.
Things to look out for:
- At the same bitrate (~420kbps), is the quality of the HEVC sequence (a) significantly better than the H.264 sequence (c)? In my view, yes.
- At half the bitrate (420kbps vs. 810kbps), is the quality of the HEVC sequence (a) as good as the H.264 sequence (b)? In my view, the HEVC sequence displays smoother motion, but loses some fine detail.
To experiment with other test sequences:
1. Download + install GPAC, as described above:
This package includes the Osmo4 player and the MP4Box utility.
2. Download an encoded HEVC anchor bitstream (.bin) from:
ftp://ftp.kw.bbc.co.uk/hevc/hm-10.0-anchors/bitstreams/
(I chose "Kristen and Sara, QP=32" from the Random Access folder for the above examples).
(I chose "Kristen and Sara, QP=32" from the Random Access folder for the above examples).
3. Rename the downloaded bitstream: from (name).bin to (name).265
4. Package as an .mp4 file. Open a command prompt and type:
mp4box -fps (fps) -add (name.265) (name).mp4
- where (name.265) is the renamed bitstream file and (fps) is the number of frames per second of the original sequence.
(Here's an example of the command line for the Mac, your path may be different: /Applications/Osmo4.app/Contents/MacOS/MP4Box -fps 24 -add Kimono1_qp32.265 Kimono1_qp32.mp4)
(Here's an example of the command line for the Mac, your path may be different: /Applications/Osmo4.app/Contents/MacOS/MP4Box -fps 24 -add Kimono1_qp32.265 Kimono1_qp32.mp4)
5. Open with Osmo4 and play back.
Notes
Windows: Playback of 720p HEVC sequences is a little jerky but works reasonably well. Playback of higher-resolution sequences is very jerky on my PC.
Mac : Playback of 720p and 1080p HEVC clips on my Mac (10.8.3, 2.9GHz) is reasonably smooth.
Mac : Playback of 720p and 1080p HEVC clips on my Mac (10.8.3, 2.9GHz) is reasonably smooth.
Quality is subjective
Video quality is, of course, highly subjective. I'm interested in your feedback. Do you think the 420kbps HEVC sequence (a) is as good as, or better than, the 810kbps H.264 sequence (b)?
- Iain Richardson