From 69901b9b6a2300914ca3de0ea14b6fa6e0203bd4 Mon Sep 17 00:00:00 2001 From: Steven Palma Date: Fri, 27 Jun 2025 16:02:51 +0200 Subject: [PATCH] fix(recording): re-recording episode doesn't increase count of recording episodes (#1395) --- docs/source/il_robots.mdx | 8 +++----- lerobot/record.py | 7 +++---- 2 files changed, 6 insertions(+), 9 deletions(-) diff --git a/docs/source/il_robots.mdx b/docs/source/il_robots.mdx index 8bc16b75..3dd9d80f 100644 --- a/docs/source/il_robots.mdx +++ b/docs/source/il_robots.mdx @@ -226,7 +226,8 @@ _init_rerun(session_name="recording") robot.connect() teleop.connect() -for episode_idx in range(NUM_EPISODES): +episode_idx = 0 +while episode_idx < NUM_EPISODES and not events["stop_recording"]: log_say(f"Recording episode {episode_idx + 1} of {NUM_EPISODES}") record_loop( @@ -261,10 +262,7 @@ for episode_idx in range(NUM_EPISODES): continue dataset.save_episode() - - if events["stop_recording"]: - log_say("Exiting session") - break + episode_idx += 1 # Clean up log_say("Stop recording") diff --git a/lerobot/record.py b/lerobot/record.py index 766cfb35..ce6f538d 100644 --- a/lerobot/record.py +++ b/lerobot/record.py @@ -286,7 +286,8 @@ def record(cfg: RecordConfig) -> LeRobotDataset: listener, events = init_keyboard_listener() - for recorded_episodes in range(cfg.dataset.num_episodes): + recorded_episodes = 0 + while recorded_episodes < cfg.dataset.num_episodes and not events["stop_recording"]: log_say(f"Recording episode {dataset.num_episodes}", cfg.play_sounds) record_loop( robot=robot, @@ -324,9 +325,7 @@ def record(cfg: RecordConfig) -> LeRobotDataset: continue dataset.save_episode() - - if events["stop_recording"]: - break + recorded_episodes += 1 log_say("Stop recording", cfg.play_sounds, blocking=True)