linux-media.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
From: Pavel Machek <pavel@ucw.cz>
To: Hans Verkuil <hverkuil@xs4all.nl>
Cc: Ivaylo Dimitrov <ivo.g.dimitrov.75@gmail.com>,
	Mauro Carvalho Chehab <mchehab@s-opensource.com>,
	pali.rohar@gmail.com, sre@kernel.org,
	Sakari Ailus <sakari.ailus@iki.fi>,
	Sakari Ailus <sakari.ailus@linux.intel.com>,
	linux-media@vger.kernel.org, hans.verkuil@cisco.com
Subject: Re: [patch, libv4l]: Introduce define for lookup table size
Date: Tue, 16 May 2017 14:45:20 +0200	[thread overview]
Message-ID: <20170516124519.GA25650@amd> (raw)
In-Reply-To: <c4f61bc5-6650-9468-5fbf-8041403a0ef2@xs4all.nl>

[-- Attachment #1: Type: text/plain, Size: 2105 bytes --]

Hi!

> > Make lookup table size configurable at compile-time.
> 
> I don't think I'll take this patch. The problem is that if we really add
> support for 10 or 12 bit lookup tables in the future, then just changing
> LSIZE isn't enough.
> 
> This patch doesn't really add anything as it stands.

Well, currently we have 256, 255 and 0xff sprinkled through the code,
when it means to say "lookup table size". That is quite wrong (because
you can't really grep "what depends on the table size).

And BTW with the LSIZE set to 1024, 10 bit processing seems to
work. So it is already useful, at least for me.

But now I noticed the patch is subtly wrong:

> > -#define CLIP256(color) (((color) > 0xff) ? 0xff : (((color) < 0) ? 0 : (color)))
> > +#define CLIPLSIZE(color) (((color) > LSIZE) ? LSIZE : (((color) <
0) ? 0 : (color)))

This should be LSIZE-1.

So I need to adjust the patch. But I'd still like you to take (fixed
version) for documentation purposes...

Best regards,
									Pavel

