From 298f3ab9f6704db9678ba6d76342c28892ef325d Mon Sep 17 00:00:00 2001 From: OSAMU WATANABE Date: Wed, 11 Sep 2024 18:43:06 +0900 Subject: [PATCH] Add pre-scaling for FF_DWT97_INT into test/jpeg2000dwt.c --- libavcodec/tests/jpeg2000dwt.c | 5 +++ tests/ref/fate/j2k-dwt | 59 ++++++++++++++++++++++++++++++++++ 2 files changed, 64 insertions(+) diff --git a/libavcodec/tests/jpeg2000dwt.c b/libavcodec/tests/jpeg2000dwt.c index 520ecc05a3..8cee3db32e 100644 --- a/libavcodec/tests/jpeg2000dwt.c +++ b/libavcodec/tests/jpeg2000dwt.c @@ -46,6 +46,11 @@ static int test_dwt(int *array, int *ref, int border[2][2], int decomp_levels, i fprintf(stderr, "ff_dwt_encode failed\n"); return 1; } + if (type == FF_DWT97_INT) { + // pre-scaling to simulate dequantization which places the binary point at 1 bit above from LSB + for (j = 0; j< s->linelen[decomp_levels-1][0] * s->linelen[decomp_levels-1][1]; j++) + array[j] <<=1; + } ret = ff_dwt_decode(s, array); if (ret < 0) { fprintf(stderr, "ff_dwt_encode failed\n"); diff --git a/tests/ref/fate/j2k-dwt b/tests/ref/fate/j2k-dwt index a2ffc9a050..5c40a2f1f5 100644 --- a/tests/ref/fate/j2k-dwt +++ b/tests/ref/fate/j2k-dwt @@ -1 +1,60 @@ 5/3i, decomp:15 border 151 170 140 183 milli-err2: 0 +9/7i, decomp:15 border 151 170 140 183 milli-err2: 110 +9/7f, decomp:15 border 151 170 140 183 err2: 0.000 +5/3i, decomp:21 border 173 201 81 189 milli-err2: 0 +9/7i, decomp:21 border 173 201 81 189 milli-err2: 109 +9/7f, decomp:21 border 173 201 81 189 err2: 0.000 +5/3i, decomp:22 border 213 227 76 245 milli-err2: 0 +9/7i, decomp:22 border 213 227 76 245 milli-err2: 116 +9/7f, decomp:22 border 213 227 76 245 err2: 0.000 +5/3i, decomp:13 border 134 157 184 203 milli-err2: 0 +9/7i, decomp:13 border 134 157 184 203 milli-err2: 107 +9/7f, decomp:13 border 134 157 184 203 err2: 0.000 +5/3i, decomp: 1 border 204 237 6 106 milli-err2: 0 +9/7i, decomp: 1 border 204 237 6 106 milli-err2: 96 +9/7f, decomp: 1 border 204 237 6 106 err2: 0.000 +5/3i, decomp:28 border 76 211 13 210 milli-err2: 0 +9/7i, decomp:28 border 76 211 13 210 milli-err2: 118 +9/7f, decomp:28 border 76 211 13 210 err2: 0.000 +5/3i, decomp:21 border 76 99 43 123 milli-err2: 0 +9/7i, decomp:21 border 76 99 43 123 milli-err2: 106 +9/7f, decomp:21 border 76 99 43 123 err2: 0.000 +5/3i, decomp:15 border 192 243 174 204 milli-err2: 0 +9/7i, decomp:15 border 192 243 174 204 milli-err2: 122 +9/7f, decomp:15 border 192 243 174 204 err2: 0.000 +5/3i, decomp:21 border 17 68 93 204 milli-err2: 0 +9/7i, decomp:21 border 17 68 93 204 milli-err2: 125 +9/7f, decomp:21 border 17 68 93 204 err2: 0.000 +5/3i, decomp:11 border 142 168 82 174 milli-err2: 0 +9/7i, decomp:11 border 142 168 82 174 milli-err2: 114 +9/7f, decomp:11 border 142 168 82 174 err2: 0.000 +5/3i, decomp:23 border 142 209 171 235 milli-err2: 0 +9/7i, decomp:23 border 142 209 171 235 milli-err2: 120 +9/7f, decomp:23 border 142 209 171 235 err2: 0.000 +5/3i, decomp:30 border 37 185 79 245 milli-err2: 0 +9/7i, decomp:30 border 37 185 79 245 milli-err2: 115 +9/7f, decomp:30 border 37 185 79 245 err2: 0.000 +5/3i, decomp: 5 border 129 236 30 243 milli-err2: 0 +9/7i, decomp: 5 border 129 236 30 243 milli-err2: 117 +9/7f, decomp: 5 border 129 236 30 243 err2: 0.000 +5/3i, decomp:10 border 5 160 146 247 milli-err2: 0 +9/7i, decomp:10 border 5 160 146 247 milli-err2: 117 +9/7f, decomp:10 border 5 160 146 247 err2: 0.000 +5/3i, decomp: 5 border 104 162 6 47 milli-err2: 0 +9/7i, decomp: 5 border 104 162 6 47 milli-err2: 119 +9/7f, decomp: 5 border 104 162 6 47 err2: 0.000 +5/3i, decomp:24 border 78 250 102 218 milli-err2: 0 +9/7i, decomp:24 border 78 250 102 218 milli-err2: 113 +9/7f, decomp:24 border 78 250 102 218 err2: 0.000 +5/3i, decomp:28 border 86 98 56 79 milli-err2: 0 +9/7i, decomp:28 border 86 98 56 79 milli-err2: 115 +9/7f, decomp:28 border 86 98 56 79 err2: 0.000 +5/3i, decomp: 6 border 95 238 197 214 milli-err2: 0 +9/7i, decomp: 6 border 95 238 197 214 milli-err2: 115 +9/7f, decomp: 6 border 95 238 197 214 err2: 0.000 +5/3i, decomp:17 border 77 169 93 165 milli-err2: 0 +9/7i, decomp:17 border 77 169 93 165 milli-err2: 123 +9/7f, decomp:17 border 77 169 93 165 err2: 0.000 +5/3i, decomp:22 border 178 187 7 119 milli-err2: 0 +9/7i, decomp:22 border 178 187 7 119 milli-err2: 95 +9/7f, decomp:22 border 178 187 7 119 err2: 0.000