Skip to content

Commit 416316a

Browse files
invalidate doesnt update it:
1 parent 3cf4ff8 commit 416316a

File tree

2 files changed

+15
-15
lines changed

2 files changed

+15
-15
lines changed

c_mpos/src/webcam.c

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -174,9 +174,9 @@ static mp_obj_t capture_frame(webcam_obj_t *self) {
174174

175175
yuyv_to_grayscale_240x240(self->buffers[buf.index], self->gray_buffer, WIDTH, HEIGHT);
176176

177-
char filename[32];
178-
snprintf(filename, sizeof(filename), "frame_%03d.raw", self->frame_count++);
179-
save_raw(filename, self->gray_buffer, OUTPUT_WIDTH, OUTPUT_HEIGHT);
177+
// char filename[32];
178+
// snprintf(filename, sizeof(filename), "frame_%03d.raw", self->frame_count++);
179+
// save_raw(filename, self->gray_buffer, OUTPUT_WIDTH, OUTPUT_HEIGHT);
180180

181181
mp_obj_t result = mp_obj_new_bytes(self->gray_buffer, OUTPUT_WIDTH * OUTPUT_HEIGHT);
182182

internal_filesystem/apps/com.example.camtest/assets/camtest.py

Lines changed: 12 additions & 12 deletions
Original file line numberDiff line numberDiff line change
@@ -101,24 +101,24 @@ def try_capture():
101101
else:
102102
new_cam_buffer = cam.capture() # Returns memoryview for other camera
103103
if new_cam_buffer and len(new_cam_buffer) == 240 * 240:
104-
# Update image descriptor with new buffer
105-
#image.set_src(None)
106-
#image_dsc.data = None
107-
# Set image source to update LVGL
108-
image_dsc.data = new_cam_buffer
109-
#image.set_src(image_dsc)
110-
# Free the previous buffer (if any)
111104
if current_cam_buffer is not None:
112105
if use_webcam:
113-
pass
114-
#webcam.free_buffer(cam) # Explicitly free webcam buffer
106+
#pass
107+
webcam.free_buffer(cam) # Explicitly free webcam buffer
115108
else:
116109
cam.free_buffer() # Free other camera buffer
117110
else:
118111
pass
119-
#print("current_cam_buffer is None, not freeing...")
120-
#current_cam_buffer = None
121-
#current_cam_buffer = new_cam_buffer # Store new buffer reference
112+
print("current_cam_buffer is None, not freeing...")
113+
current_cam_buffer = None
114+
current_cam_buffer = new_cam_buffer # Store new buffer reference
115+
# Update image descriptor with new buffer
116+
# Set image source to update LVGL
117+
image_dsc.data = None # this doesnt help
118+
#image.set_src(None) this crashes it
119+
image_dsc.data = current_cam_buffer
120+
image.invalidate()
121+
#image.set_src(image_dsc)
122122
else:
123123
print("Invalid buffer size:", len(new_cam_buffer))
124124
if use_webcam:

0 commit comments

Comments
 (0)