public inbox for linux-media@vger.kernel.org
 help / color / mirror / Atom feed
From: Sakari Ailus <sakari.ailus@iki.fi>
To: Guennadi Liakhovetski <g.liakhovetski@gmx.de>
Cc: Sakari Ailus <sakari.ailus@maxwell.research.nokia.com>,
	Laurent Pinchart <laurent.pinchart@ideasonboard.com>,
	Kim HeungJun <riverful@gmail.com>,
	Hans Verkuil <hverkuil@xs4all.nl>,
	Linux Media Mailing List <linux-media@vger.kernel.org>,
	Stanimir Varbanov <svarbanov@mm-sol.com>
Subject: Re: [RFC] snapshot mode, flash capabilities and control
Date: Sun, 27 Feb 2011 23:00:52 +0200	[thread overview]
Message-ID: <4D6ABB84.9090209@iki.fi> (raw)
In-Reply-To: <Pine.LNX.4.64.1102252105060.26361@axis700.grange>

Hi,

Guennadi Liakhovetski wrote:
> On Fri, 25 Feb 2011, Sakari Ailus wrote:
>
>> Hi Guennadi,
>>
>> Guennadi Liakhovetski wrote:
>>> In principle - yes, and yes, I do realise, that the couple of controls,
>>> that I've proposed only cover a very minor subset of the whole flash
>>> function palette. The purposes of my RFC were:
>>
>> Why would there be a different interface for controlling the flash in
>> simple cases and more complex cases?
>
> Sorry, not sure what you mean. Do you mean different APIs when the flash
> is controlled directly by the sensor and by an external controller? No, of
> course we need one API, but you either issue those ioctl()s to the sensor
> (sub)device, or to the dedicated flash (sub)device. If you mean my "minor
> subset" above, then I was trying to say, that this is a basis, that has to
> be extended, but not, that we will develop a new API for more complicated
> cases.

I think I misunderstood you originally, sorry. I should have properly 
read the RFC. :-)

Your proposal of the flash mode is good, but what about software strobe 
(a little more on that below)?

Also, what about making this a V4L2 control instead? The ADP1653 driver 
that Laurent referred to implements flash control using V4L2 controls only.

A version of the driver is here:

<URL:http://gitorious.org/omap3camera/mainline/commit/a41027c857dfcbc268cf8d1c7c7d0ab8b6abac92>

It's not yet in mainline --- one reason for this is the lack of time to 
discuss a proper API for the flash. :-)

...

>>>> This doesn't solve the flash/capture synchronization problem though. I don't
>>>> think we need a dedicated snapshot capture mode at the V4L2 level. A way to
>>>> configure the sensor to react on an external trigger provided by the flash
>>>> controller is needed, and that could be a control on the flash sub-device.
>>>
>>> Well... Sensors call this a "snapshot mode." I don't care that much how we
>>> _call_ it, but I do think, that we should be able to use it.
>>
>> Some sensors and webcams might have that, but newer camera solutions
>> tend to contain a raw bayer sensor and and ISP. There is no concept of
>> snapsnot mode in these sensors.
>
> Hm, I am not sure I understand, why sensors with DSPs in them should have
> no notion of a snapshot mode. Do they have no strobe / trigger pins? And
> no built in possibility to synchronize with a flash?

I was referring to ISPs such as the OMAP 3 ISP. Some hardware have a 
flash strobe pin while some doesn't (such as the N900).

Still, even if the strobe pin is missing it should be possible to allow 
strobing the flash by using software strobe (usually an I2C message).

I agree using a hardware strobe is much much better if it's available.

>>> Hm, don't think only the "flash subdevice" has to know about this. First,
>>> you have to switch the sensor into that mode. Second, it might be either
>>> external trigger from the flash controller, or a programmed trigger and a
>>> flash strobe from the sensor to the flash (controller). Third, well, not
>>> quite sure, but doesn't the host have to know about the snapshot mode?
>>
>> I do not favour adding use case type of functionality to interfaces that
>> do not necessarily need it. Would the concept of a snapshot be
>> parametrisable on V4L2 level?
>
> I am open to this. I don't have a good idea of whether camera hosts have
> to know about the snapshot mode or not. It's open for discussion.

