summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--src/android/camera_stream.cpp4
-rw-r--r--src/android/camera_stream.h5
-rw-r--r--src/android/jpeg/post_processor_jpeg.cpp7
-rw-r--r--src/android/jpeg/post_processor_jpeg.h2
-rw-r--r--src/android/post_processor.h5
5 files changed, 13 insertions, 10 deletions
diff --git a/src/android/camera_stream.cpp b/src/android/camera_stream.cpp
index 4c8020e5..611ec0d1 100644
--- a/src/android/camera_stream.cpp
+++ b/src/android/camera_stream.cpp
@@ -96,14 +96,14 @@ int CameraStream::configure()
}
int CameraStream::process(const libcamera::FrameBuffer &source,
- MappedCamera3Buffer *dest,
+ libcamera::MappedBuffer *destination,
const CameraMetadata &requestMetadata,
CameraMetadata *resultMetadata)
{
if (!postProcessor_)
return 0;
- return postProcessor_->process(source, dest->maps()[0],
+ return postProcessor_->process(source, destination,
requestMetadata, resultMetadata);
}
diff --git a/src/android/camera_stream.h b/src/android/camera_stream.h
index 298ffbf6..fc242b2a 100644
--- a/src/android/camera_stream.h
+++ b/src/android/camera_stream.h
@@ -19,9 +19,10 @@
#include <libcamera/geometry.h>
#include <libcamera/pixel_format.h>
+#include <libcamera/internal/buffer.h>
+
class CameraDevice;
class CameraMetadata;
-class MappedCamera3Buffer;
class PostProcessor;
class CameraStream
@@ -119,7 +120,7 @@ public:
int configure();
int process(const libcamera::FrameBuffer &source,
- MappedCamera3Buffer *dest,
+ libcamera::MappedBuffer *destination,
const CameraMetadata &requestMetadata,
CameraMetadata *resultMetadata);
libcamera::FrameBuffer *getBuffer();
diff --git a/src/android/jpeg/post_processor_jpeg.cpp b/src/android/jpeg/post_processor_jpeg.cpp
index 1cbab30c..ab5b6384 100644
--- a/src/android/jpeg/post_processor_jpeg.cpp
+++ b/src/android/jpeg/post_processor_jpeg.cpp
@@ -83,7 +83,7 @@ void PostProcessorJpeg::generateThumbnail(const FrameBuffer &source,
}
int PostProcessorJpeg::process(const FrameBuffer &source,
- Span<uint8_t> destination,
+ libcamera::MappedBuffer *destination,
const CameraMetadata &requestMetadata,
CameraMetadata *resultMetadata)
{
@@ -172,7 +172,8 @@ int PostProcessorJpeg::process(const FrameBuffer &source,
const uint8_t quality = ret ? *entry.data.u8 : 95;
resultMetadata->addEntry(ANDROID_JPEG_QUALITY, &quality, 1);
- int jpeg_size = encoder_->encode(source, destination, exif.data(), quality);
+ int jpeg_size = encoder_->encode(source, destination->maps()[0],
+ exif.data(), quality);
if (jpeg_size < 0) {
LOG(JPEG, Error) << "Failed to encode stream image";
return jpeg_size;
@@ -190,7 +191,7 @@ int PostProcessorJpeg::process(const FrameBuffer &source,
* \todo Investigate if the buffer size mismatch is an issue or
* expected behaviour.
*/
- uint8_t *resultPtr = destination.data() +
+ uint8_t *resultPtr = destination->maps()[0].data() +
cameraDevice_->maxJpegBufferSize() -
sizeof(struct camera3_jpeg_blob);
auto *blob = reinterpret_cast<struct camera3_jpeg_blob *>(resultPtr);
diff --git a/src/android/jpeg/post_processor_jpeg.h b/src/android/jpeg/post_processor_jpeg.h
index d2dfa450..7689de73 100644
--- a/src/android/jpeg/post_processor_jpeg.h
+++ b/src/android/jpeg/post_processor_jpeg.h
@@ -25,7 +25,7 @@ public:
int configure(const libcamera::StreamConfiguration &incfg,
const libcamera::StreamConfiguration &outcfg) override;
int process(const libcamera::FrameBuffer &source,
- libcamera::Span<uint8_t> destination,
+ libcamera::MappedBuffer *destination,
const CameraMetadata &requestMetadata,
CameraMetadata *resultMetadata) override;
diff --git a/src/android/post_processor.h b/src/android/post_processor.h
index bda93bb4..ac40d341 100644
--- a/src/android/post_processor.h
+++ b/src/android/post_processor.h
@@ -8,9 +8,10 @@
#define __ANDROID_POST_PROCESSOR_H__
#include <libcamera/buffer.h>
-#include <libcamera/span.h>
#include <libcamera/stream.h>
+#include <libcamera/internal/buffer.h>
+
class CameraMetadata;
class PostProcessor
@@ -21,7 +22,7 @@ public:
virtual int configure(const libcamera::StreamConfiguration &inCfg,
const libcamera::StreamConfiguration &outCfg) = 0;
virtual int process(const libcamera::FrameBuffer &source,
- libcamera::Span<uint8_t> destination,
+ libcamera::MappedBuffer *destination,
const CameraMetadata &requestMetadata,
CameraMetadata *resultMetadata) = 0;
};