Parallel Algorithms for Next-generation Video Coding

Figure 1

Figure 1: Illustration of cycle reduction achieved with syntax element partitions (MB=macroblock).

Enabling parallel processing is becoming increasingly necessary for video decoding as performance requirements continue to rise due to growing resolution and frame-rate demands.   It is important to address known bottlenecks in the video decoder such as entropy decoding, specifically the highly serial CABAC algorithm used in the H.264/AVC video coding standard [1].  Concurrency must be enabled with minimal cost to coding efficiency, power, area, and delay.

Figure 2

Figure 2: Comparison of various parallel-processing techniques. The coding efficiency was computed by evaluating the Bjontegaard Delta Bitrate (BD-rate) against H.264/AVC with a single slice per frame. Throughput was computed relative to serial 1 bin/cycle decoding. Results are averaged across five 720p sequences described in [2].

This work proposes a new CABAC algorithm for the next-generation video-coding standard, called syntax element partitioning (SEP).  In SEP, binary symbols are grouped by syntax elements and assigned to five different partitions (MBINFO, PRED, CBP, SIGMAP, and COEFF) [3].  Figure 1 shows how these partitions can be decoded in parallel. Application of SEP on five 720p sequences can provide an average throughput increase of ~2.7x with negligible impact on coding efficiency (0.06% to 0.37%), as shown in Figure 2.  Compared with other parallel CABAC approaches, namely H.264/AVC [4] and entropy slices [5], SEP offers an average 2 to 4x reduction in coding penalty for the same average 2.4-2.7x increase in throughput.  This increased throughput can be traded-off for low power consumption in mobile applications.


References
  1. D. Marpe, H. Schwarz, and T. Wiegand, “Context-based adaptive binary arithmetic coding in the H.264/AVC video compression standard,” IEEE Transactions on Circuits and Systems for Video Technology, vol. 3, no. 7, pp. 620- 636, June. 2003. []
  2. T.K. Tan, G. Sullivan, and T. Wedi, “Recommended Simulation Common Conditions for Coding Efficiency Experiments Revision 1,” ITU–T Standardization Sector, Document VCEG-AE010, January 2007. []
  3. V. Sze and A.P. Chandrakasan, ” A High Throughput CABAC Algorithm Using Syntax Element Partitioning,” IEEE International Conference on Image Processing, November 2009, pp. 773-777. []
  4. ITU-T Study Group, “Series H: Audiovisual and multimedia systems: Infrastructure of audiovisual services – coding of moving video,” in General Secretariat and Telecom Radiocommunication (ITU-R) Standardization (ITU-T), sec. H, no. 264, Sept. 2005. []
  5. A. Segall and J. Zhao, “Entropy slices for parallel entropy decoding,” ITU-T SGI 6/Q.6 Doc. COM16-C405, Geneva, CH, April 2008. []

Microsystems Technology Laboratories | Massachusetts Institute of Technology | 60 Vassar Street, 39-321 | Cambridge, MA 02139 | http://www.mtl.mit.edu
Copyright © Massachusetts Institute of Technology. | Information on MIT Accessibility