What You See vs. What You Get
To guarantee the best possible gaming experience, every streaming provider maintains a rigorous program of measurement and improvement. But what happens to your improvements, when your measurements don’t match reality?
There’s a frequent and significant difference between the data a device receives – for example, frames arriving from a cloud gaming service – and what’s experienced by a user on the screen. This discrepancy – until it’s resolved – can lead to critical blind spots in performance management.
It’s necessary here to understand exactly what’s being measured. While this looks simple, it’s not common knowledge, so let’s take a closer look.
Above you can see the WebRTC media pipeline. Note the several steps between when the raw data is received, and when video and audio arrive at the display or speakers.
What Can Go Wrong
Frame rates captured from APIs at any point in the render pipeline, before the frames reach the actual screen display, are likely to:
• Produce inaccurate reports of the user experience, and
• Miss the performance impacts of later events that could drop frames such as a hanging UI thread caused by garbage collection or long decode times.
How about WebRTC telemetry…doesn’t that paint an accurate picture?
Well, yes and no.
Engineers at some of the major cloud gaming platforms rely on this excellent (free, open-source) system as their data transport framework. However, the WebRTC getStats API only provides you with data from two points relatively early in the pipeline:
Connecting Performance & Experience
So, how can you ensure trustworthy game telemetry?
If you’re measuring too far back in the render pipeline, anything can happen after that point to compromise the user experience. It’s about getting as close as possible to the screen experience.
GameBench captures data directly from the end of the render pipeline, showing how many frames are truly displayed to the user. We also capture input latency which we can cross-reference with the frametime data, to understand if higher latency was caused by the network or a local device rendering issue.
Performance IQ by GameBench is a hassle-free, one-minute read that keeps you abreast of precisely what you need to know. Every two weeks, right to your inbox.
The intelligence behind outstanding performance