summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--src/android/camera_device.cpp8
-rw-r--r--src/android/camera_stream.cpp15
-rw-r--r--src/android/camera_stream.h18
3 files changed, 12 insertions, 29 deletions
diff --git a/src/android/camera_device.cpp b/src/android/camera_device.cpp
index 47c42319..678dca60 100644
--- a/src/android/camera_device.cpp
+++ b/src/android/camera_device.cpp
@@ -1206,9 +1206,8 @@ int CameraDevice::configureStreams(camera3_stream_configuration_t *stream_list)
streamConfiguration.pixelFormat = format;
config_->addConfiguration(streamConfiguration);
- unsigned int index = config_->size() - 1;
- streams_.emplace_back(this, stream, streamConfiguration,
- CameraStream::Type::Direct, index);
+ streams_.emplace_back(this, CameraStream::Type::Direct,
+ stream, config_->size() - 1);
stream->priv = static_cast<void *>(&streams_.back());
}
@@ -1262,8 +1261,7 @@ int CameraDevice::configureStreams(camera3_stream_configuration_t *stream_list)
index = config_->size() - 1;
}
- StreamConfiguration &cfg = config_->at(index);
- streams_.emplace_back(this, jpegStream, cfg, type, index);
+ streams_.emplace_back(this, type, jpegStream, index);
jpegStream->priv = static_cast<void *>(&streams_.back());
}
diff --git a/src/android/camera_stream.cpp b/src/android/camera_stream.cpp
index 9c7819ef..3946a2cd 100644
--- a/src/android/camera_stream.cpp
+++ b/src/android/camera_stream.cpp
@@ -17,18 +17,13 @@ using namespace libcamera;
LOG_DECLARE_CATEGORY(HAL);
-CameraStream::CameraStream(CameraDevice *cameraDevice,
- camera3_stream_t *camera3Stream,
- const libcamera::StreamConfiguration &cfg,
- Type type, unsigned int index)
- : cameraDevice_(cameraDevice), camera3Stream_(camera3Stream),
- type_(type), index_(index)
+CameraStream::CameraStream(CameraDevice *cameraDevice, Type type,
+ camera3_stream_t *camera3Stream, unsigned int index)
+ : cameraDevice_(cameraDevice), type_(type),
+ camera3Stream_(camera3Stream), index_(index)
{
config_ = cameraDevice_->cameraConfiguration();
- format_ = cfg.pixelFormat;
- size_ = cfg.size;
-
if (type_ == Type::Internal || type_ == Type::Mapped)
encoder_ = std::make_unique<EncoderLibJpeg>();
}
@@ -63,7 +58,7 @@ int CameraStream::process(const libcamera::FrameBuffer &source,
exif.setMake("libcamera");
exif.setModel("cameraModel");
exif.setOrientation(cameraDevice_->orientation());
- exif.setSize(size_);
+ exif.setSize(configuration().size);
/*
* We set the frame's EXIF timestamp as the time of encode.
* Since the precision we need for EXIF timestamp is only one
diff --git a/src/android/camera_stream.h b/src/android/camera_stream.h
index d8d9d8c4..f46cfd60 100644
--- a/src/android/camera_stream.h
+++ b/src/android/camera_stream.h
@@ -106,16 +106,11 @@ public:
Internal,
Mapped,
};
- CameraStream(CameraDevice *cameraDevice,
- camera3_stream_t *androidStream,
- const libcamera::StreamConfiguration &cfg,
- Type type, unsigned int index);
+ CameraStream(CameraDevice *cameraDevice, Type type,
+ camera3_stream_t *camera3Stream, unsigned int index);
- const camera3_stream_t &camera3Stream() const { return *camera3Stream_; }
- const libcamera::PixelFormat &format() const { return format_; }
- const libcamera::Size &size() const { return size_; }
Type type() const { return type_; }
-
+ const camera3_stream_t &camera3Stream() const { return *camera3Stream_; }
const libcamera::StreamConfiguration &configuration() const;
libcamera::Stream *stream() const;
@@ -126,13 +121,8 @@ public:
private:
CameraDevice *cameraDevice_;
libcamera::CameraConfiguration *config_;
- camera3_stream_t *camera3Stream_;
Type type_;
-
- /* Libcamera facing format and sizes. */
- libcamera::PixelFormat format_;
- libcamera::Size size_;
-
+ camera3_stream_t *camera3Stream_;
/*
* The index of the libcamera StreamConfiguration as added during
* configureStreams(). A single libcamera Stream may be used to deliver