GNOME developer Benjamin Berg announced today that he has been working on a GNOME Screencaster app for the GNOME desktop environment to allow users to screencast over Wi‑Fi.
While the GNOME desktop environment already offers a few ways for users to stream to Chromecast, AirPlay, or Miracast devices, such as the VLC Media Player, Miracast support isn’t at its best right now due to the use of the H.264 or H.265 codecs, so Benjamin Berg has been trying to fix this problem with a new app.
Meet GNOME Screencaster, a graphical tool that will allow you to stream your display to a Miracast device through a Wi-Fi connection. The app uses the NetworkManager utility and requires a Direct Wi‑Fi connection to be established first, and an RTSP (Real Time Streaming Protocol) server.
“One major piece that was missing for Miracast devices is integrated support for Wi‑Fi Direct (a.k.a. Wi‑Fi P2P) in our platform,” said Benjamin Berg. “I worked on adding the required support and thanks to Thomas Haller this has now been merged into NetworkManager 1.16. […] With all this in place, it is possible to implement proper support for screen-casting using Miracast in GNOME.”
Using GStreamer, the app will be able to fetch the screen content from Mutter, which is then encoded, which is done using the OpenH264 and Frauenhofer FDK ACC codecs, and sent to the Miracast device. GNOME Screencaster will also support Wayland for streaming to Miracast devices, using the Mutter Screencasting API.
Here’s how to test the GNOME Screencaster app on your Linux box
It will be a while before the first release of the GNOME Screencaster app hits the streets, but you can test it right now on your Linux box if you want to see what the fuss is all about. There are two ways to test it, and the easy one is to install it from developer’s copr repository if you’re using the latest Fedora Linux operating system.
If you don’t use Fedora, you’ll have to grab the code from GitHub and compile the application on your favorite GNU/Linux distribution. Please note that you’ll also need a recent development version of the NetworkManager utility, either the OpenH264 or x264 codecs, either avenc_aac, FAAC, or fdkaacenc for audio support, and, of course, a Miracast compatible device.