libcamera/src
Naushir Patuck a3b0aa5511 pipeline: raspberrypi: Rework the internal buffer allocation scheme
For simplicity, the pipeline handler currently look at the maximum number of
buffers set in the StreamConfiguration by the user and allocate the same number
of internal buffers for all device nodes. This would likely overallocate buffers
for some nodes. Rework this logic to try and minimise overallcations without
compromising performance.

The key change is to mostly decouple the number of internal buffers allocated
from number of buffers requested by the user through the StreamConfiguration.

For ISP nodes, we only ever need 1 set of internal buffers, as the hardware runs
synchronous with the requests and IPA.

For Unicam nodes, allocate a minimum for 4 buffers (exported + internal), but
also require at least 2 internal buffers to minimise frame drops.

Signed-off-by: Naushir Patuck <naush@raspberrypi.com>
Reviewed-by: Kieran Bingham <kieran.bingham@ideasonboard.com>
Reviewed-by: Umang Jain <umang.jain@ideasonboard.com>
Reviewed-by: Laurent Pinchart <laurent.pinchart@ideasonboard.com>
Signed-off-by: Kieran Bingham <kieran.bingham@ideasonboard.com>
2021-11-23 13:46:04 +00:00
..
android android: Camera3RequestDescriptor: Provide a constructor for StreamBuffer 2021-11-08 17:34:45 +05:30
cam cam: Remove using namespace in stream_options.h 2021-10-15 05:05:38 +03:00
gstreamer gstreamer: Check if Stream configurations were generated correctly 2021-10-05 03:30:36 +03:00
ipa ipa: ipu3: agc: Saturate the averages when computing relative luminance 2021-11-23 10:29:31 +02:00
lc-compliance lc-compliance: Build with gtest in subprojects 2021-11-15 10:04:10 +00:00
libcamera pipeline: raspberrypi: Rework the internal buffer allocation scheme 2021-11-23 13:46:04 +00:00
qcam qcam: Remove using namespace in header files 2021-10-15 05:05:39 +03:00
v4l2 v4l2: Remove using namespace in header files 2021-10-15 05:05:40 +03:00
meson.build android: Split HAL to its own shared library 2021-06-25 16:09:46 +01:00