summaryrefslogtreecommitdiff
path: root/src/camera
diff options
context:
space:
mode:
authorNikita Kostovsky <luntik2012@gmail.com>2025-01-23 13:41:27 +0100
committerNikita Kostovsky <luntik2012@gmail.com>2025-01-23 13:41:27 +0100
commit80949709a1132b5198bb8006963f177fcde2e991 (patch)
tree5d797ecfd761df3ac9968c696eba3abfd50852fa /src/camera
parent3fa8f19daf8b36b0703002d78a84e5bb7919849b (diff)
fix CMakeLists.txt, add some debug info and prototypes
Diffstat (limited to 'src/camera')
-rw-r--r--src/camera/ov9281.cpp16
1 files changed, 15 insertions, 1 deletions
diff --git a/src/camera/ov9281.cpp b/src/camera/ov9281.cpp
index 012eab6..b76ecdd 100644
--- a/src/camera/ov9281.cpp
+++ b/src/camera/ov9281.cpp
@@ -64,6 +64,18 @@ bool OV9281::init()
libcamera::StreamConfiguration &streamConfig = m_config->at(0);
+ std::cout << "supported pixel formats:\n";
+
+ for (const auto &pixelFormat : streamConfig.formats().pixelformats())
+ {
+ std::cout << "\t" << pixelFormat.toString() << std::endl;
+
+ for (const auto &size : streamConfig.formats().sizes(pixelFormat))
+ {
+ std::cout << "\t\t" << size.toString() << std::endl;
+ }
+ }
+
streamConfig.pixelFormat = OV9281::pixelFormat;
streamConfig.bufferCount = OV9281::bufferCount;
@@ -177,6 +189,7 @@ void OV9281::onRequestCompleted(libcamera::Request *completed_request)
.planes()[i];
size_t size = std::min(metaplane.bytesused, plane.length);
+ std::cout << "size is: " << size << std::endl;
void *data = m_mappedBuffers[plane.fd.get()].first;
auto img = std::make_shared<Image>();
@@ -184,13 +197,14 @@ void OV9281::onRequestCompleted(libcamera::Request *completed_request)
img->width = imageSize.width;
img->height = imageSize.height;
- memcpy(img->data, data, size);
// img->dataSize = size;
// img->stride = stride;
img->pixelFormat = pixelFormat;
img->counters.measurementCounter = metadata.sequence;
img->counters.timestampUs = metadata.timestamp / 1000;
img->counters.encoderPosition = RotaryEncoder::instance()->position();
+
+ memcpy(img->data, data, size);
img->rotate();
auto pixels = img->pixels();