libcamera: pipeline: Pass libcamera controls into pipeline_handler::start()
Applications now have the ability to pass in controls that need to be applied on startup, rather than doing it through Request where there might be some frames of delay in getting the controls applied. This commit adds the ability to pass in a set of libcamera controls into the pipeline handlers through the pipeline_handler::start() method. These controls are provided by the application through the camera::start() public API. Signed-off-by: Naushir Patuck <naush@raspberrypi.com> Reviewed-by: David Plowman <david.plowman@raspberrypi.com> Tested-by: David Plowman <david.plowman@raspberrypi.com> Reviewed-by: Jacopo Mondi <jacopo@jmondi.org> Reviewed-by: Laurent Pinchart <laurent.pinchart@ideasonboard.com> Signed-off-by: Laurent Pinchart <laurent.pinchart@ideasonboard.com>
This commit is contained in:
committed by
Laurent Pinchart
parent
ee477efde8
commit
a62b35b8c0
@@ -126,7 +126,7 @@ public:
|
||||
int exportFrameBuffers(Camera *camera, Stream *stream,
|
||||
std::vector<std::unique_ptr<FrameBuffer>> *buffers) override;
|
||||
|
||||
int start(Camera *camera) override;
|
||||
int start(Camera *camera, ControlList *controls) override;
|
||||
void stop(Camera *camera) override;
|
||||
|
||||
bool match(DeviceEnumerator *enumerator) override;
|
||||
@@ -646,7 +646,7 @@ int SimplePipelineHandler::exportFrameBuffers(Camera *camera, Stream *stream,
|
||||
return data->video_->exportBuffers(count, buffers);
|
||||
}
|
||||
|
||||
int SimplePipelineHandler::start(Camera *camera)
|
||||
int SimplePipelineHandler::start(Camera *camera, [[maybe_unused]] ControlList *controls)
|
||||
{
|
||||
SimpleCameraData *data = cameraData(camera);
|
||||
V4L2VideoDevice *video = data->video_;
|
||||
|
||||
Reference in New Issue
Block a user