dexdata
Data recording and replay utilities for Dexmate robots. Reads and writes MCAP episode data (robot state/action, RGB cameras, depth) with Protobuf serialization, and encodes cameras to video.
Install
pip install -e . # core: MCAP read/write
pip install -e ".[convert]" # adds torch + torchcodec for video_writer
Requires Python 3.11.
Layout
dexdata.mcap_utils—TeleopMcapWriter,TeleopMcapReader,Episode,EpisodeMetadata. Self-contained.dexdata.video_writer— torch + torchcodec-backed parallel/serial video encoder (opt-in via[video]extra).
Quick read
from pathlib import Path
from dexdata.mcap_utils import TeleopMcapReader
reader = TeleopMcapReader(Path("/path/to/episode_dir"))
episode = reader.load_episode()
data = episode.to_numpy_dict() # flat {key: np.ndarray} for training
fps = reader.metadata.record_rate_hz
An episode directory contains state_action.mcap, zero or more camera_*.mcap / depth_*.mcap, and info.json.
Scripts
scripts/example_mcap_read.py <episode_dir>— dump an episode to its numpy-dict form and print key shapes/dtypes.scripts/mcap_to_video.py --episode_path <dir>— render a 2×2 camera grid toconcatenated.mp4. FPS defaults torobot.record_rate_hzfrominfo.json.scripts/mcap_viz.py— Rerun-based episode visualization helper (RerunViz).
Protobuf schemas
Schemas live in src/dexdata/mcap_utils/proto/. Compiled *_pb2.py modules are checked in; regenerate with:
cd src/dexdata/mcap_utils/proto && ./compile_proto.sh
Metadata
Release files for dexdata 0.1.0
For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.
Built distribution (wheel)
| File | Interpreter | ABI | Platform | Reset |
|---|---|---|---|---|
| dexdata-0.1.0-py3-none-any.whl | Python 3 | none | any | Details |
Release files / dexdata-0.1.0-py3-none-any.whl
| Download URL | dexdata-0.1.0-py3-none-any.whl |
|---|---|
| Size | 113.0 kB |
| Tags | Python 3 |
|
SHA-256 checksum How to use checksums |
da4c716d181ea113678107a1d04fbcec6258b25026039473a1e98de02b5f6d8c
|
|
BLAKE2b-256 checksum How to use checksums |
788530b287e97af9e1d8fddc523ee93c59c0e8a5604541734beb4464ab437fa0
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
Yes |
| Uploaded via |
twine/6.1.0 CPython/3.13.12
|
Provenance
Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.
PyPI Publish Attestation
PyPI verified that this artifact, at this checksum, originated from the publisher listed below.
Signed by GitHub Actions, verified by PyPI on May 29, 2026.
Transparency log