regen: send vipc_client_extra frames (#24331)

* send extra frames to fix regen

* for sanity

* not used

* minimal changes
pull/24332/head
Shane Smiskol 3 years ago committed by GitHub
parent 3694f9801c
commit a8e632bb98
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
  1. 1
      selfdrive/test/process_replay/process_replay.py
  2. 20
      selfdrive/test/process_replay/regen.py

@ -347,6 +347,7 @@ def setup_env(simulation=False):
params.put_bool("OpenpilotEnabledToggle", True) params.put_bool("OpenpilotEnabledToggle", True)
params.put_bool("Passive", False) params.put_bool("Passive", False)
params.put_bool("DisengageOnAccelerator", True) params.put_bool("DisengageOnAccelerator", True)
params.put_bool("EnableWideCamera", False)
os.environ["NO_RADAR_SLEEP"] = "1" os.environ["NO_RADAR_SLEEP"] = "1"
os.environ["REPLAY"] = "1" os.environ["REPLAY"] = "1"

@ -114,19 +114,19 @@ def replay_service(s, msgs):
def replay_cameras(lr, frs): def replay_cameras(lr, frs):
eon_cameras = [ eon_cameras = [
("roadCameraState", DT_MDL, eon_f_frame_size, VisionStreamType.VISION_STREAM_ROAD), ("roadCameraState", DT_MDL, eon_f_frame_size, VisionStreamType.VISION_STREAM_ROAD, True),
("driverCameraState", DT_DMON, eon_d_frame_size, VisionStreamType.VISION_STREAM_DRIVER), ("driverCameraState", DT_DMON, eon_d_frame_size, VisionStreamType.VISION_STREAM_DRIVER, False),
] ]
tici_cameras = [ tici_cameras = [
("roadCameraState", DT_MDL, tici_f_frame_size, VisionStreamType.VISION_STREAM_ROAD), ("roadCameraState", DT_MDL, tici_f_frame_size, VisionStreamType.VISION_STREAM_ROAD, True),
("driverCameraState", DT_MDL, tici_d_frame_size, VisionStreamType.VISION_STREAM_DRIVER), ("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, ]) pm = messaging.PubMaster([s, ])
rk = Ratekeeper(1 / dt, print_delay_threshold=None) 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: while True:
if frames is not None: if frames is not None:
img = frames[rk.frame % len(frames)] img = frames[rk.frame % len(frames)]
@ -141,6 +141,8 @@ def replay_cameras(lr, frs):
pm.send(s, m) pm.send(s, m)
vipc_server.send(stream, img, msg.frameId, msg.timestampSof, msg.timestampEof) 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] init_data = [m for m in lr if m.which() == 'initData'][0]
cameras = tici_cameras if (init_data.initData.deviceType == 'tici') else eon_cameras 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 # init vipc server and cameras
p = [] p = []
vs = VisionIpcServer("camerad") 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) fr = frs.get(s, None)
frames = None frames = None
@ -160,8 +162,10 @@ def replay_cameras(lr, frs):
frames.append(img.flatten().tobytes()) frames.append(img.flatten().tobytes())
vs.create_buffers(stream, 40, False, size[0], size[1]) 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, 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 # 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]) vs.create_buffers(VisionStreamType.VISION_STREAM_RGB_ROAD, 4, True, eon_f_frame_size[0], eon_f_frame_size[1])

Loading…
Cancel
Save