Skip to content
Tom edited this page Sep 30, 2025 · 1 revision

Frequently Asked Questions

Common questions about the Quest WebRTC AI Video Processing System.

General Questions

What devices are supported?

Supported:

  • Meta Quest 3
  • Meta Quest 3S

Not Supported:

  • Meta Quest 2 (lacks passthrough camera API)
  • Meta Quest Pro (different camera architecture)
  • PC VR headsets (not Quest-based)

What OS version is required?

  • Horizon OS v74 or higher is required
  • Check via Quest Settings → System → About
  • Update via Settings → System → Software Update

Is this project free to use?

Yes, this is open source software released under the MIT License for research and educational purposes. It's not intended for commercial use.

Can I use this without internet?

No, the AI processing requires an active internet connection to Decart's AI service. The system needs:

  • 8+ Mbps bidirectional bandwidth
  • Low latency connection (<100ms preferred)
  • Stable WebSocket connection to AI servers

Technical Questions

How does the AI processing work?

  1. Quest captures live video from passthrough cameras
  2. WebRTC streams the video to Decart's AI service
  3. AI service applies style transformation using neural networks
  4. Processed video is streamed back to Quest
  5. Display shows transformed video in real-time

The entire pipeline has ~150-200ms latency end-to-end.

What video quality can I expect?

Default Configuration:

  • Resolution: 1280×704
  • Frame Rate: 16fps
  • Codec: VP8 with adaptive bitrate
  • Latency: 150-200ms typical

Performance Modes:

  • High Quality: 1280×704, 4Mbps bitrate
  • Balanced: 960×720, 2Mbps bitrate
  • Low Bandwidth: 640×480, 1Mbps bitrate

How many AI styles are available?

152 built-in styles including:

  • Animation: Frozen, Anime, Claymation, Lego
  • Realistic: Ultra Realistic, Luxury Office, Architectural
  • Fantasy: Cyberpunk, Medieval, Vikings, Spaceship
  • Cultural: Japanese Ukiyo-e, Egyptian, Greek Temple
  • Environmental: Beach, Forest, Desert, Space

Plus custom prompts via voice commands or code.

Can I add my own AI styles?

Yes! Several ways:

  1. Voice Commands (easiest):

    • Hold trigger and speak: "Make this look like a cyberpunk city"
    • System sends custom prompt to AI service
  2. Code Integration:

    webRTCManager.SendCustomPrompt("Your style description here", shouldEnrich: true);
  3. Add to Built-in Library:

    • Edit WebRTCManager.cs prompts dictionary
    • Add your style with detailed description

Why only one camera eye?

Meta's current security policy only allows access to one passthrough camera (left or right eye) for third-party applications. This is a platform limitation, not a project limitation.

Current: Single eye camera (configurable left/right) Future: May support stereo when Meta updates policies

Development Questions

What Unity version should I use?

Recommended: Unity 6 (6000.0.34f1 or later) Minimum: Unity 2022.3.20f1 Not Supported: Unity 2021 or earlier

Can I build this on Mac/Linux?

Unity Development: Yes, Unity 6 supports Mac and Linux APK Building: Requires Android SDK (available on all platforms) Quest Deployment: Works from any platform via USB or WiFi

Do I need Quest Link for development?

No, Quest Link is not required. Development workflow:

  1. Build APK in Unity
  2. Install directly on Quest via USB or WiFi
  3. Debug using wireless ADB or Quest Developer Hub

Can I modify the AI service endpoint?

Yes, you can change the WebSocket URL in WebRTCConnection component:

public string WebSocketServerAddress = "wss://your-ai-service.com/ws";

However, you'll need an AI service compatible with the signaling protocol.

Performance Questions

Why is the video stuttering?

Common causes and solutions:

  1. Network Issues:

    • Switch to 5GHz WiFi
    • Check for 8+ Mbps bandwidth
    • Reduce network congestion
  2. Device Performance:

    • Allow Quest to cool down
    • Close background applications
    • Lower video resolution/bitrate
  3. Unity Settings:

    • Verify OpenGLES3 (not Vulkan)
    • Check IL2CPP backend
    • Monitor with Unity Profiler

