42 -0.8472560048, 0.7224709988,
44 -1.5247479677,-0.4531480074, 0.3753609955, 1.4717899561,
46 -1.9822579622,-1.1929379702,-0.5829370022,-0.0693780035, 0.3909569979, 0.9069200158, 1.4862740040, 2.2215409279,
48 -2.3887870312,-1.8067539930,-1.4105420113,-1.0773609877,-0.7995010018,-0.5558109879,-0.3334020078,-0.1324490011,
49 0.0568020009, 0.2548770010, 0.4773550034, 0.7386850119, 1.0443060398, 1.3954459429, 1.8098750114, 2.3918759823,
51 -2.3893830776,-1.9884680510,-1.7514040470,-1.5643119812,-1.3922129869,-1.2164649963,-1.0469499826,-0.8905100226,
52 -0.7645580173,-0.6454579830,-0.5259280205,-0.4059549868,-0.3029719889,-0.2096900046,-0.1239869967,-0.0479229987,
53 0.0257730000, 0.1001340002, 0.1737180054, 0.2585540116, 0.3522900045, 0.4569880068, 0.5767750144, 0.7003160119,
54 0.8425520062, 1.0093879700, 1.1821349859, 1.3534560204, 1.5320819616, 1.7332619429, 1.9722349644, 2.3978140354,
56 -2.5756309032,-2.0573320389,-1.8984919786,-1.7727810144,-1.6662600040,-1.5742180347,-1.4993319511,-1.4316639900,
57 -1.3652280569,-1.3000990152,-1.2280930281,-1.1588579416,-1.0921250582,-1.0135740042,-0.9202849865,-0.8287050128,
58 -0.7374889851,-0.6447759867,-0.5590940118,-0.4857139885,-0.4110319912,-0.3459700048,-0.2851159871,-0.2341620028,
59 -0.1870580018,-0.1442500055,-0.1107169986,-0.0739680007,-0.0365610011,-0.0073290002, 0.0203610007, 0.0479039997,
60 0.0751969963, 0.0980999991, 0.1220389977, 0.1458999962, 0.1694349945, 0.1970459968, 0.2252430022, 0.2556869984,
61 0.2870100141, 0.3197099864, 0.3525829911, 0.3889069855, 0.4334920049, 0.4769459963, 0.5204820037, 0.5644530058,
62 0.6122040153, 0.6685929894, 0.7341650128, 0.8032159805, 0.8784040213, 0.9566209912, 1.0397069454, 1.1293770075,
63 1.2211159468, 1.3080279827, 1.4024800062, 1.5056819916, 1.6227730513, 1.7724959850, 1.9430880547, 2.2903931141
67 2, 2, 2, 2, 2, 2, 2, 2, 2, 3, 3, 4, 4, 5, 6, 6, 7, 8, 9, 10, 12, 14, 15
71 3134, 5342, 6870, 7792, 8569, 9185, 9744, 10191, 10631, 11061, 11434, 11770,
72 12116, 12513, 12925, 13300, 13674, 14027, 14352, 14716, 15117, 15477, 15824,
73 16157, 16513, 16804, 17090, 17401, 17679, 17948, 18238, 18520, 18764, 19078,
74 19381, 19640, 19921, 20205, 20500, 20813, 21162, 21465, 21794, 22137, 22453,
75 22756, 23067, 23350, 23636, 23926, 24227, 24521, 24819, 25107, 25414, 25730,
76 26120, 26497, 26895, 27344, 27877, 28463, 29426, 31355
80 -11725, -9420, -7910, -6801, -5948, -5233, -4599, -4039, -3507, -3030, -2596,
81 -2170, -1774, -1383, -1016, -660, -329, -1, 337, 696, 1085, 1512, 1962, 2433,
82 2968, 3569, 4314, 5279, 6622, 8154, 10076, 12975
87 return (
unsigned)i <<
shift;
97 b = ((b>>(shift-1))+1)>>1;
120 int bitsum = 0, last_bitsum, small_bitsum, big_bitsum;
121 short shift, shift_saved;
122 int max, sum, last_off,
tmp;
123 int big_off, small_off;
128 max =
FFMAX(max, buf[i]);
136 sbuf[i] = (3*sbuf[i])>>2;
149 bitsum =
sum_bits(sbuf, shift_saved, small_off);
154 for(shift=0;
FFABS(off) <= 16383; shift++)
162 for (j = 1; j < 20; j++) {
163 last_off = small_off;
165 last_bitsum = bitsum;
167 bitsum =
sum_bits(sbuf, shift_saved, small_off);
169 if ((bitsum-NELLY_DETAIL_BITS) * (last_bitsum-NELLY_DETAIL_BITS) <= 0)
173 if (bitsum > NELLY_DETAIL_BITS) {
175 small_off = last_off;
177 small_bitsum=last_bitsum;
180 big_bitsum=last_bitsum;
184 while (bitsum != NELLY_DETAIL_BITS && j <= 19) {
185 off = (big_off+small_off)>>1;
186 bitsum =
sum_bits(sbuf, shift_saved, off);
187 if (bitsum > NELLY_DETAIL_BITS) {
197 if (abs(big_bitsum-NELLY_DETAIL_BITS) >=
198 abs(small_bitsum-NELLY_DETAIL_BITS)) {
199 bitsum = small_bitsum;
207 tmp = sbuf[i]-small_off;
208 tmp = ((tmp>>(shift_saved-1))+1)>>1;
static int signed_shift(int i, int shift)
static int shift(int a, int b)
const float ff_nelly_dequantization_table[127]
static int sum_bits(short *buf, short shift, short off)
#define NELLY_DETAIL_BITS
const uint16_t ff_nelly_init_table[64]
static int headroom(int *la)
const uint8_t ff_nelly_band_sizes_table[NELLY_BANDS]
#define FFABS(a)
Absolute value, Note, INT_MIN / INT64_MIN result in undefined behavior as they are not representable ...
Libavcodec external API header.
common internal and external API header
const int16_t ff_nelly_delta_table[32]
void ff_nelly_get_sample_bits(const float *buf, int *bits)
The 3 alphanumeric copyright notices are md5summed they are from the original implementors.