github derflacco/moonlight-android Artemide_Experimental_Async_0.2

Artemide Experimental Async_0.2

Changelog

UI:

  • Added a new “Artemide Tweaks” settings section to centralize Artemide-specific options.
  • StreamSettings cleanup: context-aware show/hide for VSync/FastVsync and advanced controls.
  • FSR upscale is greyed out when FastGL is selected.
  • Stopped forcing FastGL from prefs (now user-controlled).
  • Renamed UI label “async prefer lower delays” to “LFR”.

Async Decode:

  • Extracted AsyncCodecAdapter and improved async setup robustness.
  • Added an async no-render release queue, serialized releaseOutputBuffer() calls, and introduced adaptive + time-bounded draining to avoid callback-thread release bursts.
  • Synced drop-policy with pacing; improved flush/recovery behavior and callback reattach safety.

Pacing / VSync:

  • NanoPacer tuning for more stable 120 Hz fast-vsync behavior.
  • Refresh-rate handling switched to float.
  • Frame-rate hint is now applied also to the decoder output surface.
  • Bumped Choreographer priority to urgent display and aligned GL upscaler Choreographer with renderer pacing.

FSR (EASU/RCAS):

  • Fixed GL upscaler VSync switching + RCAS_OES probing.
  • Fixed eglMakeCurrent failure (err=0x3002).
  • Guarded against duplicate renderer thread.
  • Refined EASU perf shader and added a Mali-optimized RCAS perf shader.

Perf / Telemetry:

  • Extracted PerfOverlayComposer + DecodeLatencyTracker, improved stat reset and teardown hardening.
  • Replaced the latency tracker with a lock-free bounded ring buffer to remove per-frame allocations.

CPU / MTK:

  • CpuWarmUp/CpuAffinity: lazy init, minimal API, tier-aware/count-aware pinning.
  • Reduced MTK buffering and tightened end-to-end timing.
  • Updated ProGuard rules.

Misc:

  • Snappy Input shutdown streamlined; comments/error handling refined.
  • Removed additional QCOM “extra keys” in mchelper.
  • Many additional fixes and refinements: see the commit history for details.

Full Changelog: Artemide_Experimenta_Async_0.1...Artemide_Experimental_Async_0.2

Having issues?

If you experience problems with this release, please try one of the following versions:
0.1_Async
6.5.1
6.2

As always,

⚠️ Heads up: this is experimental. I’ve only tested on my hardware, so things may break on yours. Use at your own risk.

Found a bug? Tell me and I’ll try to fix it.
Enjoy!

Don't miss a new moonlight-android release

NewReleases is sending notifications on new releases.