From d11947bd7ce77bf1ebb4f5fb603c5e11b702c69b Mon Sep 17 00:00:00 2001 From: tth Date: Thu, 15 Aug 2019 05:50:40 +0200 Subject: [PATCH] optimize cumul videograb --- v4l2/funcs.h | 2 ++ v4l2/grabvidseq.c | 8 +++++++- v4l2/rgb2fimg.c | 21 +++++++++++++++++++-- 3 files changed, 28 insertions(+), 3 deletions(-) diff --git a/v4l2/funcs.h b/v4l2/funcs.h index 809f837..86c1154 100644 --- a/v4l2/funcs.h +++ b/v4l2/funcs.h @@ -8,6 +8,8 @@ int init_device(int notused); /* --------------------------------------------------------------------- */ +int x_add_rgb2fimg(unsigned char *src, int w, int h, FloatImg *d); + int x_rgb2fimg(unsigned char *src, int w, int h, FloatImg *d); int x_rgb2file(unsigned char *src, int w, int h, char *fname); diff --git a/v4l2/grabvidseq.c b/v4l2/grabvidseq.c index 14ba098..cc56474 100644 --- a/v4l2/grabvidseq.c +++ b/v4l2/grabvidseq.c @@ -220,7 +220,7 @@ for (i = 0; i < nbre_capt; i++) { } if(verbosity > 1) { - printf("%6d %5.3f\n", i, fimg_timer_get(0)); + printf("%6d %9.3f\n", i, fimg_timer_get(0)); } @@ -246,9 +246,15 @@ for (i = 0; i < nbre_capt; i++) { #endif #if SAVE_AS_CUMUL + /** x_rgb2fimg(buffers[buf.index].start, fmt.fmt.pix.width, fmt.fmt.pix.height, &grab); fimg_add(&grab, &cumul, &cumul); + **/ + x_add_rgb2fimg(buffers[buf.index].start, + fmt.fmt.pix.width, fmt.fmt.pix.height, &cumul); + + #endif #if SAVE_AS_FIMG diff --git a/v4l2/rgb2fimg.c b/v4l2/rgb2fimg.c index b50f4d8..45d0c3b 100644 --- a/v4l2/rgb2fimg.c +++ b/v4l2/rgb2fimg.c @@ -9,11 +9,11 @@ int x_upscaler(unsigned char *src, int w, int h, FloatImg *d) { int x, y, xx, yy; -float *rp, *gp, *bp; +// float *rp, *gp, *bp; float r, g, b; static unsigned short modz; -rp = d->R, gp = d->G, bp = d->B; +// rp = d->R, gp = d->G, bp = d->B; for (y=0; yR, gp = d->G, bp = d->B; + +for (iter=0; iter