Viewerframe Mode | Refresh Best
| Use Case | Recommended Mode | Why it’s Best | | :--- | :--- | :--- | | | VSync On (Locked to 48Hz or 72Hz) | Prevents 3:2 pulldown judder. | | Live Gaming (High FPS) | VRR (G-Sync) + Low Latency | Eliminates tearing without adding lag. | | UI / Dashboard (Static) | Adaptive Half-Refresh | Saves GPU power while maintaining responsiveness. | | VR / AR | Motion Smoothing + Async Reprojection | Maintains immersion even when frames drop. |
Using diffing algorithms (like React’s virtual DOM) or manual DOM updates, only changed nodes are replaced. Best for: viewerframe mode refresh best
Most people obsess over resolution (1080p, 4K, 8K). However, the defines the temporal resolution —how often the image updates per second (Hz). | Use Case | Recommended Mode | Why
Do not call refresh inside a resize event loop. Instead, debounce the refresh (e.g., 150ms) or tie it to the onViewerFrameModeChange callback. | | VR / AR | Motion Smoothing
Use and set it to a fixed frequency (like 50Hz or 60Hz) to eliminate artificial light flicker. Performance Comparison: Refresh vs. Motion Feature Mode=Refresh Mode=Motion (MJPEG) Delivery Individual JPEG snapshots Continuous stream of JPEGs Compatibility Works on nearly all browsers Requires MJPEG support (e.g., Chrome, Firefox) Bandwidth Low (controllable via interval) High (requires stable throughput) Latency Higher (staccato images) Lower (fluid video) 🛡️ Security Best Practices
: It can sometimes bypass network restrictions that block continuous video streams.