What functionality would the snapshot mode provide? Flash 
synchronisation? Something else?

I have to admit I don't know of any hardware which would recognise a 
concept of "snapshot". Do you have a smart sensor which does this, for 
example? The only hardware support for the flash use I know of is the 
flash strobe signal.

Flash synchronisation is indeed an issue, and how to tell that a given 
frame has been exposed with flash. The use of flash is just one of the 
parameters which would be nice to connect to frames, though.

Regards,

-- 
Sakari Ailus
sakari.ailus@iki.fi

  reply	other threads:[~2011-02-27 20:59 UTC|newest]

Thread overview: 50+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2011-02-24 12:18 [RFC] snapshot mode, flash capabilities and control Guennadi Liakhovetski
2011-02-24 12:40 ` Hans Verkuil
2011-02-24 16:07   ` Guennadi Liakhovetski
2011-02-24 17:57     ` Kim HeungJun
2011-02-25 10:05       ` Laurent Pinchart
2011-02-25 13:53         ` Sakari Ailus
2011-02-25 17:08           ` Guennadi Liakhovetski
2011-02-25 18:55             ` Sakari Ailus
2011-02-25 20:56               ` Guennadi Liakhovetski
2011-02-28 11:57                 ` Guennadi Liakhovetski
2011-03-06  9:53                 ` Sakari Ailus
2011-02-26 12:31             ` Hans Verkuil
2011-02-26 13:03               ` Guennadi Liakhovetski
2011-02-26 13:39                 ` Sylwester Nawrocki
2011-02-26 13:56                   ` Hans Verkuil
2011-02-26 15:42                     ` Sylwester Nawrocki
2011-02-28 10:28                     ` Laurent Pinchart
2011-02-28 10:40                       ` Hans Verkuil
2011-02-28 10:47                         ` Laurent Pinchart
2011-02-28 11:02                         ` Guennadi Liakhovetski
2011-02-28 11:07                           ` Laurent Pinchart
2011-02-28 11:17                             ` Hans Verkuil
2011-02-28 11:19                               ` Laurent Pinchart
2011-02-28 11:54                               ` Guennadi Liakhovetski
2011-02-28 22:41                                 ` Guennadi Liakhovetski
2011-03-02 17:51                                   ` Guennadi Liakhovetski
2011-03-02 18:19                                     ` Hans Verkuil
2011-03-03  1:05                                       ` Andy Walls
2011-03-03 11:50                                         ` Laurent Pinchart
2011-03-03 13:56                                           ` Andy Walls
2011-03-03 14:04                                             ` Laurent Pinchart
2011-03-03 14:55                                               ` Andy Walls
2011-03-03 14:29                                             ` Sakari Ailus
2011-03-03  8:02                                       ` Guennadi Liakhovetski
2011-03-03  9:25                                         ` Hans Verkuil
2011-02-28 13:33                               ` Andy Walls
2011-02-28 13:37                                 ` Andy Walls
2011-02-28 11:37                             ` Guennadi Liakhovetski
2011-02-28 12:03                               ` Sakari Ailus
2011-02-28 12:44                                 ` Guennadi Liakhovetski
2011-02-28 15:07                                   ` Sakari Ailus
2011-02-28 10:24                 ` Laurent Pinchart
2011-02-25 16:58         ` Guennadi Liakhovetski
2011-02-25 18:49           ` Sakari Ailus
2011-02-25 20:33             ` Guennadi Liakhovetski
2011-02-27 21:00               ` Sakari Ailus [this message]
2011-02-28 11:20                 ` Guennadi Liakhovetski
2011-02-28 13:44                   ` Sakari Ailus
2011-03-03  7:09 ` Kim, HeungJun
2011-03-03  7:30   ` Guennadi Liakhovetski

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=4D6ABB84.9090209@iki.fi \
    --to=sakari.ailus@iki.fi \
    --cc=g.liakhovetski@gmx.de \
    --cc=hverkuil@xs4all.nl \
    --cc=laurent.pinchart@ideasonboard.com \
    --cc=linux-media@vger.kernel.org \
    --cc=riverful@gmail.com \
    --cc=sakari.ailus@maxwell.research.nokia.com \
    --cc=svarbanov@mm-sol.com \
    /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