How can I improve latency?

Network Optimization:

  • Use 5GHz WiFi near router
  • Minimize network hops
  • Check for <50ms internet ping

System Optimization:

  • Enable encoder warmup (already implemented)
  • Use optimal bitrate settings (4Mbps startup → 2Mbps)
  • Close unnecessary Quest apps

Hardware:

  • Ensure good lighting for camera
  • Keep Quest cool to prevent throttling

What's the battery life?

Typical Usage: ~2 hours continuous use

Factors affecting battery:

  • Video resolution and bitrate
  • WiFi signal strength
  • Device temperature
  • Background applications

Tips for longer sessions:

  • Use Quest Link cable for power
  • Lower resolution for less processing
  • Take breaks to prevent overheating

Troubleshooting Questions

Camera shows black screen?

Check These:

  1. Permissions: Both Android camera and Horizon OS headset camera
  2. Lighting: Ensure adequate room lighting
  3. Lens Cleanliness: Clean Quest passthrough cameras
  4. Device Support: Verify Quest 3/3S with Horizon OS v74+

WebRTC connection fails?

Debugging Steps:

  1. Internet Speed Test: Verify 8+ Mbps bidirectional
  2. WebSocket URL: Check wss://bouncer.mirage.decart.ai/ws?model=decart-v2v-v2.0-704p
  3. Network Firewall: Ensure WebSocket traffic allowed
  4. Try Different Network: Mobile hotspot for testing

Voice commands not working?

Requirements:

  1. Meta Voice SDK properly configured
  2. Wit.ai app setup (requires Meta developer account)
  3. Microphone permission granted
  4. Trigger held while speaking

Build errors in Unity?

Common Solutions:

  1. Clean Build: Delete Builds/ folder, rebuild
  2. Unity Version: Use Unity 6 (6000.0.34f1+)
  3. Android SDK: Verify API Level 29+ installed
  4. Platform Settings: Switch to Android, verify ARM64

App crashes on Quest?

Debugging:

  1. Memory Usage: Check for leaks with Unity Profiler
  2. Device Logs: Use adb logcat for crash details
  3. Proper Cleanup: Verify WebCamTexture disposal
  4. Device Resources: Close other apps, restart Quest

Integration Questions

Can I use this in my own project?

Yes! Under MIT License terms:

  • Research and education - fully supported
  • Open source projects - attribute properly
  • Commercial use - contact tom@decart.ai for guidance
  • Redistributing as commercial product - not permitted

How do I integrate just the camera part?

The camera system is modular:

// Minimal camera integration
var cameraManager = gameObject.AddComponent<WebCamTextureManager>();
cameraManager.Eye = PassthroughCameraEye.Left;
cameraManager.StartCamera();

// Access camera texture
var texture = cameraManager.WebCamTexture;
rawImage.texture = texture;  // Display in UI

Can I use different AI services?

Yes, but requires:

  1. WebSocket signaling compatible with our protocol
  2. WebRTC peer connection support
  3. VP8 video codec handling
  4. Real-time processing capability

See API Reference for signaling protocol details.

How do I contribute improvements?

  1. Read: CONTRIBUTING.md
  2. Fork: Create your own repository fork
  3. Develop: Make improvements and test on hardware
  4. Submit: Pull request with detailed description

Popular contribution areas:

  • New AI style prompts
  • Performance optimizations
  • Platform compatibility
  • Documentation improvements

Legal Questions

What licenses apply?

This Project: MIT License (research/educational use) Unity: Unity Personal/Pro license required Meta SDK: Meta developer agreement Third-party libraries: Various open source licenses (see Dependencies)

Can I sell apps based on this?

The open source components are MIT licensed, but:

  • Meta SDK: Check Meta's developer agreement
  • Decart AI service: Contact tom@decart.ai for commercial usage
  • This project specifically: Designed for research/education

Do I need a Meta developer account?

For using the app: No, just install the APK For development: No, Unity development doesn't require Meta account For voice features: Yes, requires Wit.ai setup with Meta developer account For Quest store: Yes, but not needed for sideloading


Still have questions?