The tested functions treat s_m[i] == 0 as a special case. Other than that, the functions are slightly complicated vector additions.
This actually makes the zero case happen pseudorandomly. --- tests/checkasm/sbrdsp.c | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/tests/checkasm/sbrdsp.c b/tests/checkasm/sbrdsp.c index 5cc3b33215..d6c10853af 100644 --- a/tests/checkasm/sbrdsp.c +++ b/tests/checkasm/sbrdsp.c @@ -233,7 +233,10 @@ static void test_hf_apply_noise(const SBRDSPContext *sbrdsp) int kx, int m_max); randomize((INTFLOAT *)ref, 128 * 2); - randomize((INTFLOAT *)s_m, 128); + + for (int i = 0; i < 128; i++) + s_m[i] = (rnd() & 1) ? ((INTFLOAT)rnd() / UINT_MAX) : (INTFLOAT)0; + randomize((INTFLOAT *)q_filt, 128); for (i = 0; i < 4; i++) { -- 2.42.0 _______________________________________________ ffmpeg-devel mailing list ffmpeg-devel@ffmpeg.org https://ffmpeg.org/mailman/listinfo/ffmpeg-devel To unsubscribe, visit link above, or email ffmpeg-devel-requ...@ffmpeg.org with subject "unsubscribe".