[libcamera-devel] [PATCH 23/30] libcamera: pipelines: Switch to V4L2Stream
Niklas Söderlund
niklas.soderlund at ragnatech.se
Wed Nov 27 00:36:13 CET 2019
Prepare to switch to the FrameBuffer interface by using V4L2Stream. This
does not break current operations as changes in applications are needed
to switch interface.
Signed-off-by: Niklas Söderlund <niklas.soderlund at ragnatech.se>
---
src/libcamera/pipeline/ipu3/ipu3.cpp | 5 +++--
src/libcamera/pipeline/rkisp1/rkisp1.cpp | 2 +-
src/libcamera/pipeline/uvcvideo.cpp | 2 +-
src/libcamera/pipeline/vimc.cpp | 2 +-
4 files changed, 6 insertions(+), 5 deletions(-)
diff --git a/src/libcamera/pipeline/ipu3/ipu3.cpp b/src/libcamera/pipeline/ipu3/ipu3.cpp
index 094c4db6bc32b683..5080ac6c4d0abe3b 100644
--- a/src/libcamera/pipeline/ipu3/ipu3.cpp
+++ b/src/libcamera/pipeline/ipu3/ipu3.cpp
@@ -135,11 +135,12 @@ public:
BufferPool pool_;
};
-class IPU3Stream : public Stream
+class IPU3Stream : public V4L2Stream
{
public:
IPU3Stream(ImgUDevice::ImgUOutput *device, const std::string &name)
- : active_(false), name_(name), device_(device)
+ : V4L2Stream(device->dev), active_(false), name_(name),
+ device_(device)
{
}
diff --git a/src/libcamera/pipeline/rkisp1/rkisp1.cpp b/src/libcamera/pipeline/rkisp1/rkisp1.cpp
index 1ae50bec0d401b3f..ca3d92c7ad637c3a 100644
--- a/src/libcamera/pipeline/rkisp1/rkisp1.cpp
+++ b/src/libcamera/pipeline/rkisp1/rkisp1.cpp
@@ -888,7 +888,7 @@ int PipelineHandlerRkISP1::createCamera(MediaEntity *sensor)
std::unique_ptr<RkISP1CameraData> data =
utils::make_unique<RkISP1CameraData>(this);
- data->stream_ = new Stream();
+ data->stream_ = new V4L2Stream(video_);
ControlInfoMap::Map ctrls;
ctrls.emplace(std::piecewise_construct,
diff --git a/src/libcamera/pipeline/uvcvideo.cpp b/src/libcamera/pipeline/uvcvideo.cpp
index 64fc488912e5a82f..9cc90bf454cb4392 100644
--- a/src/libcamera/pipeline/uvcvideo.cpp
+++ b/src/libcamera/pipeline/uvcvideo.cpp
@@ -331,7 +331,7 @@ int UVCCameraData::init(MediaEntity *entity)
if (ret)
return ret;
- stream_ = new Stream();
+ stream_ = new V4L2Stream(video_);
video_->bufferReady.connect(this, &UVCCameraData::bufferReady);
diff --git a/src/libcamera/pipeline/vimc.cpp b/src/libcamera/pipeline/vimc.cpp
index 3f9e92163642f0c2..b1222bd21fb629a0 100644
--- a/src/libcamera/pipeline/vimc.cpp
+++ b/src/libcamera/pipeline/vimc.cpp
@@ -420,7 +420,7 @@ int VimcCameraData::init(MediaDevice *media)
if (video_->open())
return -ENODEV;
- stream_ = new Stream();
+ stream_ = new V4L2Stream(video_);
video_->bufferReady.connect(this, &VimcCameraData::bufferReady);
--
2.24.0
More information about the libcamera-devel
mailing list