[Mp4-tech] CAVLC limits

JK(Jeong Kwon) Kim kjk mcubeworks.com
Tue Feb 1 09:42:16 ESTEDT 2005


RE: [Mp4-tech] CAVLC limitsSorry, I had a mistake.
So, the common smallest level limit is "2047".
=>   So, the common smallest level limit is "2063" (2047 + 16). 
That is, the sufficient range to be coded by CAVLC is [-2063, 2063].
Please refer to "9.2.2 Parsing process for level information" in JVT-F100d1.doc.
It will be easier than JVT-G050r1.doc [Standard document].
Regards,
JK Kim
  -----Original Message-----
  From: Mark Dell'Agnese [mailto:mdellagn ati.com]
  Sent: Tuesday, February 01, 2024 1:16 AM
  To: 'JK(Jeong Kwon) Kim'
  Subject: RE: [Mp4-tech] CAVLC limits
  So just to be clear, why does the JM reference encoder limit the DC transfrom levels to 2063 and not 2047? 
  Mark. 
  -----Original Message----- 
  From: JK(Jeong Kwon) Kim [mailto:kjk mcubeworks.com] 
  Sent: Monday, January 31, 2024 4:40 AM 
  To: Mark Dell'Agnese; mp4-tech lists.mpegif.org 
  Subject: RE: [Mp4-tech] CAVLC limits 
  Hi Mark, 
  The escape code of CAVLC in H.264 has the 11-bit level data and one sign bit. 
  But the escape code excludes smaller ones, so the range is extended by the number of smaller ones. 
  suffixLength = 0,  level range is [16+0, 16+2047] 
  suffixLength = 1,  level range is [16+0, 16+2047] 
  suffixLength = 2,  level range is [31+0, 31+2047] 
  suffixLength = 3,  level range is [61+0, 61+2047] 
  suffixLength = 4,  level range is [121+0, 121+2047] 
  suffixLength = 5,  level range is [241+0, 241+2047] 
  suffixLength = 6,  level range is [481+0, 481+2047] 
  So, the common smallest level limit is "2047". 
  And the reason to limit intra 16x16 DC and chroma DC in the following cited in another mail: 
  ===================================================================== 
  CAVLC is well-designed to encode coefficients. 
  Its maximum value is: 
          (+-255 * 16 * 13107 + rounding ) >> 15  =  +-1632 
          [ in case of the largest prediction error and QP = 0] 
  So, all the coefficients but 16x16 DC and chroma DC can be encoded by CAVLC. 
  But, the maximum value of 16x16 DC transform coefficients 
          (+-255 * 16 * 8 * 13107 + rounding  ) >> 16  =  +-6528 
          [ in case of the largest prediction error and QP = 0. The DC hadamard gain is '4' ] 
  It is out of the range of CAVLC. 
  So, there is a NOTE at the end of 8.5.6, JVT-J010d7.doc.(previously discussed) 
          NOTE - When entropy_coding_mode_flag is equal to 0 and QPY is less than 10, 
          the range of values that can be represented for the elements cij of c is not sufficient 
          to represent the full range of values of the elements dcYij of dcY that could be 
          necessary to form a close approximation of the content of any possible source 
          picture by use of the Intra_16x16 macroblock type 
  Chroma DC is similar case. 
  ===================================================================== 
          Regards, 
          JK Kim, MTS, McubeWorks inc. 
  -----Original Message----- 
  From: mp4-tech-bounces lists.mpegif.org [mailto:mp4-tech-bounces lists.mpegif.org]On Behalf Of Mark Dell'Agnese 
  Sent: Saturday, January 29, 2024 5:42 AM 
  To: mp4-tech lists.mpegif.org 
  Subject: [Mp4-tech] CAVLC limits 
  Hello, 
  I have a couple of questions regarding the level limits imposed on values that have been transformed and quantized for the INTRA 16x16 case.  In the JM reference encoder, there is a term, CAVLC_LEVEL_LIMIT, which limits the absolute value of the transformed and quantized DC coeff's to 2063.  What is the significance of 2063 (13-bits req'd)?  Why not 2047 which uses a 12-bit signed number? 
  And why isn't this restriction imposed on other coeff's for both 4x4 and 16x16 cases? 
  Thanks, 
  Mark. 
-------------- next part --------------
An HTML attachment was scrubbed...
URL: /pipermail/mp4-tech/attachments/20050201/14529c78/attachment.html


More information about the Mp4-tech mailing list