> >  #define CLIP(color, min, max) (((color) > (max)) ? (max) : (((color) < (min)) ? (min) : (color)))
> >  
> >  static int whitebalance_active(struct v4lprocessing_data *data)
> > @@ -111,10 +111,10 @@ static int whitebalance_calculate_lookup_tables_generic(
> >  
> >  	avg_avg = (data->green_avg + data->comp1_avg + data->comp2_avg) / 3;
> >  
> > -	for (i = 0; i < 256; i++) {
> > -		data->comp1[i] = CLIP256(data->comp1[i] * avg_avg / data->comp1_avg);
> > -		data->green[i] = CLIP256(data->green[i] * avg_avg / data->green_avg);
> > -		data->comp2[i] = CLIP256(data->comp2[i] * avg_avg / data->comp2_avg);
> > +	for (i = 0; i < LSIZE; i++) {
> > +		data->comp1[i] = CLIPLSIZE(data->comp1[i] * avg_avg / data->comp1_avg);
> > +		data->green[i] = CLIPLSIZE(data->green[i] * avg_avg / data->green_avg);
> > +		data->comp2[i] = CLIPLSIZE(data->comp2[i] * avg_avg / data->comp2_avg);
> >  	}
> >  
> >  	return 1;
> > 

-- 
(english) http://www.livejournal.com/~pavelmachek
(cesky, pictures) http://atrey.karlin.mff.cuni.cz/~pavel/picture/horses/blog.html

[-- Attachment #2: Digital signature --]
[-- Type: application/pgp-signature, Size: 181 bytes --]

  reply	other threads:[~2017-05-16 12:45 UTC|newest]

Thread overview: 111+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2017-02-14 12:20 [PATCH v3 0/2] v4l: Add camera voice coil lens control class, current control Sakari Ailus
2017-02-14 12:20 ` [PATCH v3 1/2] " Sakari Ailus
2017-02-14 22:47   ` Pavel Machek
2017-02-15  7:15     ` Sakari Ailus
2017-02-15  8:09       ` Pavel Machek
2017-02-20 22:26         ` Sakari Ailus
2017-02-20 22:48           ` Pavel Machek
2017-04-15  2:23   ` Mauro Carvalho Chehab
2017-04-15  7:12     ` Pavel Machek
2017-04-16  9:12     ` Sakari Ailus
2017-04-19 13:51       ` Mauro Carvalho Chehab
2017-04-24  9:30         ` support autofocus / autogain in libv4l2 Pavel Machek
2017-04-24 13:38           ` Mauro Carvalho Chehab
2017-04-24 21:29             ` Pavel Machek
2017-04-25  1:47               ` Mauro Carvalho Chehab
2017-04-25  8:05                 ` Pavel Machek
2017-04-25  8:08                   ` Pali Rohár
2017-04-25 11:23                     ` Pavel Machek
2017-04-25 11:30                       ` Pali Rohár
2017-04-25 12:28                         ` Pavel Machek
2017-04-25 12:51                           ` Pali Rohár
2017-04-25 16:55                         ` Nicolas Dufresne
2017-04-25 16:51                     ` Nicolas Dufresne
2017-04-25 16:53                   ` Nicolas Dufresne
2017-04-26 10:53                     ` Pavel Machek
2017-04-26 10:53                 ` [patch] propagating controls in libv4l2 was " Pavel Machek
2017-04-26 11:13                   ` Mauro Carvalho Chehab
2017-04-26 13:23                     ` [patch] autogain support for bayer10 format (was Re: [patch] propagating controls in libv4l2) Pavel Machek
2017-04-26 15:43                       ` Ivaylo Dimitrov
2017-04-26 22:51                         ` Pavel Machek
2017-04-27  5:52                           ` Ivaylo Dimitrov
2017-07-13  7:57                             ` Pavel Machek
2017-05-03 19:05                         ` Russell King - ARM Linux
2017-05-03 19:58                           ` Pavel Machek
2017-05-08 22:28                         ` [patch, libv4l]: fix integer overflow Pavel Machek
2017-05-09  6:29                           ` Hans Verkuil
2017-05-09  6:32                             ` Hans Verkuil
2017-05-09  8:02                               ` Pavel Machek
2017-05-09 10:59                             ` [patch, libv4l]: fix typos Pavel Machek
2017-05-09 11:01                             ` [patch, libv4l]: Add support for GRBG10 format conversion Pavel Machek
2017-05-09 11:04                             ` [patch, libv4l]: Introduce define for lookup table size Pavel Machek
2017-05-16 11:17                               ` Hans Verkuil
2017-05-16 12:45                                 ` Pavel Machek [this message]
2017-05-16 12:56                                   ` Hans Verkuil
2017-05-16 23:23                                     ` Pavel Machek
2017-05-19  9:13                                     ` [libv4l]: How to do 10-bit support? Stand-alone conversions? Pavel Machek
2018-03-16 20:55                                     ` [RFC, libv4l]: Make libv4l2 usable on devices with complex pipeline Pavel Machek
2018-03-19  9:47                                       ` Hans Verkuil
2018-03-19 10:23                                         ` Pavel Machek
2018-03-19 10:47                                           ` Mauro Carvalho Chehab
2018-03-19 11:11                                             ` Hans Verkuil
2018-03-19 12:00                                               ` Pavel Machek
2018-03-19 12:15                                                 ` Hans Verkuil
2018-03-19 12:48                                                   ` Pavel Machek
2018-03-19 13:29                                                     ` Hans Verkuil
2018-03-19 22:18                                                       ` Pavel Machek
2018-03-19 13:45                                                     ` Mauro Carvalho Chehab
2018-03-19 13:26                                                   ` Mauro Carvalho Chehab
2018-03-20  7:50                                                     ` Pavel Machek
2018-05-15 20:01                                                     ` Pavel Machek
2018-05-15 22:03                                                       ` Mauro Carvalho Chehab
2018-05-16 20:53                                                         ` Pavel Machek
2018-06-02 21:01                                                         ` Pavel Machek
2018-06-06  6:18                                                           ` Tomasz Figa
2018-06-06  8:46                                                             ` Pavel Machek
2018-06-06  8:53                                                               ` Tomasz Figa
2018-06-06 10:01                                                                 ` Pavel Machek
2018-06-06 16:57                                                                   ` Mauro Carvalho Chehab
2018-06-06 21:27                                                                     ` Pavel Machek
2018-06-07 12:22                                                                     ` [PATCH, " Pavel Machek
2018-06-06 10:51                                                                 ` [RFC, " Pavel Machek
2018-06-06 11:16                                                                   ` Tomasz Figa
2018-06-06 20:37                                                                     ` Pavel Machek
2018-06-06 17:13                                                                   ` Mauro Carvalho Chehab
2018-06-06 10:23                                                             ` Pavel Machek
2018-06-07  7:25                                                             ` Pavel Machek
2017-05-09 11:10                             ` [patch, libv4l]: fix integer overflow Pavel Machek
2017-05-16 10:42                             ` Pavel Machek
2017-05-21 10:33                             ` [patch, libv4l]: add sdlcam example for testing digital still camera functionality Pavel Machek
2017-05-26 20:41                               ` Pavel Machek
2017-05-27  9:27                                 ` Hans Verkuil
2017-05-29  6:13                               ` Hans Verkuil
2017-05-29  7:32                                 ` Pavel Machek
2017-05-29  8:02                                   ` Hans Verkuil
2017-06-14 11:16                                     ` Sakari Ailus
2017-06-14 20:41                                       ` Pavel Machek
2017-07-13  8:36                                       ` Pavel Machek
2017-05-09  8:07                           ` [patch, libv4l]: fix integer overflow Pavel Machek
2017-04-30 22:48                       ` [patch] autogain support for bayer10 format (was Re: [patch] propagating controls in libv4l2) Pavel Machek
2017-07-13  9:49                     ` [patch] propagating controls in libv4l2 was Re: support autofocus / autogain in libv4l2 Pavel Machek
2017-04-26 11:26                   ` Mauro Carvalho Chehab
2017-04-29  9:19                     ` Pavel Machek
2017-10-21 22:00                     ` Camera support, Prague next week, sdlcam Pavel Machek
2017-10-22  7:36                       ` Hans Verkuil
2017-10-22  8:31                         ` Pavel Machek
2017-10-23 18:54                         ` Pavel Machek
2017-10-23 19:24                           ` Hans Verkuil
2017-10-23 20:15                             ` Sakari Ailus
2017-10-23 21:02                               ` Mauro Carvalho Chehab
2017-10-31 21:28                               ` Nokia N9: fun with camera Pavel Machek
2017-11-01  6:36                                 ` Pavel Machek
2017-11-01 15:32                                   ` Pavel Machek
2017-04-24 22:07             ` support autofocus / autogain in libv4l2 Pavel Machek
2017-04-25  1:57               ` Mauro Carvalho Chehab
2017-04-25  8:20                 ` Pavel Machek
2017-04-25 11:23                 ` Pavel Machek
2017-04-28 22:00         ` [PATCH v3 1/2] v4l: Add camera voice coil lens control class, current control Pavel Machek
2017-04-29  1:46           ` Mauro Carvalho Chehab
2017-05-12 10:49         ` Sakari Ailus
2017-05-13 11:08           ` Pavel Machek
2017-02-14 12:20 ` [PATCH v3 2/2] ad5820: Use VOICE_COIL_CURRENT control Sakari Ailus

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=20170516124519.GA25650@amd \
    --to=pavel@ucw.cz \
    --cc=hans.verkuil@cisco.com \
    --cc=hverkuil@xs4all.nl \
    --cc=ivo.g.dimitrov.75@gmail.com \
    --cc=linux-media@vger.kernel.org \
    --cc=mchehab@s-opensource.com \
    --cc=pali.rohar@gmail.com \
    --cc=sakari.ailus@iki.fi \
    --cc=sakari.ailus@linux.intel.com \
    --cc=sre@kernel.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).