diff --git a/plugins/obs-filters/rnnoise/src/denoise.c b/plugins/obs-filters/rnnoise/src/denoise.c index 53bb80303..7639f7456 100644 --- a/plugins/obs-filters/rnnoise/src/denoise.c +++ b/plugins/obs-filters/rnnoise/src/denoise.c @@ -172,12 +172,12 @@ static void check_init() { if (common.init) return; common.kfft = opus_fft_alloc_twiddles(2*FRAME_SIZE, NULL, NULL, NULL, 0); for (i=0;ig[i]) r[i] = 1; - else r[i] = SQUARE(Exp[i])*(1-SQUARE(g[i]))/(.001 + SQUARE(g[i])*(1-SQUARE(Exp[i]))); - r[i] = sqrt(MIN16(1, MAX16(0, r[i]))); + else r[i] = (float)(SQUARE(Exp[i])*(1-SQUARE(g[i]))/(.001 + SQUARE(g[i])*(1-SQUARE(Exp[i])))); + r[i] = (float)sqrt(MIN16(1, MAX16(0, r[i]))); #endif - r[i] *= sqrt(Ex[i]/(1e-8+Ep[i])); + r[i] *= (float)sqrt(Ex[i]/(1e-8+Ep[i])); } interp_band_gain(rf, r); for (i=0;imem_hp_x, in, b_hp, a_hp, FRAME_SIZE); silence = compute_frame_features(st, X, P, Ex, Ep, Exp, features, x); diff --git a/plugins/obs-filters/rnnoise/src/pitch.c b/plugins/obs-filters/rnnoise/src/pitch.c index fc832d1fd..a1549187d 100644 --- a/plugins/obs-filters/rnnoise/src/pitch.c +++ b/plugins/obs-filters/rnnoise/src/pitch.c @@ -419,7 +419,7 @@ static opus_val16 compute_pitch_gain(opus_val32 xy, opus_val32 xx, opus_val32 yy #else static opus_val16 compute_pitch_gain(opus_val32 xy, opus_val32 xx, opus_val32 yy) { - return xy/sqrt(1+xx*yy); + return (opus_val16)(xy/sqrt(1.0+xx*yy)); } #endif diff --git a/plugins/obs-filters/rnnoise/src/rnn.c b/plugins/obs-filters/rnnoise/src/rnn.c index d36b55069..c40fd16d3 100644 --- a/plugins/obs-filters/rnnoise/src/rnn.c +++ b/plugins/obs-filters/rnnoise/src/rnn.c @@ -68,7 +68,7 @@ static OPUS_INLINE float tansig_approx(float x) static OPUS_INLINE float sigmoid_approx(float x) { - return .5 + .5*tansig_approx(.5*x); + return (float)(.5 + .5*tansig_approx(.5f*x)); } static OPUS_INLINE float relu(float x)