/cpp-example-vrs

Example of loading a VRS file to Rerun using the C++ SDK

Primary LanguageC++Apache License 2.0Apache-2.0

C++ Example: VRS Viewer

This is an example that shows how to use Rerun's C++ API to log and view VRS files.

VRS is a file format optimized to record & playback streams of sensor data, such as images, audio samples, and any other discrete sensors (IMU, temperature, etc), stored in per-device streams of time-stamped records.

You can download a sample .vrs file from https://www.projectaria.com/datasets/apd/#download-dataset.

Compile and run using pixi

The easiest way to get started is to install pixi.

The pixi environment described in pixi.toml contains all of the dependencies, including the rerun viewer, allowing you to run the example with a single command:

  • pixi run example dataset.vrs

Compile and run without pixi

If you choose not to use pixi, you will need to install a few things yourself before you get started.

Installing the Rerun Viewer

The Rerun C++ SDK works by connecting to an awaiting Rerun Viewer over TCP.

If you need to install the viewer, follow the installation guide. Two of the more common ways to install the Rerun Viewer are:

  • Via cargo: cargo install rerun-cli@0.17.0
  • Via pip: pip install rerun-sdk==0.17.0

After you have installed it, you should be able to type rerun in your terminal to start the viewer.

Build on Linux & Mac

Build:

cmake -B build
cmake --build build -j

Run:

build/rerun_vrs_example

Windows

We haven't tried getting this example working on Windows yet, because VRS has no Windows build instructions: https://github.com/facebookresearch/vrs?tab=readme-ov-file#windows-support.

Known limitations with Rerun

This example makes heavy use of out-of-order logging. This leads to slow ingestion speeds in Rerun, especially for plots. Follow the progress on this here.