summaryrefslogtreecommitdiff
path: root/src/camera
diff options
context:
space:
mode:
authorNikita Kostovsky <nikita@kostovsky.me>2025-11-09 08:53:54 +0100
committerNikita Kostovsky <nikita@kostovsky.me>2025-11-09 08:55:23 +0100
commitc81e60b1f5d62b74a2ebc269348b36bf91df5015 (patch)
tree8589c151556a8d4755ebfa5520d076ae0b902387 /src/camera
parent69c5e9c07941212ac77368effd1c60db3140d4a3 (diff)
fix memcpy_neon
Diffstat (limited to 'src/camera')
-rw-r--r--src/camera/veyeimx287m.cpp22
1 files changed, 17 insertions, 5 deletions
diff --git a/src/camera/veyeimx287m.cpp b/src/camera/veyeimx287m.cpp
index d4c19fe..e89442c 100644
--- a/src/camera/veyeimx287m.cpp
+++ b/src/camera/veyeimx287m.cpp
@@ -81,8 +81,7 @@ std::vector<std::shared_ptr<ICamera> > VeyeIMX287m::search()
if (!cam->init())
return {};
- // if (!cam->setExposureTimeUs(30))
- if (!cam->setExposureTimeUs(250))
+ if (!cam->setExposureTimeUs(30))
return {};
if (!cam->setLaserLevel(1))
@@ -379,12 +378,25 @@ void VeyeIMX287m::calcFrameLoop(std::stop_token stopToken)
t.start();
// std::lock_guard buffer_lock{m_bufferMutexes[bufferIdx]};
// get: 4100-4500
- // memcpy(&image.data, m_videoBuffers[bufferIdx], img_size);
+ memcpy(&image.data, m_videoBuffers[bufferIdx], img_size);
// get: 5000-5100
+ // memcpy_1by1<img_size / sizeof(ARRAY_TYPE)>((ARRAY_TYPE *) &image.data,
+ // (ARRAY_TYPE *) m_videoBuffers[bufferIdx]);
// memcpy_1by1<img_size>((std::byte *) &image.data,
// (std::byte *) m_videoBuffers[bufferIdx]);
- memcpy_neon<img_size / sizeof(ARRAY_TYPE)>((ARRAY_TYPE *) &image.data,
- (ARRAY_TYPE *) m_videoBuffers[bufferIdx]);
+
+ // memcpy_neon<img_size / sizeof(ARRAY_TYPE)>((ARRAY_TYPE *) &image.data,
+ // (ARRAY_TYPE *) m_videoBuffers[bufferIdx]);
+ // std::cerr << "size: " << img_size / sizeof(ARRAY_TYPE) << std::endl;
+ // Image::data_t native;
+ // Image::data_t neon;
+ // memcpy(&native, m_videoBuffers[bufferIdx], img_size);
+ // memcpy_neon<img_size / sizeof(ARRAY_TYPE)>((ARRAY_TYPE *) &neon,
+ // (ARRAY_TYPE *) m_videoBuffers[bufferIdx]);
+
+ // if (memcmp(&native, &neon, img_size) != 0) {
+ // std::cerr << "different: " << img_size / sizeof(ARRAY_TYPE) << std::endl;
+ // }
get_elapsed_ns += t.nsecsElapsed();
}