Smoother 4K120 streaming
- Enabled bounded decode/presentation overlap: the next picture can decode while
the previous native flip completes, with at most one outstanding submission.
Source surfaces and shared GPU memory remain protected until completion. - Improved stale-frame handling, short-window FPS metrics, and fractional-refresh
negotiation (for example, a 120 FPS request on 119.88 Hz output). - Added a small local post-session performance summary and regression checks for
presentation ownership, timeout handling, and incomplete report writes. No
remote telemetry or streamed content is collected by this summary.
4K120 before / after
One paired Hollow Knight test on PS5 firmware 6.02, using wired Ethernet,
3840×2160 at a requested 120 FPS, HEVC SDR, 80 Mbps, stereo, and 119.88 Hz output:
| Measurement | Before: overlap off | After: overlap on |
|---|---|---|
| Decoded / presented frames | 16,769 / 12,686 | 14,058 / 14,058 |
| Stale presentation skips | 4,083 (24.3%) | 0 (0%) |
| Mean enqueue-to-decoder-callback wait | 5.468 ms | 0.016 ms |
| Sampled pending video queue peak | 5 frames | 0 frames |
| Mean decoder-call time | 6.869 ms | 6.934 ms |
| p99 CPU-observed completion interval | 75.499 ms | 31.499 ms |
The tester reported lots of stuttering before and much smoother playback
after. Neither run reported network frame gaps or audio errors. The improvement
is in queueing and presentation, not faster hardware decoding.
These are whole-session measurements from one comparison, including startup and
menus, with different session lengths. The baseline was instrumented with overlap
disabled, not the exact public 01.000.055 binary. This is not a guarantee of
locked 120 FPS, lower input-to-photon latency, or a fix for every high-bitrate/Wi-Fi
setup. CPU-observed frame age increased from 12.560 to 16.854 ms; overlap changes
when completion is observed, and the baseline excludes skipped pictures from
that metric. It cannot establish an end-to-end latency change.
See the Round 2 measurements and methodology.
Further performance work is deferred to the next version: FEC SIMD, Opus SIMD,
audio catch-up, and shorter flip polling are not enabled in this release.
Installation / update
Title ID remains PPSA99002; existing pairing and preferences are preserved.
Choose PPSA99002.ffpfsc or extract PPSA99002.zip and copy its PPSA99002/
folder to /data/homebrew. Do not keep both formats installed for the same
title. Close the app before replacing its files, then restart ShadowMountPlus
or the console. SHA256SUMS covers both downloads.