Project Aria Tools
raw JSON → 2.1.2 verified Fri May 01 auth: no python
A library from Meta Reality Labs for processing and visualizing data from Project Aria glasses. Supports Aria Gen1 and Gen2 VRS data, on-device machine perception (MPS), and provides C++ and Python APIs. Current version 2.1.2, requires Python >=3.8, released under MIT license.
pip install projectaria-tools Common errors
error ModuleNotFoundError: No module named 'projectaria_tools' ↓
cause Library not installed or installed in wrong environment.
fix
Run: pip install projectaria-tools
error ImportError: cannot import name 'VrsDataProvider' from 'projectaria_tools' ↓
cause Importing from the top-level package instead of submodule.
fix
Use: from projectaria_tools.core.data_provider import VrsDataProvider
error RuntimeError: VRS file not found or invalid: <path> ↓
cause The provided file path does not exist or is not a valid .vrs file.
fix
Check file path and ensure it is a Project Aria VRS recording.
Warnings
breaking v2.0.0 introduced breaking changes in API for Gen1 data. Some functions were moved or renamed. Users of v1.x must update import paths. ↓
fix Update imports to use projectaria_tools.core.* submodules instead of old top-level imports.
deprecated The legacy poseplayer module was removed in v1.5.8. Use MpsDataProvider for SLAM/pose data instead. ↓
fix Replace poseplayer usage with projectaria_tools.core.mps.MpsDataProvider.
gotcha Stream IDs are strings like '211-1' for RGB camera. Using integers or different format leads to ValueError. ↓
fix Always pass stream IDs as strings, e.g., '211-1', '1201-1', etc.
Imports
- VrsDataProvider wrong
from projectaria_tools import VrsDataProvidercorrectfrom projectaria_tools.core.data_provider import VrsDataProvider - AriaDigitalTwinClient wrong
from projectaria_tools.adt import AriaDigitalTwinClientcorrectfrom projectaria_tools.core.adt_utils import AriaDigitalTwinClient - MpsDataProvider wrong
from projectaria_tools.mps import MpsDataProvidercorrectfrom projectaria_tools.core.mps import MpsDataProvider
Quickstart
from projectaria_tools.core.data_provider import VrsDataProvider
from projectaria_tools.core.calibration import device_calibration_from_json_str
import os
# Provide path to a .vrs file (replace with your own)
vrs_filepath = os.environ.get('VRS_FILE', '')
if not vrs_filepath:
raise ValueError('Set VRS_FILE environment variable')
dp = VrsDataProvider(vrs_filepath)
print('Stream IDs:', dp.get_all_stream_ids())
# Read the first time series from stream 211-1 (RGB camera)
stream_id = '211-1'
dp.set_stream_player(stream_id)
dp.play()
first_timestamp, first_data = dp.read_next()
print('First timestamp (ns):', first_timestamp)