diff --git a/floatimg.h b/floatimg.h index 8b4ea812..94dd3fb5 100644 --- a/floatimg.h +++ b/floatimg.h @@ -3,7 +3,7 @@ * ugly code from tTh */ -#define FIMG_VERSION 101 +#define FIMG_VERSION 102 /* * in memory descriptor diff --git a/funcs/rotate.c b/funcs/rotate.c index ec190b8d..cb1593a6 100644 --- a/funcs/rotate.c +++ b/funcs/rotate.c @@ -15,7 +15,7 @@ extern int verbosity; int fimg_rotate_90(FloatImg *src, FloatImg *dst, int notused) { int foo; -int x, y; +int x, y, j, k; float rgb[3]; #if DEBUG_LEVEL @@ -56,7 +56,12 @@ if ( (src->type != dst->type) || for (y=0; yheight; y++) { for (x=0; xwidth; x++) { fimg_get_rgb(src, x, y, rgb); - fimg_put_rgb(dst, y, x, rgb); + j = (dst->height - x) - 1; + k = (dst->width - y) - 1; +#if DEBUG_LEVEL > 1 + fprintf(stderr, "%6d %6d\n", k, j); +#endif + fimg_put_rgb(dst, k, x, rgb); } } diff --git a/v4l2/grabvidseq.c b/v4l2/grabvidseq.c index f09804d9..4c4d3113 100644 --- a/v4l2/grabvidseq.c +++ b/v4l2/grabvidseq.c @@ -369,10 +369,11 @@ switch (contrast) { } /* XXX warning, new from coronahome 26 mars 2020 */ +to_save = &cumul; if (90 == rotfactor) { memset(&tmpfimg, 0, sizeof(FloatImg)); foo = fimg_rotate_90(&cumul, &tmpfimg, 0); - if (verbosity > 1) { + if (verbosity > 2) { fprintf(stderr, "dump rot90 %p\n", &tmpfimg); foo = fimg_save_as_png(&tmpfimg, "rot90.png", 0); } @@ -383,13 +384,13 @@ if (90 == rotfactor) { foo = format_from_extension(outfile); switch (foo) { case FILE_TYPE_FIMG: - foo = fimg_dump_to_file(&cumul, outfile, 0); + foo = fimg_dump_to_file(to_save, outfile, 0); break; case FILE_TYPE_PNM: - foo = fimg_save_as_pnm(&cumul, outfile, 1); + foo = fimg_save_as_pnm(to_save, outfile, 1); break; case FILE_TYPE_PNG: - foo = fimg_save_as_png(&cumul, outfile, 0); + foo = fimg_save_as_png(to_save, outfile, 0); break; default: fprintf(stderr, "can't save as %s\n", outfile);