Forum Preview Post
We would like users to test out builds of Desktop and HTPC which use Qt 6 on Mac/Linux and Qt 5 on Windows:
Edit: Builds removed as this change is rolled out into release versions of the apps.
Those of you who have been monitoring the forums know that Qt 6 is necessary to make builds that run on M1/2 processors without emulation. While the above builds are not native for M1/2, they are the next step towards ones that are. We’ve done some internal testing but we would like to expand the testing of these versions to the community to see if there are issues we didn’t catch.
Known Issues
In Plex for Mac/Linux, downloads are inaccessible. We already have this fixed internally but it has to wait on some pieces before we can put this fix in a build for you.
Why not Qt 6.4?
We originally talked about updating to Qt 6.4 but whenever HTPC is used, the UI couldn’t render transparency. This means that video playback is not visible because the UI remains. This issue is oddly not present in the non-HTPC version of the app.
This issue is present in every version of Qt from 6.3 on to even the 6.5 beta.
Why is Windows still on Qt 5?
This one requires some explanation. First, Chromium uses OpenGL across each platform for its GPU accelerated drawing. However, those who have messed with OpenGL know that its support on Windows isn’t the greatest and is also not consistent across different GPU drivers. To work around this, Google created the ANGLE library to translate OpenGL ES to Direct3D.
Qt 5 used ANGLE for the same reasons as Chromium since all of Qt 5’s drawing was OpenGL based. Qt 6 changed that by creating a hardware accelerated drawing abstraction to support OpenGL, Metal, Direct3D, and Vulkan (and possibly some others I’m forgetting). Along with this change, ANGLE support was removed from Qt 6.
If the QtWebEngine (Chromium) is to be used in the app, it requires a function call that performs initialization early in the process. One of the steps in this function is to switch the rendering to be OpenGL-only. This means on Windows this is using the native OpenGL (WGL) which suffers from some of the aforementioned issues. These present in parts of the UI flashing to white, animation frames seemingly displayed out of order, persistent white boxes, and other artifacts in the UI (video was unaffected). These artifacts appear to be more present when using an Intel GPU rather than NVIDIA or AMD but still present to some degree in all 3.
We tried many variations of the app including down to only creating the UI (no video playback capability) and the bare minimum to display the Web interface and the issue persists. It also persists to varying degrees in every single version of Qt 6 that we could test.
So, we elected to go through the trouble to make our code capable of working in both Qt 5 and Qt 6 and so we could use Qt 6 on Mac/Linux but remain on Qt 5 on Windows.

