[libcamera-devel] [PATCH 2/5] cam: Queue requests unconditionally

Jacopo Mondi jacopo at jmondi.org
Fri May 20 18:02:33 CEST 2022


Hi Laurent,

On Fri, May 20, 2022 at 01:16:08PM +0300, Laurent Pinchart wrote:
> Hi Jacopo,
>
> Thank you for the patch.
>
> On Wed, May 18, 2022 at 07:19:18PM +0200, Jacopo Mondi via libcamera-devel wrote:
> > The CaptureSession::queueRequest() function increments the queueCount_
> > counter, which tracks the number of requests queued to the camera.
> >
> > The number of queued requests is currently compared with the capture
> > limit which should instead only be compared with the number of captured
> > frames, something which already happens in the
> > CameraSession::processRequest() function.
> >
> > Remove the check and only compare the capture limit with the actual
> > number of captured frames. If more requests than the frame capture
> > limits end up being queued to the Camera, they will be released on
> > Camera::stop().
>
> They will, but the point of this check is to capture exactly
> captureLimit_ frames. See commit a3c75bba84ba ("cam: Only queue the
> exact number of requests asked for"). I'd rather keep it if possible.
>

Fine, I think this was mostly a drive-by cleanup

> > Signed-off-by: Jacopo Mondi <jacopo at jmondi.org>
> > ---
> >  src/cam/camera_session.cpp | 3 ---
> >  1 file changed, 3 deletions(-)
> >
> > diff --git a/src/cam/camera_session.cpp b/src/cam/camera_session.cpp
> > index 71e6bd605139..186072817367 100644
> > --- a/src/cam/camera_session.cpp
> > +++ b/src/cam/camera_session.cpp
> > @@ -327,9 +327,6 @@ int CameraSession::startCapture()
> >
> >  int CameraSession::queueRequest(Request *request)
> >  {
> > -	if (captureLimit_ && queueCount_ >= captureLimit_)
> > -		return 0;
> > -
> >  	queueCount_++;
> >
> >  	return camera_->queueRequest(request);
>
> --
> Regards,
>
> Laurent Pinchart


More information about the libcamera-devel mailing list