09a5957c6d
One stat model everywhere (design/stats-unification.md): four measurement points (capture/received/decoded/displayed), three stages that tile the interval exactly, and a HUD that shows the addition explicitly — end-to-end 14.2 ms p50 · 19.8 p95 · capture→on-glass = host+network 9.8 + decode 2.1 + display 2.3 replacing each client's ad-hoc mix of overlapping absolutes (the Apple HUD's three arrow lines that looked sequential but weren't), mean-vs-median decode times (Windows/Linux), missing same-host-clock flags (Windows/Linux), and three different names for the same capture→received measurement (probe's "reassembled", Apple/Android's "client", Windows/Linux's post-decode "lat"). Per client: Apple threads receivedNs through the VT decode via the frame refcon bit pattern so the decode stage exists at all (stage-1 fallback honestly degrades to a capture→received headline); Windows carries FrameTimes through the existing frame channel to the render thread and adds e2e p50/p95 post-Present; Linux stamps received at AU pop and rides decoded_ns on DecodedFrame to the paintable-set site; Android pairs receipt stamps with MediaCodec output buffers via the codec's pts round-trip (JNI stats array 14→16 doubles, indexes 0-13 unchanged). fps now uniformly counts received AUs; lost/(received+lost) per window, hidden at zero. docs-site gains "Understanding the Stats Overlay": what each line means, why the equation only approximately sums (percentiles), and a line-by-line Moonlight/Sunshine matrix — including that Moonlight has no end-to-end number and its "network latency" is an ENet control RTT, so punktfunk's headline must not be compared against any single Moonlight line. Verified here: linux client + probe + core check/clippy/fmt green, android native cargo-ndk arm64 check green. Pending: Windows CI + on-glass, swift test on the mac, on-device Android. Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
39 lines
694 B
JSON
39 lines
694 B
JSON
{
|
|
"title": "Documentation",
|
|
"pages": [
|
|
"index",
|
|
"how-it-works",
|
|
"security",
|
|
"quickstart",
|
|
"install",
|
|
"---Host Setup---",
|
|
"requirements",
|
|
"ubuntu-gnome",
|
|
"ubuntu-kde",
|
|
"fedora-kde",
|
|
"bazzite",
|
|
"steamos-host",
|
|
"windows-host",
|
|
"running-as-a-service",
|
|
"---Connecting---",
|
|
"clients",
|
|
"install-client",
|
|
"steam-deck",
|
|
"moonlight",
|
|
"pairing",
|
|
"---Configuration---",
|
|
"configuration",
|
|
"host-cli",
|
|
"---Troubleshooting---",
|
|
"troubleshooting",
|
|
"stats",
|
|
"forgot-password",
|
|
"---Project---",
|
|
"roadmap",
|
|
"status",
|
|
"channels",
|
|
"---Reference---",
|
|
"[API Reference](/api)"
|
|
]
|
|
}
|