diff mbox series

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

Message ID 20231110204953.21131-1-remi@remlab.net
State Accepted
Commit 20e6195c54106203e79cb0aa148561b4d469b115
Headers show
Series [FFmpeg-devel] checkasm: test the noise case of sbrdsp.hf_apply_noise | expand

Checks

Context Check Description
yinshiyou/make_loongarch64 success Make finished
yinshiyou/make_fate_loongarch64 success Make fate finished
andriy/make_x86 success Make finished
andriy/make_fate_x86 success Make fate finished

Commit Message

Rémi Denis-Courmont Nov. 10, 2023, 8:49 p.m. UTC
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 mbox series

Patch

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