{"id":758,"date":"2010-06-29T15:10:43","date_gmt":"2010-06-29T19:10:43","guid":{"rendered":"https:\/\/wpmu2.mit.local\/?p=758"},"modified":"2010-06-29T15:11:40","modified_gmt":"2010-06-29T19:11:40","slug":"parallel-algorithms-for-next-generation-video-coding","status":"publish","type":"post","link":"https:\/\/wpmu2.mit.local\/parallel-algorithms-for-next-generation-video-coding\/","title":{"rendered":"Parallel Algorithms for Next-generation Video Coding"},"content":{"rendered":"
\"Figure<\/a>

Figure 1: Illustration of cycle reduction achieved with syntax element partitions (MB=macroblock).<\/p><\/div>\n

Enabling parallel processing is becoming increasingly necessary for video decoding as performance requirements continue to rise due to growing resolution and frame-rate demands.\u00a0\u00a0 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<\/a>]<\/sup>.\u00a0 Concurrency must be enabled with minimal cost to coding efficiency, power, area, and delay.<\/p>\n

\"Figure<\/a><\/p>\n

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<\/a>]<\/sup>.<\/p>\n<\/div>\n

This work proposes a new CABAC algorithm for the next-generation video-coding standard, called syntax element partitioning (SEP).\u00a0 In SEP, binary symbols are grouped by syntax elements and assigned to five different partitions (MBINFO, PRED, CBP, SIGMAP, and COEFF) [3<\/a>]<\/sup>.\u00a0 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.\u00a0 Compared with other parallel CABAC approaches, namely H.264\/AVC [4<\/a>]<\/sup> and entropy slices [5<\/a>]<\/sup>, SEP offers an average 2 to 4x reduction in coding penalty for the same average 2.4-2.7x increase in throughput.\u00a0 This increased throughput can be traded-off for low power consumption in mobile applications.<\/p>\n


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

    Enabling parallel processing is becoming increasingly necessary for video decoding as performance requirements continue to rise due to growing resolution…<\/p>\n<\/div>","protected":false},"author":2,"featured_media":0,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":[],"categories":[26],"tags":[17,4026,4067,4066],"_links":{"self":[{"href":"https:\/\/wpmu2.mit.local\/wp-json\/wp\/v2\/posts\/758"}],"collection":[{"href":"https:\/\/wpmu2.mit.local\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/wpmu2.mit.local\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/wpmu2.mit.local\/wp-json\/wp\/v2\/users\/2"}],"replies":[{"embeddable":true,"href":"https:\/\/wpmu2.mit.local\/wp-json\/wp\/v2\/comments?post=758"}],"version-history":[{"count":9,"href":"https:\/\/wpmu2.mit.local\/wp-json\/wp\/v2\/posts\/758\/revisions"}],"predecessor-version":[{"id":1035,"href":"https:\/\/wpmu2.mit.local\/wp-json\/wp\/v2\/posts\/758\/revisions\/1035"}],"wp:attachment":[{"href":"https:\/\/wpmu2.mit.local\/wp-json\/wp\/v2\/media?parent=758"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/wpmu2.mit.local\/wp-json\/wp\/v2\/categories?post=758"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/wpmu2.mit.local\/wp-json\/wp\/v2\/tags?post=758"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}