Stream games via Moonlight and fpv.wtf to your DJI FPV Goggles!
The DJI Moonlight project is made up of three parts:
Latency is good, in the 7-14ms range at 120Hz (w/ 5900X + 3080Ti via GeForce Experience).
See Sunshine documentation for more guidance.
Sunshine runs as a background service automatically and uses a locally-hosted web UI for settings.
Go to https://localhost:47990/ and set a username and password for future settings fanangling.
Before you can start streaming, you need to pair the GUI app with the host streaming software. This only needs to be done once.
dji-moonlight-gui.exe
.dji-moonlight-gui.exe
.There are two streaming modes to choose from: BULK and RNDIS. What does that mean?
RNDIS
This is the default mode. When the goggles are connected to your PC via USB, they appear as a plain old network interface. If you've ever used your phone as a hotspot over USB, then you've used this exact same mechanism before. Since it's just a network interface, all regular networking conventions apply and we can send data to the goggles like any other device.
The main downside is that it's slow! Due to reasons yet unknown, the maximum bitrate we're able to achieve is around 30Mbps before packet loss starts to creep in.
BULK
This mode is more experimental. Rather than using this indirect network route, we can instead send data directly to the goggles via the USB interface. With this, we can easily achieve a bitrate of 100Mbps (as long as your PC can keep up).
The only downside is: driver shenanigans!
dji-moonlight-gui.exe
.