mirror of
https://github.com/sunnypilot/sunnypilot.git
synced 2026-02-18 20:03:53 +08:00
@@ -11,6 +11,7 @@ class Camera:
|
||||
self.cur_frame_id = 0
|
||||
|
||||
self.container = av.open(camera_id)
|
||||
assert self.container.streams.video, f"Can't open video stream for camera {camera_id}"
|
||||
self.video_stream = self.container.streams.video[0]
|
||||
self.W = self.video_stream.codec_context.width
|
||||
self.H = self.video_stream.codec_context.height
|
||||
|
||||
@@ -26,7 +26,6 @@ class Camerad:
|
||||
self.cameras = []
|
||||
for c in CAMERAS:
|
||||
cam = Camera(c.msg_name, c.stream_type, c.cam_id)
|
||||
assert cam.cap.isOpened(), f"Can't find camera {c}"
|
||||
self.cameras.append(cam)
|
||||
self.vipc_server.create_buffers(c.stream_type, 20, False, cam.W, cam.H)
|
||||
|
||||
@@ -47,11 +46,10 @@ class Camerad:
|
||||
|
||||
def camera_runner(self, cam):
|
||||
rk = Ratekeeper(20, None)
|
||||
while cam.cap.isOpened():
|
||||
for yuv in cam.read_frames():
|
||||
self._send_yuv(yuv, cam.cur_frame_id, cam.cam_type_state, cam.stream_type)
|
||||
cam.cur_frame_id += 1
|
||||
rk.keep_time()
|
||||
for yuv in cam.read_frames():
|
||||
self._send_yuv(yuv, cam.cur_frame_id, cam.cam_type_state, cam.stream_type)
|
||||
cam.cur_frame_id += 1
|
||||
rk.keep_time()
|
||||
|
||||
def run(self):
|
||||
threads = []
|
||||
|
||||
Reference in New Issue
Block a user