Skip to content

[python] Support Episode video remux during LeRobot import - #10819

Draft
XiaoHongbo-Hope wants to merge 1 commit into
apache:masterfrom
XiaoHongbo-Hope:python-lerobot-episode-remux
Draft

XiaoHongbo-Hope wants to merge 1 commit into
apache:masterfrom
XiaoHongbo-Hope:python-lerobot-episode-remux

Conversation

@XiaoHongbo-Hope

Copy link
Copy Markdown
Contributor

Purpose

LeRobot Episodes can share a long source video. Copying that video into multiple file groups duplicates unrelated frames and increases the cost of opening videos during training.

Changes

Add opt-in write.lerobot.remux-episodes=true to copy Episode video packets into separate MP4 payloads without re-encoding. Preserve decoding dependencies, normalize timestamps, and remap frame descriptors to the new payloads. Generated clips include keyframe indexes.

The default import path is unchanged. PyAV is required; clips are bounded to 64 MiB and 65,536 packets, and ambiguous timestamps fail the import.

Validation

Packet-copy pixel checks with B-frames, Episode boundary roundoff and size limits; multi-Episode, two-camera import and training readback, including DataLoader workers.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant