github tB0nE/nightfall v0.8.0

pre-release3 hours ago

Nightfall Meteor, PyroWave, HDR and USB Link πŸŒ™β˜„οΈ

This is a pre-release for testing. The Releases page still opens on v0.7.11 until this one has had some real-world use. Please report anything odd in Issues or Discussions.

This is the biggest Nightfall release so far. The headline is Nightfall Meteor, a small companion app for your gaming PC that moves AI 3D onto the PC's GPU and lets you use the Quest's microphone on the PC. Alongside it come the PyroWave codec, HDR streaming, streaming over a USB-C cable, new widescreen depth models and a lot of fixes.

Nightfall Meteor β˜„οΈ

Meteor runs on the PC next to Sunshine (or Apollo, Vibepollo or Polaris). You don't have to set anything up on the Quest: when Nightfall connects to a PC running Meteor, it finds it automatically and streams through it. If Meteor isn't running, Nightfall connects straight to Sunshine as before.

Host depth. Meteor decodes the stream on the PC's NVIDIA GPU, runs the depth model there and sends the depth map for each frame to the headset, matched to the frame you're seeing. The Quest's GPU is then free for decoding and rendering, and the PC can run bigger models:

  • EdgePad 512 runs by default on Vulkan, about 5–6 ms per frame on an RTX 3090.
  • Video Depth Anything Small is an optional download from Meteor's tray menu. It's a temporal model, so depth stays steadier from frame to frame. It needs NVIDIA TensorRT, which Meteor downloads from NVIDIA's own server (about 0.5–0.7 GB, under NVIDIA's licence), then prepares for your GPU once (a few minutes). EdgePad keeps working while it does.
  • In the headset, pick Meteor in the AI 3D model list. Stats now show the host depth rate, Meteor's frame-to-map time and how often the map matches the frame on screen.

Microphone. Turn on Settings β†’ Microphone, or use the new microphone button on the grab bar under the screen, and the Quest's microphone appears on the PC as an input device you can use in Discord, games and so on. A blue dot next to the button shows when audio is reaching the PC. Audio is sent as Opus.

Private by default. The depth maps and the microphone are encrypted between the headset and Meteor. Your Quest remembers each PC's Meteor the first time it connects and won't use a different one that later answers for that PC. If you reinstall Meteor, use Settings β†’ Forget Meteor Keys.

Downloads:

  • Linux: Nightfall-Meteor-0.1.0-x86_64.AppImage. Make it executable and run it: it adds a tray icon and starts with your computer. Needs an NVIDIA GPU and driver, and glibc 2.35 or newer (Ubuntu 22.04+, Fedora, Bazzite…).
  • Windows: Nightfall-Meteor-0.1.0-Setup-x64.exe, a per-user installer for Windows 10/11 with an NVIDIA GPU. It isn't signed yet, so Windows SmartScreen will warn you ("More info" β†’ "Run anyway"). Install the Microsoft Visual C++ Redistributable (x64) first if you don't already have it, and allow Meteor on private networks if Windows asks. For the microphone, install VB-CABLE.

Meteor is new, so expect some rough edges. It has been tested on Bazzite (KDE) and Windows with an RTX 3090, not yet on other GPUs, on GNOME or on a clean Windows install.

New widescreen AI 3D models

The EdgePad models are now trained for widescreen video. The model research fine-tuned ZipDepth for 16:9 content and for steadier depth between frames:

  • EdgePad-512 (512x288) is the new default on Quest 3/3S, with about 9% less flicker than stock ZipDepth at the same size.
  • EdgePad-320 (320x180) is the new default on Quest 2. It flickers about 40% less than a stock 224 model at a similar cost.

Both models, and all the earlier ones, are now published under the MIT licence with notes on how they were made: EdgePad models release.

PyroWave codec

Nightfall now supports PyroWave, a very low-latency codec built for high bitrates on a fast local network. It needs a host that supports it: Nonary's Vibepollo or Vibeshine, or Zevro's Sunshine fork. Pick it under Stream β†’ Codec; against a host without it, Nightfall uses H.264/HEVC/AV1 as before. PyroWave decodes straight on the Quest's GPU. It's best for fast 2D streaming: it uses enough GPU that AI 3D's Auto mode switches to the CPU backend while it's active.

Honestly I would not recommend PyroWave on the Quest, it's expensive compared to AV1/HEVC when the app is already trying to get all the GPU it can, but I think there are still many use cases, so atleast there is the option! And possibly there will be performance optimizations in future.

HDR

I have troubleshooted the HDR which I think previously was not working correctly. Turn on HDR on the Stream tab and Nightfall asks the host for an HDR10 stream when the host display is in HDR, and tone-maps it for the headset, instead of the host squashing its HDR desktop down to SDR.

Stream over a USB-C cable

USB Link (Stream tab) streams over the Quest's USB-C cable instead of Wi-Fi, which helps with high-bitrate codecs like PyroWave. It needs Horizon OS 2.5 or newer and address_family = both in the host's Sunshine config. Unplugging falls back to Wi-Fi mid-stream, and Meteor works over the cable too.

Easier to use

  • Settings page: the gear in the top bar opens a scrolling Settings page with diagnostics, language, connection, microphone and licences.
  • 21 languages: the menus are now translated, and you can pick a language on the welcome screen.
  • Grab bar: the shortcuts under the screen now have microphone and AI 3D on/off buttons, three on each side.
  • Volume boost: Stream β†’ Volume boosts quiet stream audio by up to +12 dB, softly limiting loud peaks.
  • Licences: Settings β†’ Licences credits the open-source software and models Nightfall is built on.

Fixes

  • Each gamepad now gets its own controller on the host, and Android axis mapping is corrected.
  • Hosts that answer mDNS in the additional section are found now, and re-pairing replaces the old host entry instead of duplicating it.
  • Picking a PC you've already paired (for example over USB after pairing on Wi-Fi) no longer flashes a pairing PIN.
  • If the host's app list has changed since you opened the welcome screen (say Sunshine restarted), launching an app looks it up again instead of failing with "Cannot find requested application".
  • AV1 decoding is wired up properly.
  • Advanced Settings gets the whole menu.
  • Builds now carry their version number, and fresh Linux builds compile again.

Downloads

File For
Nightfall-Android-v0.8.0-arm64-v8a.apk Quest 3/3S and Quest 2
Nightfall-Linux-v0.8.0-x86_64.AppImage The Linux desktop client
Nightfall-Meteor-0.1.0-x86_64.AppImage (+ .zsync) Meteor for Linux
Nightfall-Meteor-0.1.0-Setup-x64.exe Meteor for Windows
SHA256SUMS.txt Checksums for the files above

Don't miss a new nightfall release

NewReleases is sending notifications on new releases.