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-15 22:38:10 +0200
commit6363556eba3fe45ec63d8ec26f0614a679196472 (patch)
tree4511899d7ddcc468721b8a577798e7936760ae81
parentf682b22cef3a71662ce993e23bc20f1afa36b87a (diff)
downloadffmpeg-6363556eba3fe45ec63d8ec26f0614a679196472.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;
}