Develop

Export rooms from a headset for Meta XR Simulator

Updated: Sep 11, 2026

Overview

Scene Data Recorder records scene data from the Room Capture setup on your headset. You can then update the default scene in Meta XR Simulator and use your room in the simulation.

Requirements

You will need to have a space setup already available in your headset. Once you download the latest OS, go to Settings > Environment Setup > Space Setup > Set Up and follow the instructions to set up your space.
Your headset also needs developer mode and USB debugging turned on. The steps below use adb to install the recorder and to copy the recording back. See Enable developer mode.

Set up the scene data recorder

  1. Install and setup the Meta XR Simulator with your development environment. For more info, see Getting Started with Meta XR Simulator.
  2. Find the APK in the SceneDataRecorder directory of the Meta XR Simulator package. Scene Data Recorder is a headset application, so nothing installs on your computer.
  3. Install that APK in your headset with adb, which must be installed and on your PATH:
    adb install path/to/recorder.apk
    
    With more than one device attached, name the target with the global -s option, which goes before install:
    adb -s <serial> install path/to/recorder.apk
    
    Get the serial from adb devices.
  4. Launch it and grant access to spatial data and files when prompted. The application asks once, at startup. If you decline, relaunch it to be asked again. If the prompt stops appearing, grant the permissions from Settings > Apps > Installed apps > SceneDataRecorder Sample in your headset, then relaunch.
Headset Settings showing the SceneDataRecorder Sample app with the Storage and Spatial data permissions both turned on.

Record your room capture

  1. Run Scene Data Recorder. It reads the room saved on the headset and writes /sdcard/scene_recorder_out.json. The filename is fixed, so each recording replaces the last one on the headset.
  2. Copy the file to your computer. Replace the example destination with a directory for your room files and run:
    Windows
    adb pull /sdcard/scene_recorder_out.json "C:\path\to\rooms\scene_recorder_out.json"
    
    macOS
    adb pull /sdcard/scene_recorder_out.json ~/rooms/scene_recorder_out.json
    
    Rename the copied file before you record another room.
Meta XR Simulator loads JSON rooms through its bundled JSON Synthetic Environment Server.
  1. Exit any OpenXR application that is using Meta XR Simulator.
  2. Open a terminal and run the JSON server with the room file and port 33792:
    Windows
    & "C:\path\to\MetaXRSimulator\json_synthenv_server\json_server.exe" "C:\path\to\room.json" --port 33792
    
    macOS
    "/Applications/MetaXRSimulator.app/Contents/Resources/MetaXRSimulator/json_synthenv_server/json_server" "/path/to/room.json" --port 33792
    
  3. Leave the server running and start your application with Meta XR Simulator as its active OpenXR runtime.
To stop serving the JSON room, exit the application and press Ctrl+C in the terminal running the JSON server.

Understand the JSON room file

To update a JSON room, you need to understand the JSON schema. See Meta XR Simulator Room JSON Syntax.