mirror of
https://github.com/dragonpilot/dragonpilot.git
synced 2026-06-26 16:32:06 +08:00
fix tbuffer img tearing
This commit is contained in:
@@ -551,8 +551,7 @@ void enqueue_req_multi(struct CameraState *s, int start, int n) {
|
||||
// ******************* camera *******************
|
||||
|
||||
static void camera_release_buffer(void* cookie, int i) {
|
||||
CameraState *s = cookie;
|
||||
enqueue_buffer(s, i);
|
||||
return;
|
||||
}
|
||||
|
||||
static void camera_init(CameraState *s, int camera_id, int camera_num, unsigned int fps) {
|
||||
@@ -951,9 +950,9 @@ void handle_camera_event(CameraState *s, void *evdat) {
|
||||
s->request_id_last = real_id;
|
||||
s->camera_bufs_metadata[buf_idx].frame_id = main_id - s->idx_offset;
|
||||
s->camera_bufs_metadata[buf_idx].timestamp_eof = timestamp; // only has sof?
|
||||
s->request_ids[buf_idx] = real_id + FRAME_BUF_COUNT;
|
||||
|
||||
// dispatch
|
||||
enqueue_req_multi(s, real_id + FRAME_BUF_COUNT, 1);
|
||||
tbuffer_dispatch(&s->camera_tb, buf_idx);
|
||||
} else { // not ready
|
||||
// reset after half second of no response
|
||||
|
||||
Reference in New Issue
Block a user