Command-Line Options¶
The NVIDIA CloudXR SDK sample applications and the CloudXR Server can use command-line options (also called launch options) to control certain runtime features. The available options are different for client and server and might have some options for specific clients.
For the CloudXR Server, create a text file called
CloudXRServerOptions.txt
on the server in theC:\Users\*user-name*\AppData\Local\NVIDIA\CloudXR\
folder.You can place the launch options in this folder. on one line, like a console command, or you can break the options into individual lines for legibility.
For Windows client applications, complete one of the following tasks:
Start the client app from a console with launch options appended on the command line or use a shortcut with pre-specified options,
If you are launching from Visual Studio, you can set options in the Command Arguments box in the debugging configuration.
For Android clients, you can launch in one of the following ways:
To run direct from Android Studio, click Run > Edit Configurations, for the active configuration, set the Launch Flags to something like the following:
--es args "-s 192.168.1.1 -f 50"
In the double quotes, list the launch options that you want to pass, as if it was a command line.
To start the client directly on the device from a launch tile, create a file called
CloudXRLaunchOptions.txt
.You can place the launch options in this file on one line like a console command, or you can break the options into individual lines for legibility. Place the file in the root
sdcard
directory of the device in Windows Explorer or by executing an ADB command:adb.exe push CloudXRLaunchOptions.txt /sdcard/
For an iOS client, there is currently no built-in support in the sample app to pass launch options via a file or by reading from command-line.
For many of the VR client sample applications, there is no connection user interface, so you need to use the -server <IP address>
option to specify the server to which you want to connect.
The following tables provide a list of all command line options that are available for the client and server and extra options that were added for the Android ARCore sample. The options include the long format and abbreviated command strings for each option, prefixed with a dash (-) for command clarity, a notation when there is a numeric (N) or string (S) argument that is required, plus a brief description of each option and range of argument values.
Server Command-Line Options¶
Long Format Name |
Abbreviation |
Description |
---|---|---|
-log-verbose |
-v |
Enable more verbose logging. |
-log-quiet |
-q |
Disable logging to file, use only debug output. |
-trace-stream-events |
-t |
Enable tracing of streaming events as ‘ETL’ log. May have high runtime impact.
|
-dump-images |
-d |
Dump streamed images to log folder periodically (currently every 300 frames). |
-dump-audio |
-da |
Dump sent/received audio streams to CloudXR log folder. |
-log-privacy-disable |
-p |
Disable privacy filtering in logging (allows full IP visibility). |
-trace-local-events |
-tle |
Enable tracing of local events to xml file in log folder (see Local Event Traces (CloudXR Visual Profiler). |
-embed-server-info |
-esi |
Embed server info in frames during streaming. |
-log-max-days N |
-lmd N |
Maximum number of days until which logs persist.
|
-log-max-kb N |
-lmk N |
Maximum log size in kilobytes.
|
-fast-scale |
-fs |
Use simple, lower-quality downscale filtering for frame foveation |
-disable-send-audio |
-dsa |
Disable sending server audio to the client. Enabled by default. |
-enable-receive-audio |
-ra |
Enable receiving audio from client (i.e., microphone capture). Disabled by default. |
Client Command-Line Options¶
Long Format Name |
Abbreviation |
Description |
---|---|---|
-server IP |
-s IP |
IP address of the server to which the client will connect. |
-log-verbose |
-v |
Enable more verbose logging. |
-log-quiet |
-q |
Disable logging to file, use only debug output. |
-trace-stream-events |
-t |
Enable tracing of streaming events as ‘ETL’ log. May have high runtime impact.
|
-trace-local-events |
-tle |
Enable tracing of local events to xml file in log folder (see Local Event Traces (CloudXR Visual Profiler). |
-trace-qos-stats |
-tqs |
Enable tracing of QoS statistics. Has high runtime impact. |
-dump-images |
-d |
Dump streamed images to log folder periodically (currently every 300 frames). |
-capture-client-bitstream |
-ccb |
Capture the client-received video bitstream to CloudXR log folder on client. |
-capture-server-bitstream |
-csb |
Capture the server-sent video bitstream to CloudXR log folder on server. |
-dump-audio |
-da |
Dump sent/received audio streams to CloudXR log folder. |
-embed-server-info |
-esi |
Embed server information in frames during streaming. |
-embed-client-info |
-eci |
|
-log-privacy-disable |
-p |
Disable privacy filtering in logging. |
-enable-ir-decoder |
-ird |
|
-fallback-decoder |
-fbd |
If available, try to use a fallback video decoder for the platform. |
-windowed |
-w |
Render to a standard window (instead of a fullscreen view for a headset). |
-no-button-remap |
-b |
Do not remap various controller buttons to SteamVR system menu and other functions. |
-max-res-factor N |
-m N |
Maximum stream resolution as factor of given device res (oversampling).
|
-latency-test |
-l |
Runs local latency testing, where screen is black when no input, changes to white with input. Helps to determine local presentation cost. |
-enable-alpha |
-a |
|
-enable-send-audio |
-sa |
Enable sending audio to the server (i.e., microphone capture). Disabled by default. |
-disable-receive-audio |
-dra |
Disable receiving audio from the server (i.e., play server audio on client). Enabled by default. |
-log-max-days N |
-lmd N |
Maximum number of days until which logs persist.
|
-log-max-kb N |
-lmk N |
Maximum log size in kilobytes.
|
-num-video-streams N |
-ns N |
In Generic streaming mode, this option specifies number of video streams opened from server to client and will depend upon a custom server application that sets up custom streams. Value range is 1-6. |
-receiver-mode N |
-r N |
Choose XR or Generic receiver mode, values may be 0 or 1, where 0 means XR mode (fixed 2-stream), and 1 is generic mode (separate option -ns specifies stream count). |
-graphics-type S |
-g S |
Choose graphics context type if need to override for some reason. Options are |
-user-data S |
-u S |
Send a user string to the server to exercise user data support. |
-foveation N |
-f N |
Enable foveated scaling at given percentage scale.
|
-network-interface-client |
-nic S |
Choose the client network interface used to connect to the server. Options are |
-network-topology |
-nt S |
Choose the network topology between the client and server. Options are |
-requested-refresh-rate |
-rrr N |
Run the CloudXR Oculus Quest 2 client at the requested refresh rate. For example to run at 90Hz use |
ARCore Client Command-Line Options¶
Long Format Name |
Abbreviation |
Description |
---|---|---|
-env-lighting N |
-el N |
Send client environment lighting data to server. Values are 0 or 1, 0 disables, 1 enables. Default is 1/enabled. |
-res-factor N |
-rf N |
Scales down the client resolution sent to server to help manage encode/decode and bandwidth costs for high-res devices. Value range is 0.5-1.0, with a default of 0.75. |