forked from tTh/FloatImg
optimize cumul videograb
This commit is contained in:
parent
4ea5294009
commit
d11947bd7c
|
@ -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);
|
||||
|
||||
|
|
|
@ -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
|
||||
|
|
|
@ -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; y<h; y++) {
|
||||
yy = (y*2) + ! (modz & 1);
|
||||
|
@ -49,6 +49,23 @@ for (iter=0; iter<size; iter++) {
|
|||
return 0;
|
||||
}
|
||||
/* --------------------------------------------------------------------- */
|
||||
/* --------------------------------------------------------------------- */
|
||||
int x_add_rgb2fimg(unsigned char *src, int w, int h, FloatImg *d)
|
||||
{
|
||||
int iter, size;
|
||||
float *rp, *gp, *bp;
|
||||
|
||||
size = w * h;
|
||||
rp = d->R, gp = d->G, bp = d->B;
|
||||
|
||||
for (iter=0; iter<size; iter++) {
|
||||
*rp++ += (float)*src++;
|
||||
*gp++ += (float)*src++;
|
||||
*bp++ += (float)*src++;
|
||||
}
|
||||
|
||||
return 0;
|
||||
}
|
||||
int x_rgb2file(unsigned char *src, int w, int h, char *fname)
|
||||
{
|
||||
FloatImg buff;
|
||||
|
|
Loading…
Reference in New Issue