aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorMichael Niedermayer <michael@niedermayer.cc>2023-03-24 00:31:40 +0100
committerMichael Niedermayer <michael@niedermayer.cc>2023-04-07 23:40:49 +0200
commit268c460c97985e9c97be65cc2dbed0a60663870f (patch)
tree29c2b87f2a11cf8e91f3203c85d2d7e316800726
parente5a261e93dac7ba72982249df5af704e45dc7d63 (diff)
downloadffmpeg-268c460c97985e9c97be65cc2dbed0a60663870f.tar.gz
avcodec/tests/snowenc: return a failure if DWT/IDWT mismatches
Signed-off-by: Michael Niedermayer <michael@niedermayer.cc> (cherry picked from commit 771c266c0be29e6a1001fbd6795dd343147da1f2) Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
-rw-r--r--libavcodec/tests/snowenc.c13
1 files changed, 10 insertions, 3 deletions
diff --git a/libavcodec/tests/snowenc.c b/libavcodec/tests/snowenc.c
index 4d9c12947b..b484f3a145 100644
--- a/libavcodec/tests/snowenc.c
+++ b/libavcodec/tests/snowenc.c
@@ -37,6 +37,7 @@ int main(void){
AVLFG prng;
s.spatial_decomposition_count=6;
s.spatial_decomposition_type=1;
+ int ret = 0;
s.temp_dwt_buffer = av_mallocz_array(width, sizeof(DWTELEM));
s.temp_idwt_buffer = av_mallocz_array(width, sizeof(IDWTELEM));
@@ -58,7 +59,10 @@ int main(void){
ff_spatial_idwt(obuffer, s.temp_idwt_buffer, width, height, width, s.spatial_decomposition_type, s.spatial_decomposition_count);
for(i=0; i<width*height; i++)
- if(buffer[1][i]!= obuffer[i]) printf("fsck: %4dx%4dx %12d %7d\n",i%width, i/width, buffer[1][i], obuffer[i]);
+ if(buffer[1][i]!= obuffer[i]) {
+ printf("fsck: %4dx%4dx %12d %7d\n",i%width, i/width, buffer[1][i], obuffer[i]);
+ ret = 1;
+ }
printf("testing 9/7 DWT\n");
s.spatial_decomposition_type=0;
@@ -71,7 +75,10 @@ int main(void){
ff_spatial_idwt(obuffer, s.temp_idwt_buffer, width, height, width, s.spatial_decomposition_type, s.spatial_decomposition_count);
for(i=0; i<width*height; i++)
- if(FFABS(buffer[1][i] - obuffer[i])>20) printf("fsck: %4dx%4d %12d %7d\n",i%width, i/width, buffer[1][i], obuffer[i]);
+ if(FFABS(buffer[1][i] - obuffer[i])>20) {
+ printf("fsck: %4dx%4d %12d %7d\n",i%width, i/width, buffer[1][i], obuffer[i]);
+ ret = 1;
+ }
{
int level, orientation, x, y;
@@ -148,5 +155,5 @@ int main(void){
}
}
- return 0;
+ return ret;
}