Skip to main content

Control Recording & Streaming

The companion app allows you to start and stop recordings on your glasses, stream live sensor data to a computer, or do both in a single session. You can also view and edit recording details and manage recordings stored on your glasses.

Start a recording​

  1. Navigate to the dashboard tab in the bottom left of your app (home icon).
  2. Select Custom Recording. The recording setup screen will appear. From here, you can name your recording, add notes, and select a recording profile.

Recording setup

  1. Tap recording profile to select a profile. If you have a default profile set, it will auto-populate. Otherwise, you can select a profile from the list.

Select a profile

  1. (Optional) when selecting a profile, you can make it the default profile for future recordings.
  2. (Optional) tap Advanced Settings to configure additional options such as the NTP Server (see NTP Server below).
  3. Tap Begin new recording and you will see your glasses LED light up once recording has started.

Recording

  1. Once you've finished recording, you can end the recording by tapping the Complete recording button in the app or by pressing the action button on your glasses. If you don't want to save your recording to the glasses, tap Discard recording.

NTP Server​

NTP (Network Time Protocol) is a time synchronization mode that enables the glasses to synchronize their timestamps with an NTP server. This provides more accurate UTC timestamps in your recording data.

To enable NTP, tap Advanced Settings on the recording setup screen and toggle the NTP Server option. When enabled, the glasses will periodically sync their clock with the configured NTP server during the recording.

Enable NTP when you need:

  • Accurate UTC timestamps that can be correlated with external systems or events
  • Rough time synchronization across multiple devices recording simultaneously
note

NTP timestamps are not guaranteed to be monotonic or have a stable clock speed. Do not compute durations by subtracting two NTP-synced UTC timestamps. Use device timestamps for duration calculations instead.

Sensor integrity​

You can view the health of the sensors you are recording with by tapping the Data Integrity and Status button during a recording.

Data Integrity and Status

Consecutive recordings​

Note that if you run multiple consecutive recordings, the app will automatically name them with a suffix of the number of recordings you've made. The number will automatically reset if you update the name field on a new recording.

Stream to a computer​

The companion app can stream live sensor data from your glasses to a computer on your network — instead of, or at the same time as, recording to the glasses. The app only drives the glasses side of the session. The receiving side is the Client SDK's aria_streaming_viewer, so install the Client SDK on the computer before you start.

Choose a session type​

On the dashboard tab, the Quick Actions row opens the session setup screen with a session type already selected: Custom Recording for a recording-only session, Streaming for a stream-only session, and Recording + Streaming for a combined one. Whichever tile you start from, the Session type selector at the top of the setup screen lets you switch between them:

Session typeRecords VRS to the glassesStreams live
RecordingYesNo
StreamingNoYes
Recording & StreamingYesYes

Start a session

The rest of the screen shows only the settings that apply to your choice, and the button at the bottom changes to match: Start Recording, Start Streaming, or Start Recording & Streaming.

The combined type is labelled Recording + Streaming on the Quick Actions tile and Recording & Streaming on the setup screen; both refer to the same session type.

Streaming profile​

A streaming session selects a Streaming Profile, which controls which sensors are streamed and at what rate. This is chosen independently of the recording profile — see Recording Profiles for how profiles work and how to customize them.

The profile you pick has a real effect on latency and on how warm the glasses get over a long session. The Client SDK documentation covers choosing a streaming profile in more detail.

Streaming protocol​

Tap Streaming protocol, choose WebRTC, and tap Done.

WebRTC requires Aria Gen 2 glasses connected to Wi-Fi; the Bluetooth link to your phone carries session control, not media.

WebRTC image timestamps are receive times

capture_timestamp_ns for the RGB, SLAM and eye-tracking video is the host receive time, because RTP carries no device capture timestamp. Everything on the data channel (IMU, VIO, eye gaze, hand pose, audio) keeps its device-clock timestamp.

The receive time is converted into the device clock, using an offset the client tracks from the data-channel sensors, so images are never delivered in the raw host clock and can be cross-correlated with the sensor streams. What that conversion does not do is recover the capture time: the value is still a receive time, late by the network and transport delay.

If your analysis depends on exact image capture times, choose Recording & Streaming and use the VRS written to the glasses, which carries true device capture timestamps throughout. See What travels on which channel.

WebRTC settings​

Selecting WebRTC reveals the endpoints the glasses use to find your receiver. All of them persist between sessions.

WebRTC streaming parameters

Server

