New version 1.7.8

Version 1.7.8 is now available in the download section as well as on github.

This update introduces a new sensor service and a new PresentMon version with additional features

New Sensor service

Beginning the transition with version 1.7.7 beta, version 1.7.8 now uses LibreHardwaremonitor together with an integrated installation of PawnIO to eliminate the WinRing0 vulnerability that, while not really threatening, lead to many users missing sensor data because Windows Defender began flagging the file.

For most users, this change means that they have to reconfigure their overlay because most of the sensors changed from OpenHardwareMonitor. In return, you get some new sensors like RAM temperatures and various D3D sensors.

Also the options menu now allows you to set the primary graphics adapter in case you want to capture your iGPU or CX falsely uses your iGPU instead of your dGPU.

If you leave it on auto, CX should always use the dGPU when available and filter out any overlay entries for iGPUs. If that doesn't work, you can manually select your GPU.

 

 

PresentMon updates

PresentMon was updated to version 2.4, which now fully supports Frame Generation and Multi Frame Generation. However the new version doesn't allow you to analyse captures made with FG correctly when using the classic method of comparin"MsBetweenPresents" anymore. To analyse captures made with FG you have to switch to "MsBetweenDisplayChange", which you can do in the options menu. You get an additional graph showing the display change times and the statistical values on all views will use display change times. 

You can of course also use this with non-FG captures where it should mostly be the same, just make sure you alsways compare the same mode.

 

What is the difference between MsBetweenDisplayChange and MsBetweenPresents?

  • MsBetweenPresents measures the time between present calls from the application. This reflects how often the game submits frames.

  • MsBetweenDisplayChange measures the time between actual displayed frames. This includes any generated frames (e.g., from Frame Generation). Because Multi Frame Generation produces additional frames that are not directly presented by the game, only MsBetweenDisplayChange can show the effective frame rate with FG x2, x3, or x4 enabled

 

To anyone that is using a 2025 version of the 1.7.7 beta: PresentMon 2.4 has a memory leak that leads to ETW events being lost after having PresentMon running for a longer time(running doesn't only mean capturing but also just having a process detected). This leads to extremely high frame time spikes in the captures that aren't present ingame(the highest I've seen was 18,500ms) and thus completely unreliable performance metrics.

We've fixed this bug internally and made a pull request on their github, so 1.7.8 works like expected.

 

Other updates and fixes

Since it's been almost 3 years since we wrote about a new version on this page, it's not very practical to list everything that's changed here, all the changes can be seen on the github releases page. I just wanted to mention the two biggest changes that also affect people using a version as current as December 2025.

CapFrameX Frametime Analysis Software
Back to news list

Featured Blogposts

metrics explained
Explanation of different performance metrics
5/31/20

Frametimes, FPS, median, Percentiles, x%-low ?

Continue reading
post teaser thumbnail
how capframex calculates fps
The challenge of displaying performance metrics as FPS
6/27/20

Why does my analysis show fps values that are lower than what I've seen in the game?

Continue reading
post teaser thumbnail