HD-VideoBench Performance Analysis

Table V: HD-VideoBench Rate Distortion Performance Comparison
Resolution Input Video MPEG-2 MPEG-4 H.264
PSNR bitrate PSNR bitrate PSNR bitrate
576p25 blue_sky 39.82 3504 38.69 1146 39.248 1095
pedestrian_area 41.28 2724 40.76 1715 41.141 1382
riverbed 38.95 10688 39.27 9435 38.456 7783
rush_hour 42.49 2085 41.41 1217 41.965 1092
720p25 blue_sky 40.97 5541 39.84 2154 40.198 1887
pedestrian_area 41.89 4783 41.47 3093 41.700 2249
riverbed 39.70 19729 40.15 17108 39.391 13716
rush_hour 43.09 3647 42.16 2290 42.649 1872
1088p25 blue_sky 41.81 9462 40.71 4265 40.947 3490
pedestrian_area 41.93 9360 41.69 6219 41.661 3961
riverbed 40.07 36475 40.65 31063 39.933 24131
rush_hour 42.73 7086 42.17 4722 42.496 3357

Although MPEG-2, MPEG-4 and H.264 are all hybrid video Codecs based on the same coding principle of motion compensation, transform and entropy coding, they use different algorithms to implement these techniques. The most important metric for analyzing a video Codec is its ability to compress video efficiently with good quality. Table V shows the resultant quality (in terms of the Peak Signal to Noise Ratio PSNR) and the bitrate of the resultant compressed video (in Kbits per second). All the videos have almost the same quality because they have been coded with a constant quantization parameter. At this equal quality, and taken MPEG-2 as the baseline, the MPEG-4 Codec achieves, on average for the four input sequences, a 39,4%, 36,7% and 34,1% compression gains at the 576p25, 720p25 and 1088p25 resolution respectively. H.264 results in bigger compression ratios 48,2%, 49,5% and 51,8% compared to MPEG-2, and 19,9%, 19,4% and 26,4% compared to MPEG-4 for the three resolutions respectively.

Figure 1: HD-VideoBench Performance

[Decoding Performance] decode time

[Encoding Performance] \includegraphics[width=0.9\columnwidth]{figures/eps/hdbench-encode-time.eps}

The coding capabilities of each video Codec are directly related to their computational complexity. Figure 1 shows the decoding and encoding time of the four sequences for the three resolutions under study. The results were collected in an Intel IA32 Xeon processor at 2.4 GHz with 512KB of L2 cache. The benchmark was compiled with gcc-4.1.1 under Fedora Core Linux 5 with kernel 2.6.17. The decoding time is expressed in terms of frames per second. The value of 25 frames per second is showed as an indication of the performance required for real time execution.

Figure 1(a) shows the decoding performance of the three Codecs. In the case of MPEG-2, the performance of the machine is enough to process almost all the sequences and resolutions analyzed in real time. At 1088p25, the riverbed sequence is in the limit of the real time performance. This sequence is an example of hard to code video in which the motion compensation algorithms fail to code and, because of that, the entropy coding stage has a more important role. This part of the algorithm is sequential and exhibits limited data and instruction level parallelism. For MPEG-4 and H.264, decoding HD sequences is below the real time limit, and for H.264, the achieved frame rate is lower than for MPEG-4 (19.5 and 13.7 fps respectively).

Figure 1(b) shows the encoding performance. All three Codecs are asymmetrical with respect to coding, that means that they require more performance for coding than for decoding. Only the MPEG-2 encoder is able to perform at real time and only for the lower resolution (576p25); for the 720p25 resolution the average frame rate is 22.4 fps and for the 1088p25 resolution is 9.8 fps. For MPEG-4 and H.264, the coding rate is below ten frames per second for all the resolutions; for 1088p25 the frame rate is, on average, 1.25 and 0.66 respectively, far away from real time. For H.264, a 38X speed-up is required to achieve real time operation.

For a more detailed performance evaluation of the HD-VideoBench applications with a special emphasys in H.264/AVC see Alvarez et al [20].

Mauricio Alvarez 2007-04-17