From: pavel@ucw.cz (Pavel Machek)
To: linux-arm-kernel@lists.infradead.org
Subject: [patch] autogain support for bayer10 format (was Re: [patch] propagating controls in libv4l2)
Date: Thu, 27 Apr 2017 00:51:50 +0200 [thread overview]
Message-ID: <20170426225150.GA4188@amd> (raw)
In-Reply-To: <cedfd68d-d0fe-6fa8-2676-b61f3ddda652@gmail.com>
Hi!
> >>There are two separate things here:
> >>
> >>1) Autofoucs for a device that doesn't use subdev API
> >>2) libv4l2 support for devices that require MC and subdev API
> >
> >Actually there are three: 0) autogain. Unfortunately, I need autogain
> >first before autofocus has a chance...
> >
> >And that means... bayer10 support for autogain.
> >
> >Plus, I changed avg_lum to long long. Quick calculation tells me int
> >could overflow with few megapixel sensor.
> >
> >Oh, btw http://ytse.tricolour.net/docs/LowLightOptimization.html no
> >longer works.
> >
> >Regards,
> > Pavel
> >
> >diff --git a/lib/libv4lconvert/processing/autogain.c b/lib/libv4lconvert/processing/autogain.c
> >index c6866d6..0b52d0f 100644
> >--- a/lib/libv4lconvert/processing/autogain.c
> >+++ b/lib/libv4lconvert/processing/autogain.c
> >@@ -68,6 +71,41 @@ static void autogain_adjust(struct v4l2_queryctrl *ctrl, int *value,
> > }
> > }
> >
> >+static int get_luminosity_bayer10(uint16_t *buf, const struct v4l2_format *fmt)
> >+{
> >+ long long avg_lum = 0;
> >+ int x, y;
> >+
> >+ buf += fmt->fmt.pix.height * fmt->fmt.pix.bytesperline / 4 +
> >+ fmt->fmt.pix.width / 4;
> >+
> >+ for (y = 0; y < fmt->fmt.pix.height / 2; y++) {
> >+ for (x = 0; x < fmt->fmt.pix.width / 2; x++)
>
> That would take some time :). AIUI, we have NEON support in ARM kernels
> (CONFIG_KERNEL_MODE_NEON), I wonder if it makes sense (me) to convert the
> above loop to NEON-optimized when it comes to it? Are there any drawbacks in
> using NEON code in kernel?
Well, thanks for offer. This is actualy libv4l2.
But I'd say NEON conversion is not neccessary anytime soon. First,
this is just trying to get average luminosity. We can easily skip
quite a lot of pixels, and still get reasonable answer.
Second, omap3isp actually has a hardware block computing statistics
for us. We just don't use it for simplicity.
(But if you want to play with camera, I'll get you patches; there's
ton of work to be done, both kernel and userspace :-).
Regards,
Pavel
--
(english) http://www.livejournal.com/~pavelmachek
(cesky, pictures) http://atrey.karlin.mff.cuni.cz/~pavel/picture/horses/blog.html
-------------- next part --------------
A non-text attachment was scrubbed...
Name: signature.asc
Type: application/pgp-signature
Size: 181 bytes
Desc: Digital signature
URL: <http://lists.infradead.org/pipermail/linux-arm-kernel/attachments/20170427/664aa13a/attachment.sig>
next prev parent reply other threads:[~2017-04-26 22:51 UTC|newest]
Thread overview: 38+ messages / expand[flat|nested] mbox.gz Atom feed top
[not found] <1487074823-28274-1-git-send-email-sakari.ailus@linux.intel.com>
[not found] ` <1487074823-28274-2-git-send-email-sakari.ailus@linux.intel.com>
[not found] ` <20170414232332.63850d7b@vento.lan>
[not found] ` <20170416091209.GB7456@valkosipuli.retiisi.org.uk>
[not found] ` <20170419105118.72b8e284@vento.lan>
[not found] ` <20170424093059.GA20427@amd>
2017-04-24 13:38 ` support autofocus / autogain in libv4l2 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 [this message]
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-04-30 22:48 ` 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
[not found] ` <20171021220026.GA26881@amd>
2017-10-22 7:36 ` Camera support, Prague next week, sdlcam 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
[not found] ` <20171031212812.GA11148@amd>
2017-11-01 6:36 ` Nokia N9: fun with camera 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
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=20170426225150.GA4188@amd \
--to=pavel@ucw.cz \
--cc=linux-arm-kernel@lists.infradead.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).