Parsec

by Jamie Dickson

Tl;dr — We implemented a change to fix a mouse cursor bug in the SDL2 library and open sourced it on Github.

Parsec uses the SDL2 library to handle most inputs and interactions between the remote interface and gaming PC. We ran into an issue with the library, however, as we were developing our Raspberry Pi client. The SDL2 mouse functions were a good start, but using the cursor as dynamically as Parsec does, a few cracks started to appear in the mouse functionality. Switching between relative and absolute mode caused the cursor to jump around. The “hot” point in the cursor was incorrect, eg the I-Beam was selecting with the upper left corner.

As part of our mission, we want to contribute to the open source community whenever we can. In this case, we had to implement a couple fixes to the SDL2 library. You can take a look at a few of the changes we made to SDL here. Beyond that, there was more subtle tweaking to HDMI frequencies and things of that nature to make Parsec what it is, but those were the big rocks on our way to getting the little $35 Pi to a place where you could play Witcher 3 on it.

Power your remote workplace. Try Parsec for Teams