github perseval-BLR/DLSS5-NeuralScreen v1.5.4
v1.5.4 - stability: 8 code-review fixes, remap fixes, auto-recovery

latest release: v1.5.5
5 hours ago

v1.5.4 - stability: 8 code-review fixes, remap fixes, auto-recovery.

What is in this release

  • Remap no longer auto-executes. The key you press to assign a hotkey
    used to fire the action right away (remapping Divide to Num2 opened the
    menu). The poller now re-baselines after a suspend/rebind.
  • Num4/Num6 are remappable. Processing resolution up/down were missing
    from the remapping page - all eight hotkeys are now listed, in all 12
    languages.
  • NVENC codec fallback. Recording tried AV1 first and failed on RTX 30
    (no AV1 NVENC encoder). The chain now falls back AV1 -> HEVC -> H.264,
    probed at open time; close() cannot deadlock on a stuck encoder; frame
    demand is gated to one frame per 30 fps slot.
  • Atomic config writes. A crash mid-save can no longer corrupt
    config.json (temp + fsync + atomic replace). The menu layout save now
    also persists the profile, the NR parameters and the monitor - they were
    lost on relaunch.
  • Monitor identity by DXGI DeviceName. The saved monitor is remembered
    by its device name, not by a positional index - after a cable unplug,
    display reorder or laptop dock the program still captures the same
    physical screen.
  • NGX result is not a boolean. 0x00000000 ("no frame this call") is no
    longer treated as a crash - it used to restart the worker three times
    and turn NR off (the laptop/iGPU pattern from issue #11). Only the
    0xBAD00000 family is a real error.
  • Fence hardening. UINT64_MAX (device removed) is no longer a false
    success, the completed value is re-checked after the event wait, and a
    failed queue Signal surfaces instead of hanging every wait.
  • Auto-recovery. A transient worker failure (no-frame, driver hiccup,
    TDR) now gets ONE automatic revive after a 30 s backoff instead of
    leaving NR off until you press Num1. A hard failure (0xBAD00001 - the
    GPU cannot run the pass at all) never auto-revives.
  • Audio format structs are byte-packed (the real ABI) and truncated
    extensible formats are rejected.
  • Gray readback uses the driver's row pitch (320 is not a multiple of
    256 - the packed pitch was undefined behaviour per D3D12).

Tests

43 tests, all green: new coverage for the remap fix, the codec fallback,
the atomic config, the monitor identity, the OUT statuses and the
recovery classifier.

Don't miss a new DLSS5-NeuralScreen release

NewReleases is sending notifications on new releases.