diff --git a/src/enc/near_lossless_enc.c b/src/enc/near_lossless_enc.c index c0e71b3e..307528cc 100644 --- a/src/enc/near_lossless_enc.c +++ b/src/enc/near_lossless_enc.c @@ -26,9 +26,9 @@ // Quantizes the value up or down to a multiple of 1<> 1) + ((a >> bits) & 1); +static uint32_t FindClosestDiscretized(uint32_t a, int bits) { + const uint32_t mask = (1 << bits) - 1; + const uint32_t biased = a + (mask >> 1) + ((a >> bits) & 1); assert(bits > 0); if (biased > 0xff) return 0xff; return biased & ~mask;