[FFmpeg-cvslog] checkasm: test the noise case of sbrdsp.hf_apply_noise

Rémi Denis-Courmont git at videolan.org
Tue Nov 14 19:17:17 EET 2023


ffmpeg | branch: master | Rémi Denis-Courmont <remi at remlab.net> | Fri Nov 10 21:17:43 2023 +0200| [20e6195c54106203e79cb0aa148561b4d469b115] | committer: Rémi Denis-Courmont

checkasm: test the noise case of sbrdsp.hf_apply_noise

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.

> http://git.videolan.org/gitweb.cgi/ffmpeg.git/?a=commit;h=20e6195c54106203e79cb0aa148561b4d469b115
---

 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++) {



More information about the ffmpeg-cvslog mailing list