#### NOTE
This is a **Hugging Face dataset**. For large datasets, ensure `huggingface_hub>=1.1.3` to avoid rate limits. Learn more in the <a href="https://docs.voxel51.com/integrations/huggingface.html#loading-datasets-from-the-hub" target="_blank">Hugging Face integration docs</a>.

<a href="https://huggingface.co/datasets/Voxel51/GR00T-X-Embodiment-Sim" target="_blank">![Hugging Face](https://img.shields.io/badge/%F0%9F%A4%97%20Hugging%20Face-Dataset-yellow)</a>

# GR00T-X-Embodiment-Sim → FiftyOne (Native Multimodal MCAP)

![preview](https://huggingface.co/datasets/Voxel51/GR00T-X-Embodiment-Sim/resolve/main/preview.gif)

A 42-episode subset of
[nvidia/PhysicalAI-Robotics-GR00T-X-Embodiment-Sim](https://huggingface.co/datasets/nvidia/PhysicalAI-Robotics-GR00T-X-Embodiment-Sim),
six episodes from each of seven embodiments, converted to native multimodal
MCAP episodes. Each episode carries the camera streams as H.264
`foxglove.CompressedVideo`, per-part robot state and action telemetry with
timeline plot channels, and the task instruction.

## Installation

```bash
pip install fiftyone
```

## Usage

```python
import fiftyone as fo
import fiftyone.utils.huggingface as fouh

dataset = fouh.load_from_hub(
    "Voxel51/GR00T-X-Embodiment-Sim",
    name="GR00T-X-Embodiment-Sim",
    persistent=True,
)
fo.launch_app(dataset)
```

## What you get

- 42 `.mcap` episodes across `single_panda_gripper`, `bimanual_panda_gripper`,
  `bimanual_panda_hand`, `gr1_arms_waist`, `gr1_full_upper_body`,
  `sim_behavior_r1_pro`, and `unitree_g1`
- Telemetry segmented into named channels per the source `modality.json`
  (for example `/joint-position-state`, `/end-effector-position-absolute-state`,
  `/gripper-qpos-action`), each with a timeline plot channel
- Per-episode fields: `embodiment`, `task`, `source_task`, `episode_index`,
  `num_frames`, `duration`
- Camera streams as Annex-B H.264 without B-frames

## License & attribution

The source dataset is released by NVIDIA under
[CC-BY-4.0](https://creativecommons.org/licenses/by/4.0/); this subset is
distributed under the same license. Changes from the source: episode
subsetting and conversion from LeRobot parquet/mp4 format to MCAP.
