Replaces manual H264/TCP stereo streaming with NVIDIA CloudXR for
higher-quality stereoscopic rendering and lower latency.
Changes:
- teleop_xr_agent.py: add --cloudxr flag (enables Isaac Sim XR mode,
disables manual StreamingManager)
- deps/cloudxr/: NVIDIA CloudXR.js SDK (Early Access) with Isaac Lab
teleop React web client
- deps/cloudxr/Dockerfile.wss.proxy: HAProxy WSS proxy for PICO 4 Ultra
HTTPS mode (routes wss://48322 → ws://49100)
- deps/cloudxr/isaac/webpack.dev.js: disable file watching to avoid
EMFILE errors with large node_modules
- deps/cloudxr/INSTALL.md: full setup guide
Usage:
# Start CloudXR Runtime + Isaac Lab
cd ~/IsaacLab && ./docker/container.py start \
--files docker-compose.cloudxr-runtime.patch.yaml \
--env-file .env.cloudxr-runtime
# Run teleop with CloudXR
~/IsaacLab/isaaclab.sh -p teleop_xr_agent.py \
--task Isaac-MindRobot-2i-DualArm-IK-Abs-v0 --cloudxr
# Serve web client
cd deps/cloudxr/isaac && npm run dev-server:https
132 lines
44 KiB
HTML
132 lines
44 KiB
HTML
<!DOCTYPE html><html class="default" lang="en" data-base=".."><head><meta charset="utf-8"/><meta http-equiv="x-ua-compatible" content="IE=edge"/><title>SessionOptions | CloudXR.js SDK Documentation - v6.0.0-beta</title><meta name="description" content="Documentation for CloudXR.js SDK Documentation"/><meta name="viewport" content="width=device-width, initial-scale=1"/><link rel="stylesheet" href="../assets/style.css"/><link rel="stylesheet" href="../assets/highlight.css"/><script defer src="../assets/main.js"></script><script async src="../assets/icons.js" id="tsd-icons-script"></script><script async src="../assets/search.js" id="tsd-search-script"></script><script async src="../assets/navigation.js" id="tsd-nav-script"></script></head><body><script>document.documentElement.dataset.theme = localStorage.getItem("tsd-theme") || "os";document.body.style.display="none";setTimeout(() => app?app.showPage():document.body.style.removeProperty("display"),500)</script><header class="tsd-page-toolbar"><div class="tsd-toolbar-contents container"><div class="table-cell" id="tsd-search"><div class="field"><label for="tsd-search-field" class="tsd-widget tsd-toolbar-icon search no-caption"><svg width="16" height="16" viewBox="0 0 16 16" fill="none" aria-hidden="true"><use href="../assets/icons.svg#icon-search"></use></svg></label><input type="text" id="tsd-search-field" aria-label="Search"/></div><div class="field"><div id="tsd-toolbar-links"></div></div><ul class="results"><li class="state loading">Preparing search index...</li><li class="state failure">The search index is not available</li></ul><a href="../index.html" class="title">CloudXR.js SDK Documentation - v6.0.0-beta</a></div><div class="table-cell" id="tsd-widgets"><a href="#" class="tsd-widget tsd-toolbar-icon menu no-caption" data-toggle="menu" aria-label="Menu"><svg width="16" height="16" viewBox="0 0 16 16" fill="none" aria-hidden="true"><use href="../assets/icons.svg#icon-menu"></use></svg></a></div></div></header><div class="container container-main"><div class="col-content"><div class="tsd-page-title"><ul class="tsd-breadcrumb"><li><a href="../modules.html">CloudXR.js SDK Documentation</a></li><li><a href="../modules/CloudXR.html">CloudXR</a></li><li><a href="CloudXR.SessionOptions.html">SessionOptions</a></li></ul><h1>Interface SessionOptions</h1></div><section class="tsd-panel tsd-comment"><div class="tsd-comment tsd-typography"><p>Defines configuration options for a CloudXR streaming session.</p>
|
||
<p>Defines all configuration parameters needed to create
|
||
and configure a CloudXR streaming session. Required parameters must be
|
||
provided, while optional parameters have sensible defaults.</p>
|
||
</div><div class="tsd-comment tsd-typography"><div class="tsd-tag-example"><h4 class="tsd-anchor-link"><a id="example" class="tsd-anchor"></a>Example<a href="#example" aria-label="Permalink" class="tsd-anchor-icon"><svg viewBox="0 0 24 24" aria-hidden="true"><use href="../assets/icons.svg#icon-anchor"></use></svg></a></h4><pre><code class="typescript"><span class="hl-6">const</span><span class="hl-1"> </span><span class="hl-5">sessionOptions</span><span class="hl-1">: </span><span class="hl-13">SessionOptions</span><span class="hl-1"> = {</span><br/><span class="hl-1"> </span><span class="hl-3">// Required parameters</span><br/><span class="hl-1"> </span><span class="hl-4">serverAddress:</span><span class="hl-1"> </span><span class="hl-2">'192.168.1.100'</span><span class="hl-1">,</span><br/><span class="hl-1"> </span><span class="hl-4">serverPort:</span><span class="hl-1"> </span><span class="hl-7">49100</span><span class="hl-1">,</span><br/><span class="hl-1"> </span><span class="hl-4">useSecureConnection:</span><span class="hl-1"> </span><span class="hl-6">false</span><span class="hl-1">,</span><br/><span class="hl-1"> </span><span class="hl-4">gl:</span><span class="hl-1"> </span><span class="hl-4">webglContext</span><span class="hl-1">,</span><br/><span class="hl-1"> </span><span class="hl-4">perEyeWidth:</span><span class="hl-1"> </span><span class="hl-7">2048</span><span class="hl-1">,</span><br/><span class="hl-1"> </span><span class="hl-4">perEyeHeight:</span><span class="hl-1"> </span><span class="hl-7">1792</span><span class="hl-1">,</span><br/><span class="hl-1"> </span><span class="hl-4">referenceSpace:</span><span class="hl-1"> </span><span class="hl-4">xrReferenceSpace</span><span class="hl-1">,</span><br/><br/><span class="hl-1"> </span><span class="hl-3">// Optional parameters with defaults</span><br/><span class="hl-1"> </span><span class="hl-4">deviceFrameRate:</span><span class="hl-1"> </span><span class="hl-7">90</span><span class="hl-1">,</span><br/><span class="hl-1"> </span><span class="hl-4">maxStreamingBitrateKbps:</span><span class="hl-1"> </span><span class="hl-7">150000</span><span class="hl-1">,</span><br/><span class="hl-1"> </span><span class="hl-4">codec:</span><span class="hl-1"> </span><span class="hl-2">'av1'</span><br/><span class="hl-1">};</span>
|
||
</code><button type="button">Copy</button></pre>
|
||
|
||
</div></div></section><div class="tsd-signature"><span class="tsd-signature-keyword">interface</span> <span class="tsd-kind-interface">SessionOptions</span> <span class="tsd-signature-symbol">{</span><br/> <a class="tsd-kind-property" href="CloudXR.SessionOptions.html#serveraddress">serverAddress</a><span class="tsd-signature-symbol">:</span> <span class="tsd-signature-type">string</span><span class="tsd-signature-symbol">;</span><br/> <a class="tsd-kind-property" href="CloudXR.SessionOptions.html#serverport">serverPort</a><span class="tsd-signature-symbol">:</span> <span class="tsd-signature-type">number</span><span class="tsd-signature-symbol">;</span><br/> <a class="tsd-kind-property" href="CloudXR.SessionOptions.html#usesecureconnection">useSecureConnection</a><span class="tsd-signature-symbol">:</span> <span class="tsd-signature-type">boolean</span><span class="tsd-signature-symbol">;</span><br/> <a class="tsd-kind-property" href="CloudXR.SessionOptions.html#gl">gl</a><span class="tsd-signature-symbol">:</span> <span class="tsd-signature-type">WebGL2RenderingContext</span><span class="tsd-signature-symbol">;</span><br/> <a class="tsd-kind-property" href="CloudXR.SessionOptions.html#pereyewidth">perEyeWidth</a><span class="tsd-signature-symbol">:</span> <span class="tsd-signature-type">number</span><span class="tsd-signature-symbol">;</span><br/> <a class="tsd-kind-property" href="CloudXR.SessionOptions.html#pereyeheight">perEyeHeight</a><span class="tsd-signature-symbol">:</span> <span class="tsd-signature-type">number</span><span class="tsd-signature-symbol">;</span><br/> <a class="tsd-kind-property" href="CloudXR.SessionOptions.html#referencespace">referenceSpace</a><span class="tsd-signature-symbol">:</span> <span class="tsd-signature-type">XRReferenceSpace</span><span class="tsd-signature-symbol">;</span><br/> <a class="tsd-kind-property" href="CloudXR.SessionOptions.html#glbinding">glBinding</a><span class="tsd-signature-symbol">?:</span> <span class="tsd-signature-type">XRWebGLBinding</span><span class="tsd-signature-symbol">;</span><br/> <a class="tsd-kind-property" href="CloudXR.SessionOptions.html#codec">codec</a><span class="tsd-signature-symbol">?:</span> <span class="tsd-signature-type">string</span><span class="tsd-signature-symbol">;</span><br/> <a class="tsd-kind-property" href="CloudXR.SessionOptions.html#deviceframerate">deviceFrameRate</a><span class="tsd-signature-symbol">?:</span> <span class="tsd-signature-type">number</span><span class="tsd-signature-symbol">;</span><br/> <a class="tsd-kind-property" href="CloudXR.SessionOptions.html#maxstreamingbitratekbps">maxStreamingBitrateKbps</a><span class="tsd-signature-symbol">?:</span> <span class="tsd-signature-type">number</span><span class="tsd-signature-symbol">;</span><br/> <a class="tsd-kind-property" href="CloudXR.SessionOptions.html#telemetry">telemetry</a><span class="tsd-signature-symbol">?:</span> <span class="tsd-signature-symbol">{</span><br/> <span class="tsd-kind-property">enabled</span><span class="tsd-signature-symbol">?:</span> <span class="tsd-signature-type">boolean</span><span class="tsd-signature-symbol">;</span><br/> <span class="tsd-kind-property">appInfo</span><span class="tsd-signature-symbol">?:</span> <span class="tsd-signature-symbol">{</span> <span class="tsd-kind-property">version</span><span class="tsd-signature-symbol">?:</span> <span class="tsd-signature-type">string</span><span class="tsd-signature-symbol">;</span> <span class="tsd-kind-property">product</span><span class="tsd-signature-symbol">?:</span> <span class="tsd-signature-type">string</span> <span class="tsd-signature-symbol">}</span><span class="tsd-signature-symbol">;</span><br/> <span class="tsd-signature-symbol">}</span><span class="tsd-signature-symbol">;</span><br/> <a class="tsd-kind-property" href="CloudXR.SessionOptions.html#enableposesmoothing">enablePoseSmoothing</a><span class="tsd-signature-symbol">?:</span> <span class="tsd-signature-type">boolean</span><span class="tsd-signature-symbol">;</span><br/> <a class="tsd-kind-property" href="CloudXR.SessionOptions.html#posepredictionfactor">posePredictionFactor</a><span class="tsd-signature-symbol">?:</span> <span class="tsd-signature-type">number</span><span class="tsd-signature-symbol">;</span><br/><span class="tsd-signature-symbol">}</span></div><section class="tsd-panel-group tsd-index-group"><section class="tsd-panel tsd-index-panel"><details class="tsd-index-content tsd-accordion" open><summary class="tsd-accordion-summary tsd-index-summary"><h5 class="tsd-index-heading uppercase" role="button" aria-expanded="false" tabIndex="0"><svg width="16" height="16" viewBox="0 0 16 16" fill="none" aria-hidden="true"><use href="../assets/icons.svg#icon-chevronSmall"></use></svg> Index</h5></summary><div class="tsd-accordion-details"><section class="tsd-index-section"><h3 class="tsd-index-heading">Properties</h3><div class="tsd-index-list"><a href="CloudXR.SessionOptions.html#serveraddress" class="tsd-index-link"><svg class="tsd-kind-icon" viewBox="0 0 24 24" aria-label="Property"><use href="../assets/icons.svg#icon-1024"></use></svg><span>server<wbr/>Address</span></a>
|
||
<a href="CloudXR.SessionOptions.html#serverport" class="tsd-index-link"><svg class="tsd-kind-icon" viewBox="0 0 24 24" aria-label="Property"><use href="../assets/icons.svg#icon-1024"></use></svg><span>server<wbr/>Port</span></a>
|
||
<a href="CloudXR.SessionOptions.html#usesecureconnection" class="tsd-index-link"><svg class="tsd-kind-icon" viewBox="0 0 24 24" aria-label="Property"><use href="../assets/icons.svg#icon-1024"></use></svg><span>use<wbr/>Secure<wbr/>Connection</span></a>
|
||
<a href="CloudXR.SessionOptions.html#gl" class="tsd-index-link"><svg class="tsd-kind-icon" viewBox="0 0 24 24" aria-label="Property"><use href="../assets/icons.svg#icon-1024"></use></svg><span>gl</span></a>
|
||
<a href="CloudXR.SessionOptions.html#pereyewidth" class="tsd-index-link"><svg class="tsd-kind-icon" viewBox="0 0 24 24" aria-label="Property"><use href="../assets/icons.svg#icon-1024"></use></svg><span>per<wbr/>Eye<wbr/>Width</span></a>
|
||
<a href="CloudXR.SessionOptions.html#pereyeheight" class="tsd-index-link"><svg class="tsd-kind-icon" viewBox="0 0 24 24" aria-label="Property"><use href="../assets/icons.svg#icon-1024"></use></svg><span>per<wbr/>Eye<wbr/>Height</span></a>
|
||
<a href="CloudXR.SessionOptions.html#referencespace" class="tsd-index-link"><svg class="tsd-kind-icon" viewBox="0 0 24 24" aria-label="Property"><use href="../assets/icons.svg#icon-1024"></use></svg><span>reference<wbr/>Space</span></a>
|
||
<a href="CloudXR.SessionOptions.html#glbinding" class="tsd-index-link"><svg class="tsd-kind-icon" viewBox="0 0 24 24" aria-label="Property"><use href="../assets/icons.svg#icon-1024"></use></svg><span>gl<wbr/>Binding?</span></a>
|
||
<a href="CloudXR.SessionOptions.html#codec" class="tsd-index-link"><svg class="tsd-kind-icon" viewBox="0 0 24 24" aria-label="Property"><use href="../assets/icons.svg#icon-1024"></use></svg><span>codec?</span></a>
|
||
<a href="CloudXR.SessionOptions.html#deviceframerate" class="tsd-index-link"><svg class="tsd-kind-icon" viewBox="0 0 24 24" aria-label="Property"><use href="../assets/icons.svg#icon-1024"></use></svg><span>device<wbr/>Frame<wbr/>Rate?</span></a>
|
||
<a href="CloudXR.SessionOptions.html#maxstreamingbitratekbps" class="tsd-index-link"><svg class="tsd-kind-icon" viewBox="0 0 24 24" aria-label="Property"><use href="../assets/icons.svg#icon-1024"></use></svg><span>max<wbr/>Streaming<wbr/>Bitrate<wbr/>Kbps?</span></a>
|
||
<a href="CloudXR.SessionOptions.html#telemetry" class="tsd-index-link"><svg class="tsd-kind-icon" viewBox="0 0 24 24" aria-label="Property"><use href="../assets/icons.svg#icon-1024"></use></svg><span>telemetry?</span></a>
|
||
<a href="CloudXR.SessionOptions.html#enableposesmoothing" class="tsd-index-link"><svg class="tsd-kind-icon" viewBox="0 0 24 24" aria-label="Property"><use href="../assets/icons.svg#icon-1024"></use></svg><span>enable<wbr/>Pose<wbr/>Smoothing?</span></a>
|
||
<a href="CloudXR.SessionOptions.html#posepredictionfactor" class="tsd-index-link"><svg class="tsd-kind-icon" viewBox="0 0 24 24" aria-label="Property"><use href="../assets/icons.svg#icon-1024"></use></svg><span>pose<wbr/>Prediction<wbr/>Factor?</span></a>
|
||
</div></section></div></details></section></section><details class="tsd-panel-group tsd-member-group tsd-accordion" open><summary class="tsd-accordion-summary" data-key="section-Properties"><h2><svg width="20" height="20" viewBox="0 0 24 24" fill="none" aria-hidden="true"><use href="../assets/icons.svg#icon-chevronDown"></use></svg> Properties</h2></summary><section><section class="tsd-panel tsd-member"><a id="serveraddress" class="tsd-anchor"></a><h3 class="tsd-anchor-link"><span>server<wbr/>Address</span><a href="#serveraddress" aria-label="Permalink" class="tsd-anchor-icon"><svg viewBox="0 0 24 24" aria-hidden="true"><use href="../assets/icons.svg#icon-anchor"></use></svg></a></h3><div class="tsd-signature"><span class="tsd-kind-property">serverAddress</span><span class="tsd-signature-symbol">:</span> <span class="tsd-signature-type">string</span></div><div class="tsd-comment tsd-typography"><p>Address of the CloudXR Runtime.</p>
|
||
<p>Can be an IP address (e.g., '192.168.1.100') or hostname.
|
||
For local development, use 'localhost' or '127.0.0.1'.</p>
|
||
</div><div class="tsd-comment tsd-typography"><div class="tsd-tag-example"><h4 class="tsd-anchor-link"><a id="example-1" class="tsd-anchor"></a>Example<a href="#example-1" aria-label="Permalink" class="tsd-anchor-icon"><svg viewBox="0 0 24 24" aria-hidden="true"><use href="../assets/icons.svg#icon-anchor"></use></svg></a></h4><pre><code class="typescript"><span class="hl-8">serverAddress</span><span class="hl-1">: </span><span class="hl-2">'192.168.1.100'</span><span class="hl-1"> </span><span class="hl-3">// IP address</span><br/><span class="hl-8">serverAddress</span><span class="hl-1">: </span><span class="hl-2">'cloudxr-server.local'</span><span class="hl-1"> </span><span class="hl-3">// Hostname</span><br/><span class="hl-8">serverAddress</span><span class="hl-1">: </span><span class="hl-2">'localhost'</span><span class="hl-1"> </span><span class="hl-3">// Local development</span>
|
||
</code><button type="button">Copy</button></pre>
|
||
|
||
</div></div></section><section class="tsd-panel tsd-member"><a id="serverport" class="tsd-anchor"></a><h3 class="tsd-anchor-link"><span>server<wbr/>Port</span><a href="#serverport" aria-label="Permalink" class="tsd-anchor-icon"><svg viewBox="0 0 24 24" aria-hidden="true"><use href="../assets/icons.svg#icon-anchor"></use></svg></a></h3><div class="tsd-signature"><span class="tsd-kind-property">serverPort</span><span class="tsd-signature-symbol">:</span> <span class="tsd-signature-type">number</span></div><div class="tsd-comment tsd-typography"><p>Port of the CloudXR Runtime.</p>
|
||
<p>The default CloudXR Runtime port is 49100. Ensure this port is
|
||
accessible and not blocked by firewalls.</p>
|
||
</div><div class="tsd-comment tsd-typography"><div class="tsd-tag-default"><h4 class="tsd-anchor-link"><a id="default" class="tsd-anchor"></a>Default<a href="#default" aria-label="Permalink" class="tsd-anchor-icon"><svg viewBox="0 0 24 24" aria-hidden="true"><use href="../assets/icons.svg#icon-anchor"></use></svg></a></h4><pre><code class="ts"><span class="hl-7">49100</span>
|
||
</code><button type="button">Copy</button></pre>
|
||
|
||
</div><div class="tsd-tag-example"><h4 class="tsd-anchor-link"><a id="example-2" class="tsd-anchor"></a>Example<a href="#example-2" aria-label="Permalink" class="tsd-anchor-icon"><svg viewBox="0 0 24 24" aria-hidden="true"><use href="../assets/icons.svg#icon-anchor"></use></svg></a></h4><pre><code class="typescript"><span class="hl-8">serverPort</span><span class="hl-1">: </span><span class="hl-7">49100</span><span class="hl-1"> </span><span class="hl-3">// Default CloudXR port</span>
|
||
</code><button type="button">Copy</button></pre>
|
||
|
||
</div></div></section><section class="tsd-panel tsd-member"><a id="usesecureconnection" class="tsd-anchor"></a><h3 class="tsd-anchor-link"><span>use<wbr/>Secure<wbr/>Connection</span><a href="#usesecureconnection" aria-label="Permalink" class="tsd-anchor-icon"><svg viewBox="0 0 24 24" aria-hidden="true"><use href="../assets/icons.svg#icon-anchor"></use></svg></a></h3><div class="tsd-signature"><span class="tsd-kind-property">useSecureConnection</span><span class="tsd-signature-symbol">:</span> <span class="tsd-signature-type">boolean</span></div><div class="tsd-comment tsd-typography"><p>Connect using secure connection (WSS/HTTPS).</p>
|
||
<p>When true, uses secure WebSocket (WSS) connection. When false,
|
||
uses unsecured WebSocket (WS) connection. For production deployments,
|
||
secure connections are recommended.</p>
|
||
</div><div class="tsd-comment tsd-typography"><div class="tsd-tag-default"><h4 class="tsd-anchor-link"><a id="default-1" class="tsd-anchor"></a>Default<a href="#default-1" aria-label="Permalink" class="tsd-anchor-icon"><svg viewBox="0 0 24 24" aria-hidden="true"><use href="../assets/icons.svg#icon-anchor"></use></svg></a></h4><pre><code class="ts"><span class="hl-6">false</span>
|
||
</code><button type="button">Copy</button></pre>
|
||
|
||
</div><div class="tsd-tag-example"><h4 class="tsd-anchor-link"><a id="example-3" class="tsd-anchor"></a>Example<a href="#example-3" aria-label="Permalink" class="tsd-anchor-icon"><svg viewBox="0 0 24 24" aria-hidden="true"><use href="../assets/icons.svg#icon-anchor"></use></svg></a></h4><pre><code class="typescript"><span class="hl-8">useSecureConnection</span><span class="hl-1">: </span><span class="hl-6">false</span><span class="hl-1"> </span><span class="hl-3">// Development</span><br/><span class="hl-8">useSecureConnection</span><span class="hl-1">: </span><span class="hl-6">true</span><span class="hl-1"> </span><span class="hl-3">// Production</span>
|
||
</code><button type="button">Copy</button></pre>
|
||
|
||
</div></div></section><section class="tsd-panel tsd-member"><a id="gl" class="tsd-anchor"></a><h3 class="tsd-anchor-link"><span>gl</span><a href="#gl" aria-label="Permalink" class="tsd-anchor-icon"><svg viewBox="0 0 24 24" aria-hidden="true"><use href="../assets/icons.svg#icon-anchor"></use></svg></a></h3><div class="tsd-signature"><span class="tsd-kind-property">gl</span><span class="tsd-signature-symbol">:</span> <span class="tsd-signature-type">WebGL2RenderingContext</span></div><div class="tsd-comment tsd-typography"><p>WebGL context for rendering.</p>
|
||
<p>Must be a WebGL2RenderingContext obtained from a canvas element.
|
||
This context will be used for all CloudXR rendering operations.</p>
|
||
</div><div class="tsd-comment tsd-typography"><div class="tsd-tag-example"><h4 class="tsd-anchor-link"><a id="example-4" class="tsd-anchor"></a>Example<a href="#example-4" aria-label="Permalink" class="tsd-anchor-icon"><svg viewBox="0 0 24 24" aria-hidden="true"><use href="../assets/icons.svg#icon-anchor"></use></svg></a></h4><pre><code class="typescript"><span class="hl-6">const</span><span class="hl-1"> </span><span class="hl-5">canvas</span><span class="hl-1"> = </span><span class="hl-4">document</span><span class="hl-1">.</span><span class="hl-0">createElement</span><span class="hl-1">(</span><span class="hl-2">'canvas'</span><span class="hl-1">);</span><br/><span class="hl-6">const</span><span class="hl-1"> </span><span class="hl-5">gl</span><span class="hl-1"> = </span><span class="hl-4">canvas</span><span class="hl-1">.</span><span class="hl-0">getContext</span><span class="hl-1">(</span><span class="hl-2">'webgl2'</span><span class="hl-1">);</span><br/><span class="hl-3">// Use gl in sessionOptions</span>
|
||
</code><button type="button">Copy</button></pre>
|
||
|
||
</div></div></section><section class="tsd-panel tsd-member"><a id="pereyewidth" class="tsd-anchor"></a><h3 class="tsd-anchor-link"><span>per<wbr/>Eye<wbr/>Width</span><a href="#pereyewidth" aria-label="Permalink" class="tsd-anchor-icon"><svg viewBox="0 0 24 24" aria-hidden="true"><use href="../assets/icons.svg#icon-anchor"></use></svg></a></h3><div class="tsd-signature"><span class="tsd-kind-property">perEyeWidth</span><span class="tsd-signature-symbol">:</span> <span class="tsd-signature-type">number</span></div><div class="tsd-comment tsd-typography"><p>Width of each eye in pixels.</p>
|
||
<p>This should match the per-eye resolution you want to render.
|
||
Must be a multiple of 16 for optimal performance.
|
||
The actual stream width will be calculated as perEyeWidth * 2.</p>
|
||
</div><div class="tsd-comment tsd-typography"><div class="tsd-tag-example"><h4 class="tsd-anchor-link"><a id="example-5" class="tsd-anchor"></a>Example<a href="#example-5" aria-label="Permalink" class="tsd-anchor-icon"><svg viewBox="0 0 24 24" aria-hidden="true"><use href="../assets/icons.svg#icon-anchor"></use></svg></a></h4><pre><code class="typescript"><span class="hl-8">perEyeWidth</span><span class="hl-1">: </span><span class="hl-7">2048</span><span class="hl-1"> </span><span class="hl-3">// Max width if using H264 codec</span>
|
||
</code><button type="button">Copy</button></pre>
|
||
|
||
</div></div></section><section class="tsd-panel tsd-member"><a id="pereyeheight" class="tsd-anchor"></a><h3 class="tsd-anchor-link"><span>per<wbr/>Eye<wbr/>Height</span><a href="#pereyeheight" aria-label="Permalink" class="tsd-anchor-icon"><svg viewBox="0 0 24 24" aria-hidden="true"><use href="../assets/icons.svg#icon-anchor"></use></svg></a></h3><div class="tsd-signature"><span class="tsd-kind-property">perEyeHeight</span><span class="tsd-signature-symbol">:</span> <span class="tsd-signature-type">number</span></div><div class="tsd-comment tsd-typography"><p>Height of each eye in pixels.</p>
|
||
<p>This should match the per-eye resolution you want to render.
|
||
Must be a multiple of 16 for optimal performance.
|
||
The actual stream height will be calculated as perEyeHeight * 9 / 4.</p>
|
||
</div><div class="tsd-comment tsd-typography"><div class="tsd-tag-example"><h4 class="tsd-anchor-link"><a id="example-6" class="tsd-anchor"></a>Example<a href="#example-6" aria-label="Permalink" class="tsd-anchor-icon"><svg viewBox="0 0 24 24" aria-hidden="true"><use href="../assets/icons.svg#icon-anchor"></use></svg></a></h4><pre><code class="typescript"><span class="hl-8">perEyeHeight</span><span class="hl-1">: </span><span class="hl-7">1792</span><span class="hl-1"> </span><span class="hl-3">// Max height if using H264 codec</span>
|
||
</code><button type="button">Copy</button></pre>
|
||
|
||
</div></div></section><section class="tsd-panel tsd-member"><a id="referencespace" class="tsd-anchor"></a><h3 class="tsd-anchor-link"><span>reference<wbr/>Space</span><a href="#referencespace" aria-label="Permalink" class="tsd-anchor-icon"><svg viewBox="0 0 24 24" aria-hidden="true"><use href="../assets/icons.svg#icon-anchor"></use></svg></a></h3><div class="tsd-signature"><span class="tsd-kind-property">referenceSpace</span><span class="tsd-signature-symbol">:</span> <span class="tsd-signature-type">XRReferenceSpace</span></div><div class="tsd-comment tsd-typography"><p>XR reference space to use for coordinate system calculations.</p>
|
||
<p>This is used for getting the viewer pose from the XR frame and
|
||
should be obtained from the WebXR session.</p>
|
||
</div><div class="tsd-comment tsd-typography"><div class="tsd-tag-example"><h4 class="tsd-anchor-link"><a id="example-7" class="tsd-anchor"></a>Example<a href="#example-7" aria-label="Permalink" class="tsd-anchor-icon"><svg viewBox="0 0 24 24" aria-hidden="true"><use href="../assets/icons.svg#icon-anchor"></use></svg></a></h4><pre><code class="typescript"><span class="hl-6">const</span><span class="hl-1"> </span><span class="hl-5">referenceSpace</span><span class="hl-1"> = </span><span class="hl-9">await</span><span class="hl-1"> </span><span class="hl-4">xrSession</span><span class="hl-1">.</span><span class="hl-0">requestReferenceSpace</span><span class="hl-1">(</span><span class="hl-2">'local-floor'</span><span class="hl-1">);</span>
|
||
</code><button type="button">Copy</button></pre>
|
||
|
||
</div></div></section><section class="tsd-panel tsd-member"><a id="glbinding" class="tsd-anchor"></a><h3 class="tsd-anchor-link"><code class="tsd-tag">Optional</code><span>gl<wbr/>Binding</span><a href="#glbinding" aria-label="Permalink" class="tsd-anchor-icon"><svg viewBox="0 0 24 24" aria-hidden="true"><use href="../assets/icons.svg#icon-anchor"></use></svg></a></h3><div class="tsd-signature"><span class="tsd-kind-property">glBinding</span><span class="tsd-signature-symbol">?:</span> <span class="tsd-signature-type">XRWebGLBinding</span></div><div class="tsd-comment tsd-typography"><p>XR WebGL binding used to query viewport information for each eye.</p>
|
||
<p>Optional binding that provides additional viewport information.
|
||
If not provided, default viewport calculations will be used.</p>
|
||
</div><div class="tsd-comment tsd-typography"><div class="tsd-tag-example"><h4 class="tsd-anchor-link"><a id="example-8" class="tsd-anchor"></a>Example<a href="#example-8" aria-label="Permalink" class="tsd-anchor-icon"><svg viewBox="0 0 24 24" aria-hidden="true"><use href="../assets/icons.svg#icon-anchor"></use></svg></a></h4><pre><code class="typescript"><span class="hl-6">const</span><span class="hl-1"> </span><span class="hl-5">glBinding</span><span class="hl-1"> = </span><span class="hl-6">new</span><span class="hl-1"> </span><span class="hl-0">XRWebGLBinding</span><span class="hl-1">(</span><span class="hl-4">xrSession</span><span class="hl-1">, </span><span class="hl-4">gl</span><span class="hl-1">);</span>
|
||
</code><button type="button">Copy</button></pre>
|
||
|
||
</div></div></section><section class="tsd-panel tsd-member"><a id="codec" class="tsd-anchor"></a><h3 class="tsd-anchor-link"><code class="tsd-tag">Optional</code><span>codec</span><a href="#codec" aria-label="Permalink" class="tsd-anchor-icon"><svg viewBox="0 0 24 24" aria-hidden="true"><use href="../assets/icons.svg#icon-anchor"></use></svg></a></h3><div class="tsd-signature"><span class="tsd-kind-property">codec</span><span class="tsd-signature-symbol">?:</span> <span class="tsd-signature-type">string</span></div><div class="tsd-comment tsd-typography"><p>Video codec for streaming.</p>
|
||
<p>Supported codecs: 'h264', 'av1'. AV1 provides better compression
|
||
but requires more CPU/GPU resources for encoding/decoding.</p>
|
||
</div><div class="tsd-comment tsd-typography"><div class="tsd-tag-default"><h4 class="tsd-anchor-link"><a id="default-2" class="tsd-anchor"></a>Default<a href="#default-2" aria-label="Permalink" class="tsd-anchor-icon"><svg viewBox="0 0 24 24" aria-hidden="true"><use href="../assets/icons.svg#icon-anchor"></use></svg></a></h4><pre><code class="ts"><span class="hl-2">'av1'</span>
|
||
</code><button type="button">Copy</button></pre>
|
||
|
||
</div><div class="tsd-tag-example"><h4 class="tsd-anchor-link"><a id="example-9" class="tsd-anchor"></a>Example<a href="#example-9" aria-label="Permalink" class="tsd-anchor-icon"><svg viewBox="0 0 24 24" aria-hidden="true"><use href="../assets/icons.svg#icon-anchor"></use></svg></a></h4><pre><code class="typescript"><span class="hl-8">codec</span><span class="hl-1">: </span><span class="hl-2">'av1'</span><span class="hl-1"> </span><span class="hl-3">// Better compression, more CPU intensive</span><br/><span class="hl-8">codec</span><span class="hl-1">: </span><span class="hl-2">'h264'</span><span class="hl-1"> </span><span class="hl-3">// Faster encoding/decoding, larger bandwidth</span>
|
||
</code><button type="button">Copy</button></pre>
|
||
|
||
</div></div></section><section class="tsd-panel tsd-member"><a id="deviceframerate" class="tsd-anchor"></a><h3 class="tsd-anchor-link"><code class="tsd-tag">Optional</code><span>device<wbr/>Frame<wbr/>Rate</span><a href="#deviceframerate" aria-label="Permalink" class="tsd-anchor-icon"><svg viewBox="0 0 24 24" aria-hidden="true"><use href="../assets/icons.svg#icon-anchor"></use></svg></a></h3><div class="tsd-signature"><span class="tsd-kind-property">deviceFrameRate</span><span class="tsd-signature-symbol">?:</span> <span class="tsd-signature-type">number</span></div><div class="tsd-comment tsd-typography"><p>Device frame rate (maximum FPS).</p>
|
||
<p>The server will treat this as a maximum FPS and choose an appropriate
|
||
streaming frame rate that is lower than this value. Higher frame rates
|
||
provide smoother motion but require more bandwidth.</p>
|
||
</div><div class="tsd-comment tsd-typography"><div class="tsd-tag-default"><h4 class="tsd-anchor-link"><a id="default-3" class="tsd-anchor"></a>Default<a href="#default-3" aria-label="Permalink" class="tsd-anchor-icon"><svg viewBox="0 0 24 24" aria-hidden="true"><use href="../assets/icons.svg#icon-anchor"></use></svg></a></h4><pre><code class="ts"><span class="hl-7">90</span>
|
||
</code><button type="button">Copy</button></pre>
|
||
|
||
</div><div class="tsd-tag-example"><h4 class="tsd-anchor-link"><a id="example-10" class="tsd-anchor"></a>Example<a href="#example-10" aria-label="Permalink" class="tsd-anchor-icon"><svg viewBox="0 0 24 24" aria-hidden="true"><use href="../assets/icons.svg#icon-anchor"></use></svg></a></h4><pre><code class="typescript"><span class="hl-8">deviceFrameRate</span><span class="hl-1">: </span><span class="hl-7">90</span><span class="hl-1"> </span><span class="hl-3">// Quest 3 standard</span><br/><span class="hl-8">deviceFrameRate</span><span class="hl-1">: </span><span class="hl-7">120</span><span class="hl-1"> </span><span class="hl-3">// High refresh rate</span><br/><span class="hl-8">deviceFrameRate</span><span class="hl-1">: </span><span class="hl-7">72</span><span class="hl-1"> </span><span class="hl-3">// Lower power mode</span>
|
||
</code><button type="button">Copy</button></pre>
|
||
|
||
</div></div></section><section class="tsd-panel tsd-member"><a id="maxstreamingbitratekbps" class="tsd-anchor"></a><h3 class="tsd-anchor-link"><code class="tsd-tag">Optional</code><span>max<wbr/>Streaming<wbr/>Bitrate<wbr/>Kbps</span><a href="#maxstreamingbitratekbps" aria-label="Permalink" class="tsd-anchor-icon"><svg viewBox="0 0 24 24" aria-hidden="true"><use href="../assets/icons.svg#icon-anchor"></use></svg></a></h3><div class="tsd-signature"><span class="tsd-kind-property">maxStreamingBitrateKbps</span><span class="tsd-signature-symbol">?:</span> <span class="tsd-signature-type">number</span></div><div class="tsd-comment tsd-typography"><p>Maximum streaming bitrate in Kilobits per second.</p>
|
||
<p>Controls the maximum bandwidth used for streaming. Higher bitrates
|
||
provide better quality but require more network bandwidth.</p>
|
||
</div><div class="tsd-comment tsd-typography"><div class="tsd-tag-default"><h4 class="tsd-anchor-link"><a id="default-4" class="tsd-anchor"></a>Default<a href="#default-4" aria-label="Permalink" class="tsd-anchor-icon"><svg viewBox="0 0 24 24" aria-hidden="true"><use href="../assets/icons.svg#icon-anchor"></use></svg></a></h4><pre><code class="ts"><span class="hl-7">150000</span>
|
||
</code><button type="button">Copy</button></pre>
|
||
|
||
</div><div class="tsd-tag-example"><h4 class="tsd-anchor-link"><a id="example-11" class="tsd-anchor"></a>Example<a href="#example-11" aria-label="Permalink" class="tsd-anchor-icon"><svg viewBox="0 0 24 24" aria-hidden="true"><use href="../assets/icons.svg#icon-anchor"></use></svg></a></h4><pre><code class="typescript"><span class="hl-8">maxStreamingBitrateKbps</span><span class="hl-1">: </span><span class="hl-7">150000</span><span class="hl-1"> </span><span class="hl-3">// 150 Mbps</span><br/><span class="hl-8">maxStreamingBitrateKbps</span><span class="hl-1">: </span><span class="hl-7">100000</span><span class="hl-1"> </span><span class="hl-3">// 100 Mbps (lower bandwidth)</span><br/><span class="hl-8">maxStreamingBitrateKbps</span><span class="hl-1">: </span><span class="hl-7">200000</span><span class="hl-1"> </span><span class="hl-3">// 200 Mbps (high quality)</span>
|
||
</code><button type="button">Copy</button></pre>
|
||
|
||
</div></div></section><section class="tsd-panel tsd-member"><a id="telemetry" class="tsd-anchor"></a><h3 class="tsd-anchor-link"><code class="tsd-tag">Optional</code><span>telemetry</span><a href="#telemetry" aria-label="Permalink" class="tsd-anchor-icon"><svg viewBox="0 0 24 24" aria-hidden="true"><use href="../assets/icons.svg#icon-anchor"></use></svg></a></h3><div class="tsd-signature"><span class="tsd-kind-property">telemetry</span><span class="tsd-signature-symbol">?:</span> <span class="tsd-signature-symbol">{</span><br/> <span class="tsd-kind-property">enabled</span><span class="tsd-signature-symbol">?:</span> <span class="tsd-signature-type">boolean</span><span class="tsd-signature-symbol">;</span><br/> <span class="tsd-kind-property">appInfo</span><span class="tsd-signature-symbol">?:</span> <span class="tsd-signature-symbol">{</span> <span class="tsd-kind-property">version</span><span class="tsd-signature-symbol">?:</span> <span class="tsd-signature-type">string</span><span class="tsd-signature-symbol">;</span> <span class="tsd-kind-property">product</span><span class="tsd-signature-symbol">?:</span> <span class="tsd-signature-type">string</span> <span class="tsd-signature-symbol">}</span><span class="tsd-signature-symbol">;</span><br/><span class="tsd-signature-symbol">}</span></div><div class="tsd-comment tsd-typography"><p>Telemetry configuration options</p>
|
||
</div><div class="tsd-type-declaration"><h4>Type declaration</h4><ul class="tsd-parameters"><li class="tsd-parameter"><h5><code class="tsd-tag">Optional</code><span class="tsd-kind-property">enabled</span><span class="tsd-signature-symbol">?: </span><span class="tsd-signature-type">boolean</span></h5><div class="tsd-comment tsd-typography"><p>Enable telemetry collection. Default is true.</p>
|
||
</div><div class="tsd-comment tsd-typography"></div></li><li class="tsd-parameter"><h5><code class="tsd-tag">Optional</code><span class="tsd-kind-property">appInfo</span><span class="tsd-signature-symbol">?: </span><span class="tsd-signature-symbol">{</span> <span class="tsd-kind-property">version</span><span class="tsd-signature-symbol">?:</span> <span class="tsd-signature-type">string</span><span class="tsd-signature-symbol">;</span> <span class="tsd-kind-property">product</span><span class="tsd-signature-symbol">?:</span> <span class="tsd-signature-type">string</span> <span class="tsd-signature-symbol">}</span></h5><div class="tsd-comment tsd-typography"><p>Application information for telemetry</p>
|
||
</div><div class="tsd-comment tsd-typography"></div><ul class="tsd-parameters"><li class="tsd-parameter"><h5><code class="tsd-tag">Optional</code><span class="tsd-kind-property">version</span><span class="tsd-signature-symbol">?: </span><span class="tsd-signature-type">string</span></h5><div class="tsd-comment tsd-typography"><p>Application version (e.g., "1.0.0")</p>
|
||
</div><div class="tsd-comment tsd-typography"></div></li><li class="tsd-parameter"><h5><code class="tsd-tag">Optional</code><span class="tsd-kind-property">product</span><span class="tsd-signature-symbol">?: </span><span class="tsd-signature-type">string</span></h5><div class="tsd-comment tsd-typography"><p>Product name (e.g., "MyApp")</p>
|
||
</div><div class="tsd-comment tsd-typography"></div></li></ul></li></ul></div><div class="tsd-comment tsd-typography"></div></section><section class="tsd-panel tsd-member"><a id="enableposesmoothing" class="tsd-anchor"></a><h3 class="tsd-anchor-link"><code class="tsd-tag">Optional</code><span>enable<wbr/>Pose<wbr/>Smoothing</span><a href="#enableposesmoothing" aria-label="Permalink" class="tsd-anchor-icon"><svg viewBox="0 0 24 24" aria-hidden="true"><use href="../assets/icons.svg#icon-anchor"></use></svg></a></h3><div class="tsd-signature"><span class="tsd-kind-property">enablePoseSmoothing</span><span class="tsd-signature-symbol">?:</span> <span class="tsd-signature-type">boolean</span></div><div class="tsd-comment tsd-typography"><p>Enable secondary smoothing on predicted positions.</p>
|
||
<p>When enabled, applies an additional smoothing pass to reduce jitter
|
||
in predicted positions. This only affects position, not orientation.</p>
|
||
</div><div class="tsd-comment tsd-typography"><div class="tsd-tag-default"><h4 class="tsd-anchor-link"><a id="default-5" class="tsd-anchor"></a>Default<a href="#default-5" aria-label="Permalink" class="tsd-anchor-icon"><svg viewBox="0 0 24 24" aria-hidden="true"><use href="../assets/icons.svg#icon-anchor"></use></svg></a></h4><pre><code class="ts"><span class="hl-6">true</span>
|
||
</code><button type="button">Copy</button></pre>
|
||
|
||
</div><div class="tsd-tag-example"><h4 class="tsd-anchor-link"><a id="example-12" class="tsd-anchor"></a>Example<a href="#example-12" aria-label="Permalink" class="tsd-anchor-icon"><svg viewBox="0 0 24 24" aria-hidden="true"><use href="../assets/icons.svg#icon-anchor"></use></svg></a></h4><pre><code class="typescript"><span class="hl-8">enablePoseSmoothing</span><span class="hl-1">: </span><span class="hl-6">false</span><span class="hl-1"> </span><span class="hl-3">// Disable position smoothing</span>
|
||
</code><button type="button">Copy</button></pre>
|
||
|
||
</div></div></section><section class="tsd-panel tsd-member"><a id="posepredictionfactor" class="tsd-anchor"></a><h3 class="tsd-anchor-link"><code class="tsd-tag">Optional</code><span>pose<wbr/>Prediction<wbr/>Factor</span><a href="#posepredictionfactor" aria-label="Permalink" class="tsd-anchor-icon"><svg viewBox="0 0 24 24" aria-hidden="true"><use href="../assets/icons.svg#icon-anchor"></use></svg></a></h3><div class="tsd-signature"><span class="tsd-kind-property">posePredictionFactor</span><span class="tsd-signature-symbol">?:</span> <span class="tsd-signature-type">number</span></div><div class="tsd-comment tsd-typography"><p>Pose prediction factor (0.0 to 1.0) that scales the prediction horizon.</p>
|
||
<p>This multiplier is applied to the calculated prediction horizon for both
|
||
position and orientation. A value of 1.0 uses full prediction, 0.5 uses
|
||
half the prediction horizon, and 0.0 disables prediction entirely.</p>
|
||
</div><div class="tsd-comment tsd-typography"><div class="tsd-tag-default"><h4 class="tsd-anchor-link"><a id="default-6" class="tsd-anchor"></a>Default<a href="#default-6" aria-label="Permalink" class="tsd-anchor-icon"><svg viewBox="0 0 24 24" aria-hidden="true"><use href="../assets/icons.svg#icon-anchor"></use></svg></a></h4><pre><code class="ts"><span class="hl-7">1.0</span>
|
||
</code><button type="button">Copy</button></pre>
|
||
|
||
</div><div class="tsd-tag-example"><h4 class="tsd-anchor-link"><a id="example-13" class="tsd-anchor"></a>Example<a href="#example-13" aria-label="Permalink" class="tsd-anchor-icon"><svg viewBox="0 0 24 24" aria-hidden="true"><use href="../assets/icons.svg#icon-anchor"></use></svg></a></h4><pre><code class="typescript"><span class="hl-8">posePredictionFactor</span><span class="hl-1">: </span><span class="hl-7">0.5</span><span class="hl-1"> </span><span class="hl-3">// Use 50% of calculated prediction</span><br/><span class="hl-8">posePredictionFactor</span><span class="hl-1">: </span><span class="hl-7">0.0</span><span class="hl-1"> </span><span class="hl-3">// Disable prediction</span>
|
||
</code><button type="button">Copy</button></pre>
|
||
|
||
</div></div></section></section></details></div><div class="col-sidebar"><div class="page-menu"><div class="tsd-navigation settings"><details class="tsd-accordion"><summary class="tsd-accordion-summary"><h3><svg width="20" height="20" viewBox="0 0 24 24" fill="none" aria-hidden="true"><use href="../assets/icons.svg#icon-chevronDown"></use></svg>Settings</h3></summary><div class="tsd-accordion-details"><div class="tsd-filter-visibility"><span class="settings-label">Member Visibility</span><ul id="tsd-filter-options"><li class="tsd-filter-item"><label class="tsd-filter-input"><input type="checkbox" id="tsd-filter-inherited" name="inherited" checked/><svg width="32" height="32" viewBox="0 0 32 32" aria-hidden="true"><rect class="tsd-checkbox-background" width="30" height="30" x="1" y="1" rx="6" fill="none"></rect><path class="tsd-checkbox-checkmark" d="M8.35422 16.8214L13.2143 21.75L24.6458 10.25" stroke="none" stroke-width="3.5" stroke-linejoin="round" fill="none"></path></svg><span>Inherited</span></label></li></ul></div><div class="tsd-theme-toggle"><label class="settings-label" for="tsd-theme">Theme</label><select id="tsd-theme"><option value="os">OS</option><option value="light">Light</option><option value="dark">Dark</option></select></div></div></details></div><details open class="tsd-accordion tsd-page-navigation"><summary class="tsd-accordion-summary"><h3><svg width="20" height="20" viewBox="0 0 24 24" fill="none" aria-hidden="true"><use href="../assets/icons.svg#icon-chevronDown"></use></svg>On This Page</h3></summary><div class="tsd-accordion-details"><details open class="tsd-accordion tsd-page-navigation-section"><summary class="tsd-accordion-summary" data-key="section-Properties"><svg width="20" height="20" viewBox="0 0 24 24" fill="none" aria-hidden="true"><use href="../assets/icons.svg#icon-chevronDown"></use></svg>Properties</summary><div><a href="#serveraddress" class=""><svg class="tsd-kind-icon" viewBox="0 0 24 24" aria-label="Property"><use href="../assets/icons.svg#icon-1024"></use></svg><span>server<wbr/>Address</span></a><a href="#serverport" class=""><svg class="tsd-kind-icon" viewBox="0 0 24 24" aria-label="Property"><use href="../assets/icons.svg#icon-1024"></use></svg><span>server<wbr/>Port</span></a><a href="#usesecureconnection" class=""><svg class="tsd-kind-icon" viewBox="0 0 24 24" aria-label="Property"><use href="../assets/icons.svg#icon-1024"></use></svg><span>use<wbr/>Secure<wbr/>Connection</span></a><a href="#gl" class=""><svg class="tsd-kind-icon" viewBox="0 0 24 24" aria-label="Property"><use href="../assets/icons.svg#icon-1024"></use></svg><span>gl</span></a><a href="#pereyewidth" class=""><svg class="tsd-kind-icon" viewBox="0 0 24 24" aria-label="Property"><use href="../assets/icons.svg#icon-1024"></use></svg><span>per<wbr/>Eye<wbr/>Width</span></a><a href="#pereyeheight" class=""><svg class="tsd-kind-icon" viewBox="0 0 24 24" aria-label="Property"><use href="../assets/icons.svg#icon-1024"></use></svg><span>per<wbr/>Eye<wbr/>Height</span></a><a href="#referencespace" class=""><svg class="tsd-kind-icon" viewBox="0 0 24 24" aria-label="Property"><use href="../assets/icons.svg#icon-1024"></use></svg><span>reference<wbr/>Space</span></a><a href="#glbinding" class=""><svg class="tsd-kind-icon" viewBox="0 0 24 24" aria-label="Property"><use href="../assets/icons.svg#icon-1024"></use></svg><span>gl<wbr/>Binding</span></a><a href="#codec" class=""><svg class="tsd-kind-icon" viewBox="0 0 24 24" aria-label="Property"><use href="../assets/icons.svg#icon-1024"></use></svg><span>codec</span></a><a href="#deviceframerate" class=""><svg class="tsd-kind-icon" viewBox="0 0 24 24" aria-label="Property"><use href="../assets/icons.svg#icon-1024"></use></svg><span>device<wbr/>Frame<wbr/>Rate</span></a><a href="#maxstreamingbitratekbps" class=""><svg class="tsd-kind-icon" viewBox="0 0 24 24" aria-label="Property"><use href="../assets/icons.svg#icon-1024"></use></svg><span>max<wbr/>Streaming<wbr/>Bitrate<wbr/>Kbps</span></a><a href="#telemetry" class=""><svg class="tsd-kind-icon" viewBox="0 0 24 24" aria-label="Property"><use href="../assets/icons.svg#icon-1024"></use></svg><span>telemetry</span></a><a href="#enableposesmoothing" class=""><svg class="tsd-kind-icon" viewBox="0 0 24 24" aria-label="Property"><use href="../assets/icons.svg#icon-1024"></use></svg><span>enable<wbr/>Pose<wbr/>Smoothing</span></a><a href="#posepredictionfactor" class=""><svg class="tsd-kind-icon" viewBox="0 0 24 24" aria-label="Property"><use href="../assets/icons.svg#icon-1024"></use></svg><span>pose<wbr/>Prediction<wbr/>Factor</span></a></div></details></div></details></div><div class="site-menu"><nav class="tsd-navigation"><a href="../modules.html">CloudXR.js SDK Documentation - v6.0.0-beta</a><ul class="tsd-small-nested-navigation" id="tsd-nav-container"><li>Loading...</li></ul></nav></div></div></div><footer><p class="tsd-generator">Generated using <a href="https://typedoc.org/" target="_blank">TypeDoc</a></p></footer><div class="overlay"></div></body></html>
|