last_cardioid_right=sub(ONE_IN_Q14/* 1.0f in Q14 */,last_cardioid_left);
/* Smoothing */
#ifdef IMPROV_PRECISION
cardioid_left[i]=mac_r(L_mult(24576/* 0.75f in Q15 */,cardioid_left[i]),8192/* 0.25f in Q15 */,last_cardioid_left);// Q14
#else
cardioid_left[i]=add(mult(24576/* 0.75f in Q15 */,cardioid_left[i]),mult(8192/* 0.25f in Q15 */,last_cardioid_left));// Q14
#endif
move16();
Word32grad_32=L_mult(sub(cardioid_left[i],last_cardioid_left),shl(one_by_input_frame,1)/* 2.0f / (float) input_frame*/);/* Q14+Q16 = Q30 *//* for the right cardioid, multiply with -1 */