From: Paul Wilkins Date: Mon, 22 Nov 2010 13:17:35 +0000 (+0000) Subject: Recalibration of bits per MB tables X-Git-Tag: v0.9.6~166 X-Git-Url: https://granicus.if.org/sourcecode?a=commitdiff_plain;h=ad6150f7697ce486630c75cb53fa607928ced4c7;p=libvpx Recalibration of bits per MB tables The baseline bits per MB prediction tables have been re calibrated based on the assumption that bits per mb is inversely proportional to the quantizer level. Change-Id: Ibd355c7acac4b8053dda1baf1032fe35f11da7f7 --- diff --git a/vp8/encoder/ratectrl.c b/vp8/encoder/ratectrl.c index dd324f435..c05e80e4b 100644 --- a/vp8/encoder/ratectrl.c +++ b/vp8/encoder/ratectrl.c @@ -45,46 +45,48 @@ extern int inter_b_modes[10]; // Bits Per MB at different Q (Multiplied by 512) #define BPER_MB_NORMBITS 9 +// Work in progress recalibration of baseline rate tables based on +// the assumption that bits per mb is inversely proportional to the +// quantizer value. const int vp8_bits_per_mb[2][QINDEX_RANGE] = { - // (Updated 19 March 08) Baseline estimate of INTRA-frame Bits Per MB at each Q: + // Intra case 450000/Qintra { - 674781, 606845, 553905, 524293, 500428, 452540, 435379, 414719, - 390970, 371082, 359416, 341807, 336957, 317263, 303724, 298402, - 285688, 275237, 268455, 262560, 256038, 248734, 241087, 237615, - 229247, 225211, 219112, 213920, 211559, 202714, 198482, 193401, - 187866, 183453, 179212, 175965, 171852, 167235, 163972, 160560, - 156032, 154349, 151390, 148725, 145708, 142311, 139981, 137700, - 134084, 131863, 129746, 128498, 126077, 123461, 121290, 117782, - 114883, 112332, 108410, 105685, 103434, 101192, 98587, 95959, - 94059, 92017, 89970, 87936, 86142, 84801, 82736, 81106, - 79668, 78135, 76641, 75103, 73943, 72693, 71401, 70098, - 69165, 67901, 67170, 65987, 64923, 63534, 62378, 61302, - 59921, 58941, 57844, 56782, 55960, 54973, 54257, 53454, - 52230, 50938, 49962, 49190, 48288, 47270, 46738, 46037, - 45020, 44027, 43216, 42287, 41594, 40702, 40081, 39414, - 38282, 37627, 36987, 36375, 35808, 35236, 34710, 34162, - 33659, 33327, 32751, 32384, 31936, 31461, 30982, 30582, + 1125000,900000, 750000, 642857, 562500, 500000, 450000, 450000, + 409090, 375000, 346153, 321428, 300000, 281250, 264705, 264705, + 250000, 236842, 225000, 225000, 214285, 214285, 204545, 204545, + 195652, 195652, 187500, 180000, 180000, 173076, 166666, 160714, + 155172, 150000, 145161, 140625, 136363, 132352, 128571, 125000, + 121621, 121621, 118421, 115384, 112500, 109756, 107142, 104651, + 102272, 100000, 97826, 97826, 95744, 93750, 91836, 90000, + 88235, 86538, 84905, 83333, 81818, 80357, 78947, 77586, + 76271, 75000, 73770, 72580, 71428, 70312, 69230, 68181, + 67164, 66176, 65217, 64285, 63380, 62500, 61643, 60810, + 60000, 59210, 59210, 58441, 57692, 56962, 56250, 55555, + 54878, 54216, 53571, 52941, 52325, 51724, 51136, 50561, + 49450, 48387, 47368, 46875, 45918, 45000, 44554, 44117, + 43269, 42452, 41666, 40909, 40178, 39473, 38793, 38135, + 36885, 36290, 35714, 35156, 34615, 34090, 33582, 33088, + 32608, 32142, 31468, 31034, 30405, 29801, 29220, 28662, }, - - // (Updated 19 March 08) Baseline estimate of INTER-frame Bits Per MB at each Q: + // Inter case 285000/Qinter { - 497401, 426316, 372064, 352732, 335763, 283921, 273848, 253321, - 233181, 217727, 210030, 196685, 194836, 178396, 167753, 164116, - 154119, 146929, 142254, 138488, 133591, 127741, 123166, 120226, - 114188, 111756, 107882, 104749, 102522, 96451, 94424, 90905, - 87286, 84931, 82111, 80534, 77610, 74700, 73037, 70715, - 68006, 67235, 65374, 64009, 62134, 60180, 59105, 57691, - 55509, 54512, 53318, 52693, 51194, 49840, 48944, 46980, - 45668, 44177, 42348, 40994, 39859, 38889, 37717, 36391, - 35482, 34622, 33795, 32756, 32002, 31492, 30573, 29737, - 29152, 28514, 27941, 27356, 26859, 26329, 25874, 25364, - 24957, 24510, 24290, 23689, 23380, 22845, 22481, 22066, - 21587, 21219, 20880, 20452, 20260, 19926, 19661, 19334, - 18915, 18391, 18046, 17833, 17441, 17105, 16888, 16729, - 16383, 16023, 15706, 15442, 15222, 14938, 14673, 14452, - 14005, 13807, 13611, 13447, 13223, 13102, 12963, 12801, - 12627, 12534, 12356, 12228, 12056, 11907, 11746, 11643, + 712500, 570000, 475000, 407142, 356250, 316666, 285000, 259090, + 237500, 219230, 203571, 190000, 178125, 167647, 158333, 150000, + 142500, 135714, 129545, 123913, 118750, 114000, 109615, 105555, + 101785, 98275, 95000, 91935, 89062, 86363, 83823, 81428, + 79166, 77027, 75000, 73076, 71250, 69512, 67857, 66279, + 64772, 63333, 61956, 60638, 59375, 58163, 57000, 55882, + 54807, 53773, 52777, 51818, 50892, 50000, 49137, 47500, + 45967, 44531, 43181, 41911, 40714, 39583, 38513, 37500, + 36538, 35625, 34756, 33928, 33139, 32386, 31666, 30978, + 30319, 29687, 29081, 28500, 27941, 27403, 26886, 26388, + 25909, 25446, 25000, 24568, 23949, 23360, 22800, 22265, + 21755, 21268, 20802, 20357, 19930, 19520, 19127, 18750, + 18387, 18037, 17701, 17378, 17065, 16764, 16473, 16101, + 15745, 15405, 15079, 14766, 14467, 14179, 13902, 13636, + 13380, 13133, 12895, 12666, 12445, 12179, 11924, 11632, + 11445, 11220, 11003, 10795, 10594, 10401, 10215, 10035, } };