The Oculus PC app’s latest test channel update lets you set the bandwidth used by Oculus Link.
On an RTX 2070 with a USB 3 connection and Quest 2, the result was essentially indistinguishable from a “real” PC headset, at least over 15 minutes of testing. We should note that Link’s USB connection is still limited to a 72 Hz frame rate for now, but when using the new feature at the maximum allowable bitrate, compression artifacts seemed to become negligible.
Oculus Link is a feature of Oculus Quest headsets. It lets them act as a PC VR headset via a USB cable. USB has significantly less bandwidth than DisplayPort, so Link sends frames to the headset using a compressed video stream.
Bitrate & How To Boost It
Compression reduces the quality of an image and can introduce noticeable artifacts. The degree to which this happens depends on the bitrate- the amount of data sent each second (megabits per second, Mbps).
Until now the bitrate was set by Facebook. Back in May, consulting CTO John Carmack revealed it to be “about 150 Mbps”. There’s no indication that changed with Quest 2’s launch.
Now you can set bitrate yourself using the Oculus Debug Tool (ODT). This can be found in the oculus-diagnostics subfolder of the Support folder of your Oculus software directory.
By default, this should be C:Program FilesOculusSupportoculus-diagnostics.
As with Encode Resolution, 0 means the default will be used- though Facebook doesn’t tell you what the default is.
Link works on both USB 2.0 and USB 3.0. With an RTX 2070, we found USB 2 started stuttering beyond 150 Mbps.
On USB 3, using the official Oculus Link Cable, we were able to set bitrate to the maximum allowed 500 Mbps. Starting at around 350 Mbps, it became essentially impossible to even notice I was looking at a compressed image. If you test this out, please let us know in the comments what compression artifacts you see after boosting the bitrate setting. I found that in Google Earth at the highest settings, the stars appeared to be distinct points whereas the compression was pretty apparent before.
We don’t have video showing this in action because it is difficult or impossible to capture accurately due to generation loss incurred in re-processing. So you’ll need to try this for yourself, in VR, to get a true impression.
Increased Encode Resolution & Other Settings
The ability to set bitrate means there are now 3 settings that contribute to the visual quality of Oculus Link: render resolution, encode resolution, and bitrate. Let’s quickly clarify the difference:
|Link Setting||What It Sets||Where You Set It||Typical Range|
|Render Resolution (Supersampling / Pixel Density)||Resolution your PC renders the VR game at, relative to default.||4 choices available in Oculus PC app.
(or set manually via Oculus Debug Tool)
|0.5 – 2.0
(above 1.6 not recommended)
|Encode Resolution||Resolution of the compressed video stream sent to the headset.||Oculus Debug Tool||1000 – 4000|
|Bitrate||Amount of visual information sent to the headset per second (the bandwidth)||Oculus Debug Tool||100 – 500|
However, there seems to be a bug in this release preventing custom encode resolutions. The OVRMetrics debug tool indicates the delivered resolution simply defaults back to 2064. Interestingly, setting it to 0 (default) results in a new higher default of 2352.
Oculus PC software v23 is currently available on the Public Test Channel. To opt in, navigate to the Beta tab of the Oculus PC app’s settings. You’ll see it start to download in the Library tab.