I use an Arduino Leonardo with a midi shield to receive midi and depending on what it receives/I send uses the keyboard.h library to send key strings to my PC as a usb keyboard input. You can even use it to input mouse controls.
I use a simple PowerPoint presentation with videos and/or graphics on a black background. To select a slide in PP you just need to press the slide number and enter.
I use it by sending a reading a note and velocity and assigning each velocity number to an ascii character. I use note 0. So if I send [midi: N0.49@6, N0.10@6] to my board which I have assigned as device no 6 then it will send an ascii number 1 followed by a line feed to the PC. Were you to send a B then the screen would blackout or send a W to whiteout the screen.
Alternately I could on the Arduino program a PC to output a full complex string of commands to both keyboard and mouse with all of its needed timings triggered by a simple midi PC on ST3.
Bit complex if you don’t use Arduino but worth learning as it is so adaptable and very inexpensive.
To give an example I use it when I sing a song by Matt Monro called “on days like these” from the Italian Job while I show a video of a Lamborghini driving through the Alps in a similar way to the opening credit of the film all triggered from a couple of midi commands from my ST3