<div dir="ltr"><div dir="ltr">Hi David,<div><br></div></div><br><div class="gmail_quote"><div dir="ltr" class="gmail_attr">On Wed, 9 Dec 2020 at 14:46, David Plowman <<a href="mailto:david.plowman@raspberrypi.com">david.plowman@raspberrypi.com</a>> wrote:<br></div><blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left:1px solid rgb(204,204,204);padding-left:1ex">Hi Naush<br>
<br>
Would this have a bad effect when the application has taken over<br>
control of the exposure time and might be setting it in large jumps<br>
between values of its choosing? It's supposed to change<br>
instantaneously...<br></blockquote><div><br></div><div>Yes it might have an effect in the cases where we may be dealing with much larger jumps in values.  The only real way would be to set the VBLANK before other controls - not a difficult change to make.  Perhaps I should prototype something in staggered write and share with the mailing list.</div><div><br></div><div>Regards,</div><div>Naush</div><div><br></div><div> </div><blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left:1px solid rgb(204,204,204);padding-left:1ex">
<br>
Ta<br>
David<br>
<br>
On Wed, 9 Dec 2020 at 14:25, Naushir Patuck <<a href="mailto:naush@raspberrypi.com" target="_blank">naush@raspberrypi.com</a>> wrote:<br>
><br>
> Hi all,<br>
><br>
> I should note one thing with these changes; currently the VBLANK control gets set together with the EXPOSURE control.  This means that the EXPOSURE value may be considered invalid/out-of-range by the V4L2 framework as it does not adjust the limit of exposure times based on the new VBLANK values.  This is wrong, but we sort-of get away with it because we adapt exposure slowly.<br>
><br>
> I can make a quick change to our staggered write component to fix this.  If we mark VBLANK as an "immediate update" control, we can set VBLANK separately and before any other control.  This will then mean that the V4L2 framework will accept the exposure control based on the new limits of exposure time.  Obviously, the staggered control is going to be superseded by the DelayedControl work of Niklas, so it will be a low effort change for the short term.  Do you think it is worth including in the current patch set?<br>
><br>
> Thanks,<br>
> Nauhs<br>
><br>
><br>
><br>
><br>
> On Wed, 9 Dec 2020 at 10:26, Naushir Patuck <<a href="mailto:naush@raspberrypi.com" target="_blank">naush@raspberrypi.com</a>> wrote:<br>
>><br>
>> Hi all,<br>
>><br>
>> Here is v4 of the framerate control work.  Apologies that this has been sent some months after the the last version, but other things took priority.  I think most of the changes here are uncontroversial after the last round of discussions on the same topic.<br>
>><br>
>> Regards,<br>
>> Naush<br>
>><br>
>><br>
>> Naushir Patuck (3):<br>
>>   libcamera: controls: Add frame duration control<br>
>>   libcamera: raspberrypi: Add control of sensor vblanking<br>
>>   ipa: raspberrypi: config: Update shutter speeds for imx219/477 and<br>
>>     ov5647<br>
>><br>
>>  include/libcamera/ipa/raspberrypi.h           |  1 +<br>
>>  src/ipa/raspberrypi/cam_helper.cpp            | 37 ++++++++++++++++-<br>
>>  src/ipa/raspberrypi/cam_helper.hpp            | 15 ++++++-<br>
>>  src/ipa/raspberrypi/cam_helper_imx219.cpp     | 13 +++++-<br>
>>  src/ipa/raspberrypi/cam_helper_imx477.cpp     | 11 ++++-<br>
>>  src/ipa/raspberrypi/cam_helper_ov5647.cpp     | 11 ++++-<br>
>>  src/ipa/raspberrypi/data/imx219.json          | 15 ++++++-<br>
>>  src/ipa/raspberrypi/data/imx477.json          | 15 ++++++-<br>
>>  src/ipa/raspberrypi/data/ov5647.json          | 15 ++++++-<br>
>>  src/ipa/raspberrypi/raspberrypi.cpp           | 41 ++++++++++++++++---<br>
>>  src/libcamera/control_ids.yaml                | 13 ++++++<br>
>>  .../pipeline/raspberrypi/raspberrypi.cpp      |  3 +-<br>
>>  12 files changed, 171 insertions(+), 19 deletions(-)<br>
>><br>
>> --<br>
>> 2.25.1<br>
>><br>
> _______________________________________________<br>
> libcamera-devel mailing list<br>
> <a href="mailto:libcamera-devel@lists.libcamera.org" target="_blank">libcamera-devel@lists.libcamera.org</a><br>
> <a href="https://lists.libcamera.org/listinfo/libcamera-devel" rel="noreferrer" target="_blank">https://lists.libcamera.org/listinfo/libcamera-devel</a><br>
</blockquote></div></div>