mirror of
https://github.com/dragonpilot/dragonpilot.git
synced 2026-02-27 22:23:54 +08:00
regen: send vipc_client_extra frames (#24331)
* send extra frames to fix regen * for sanity * not used * minimal changes
This commit is contained in:
@@ -347,6 +347,7 @@ def setup_env(simulation=False):
|
||||
params.put_bool("OpenpilotEnabledToggle", True)
|
||||
params.put_bool("Passive", False)
|
||||
params.put_bool("DisengageOnAccelerator", True)
|
||||
params.put_bool("EnableWideCamera", False)
|
||||
|
||||
os.environ["NO_RADAR_SLEEP"] = "1"
|
||||
os.environ["REPLAY"] = "1"
|
||||
|
||||
@@ -114,19 +114,19 @@ def replay_service(s, msgs):
|
||||
|
||||
def replay_cameras(lr, frs):
|
||||
eon_cameras = [
|
||||
("roadCameraState", DT_MDL, eon_f_frame_size, VisionStreamType.VISION_STREAM_ROAD),
|
||||
("driverCameraState", DT_DMON, eon_d_frame_size, VisionStreamType.VISION_STREAM_DRIVER),
|
||||
("roadCameraState", DT_MDL, eon_f_frame_size, VisionStreamType.VISION_STREAM_ROAD, True),
|
||||
("driverCameraState", DT_DMON, eon_d_frame_size, VisionStreamType.VISION_STREAM_DRIVER, False),
|
||||
]
|
||||
tici_cameras = [
|
||||
("roadCameraState", DT_MDL, tici_f_frame_size, VisionStreamType.VISION_STREAM_ROAD),
|
||||
("driverCameraState", DT_MDL, tici_d_frame_size, VisionStreamType.VISION_STREAM_DRIVER),
|
||||
("roadCameraState", DT_MDL, tici_f_frame_size, VisionStreamType.VISION_STREAM_ROAD, True),
|
||||
("driverCameraState", DT_MDL, tici_d_frame_size, VisionStreamType.VISION_STREAM_DRIVER, False),
|
||||
]
|
||||
|
||||
def replay_camera(s, stream, dt, vipc_server, frames, size):
|
||||
def replay_camera(s, stream, dt, vipc_server, frames, size, use_extra_client):
|
||||
pm = messaging.PubMaster([s, ])
|
||||
rk = Ratekeeper(1 / dt, print_delay_threshold=None)
|
||||
|
||||
img = b"\x00" * int(size[0]*size[1]*3/2)
|
||||
img = b"\x00" * int(size[0] * size[1] * 3 / 2)
|
||||
while True:
|
||||
if frames is not None:
|
||||
img = frames[rk.frame % len(frames)]
|
||||
@@ -141,6 +141,8 @@ def replay_cameras(lr, frs):
|
||||
pm.send(s, m)
|
||||
|
||||
vipc_server.send(stream, img, msg.frameId, msg.timestampSof, msg.timestampEof)
|
||||
if use_extra_client:
|
||||
vipc_server.send(VisionStreamType.VISION_STREAM_WIDE_ROAD, img, msg.frameId, msg.timestampSof, msg.timestampEof)
|
||||
|
||||
init_data = [m for m in lr if m.which() == 'initData'][0]
|
||||
cameras = tici_cameras if (init_data.initData.deviceType == 'tici') else eon_cameras
|
||||
@@ -148,7 +150,7 @@ def replay_cameras(lr, frs):
|
||||
# init vipc server and cameras
|
||||
p = []
|
||||
vs = VisionIpcServer("camerad")
|
||||
for (s, dt, size, stream) in cameras:
|
||||
for (s, dt, size, stream, use_extra_client) in cameras:
|
||||
fr = frs.get(s, None)
|
||||
|
||||
frames = None
|
||||
@@ -160,8 +162,10 @@ def replay_cameras(lr, frs):
|
||||
frames.append(img.flatten().tobytes())
|
||||
|
||||
vs.create_buffers(stream, 40, False, size[0], size[1])
|
||||
if use_extra_client:
|
||||
vs.create_buffers(VisionStreamType.VISION_STREAM_WIDE_ROAD, 40, False, size[0], size[1])
|
||||
p.append(multiprocessing.Process(target=replay_camera,
|
||||
args=(s, stream, dt, vs, frames, size)))
|
||||
args=(s, stream, dt, vs, frames, size, use_extra_client)))
|
||||
|
||||
# hack to make UI work
|
||||
vs.create_buffers(VisionStreamType.VISION_STREAM_RGB_ROAD, 4, True, eon_f_frame_size[0], eon_f_frame_size[1])
|
||||
|
||||
Reference in New Issue
Block a user