diff options
author | Jacopo Mondi <jacopo@jmondi.org> | 2019-07-04 11:30:52 +0200 |
---|---|---|
committer | Laurent Pinchart <laurent.pinchart@ideasonboard.com> | 2019-07-14 16:01:10 +0300 |
commit | b5010e4cee6a84f2101a34318221623d8cba009a (patch) | |
tree | 719466715f69c2aa2a663c918707efdb1ad38267 /src/libcamera/pipeline/rkisp1 | |
parent | 9ed9d9b3c1a5e6a51e1aa869c758458c57c1a0f1 (diff) |
libcamera: pipeline: Support importing buffers
Add support for importing external buffers in all pipeline handlers.
Use the stream memory type in the pipeline handlers during buffer
allocation to import buffers to or export buffers from the video device.
Signed-off-by: Jacopo Mondi <jacopo@jmondi.org>
Signed-off-by: Laurent Pinchart <laurent.pinchart@ideasonboard.com>
Reviewed-by: Niklas Söderlund <niklas.soderlund@ragnatech.se>
Diffstat (limited to 'src/libcamera/pipeline/rkisp1')
-rw-r--r-- | src/libcamera/pipeline/rkisp1/rkisp1.cpp | 6 |
1 files changed, 5 insertions, 1 deletions
diff --git a/src/libcamera/pipeline/rkisp1/rkisp1.cpp b/src/libcamera/pipeline/rkisp1/rkisp1.cpp index cc33a2cb..efa9604b 100644 --- a/src/libcamera/pipeline/rkisp1/rkisp1.cpp +++ b/src/libcamera/pipeline/rkisp1/rkisp1.cpp @@ -319,7 +319,11 @@ int PipelineHandlerRkISP1::allocateBuffers(Camera *camera, const std::set<Stream *> &streams) { Stream *stream = *streams.begin(); - return video_->exportBuffers(&stream->bufferPool()); + + if (stream->memoryType() == InternalMemory) + return video_->exportBuffers(&stream->bufferPool()); + else + return video_->importBuffers(&stream->bufferPool()); } int PipelineHandlerRkISP1::freeBuffers(Camera *camera, |