FieldWhat it does
Server host (fills signaling/STUN/TURN)A convenience field. Enter a host (optionally scheme://host:port) and the app fills in the three endpoints below for you. It is write-only — it does not update when you edit those fields directly
Signaling URLWhere the glasses negotiate the connection, as tcp://, http:// or https://. https:// puts signaling behind TLS
RoomThe signaling room the glasses and receiver meet in. Must match the receiver's --room
Room password (optional)Shared secret for the room, if your signaling server requires one
Auth token (optional)Token presented to the signaling server

ICE Servers — only needed to cross networks:

FieldWhat it does
STUN serverHelps the two peers discover a direct path through NAT
TURN serverRelays the media when a direct path is not possible
TURN username / TURN credentialCredentials for the TURN server. Scroll down to reach TURN credential

The app checks the shape of each endpoint as you type, and each field expects its own scheme:

FieldExpected formMessage if it looks wrong
Signaling URLtcp://, http:// or https://Enter a tcp://, http://, or https:// URL
STUN serverstun:host:3478Enter a stun: URL
TURN serverturn:host:3478Enter a turn: URL

These messages are advisory — they do not block you from saving, since the endpoint is only exercised when the session starts.

Advanced

FieldWhat it does
PCIe batch period (ms)How often batched data is moved across the glasses' internal PCIe link. Leave it empty to use the value carried by the selected streaming profile, which the app shows as the placeholder
PCIe batching is not network batching

This setting governs a link inside the glasses, not how data is packed onto the network. The Client SDK documentation notes that WebRTC has no network message-batching control; that remains true, and this field does not change it. See Limitations.

The signaling server is yours to run

For cross-network streaming you run the signaling server yourself; it ships as a separate PyPI wheel. See Deploying a Signaling Server. On a single network you do not need one — point the app's Signaling URL at the computer running the viewer, and the viewer acts as the signaling endpoint itself.

Same-network example​

On the computer, start the viewer listening on a port:

aria_streaming_viewer --transport webrtc --listen 9000

In the app, set Signaling URL to tcp://<computer-ip>:9000 — the port must match --listen — select your streaming profile, and tap Start Streaming. The two can be started in either order; the glasses retry until the viewer is up.

Record while streaming​

Choosing Recording & Streaming captures a full-rate VRS on the glasses for the duration of the stream. This is the combination to use when the live view is for monitoring or interaction but your analysis needs complete, device-timestamped data.

The two sides are configured independently: Streaming Profile controls what goes over the network, and Recording Profile controls what is written to the glasses. They do not have to match — you can stream a light profile to keep latency and heat down while recording everything.

A combined session is stopped with a single button, Stop Recording & Streaming, which ends the stream and closes the recording together. A stream-only session ends with Stop Streaming, and no file is written to the glasses. The recording from a combined session then appears under the Recordings tab like any other, and the usual recording controls — storage, discard, saved copy — are available during the session.

Remote expert sessions​

A common use of WebRTC streaming is to put a remote colleague in the loop: the wearer streams their point of view from the field, and a remote expert watches it live and talks the wearer through a task. WebRTC is the right transport for this because it adds low latency, an audio path in both directions, and the ability to reach a viewer on a different network.

To set one up:

  1. The remote expert runs aria_streaming_viewer --transport webrtc on their computer, pointed at a signaling server both sides can reach (see Cross-network).
  2. The wearer selects Streaming — or Recording & Streaming, to keep a full-rate capture of the session — sets Streaming protocol to WebRTC, enters the same Signaling URL and Room, and taps start.
  3. Audio flows both ways for the duration of the session, so the expert can talk to the wearer while watching their view.

See WebRTC Streaming for the receiver-side options, including terminal audio controls and limitations.

Streaming troubleshooting​

If a session will not start or stop, see Companion App Troubleshooting.

Manage recordings​

Tap the Recordings tab in the bottom of your app (second from the left) to view recordings stored on your glasses.

Recordings

View recording details​

Tap a recording to view its details. From here, you can view the recording's name, date, duration, thumbnails, and other useful metadata.

Recording details

Rename a recording​

Tap the Edit button to rename a recording. You can also add or edit notes on this screen. Tap Save to save your changes.

Edit recording

Delete a recording​

Tap the Delete button to permanently delete a recording from your glasses.

Next Steps​

Now that you can control recording and streaming on your glasses, learn how to record and stream over the command line, or download recordings to your computer, using the ClientSDK.