What does the signed_saturate_rshift(val, 16, 0); ] in the mixer class do?
I assume the val variable cannot overflow so it is an overflow preventer... but what does the other 2 parameters (..,16,0) specify ?
More complete code:
static void applyGain(int16_t *data, int32_t mult)
{...