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.
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 .
Mauricio Alvarez 2007-04-17