27     { 
"1",    30,    36864,    350,      0,  16,  1,  1,     552960,    128,      0, 2, 2 },
 
   28     { 
"2",    60,   122880,   1500,      0,  16,  1,  1,    3686400,   1500,      0, 2, 2 },
 
   29     { 
"2.1",  63,   245760,   3000,      0,  20,  1,  1,    7372800,   3000,      0, 2, 2 },
 
   30     { 
"3",    90,   552960,   6000,      0,  30,  2,  2,   16588800,   6000,      0, 2, 2 },
 
   31     { 
"3.1",  93,   983040,  10000,      0,  40,  3,  3,   33177600,  10000,      0, 2, 2 },
 
   32     { 
"4",   120,  2228224,  12000,  30000,  75,  5,  5,   66846720,  12000,  30000, 4, 4 },
 
   33     { 
"4.1", 123,  2228224,  20000,  50000,  75,  5,  5,  133693440,  20000,  50000, 4, 4 },
 
   34     { 
"5",   150,  8912896,  25000, 100000, 200, 11, 10,  267386880,  25000, 100000, 6, 4 },
 
   35     { 
"5.1", 153,  8912896,  40000, 160000, 200, 11, 10,  534773760,  40000, 160000, 8, 4 },
 
   36     { 
"5.2", 156,  8912896,  60000, 240000, 200, 11, 10, 1069547520,  60000, 240000, 8, 4 },
 
   37     { 
"6",   180, 35651584,  60000, 240000, 600, 22, 20, 1069547520,  60000, 240000, 8, 4 },
 
   38     { 
"6.1", 183, 35651584, 120000, 480000, 600, 22, 20, 2139095040, 120000, 480000, 8, 4 },
 
   39     { 
"6.2", 186, 35651584, 240000, 800000, 600, 22, 20, 4278190080, 240000, 800000, 6, 4 },
 
   49       4, 0, 2, 1, 1, 1, 1, 1, 1, 0, 0, 1,  667,  733, 1.000, 1.0, 6 },
 
   51       4, 0, 2, 1, 1, 0, 1, 1, 1, 0, 0, 1,  833,  917, 1.250, 1.0, 6 },
 
   53       4, 0, 2, 1, 0, 0, 1, 1, 1, 0, 0, 1, 1000, 1100, 1.500, 1.0, 6 },
 
   55       4, 0, 2, 0, 0, 0, 1, 1, 1, 0, 0, 1, 1333, 1467, 2.000, 1.0, 6 },
 
   57       1, 0, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 1000, 1100, 1.500, 1.0, 6 },
 
   58     { 
"Screen-Extended Main",
 
   59       9, 0, 1, 1, 1, 1, 1, 1, 0, 0, 0, 1, 1000, 1100, 1.500, 1.0, 7 },
 
   61       2, 0, 2, 2, 2, 2, 2, 2, 2, 2, 0, 2, 1000, 1100, 1.875, 1.0, 6 },
 
   62     { 
"Screen-Extended Main 10",
 
   63       9, 0, 1, 1, 1, 0, 1, 1, 0, 0, 0, 1, 1000, 1100, 1.875, 1.0, 7 },
 
   65       4, 0, 2, 1, 0, 0, 1, 1, 0, 0, 0, 1, 1500, 1650, 2.250, 1.0, 6 },
 
   66     { 
"Main Still Picture",
 
   67       3, 0, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 1000, 1100, 1.500, 1.0, 6 },
 
   68     { 
"Main 10 Still Picture",
 
   69       2, 0, 2, 2, 2, 2, 2, 2, 2, 2, 1, 2, 1000, 1100, 1.875, 1.0, 6 },
 
   71       4, 0, 2, 1, 1, 0, 1, 0, 0, 0, 0, 1, 1667, 1833, 2.500, 0.5, 6 },
 
   73       4, 0, 2, 1, 0, 0, 1, 0, 0, 0, 0, 1, 2000, 2200, 3.000, 0.5, 6 },
 
   75       4, 0, 2, 1, 1, 1, 0, 0, 0, 0, 0, 1, 2000, 2200, 3.000, 0.5, 6 },
 
   76     { 
"High Throughput 4:4:4",
 
   77       5, 1, 1, 1, 1, 1, 0, 0, 0, 0, 0, 1, 2000, 2200, 3.000, 0.5, 6 },
 
   78     { 
"Screen-Extended Main 4:4:4",
 
   79       9, 0, 1, 1, 1, 1, 0, 0, 0, 0, 0, 1, 2000, 2200, 3.000, 0.5, 7 },
 
   80     { 
"Screen-Extended High Throughput 4:4:4",
 
   81       9, 1, 1, 1, 1, 1, 0, 0, 0, 0, 0, 1, 2000, 2200, 3.000, 0.5, 7 },
 
   83       4, 0, 2, 1, 1, 0, 0, 0, 0, 0, 0, 1, 2500, 2750, 3.750, 0.5, 6 },
 
   84     { 
"High Throughput 4:4:4 10",
 
   85       5, 1, 1, 1, 1, 0, 0, 0, 0, 0, 0, 1, 2500, 2750, 3.750, 0.5, 6 },
 
   86     { 
"Screen-Extended Main 4:4:4 10",
 
   87       9, 0, 1, 1, 1, 0, 0, 0, 0, 0, 0, 1, 2500, 2750, 3.750, 0.5, 7 },
 
   88     { 
"Screen-Extended High Throughput 4:4:4 10",
 
   89       9, 1, 1, 1, 1, 0, 0, 0, 0, 0, 0, 1, 2500, 2750, 3.750, 0.5, 7 },
 
   91       4, 0, 2, 1, 0, 0, 0, 0, 0, 0, 0, 1, 3000, 3300, 4.500, 0.5, 6 },
 
   92     { 
"High Throughput 4:4:4 14",
 
   93       5, 1, 1, 0, 0, 0, 0, 0, 0, 0, 0, 1, 3500, 3850, 5.250, 0.5, 6 },
 
   94     { 
"Screen-Extended High Throughput 4:4:4 14",
 
   95       9, 1, 1, 0, 0, 0, 0, 0, 0, 0, 0, 1, 3500, 3850, 5.250, 0.5, 7 },
 
   97       4, 0, 2, 1, 1, 1, 1, 1, 0, 1, 0, 2, 1000, 1100, 1.500, 1.0, 6 },
 
   99       4, 0, 2, 1, 1, 0, 1, 1, 0, 1, 0, 2, 1000, 1100, 1.875, 1.0, 6 },
 
  101       4, 0, 2, 1, 0, 0, 1, 1, 0, 1, 0, 2, 1500, 1650, 2.250, 1.0, 6 },
 
  102     { 
"Main 4:2:2 10 Intra",
 
  103       4, 0, 2, 1, 1, 0, 1, 0, 0, 1, 0, 2, 1667, 1833, 2.500, 0.5, 6 },
 
  104     { 
"Main 4:2:2 12 Intra",
 
  105       4, 0, 2, 1, 0, 0, 1, 0, 0, 1, 0, 2, 2000, 2200, 3.000, 0.5, 6 },
 
  106     { 
"Main 4:4:4 Intra",
 
  107       4, 0, 2, 1, 1, 1, 0, 0, 0, 1, 0, 2, 2000, 2200, 3.000, 0.5, 6 },
 
  108     { 
"Main 4:4:4 10 Intra",
 
  109       4, 0, 2, 1, 1, 0, 0, 0, 0, 1, 0, 2, 2500, 2750, 3.750, 0.5, 6 },
 
  110     { 
"Main 4:4:4 12 Intra",
 
  111       4, 0, 2, 1, 0, 0, 0, 0, 0, 1, 0, 2, 3000, 3300, 4.500, 0.5, 6 },
 
  112     { 
"Main 4:4:4 16 Intra",
 
  113       4, 0, 2, 0, 0, 0, 0, 0, 0, 1, 0, 2, 4000, 4400, 6.000, 0.5, 6 },
 
  114     { 
"Main 4:4:4 Still Picture",
 
  115       4, 0, 2, 1, 1, 1, 0, 0, 0, 1, 1, 2, 2000, 2200, 3.000, 0.5, 6 },
 
  116     { 
"Main 4:4:4 16 Still Picture",
 
  117       4, 0, 2, 0, 0, 0, 0, 0, 0, 1, 1, 2, 4000, 4400, 6.000, 0.5, 6 },
 
  118     { 
"High Throughput 4:4:4 16 Intra",
 
  119       5, 1, 0, 0, 0, 0, 0, 0, 0, 1, 0, 2, 4000, 4400, 6.000, 0.5, 6 },
 
  139 #define check_flag(name) \ 
  140         if (profile->name < 2) { \ 
  141             if (profile->name != ptl->general_ ## name ## _constraint_flag) \ 
  167                                                int max_dec_pic_buffering)
 
  170     int pic_size, tier_flag, lbr_flag, hbr_factor;
 
  189         lbr_flag  = 
profile->lower_bit_rate > 0;
 
  193     } 
else if (
profile->high_throughput) {
 
  195             hbr_factor = 24 - 12 * lbr_flag;
 
  199         hbr_factor = 2 - lbr_flag;
 
  204         int max_br, max_dpb_size;
 
  206         if (tier_flag && !
level->max_br_high)
 
  209         if (pic_size > 
level->max_luma_ps)
 
  224             max_br = 
level->max_br_high;
 
  226             max_br = 
level->max_br_main;
 
  232         if (pic_size <= (
level->max_luma_ps >> 2))
 
  234         else if (pic_size <= (
level->max_luma_ps >> 1))
 
  236         else if (pic_size <= (3 * 
level->max_luma_ps >> 2))
 
  237             max_dpb_size = 
FFMIN(4 * 
profile->max_dpb_pic_buf / 3, 16);
 
  239             max_dpb_size = 
profile->max_dpb_pic_buf;
 
  240         if (max_dec_pic_buffering > max_dpb_size)