SLAMCam is a secondary development based on OpenCamera, designed to support synchronized recording of IMU, GPS, and video streams. All sensor data are aligned on a unified timeline, making it suitable for SLAM and Visual-Inertial Odometry (VIO) research. The software also supports a Chinese (Simplified) user interface.
- Synchronized IMU, GPS, and video recording
- Real-time timestamping for sensor data
- Remote control and multi-device synchronization (RecSync)
- Chinese (Simplified) UI support
- Android device with full Camera2 API support
- Optional: Wi-Fi connection for remote recording or multi-device sync
Note: Synchronized timestamps for camera and IMU are not supported on all devices. Check support in preferences.
Steps:
-
Open Preferences → enable Camera2 API → enable "Sync video IMU recording" in IMU settings.
-
(Optional) Disable video stabilization to minimize preprocessing effects.
-
(Optional) Enable save frames to verify recorded data.
-
(Optional) Enable flash strobe and set frequency in additional sensor settings.
-
Switch to video mode, adjust ISO and exposure as needed.
-
Record video.
-
Retrieve recorded data from
DCIM/SLAMCam/{VIDEO_DATE}/:{VIDEO_NAME}_gyro.csv–X, Y, Z, timestamp (ns){VIDEO_NAME}_accel.csv–X, Y, Z, timestamp (ns){VIDEO_NAME}_magnetic.csv–X, Y, Z, timestamp (ns){VIDEO_NAME}_timestamps.csv–timestamp (ns){VIDEO_NAME}_flash.csv–timestamp (ns)(flash firing timestamps)
Steps:
-
Connect your smartphone and PC to the same network.
-
Use scripts in
./api_client/to send requests to SLAMCam.
Important: Devices must support real-time timestamping. Check "Timestamp source" in RecSync preview (should display "realtime"). Leader device manages timing; client devices follow the leader.
- Start a Wi-Fi hotspot.
- Open SLAMCam → Preferences → RecSync settings → enable "Use RecSync".
- (Optional) Enable phase alignment for higher synchronization precision (< half frame).
- (Optional) Configure camera settings broadcast in "Sync settings".
- Switch to video mode, adjust camera settings, and press settings synchronization.
- Wait for clients to connect.
- (If phase alignment enabled) Press phase alignment button; wait until "Phase error" turns green.
- Start recording.
- Connect to the leader's Wi-Fi hotspot.
- Open SLAMCam → Preferences → RecSync settings → enable "Use RecSync".
- Adjust camera settings not broadcasted by leader.
- Wait for leader to start recording.
Phase alignment must be performed before every recording session.
- Audio recording is disabled to avoid extra frames caused by MediaRecorder audio-sync issues.
- Disable video stabilization and OIS to reduce preprocessing and improve data consistency.



