Commit 5df166e4 authored by Rostislav Pehlivanov's avatar Rostislav Pehlivanov

aacenc_tns: re-enable coefficient compression

This time in a platform/compiler-generic way.
Signed-off-by: 's avatarRostislav Pehlivanov <atomnuker@gmail.com>
parent 88a5f93f
......@@ -49,12 +49,16 @@ static inline void conv_to_float(float *arr, int32_t *cof, int num)
/* Input: quantized 4 bit coef, output: 1 if first (MSB) 2 bits are the same */
static inline int coef_test_compression(int coef)
{
int res = 0;
/*coef = coef >> 3;
res += ffs(coef);
coef = coef >> 1;
res += ffs(coef);*/
return 0;
int tmp = coef >> 2;
int res = ff_ctz(tmp);
if (res > 1)
return 1; /* ...00 -> compressable */
else if (res == 1)
return 0; /* ...10 -> uncompressable */
else if (ff_ctz(tmp >> 1) > 0)
return 0; /* ...0 1 -> uncompressable */
else
return 1; /* ...1 1 -> compressable */
}
static inline int compress_coef(int *coefs, int num)
......@@ -62,7 +66,7 @@ static inline int compress_coef(int *coefs, int num)
int i, res = 0;
for (i = 0; i < num; i++)
res += coef_test_compression(coefs[i]);
return 0;
return res == num ? 1 : 0;
}
/**
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment