This project is based around a simple Arduino circuit, a VGA Loop (switcher), and a computer mouse module. The mouse module is plugged into the presentation computer, and is used to progress a slide on a Windows PowerPoint or Apple Keynote presentation. When the button is pressed a timer in the Arduino is started, and the slide changes from a Black slide to a Green slide. The analog voltage of the Green VGA pin is monitored. When the voltage on this pin changes, the timer is stopped, and the resulting time measurement is displayed on the mini OLED screen.
Below is a screenshot of the schematic:
Source code and compiled binaries of the Arduino sketch are available from the 'Files' section of this project, or on GitHub: https://github.com/nathandaniels/Video-Latency-Tester
It should be interesting to see how background tasks on a computer affect the latency of a slide change. One might expect that if the CPU is running computational heavy tasks, the time it takes to change the video signal is increased?