mirror of
https://git.libcamera.org/libcamera/libcamera.git
synced 2025-07-26 01:55:51 +03:00
android: camera_stream: Construct with Android stream
Pass the android camera3_stream_t, and a libcamera::StreamConfiguration to identify the source and destination parameters of this stream. Pass a CameraDevice pointer to the CameraStream constructor to allow retrieval of the StreamConfiguration associated with the CameraStream. Also change the format on which the CameraDevice performs checks to decide if post-processing is required, as the libcamera facing format is not meaningful anymore, but the Android requested format should be used instead. Reviewed-by: Kieran Bingham <kieran.bingham@ideasonboard.com> Signed-off-by: Jacopo Mondi <jacopo@jmondi.org>
This commit is contained in:
parent
3c84d88193
commit
160bb0998b
4 changed files with 36 additions and 10 deletions
|
@ -9,9 +9,13 @@
|
|||
|
||||
#include <memory>
|
||||
|
||||
#include <hardware/camera3.h>
|
||||
|
||||
#include <libcamera/camera.h>
|
||||
#include <libcamera/geometry.h>
|
||||
#include <libcamera/pixel_format.h>
|
||||
|
||||
class CameraDevice;
|
||||
class Encoder;
|
||||
|
||||
class CameraStream
|
||||
|
@ -99,9 +103,12 @@ public:
|
|||
Internal,
|
||||
Mapped,
|
||||
};
|
||||
CameraStream(libcamera::PixelFormat format, libcamera::Size size,
|
||||
CameraStream(CameraDevice *cameraDevice,
|
||||
camera3_stream_t *androidStream,
|
||||
const libcamera::StreamConfiguration &cfg,
|
||||
Type type, 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_; }
|
||||
|
@ -111,9 +118,15 @@ public:
|
|||
int configure(const libcamera::StreamConfiguration &cfg);
|
||||
|
||||
private:
|
||||
CameraDevice *cameraDevice_;
|
||||
libcamera::CameraConfiguration *config_;
|
||||
camera3_stream_t *camera3Stream_;
|
||||
Type type_;
|
||||
|
||||
/* Libcamera facing format and sizes. */
|
||||
libcamera::PixelFormat format_;
|
||||
libcamera::Size size_;
|
||||
Type type_;
|
||||
|
||||
/*
|
||||
* The index of the libcamera StreamConfiguration as added during
|
||||
* configureStreams(). A single libcamera Stream may be used to deliver
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue