If you have a cheap laptop and you realize you can’t connect a second monitor to it, what do you do? Well, if you are [Pierre Couy], you grab a Raspberry Pi and put together a virtual screen solution.
Like all good projects, this one started with some goals and requirements:
- Low latency
- Redable text
- At least 10 frames per second
- Fast catch up if the remote screen falls behind
- Low-bitrate encoding; no hardware acceleration
- A DHCP server on the Pi to manage the network
- Power control for the attached monitor
Since Linux has such flexibility, it was possible to stitch the system together using existing components. The versatile ffmpeg handled the streaming. There was, however, a fair amount of troubleshooting necessary to track down some issues using Wireshark.
If you want to try something like this yourself, the files are on GitHub. Honestly, though, the best part of this project is seeing how the tools interact and the troubleshooting steps. For most laptops, this isn’t necessary and that’s obviously the best solution.