From b89c251ca27371949bc0774586fe6a15529139fe Mon Sep 17 00:00:00 2001 From: Thomas Farstrike Date: Wed, 14 May 2025 11:38:42 +0200 Subject: [PATCH] Revert "MemoryView instead of bytes makes it worse?" This reverts commit aabf8ed179f5564c80fc1080ce5e39a27d6a1bc3. --- c_mpos/src/webcam.c | 8 ++++---- .../apps/com.example.camtest/assets/camtest.py | 2 -- 2 files changed, 4 insertions(+), 6 deletions(-) diff --git a/c_mpos/src/webcam.c b/c_mpos/src/webcam.c index 22e778b7..cb290749 100644 --- a/c_mpos/src/webcam.c +++ b/c_mpos/src/webcam.c @@ -11,15 +11,15 @@ #include "py/runtime.h" #include "py/mperrno.h" -// Forward declaration of the webcam type -static const mp_obj_type_t webcam_type; - #define WIDTH 640 #define HEIGHT 480 #define NUM_BUFFERS 4 #define OUTPUT_WIDTH 240 #define OUTPUT_HEIGHT 240 +// Forward declaration of the webcam type +static const mp_obj_type_t webcam_type; + typedef struct _webcam_obj_t { mp_obj_base_t base; int fd; @@ -178,7 +178,7 @@ static mp_obj_t capture_frame(webcam_obj_t *self) { snprintf(filename, sizeof(filename), "frame_%03d.raw", self->frame_count++); save_raw(filename, self->gray_buffer, OUTPUT_WIDTH, OUTPUT_HEIGHT); - mp_obj_t result = mp_obj_new_memoryview(0x01, OUTPUT_WIDTH * OUTPUT_HEIGHT, self->gray_buffer); + mp_obj_t result = mp_obj_new_bytes(self->gray_buffer, OUTPUT_WIDTH * OUTPUT_HEIGHT); if (ioctl(self->fd, VIDIOC_QBUF, &buf) < 0) { mp_raise_OSError(MP_EIO); diff --git a/internal_filesystem/apps/com.example.camtest/assets/camtest.py b/internal_filesystem/apps/com.example.camtest/assets/camtest.py index fff8e4a2..b515c445 100644 --- a/internal_filesystem/apps/com.example.camtest/assets/camtest.py +++ b/internal_filesystem/apps/com.example.camtest/assets/camtest.py @@ -110,8 +110,6 @@ def try_capture(): webcam.free_buffer(cam) # Explicitly free webcam buffer else: cam.free_buffer() # Free other camera buffer - else: - print("current_cam_buffer is None, not freeing...") current_cam_buffer = new_cam_buffer # Store new buffer reference else: print("Invalid buffer size:", len(new_cam_buffer))