Foveated Streaming Framework#
Foveated Streaming is Apple’s first-party framework for XR streaming on visionOS, powered by the same CloudXR technology embedded within visionOS itself. It enables dynamic foveated streaming to Apple Vision Pro in a secure and privacy-preserving fashion, allowing users to perceive high-fidelity XR experiences while reducing GPU and network cost.
Foveated Streaming uses eye-tracking data within the secure streaming session to optimize streaming quality in the user’s focus area and reduce bandwidth for peripheral areas—all without exposing sensitive eye-tracking data outside the streaming session.
Note
The CloudXR Runtime does not expose user’s focus region to the OpenXR application and uses focus region solely to optimize encoding quality across regions of the frame.
For more information, refer to the Apple Foveated Streaming documentation.
Supported Platforms#
visionOS
Apple Vision Pro running visionOS 26.4 or later
Full immersive XR streaming with dynamic foveated streaming
Eye-tracking optimized streaming quality
Note
Foveated Streaming is currently available for visionOS only.
Development Requirements#
To develop visionOS clients using Foveated Streaming, you need:
macOS with Xcode 26.0 or later
visionOS 26.4 SDK or later
CloudXR Runtime version 6.0 or later on the streaming application
The
com.apple.developer.foveated-streaming-sessionentitlement added to your visionOS target
Quick Start#
For a step-by-step tutorial on building your first Foveated Streaming client, refer to CloudXR Client for visionOS Using Foveated Streaming.
A complete sample project for the streaming application is available on GitHub: apple/streamingsession
CloudXR Framework vs. Foveated Streaming#
CloudXR Framework and Foveated Streaming are built on the same underlying CloudXR technology. For a detailed comparison to help you choose the right framework, refer to the Migration from CloudXR Framework, which includes a comprehensive feature comparison table.
Key Advantages of Foveated Streaming#
Dynamic Foveated Streaming: Eye-tracking optimized streaming that delivers higher quality in the user’s focus area while reducing bandwidth for peripheral regions, all handled in a privacy-preserving manner by the visionOS system layer
System Discovery: Built-in QR-code pairing flow via the
.systemDiscoveredendpoint for easy local device pairing without custom authenticationSmaller App Binary: Reduced binary size without the need to bundle the full CloudXR Framework SDK
Resources#
Apple Documentation: Foveated Streaming
visionOS Development Guide: visionOS
Documentation Contents#
Contents:
- CloudXR Client for visionOS Using Foveated Streaming
- System Requirements
- Option 1: Use the Xcode Foveated Streaming Template (Recommended)
- Option 2: Create the Project Manually
- Add the Foveated Streaming Entitlement
- Set the Deployment Target
- Import Foveated Streaming
- Create the App Model
- Set Up the Foveated Streaming Session
- Enter Your Connection Details
- Create the Immersive View
- Connecting to a Streaming Application
- Streaming Application Setup for Foveated Streaming
- Migration from CloudXR Framework