Plan to Upgrade OBS Studio to Qt 6 #6481
Replies: 4 comments 1 reply
-
FWIW, last Steam Hardware Survey recorded the following figures for pre-Win 10 and 32-bit Windows users:
See: https://store.steampowered.com/hwsurvey/ for Global stats (country-specific ones are only available to Partners afaik). |
Beta Was this translation helpful? Give feedback.
-
With #6877 merged, the OBS Studio CI builds for Windows and macOS are now using Qt 6. Similarly, the now released OBS Studio 28.0 Beta 1 has also shipped with Qt 6. This means that the builds available via our GitHub Actions CI and the OBS Studio 28 beta releases will no longer work with plugins that link against Qt 5. Those plugins will have to update to Qt 6 to continue working with these builds and the upcoming OBS Studio 28 release. As before, if you need any help with this, please feel free to reach out to me here, in the OBS Discord server, or on Discord directly (RytoEX#5545). Here are some pull requests that address some Qt deprecations that may be helpful for updating your plugins to be compatible with Qt 5 and Qt 6:
The obs-plugintemplate repo is also a good resource. |
Beta Was this translation helpful? Give feedback.
-
I am just commenting here to stop the incorrect statements that I see going about on many projects. QT6 is NOT incompatible with bionic, not in source. QT offers binary packages for x86_64 built with a dependency on GLIBC 2.28 (so they are probably using debian buster to build now) and that can not be run on bionic. |
Beta Was this translation helpful? Give feedback.
-
Summary
As the title says, we're planning to move from Qt 5 to Qt 6 for OBS Studio 28. Over the past year, we've made changes to make the OBS codebase compatible with both Qt 5 and Qt 6, and we've made build system changes to more easily allow us to build against either Qt 5 or Qt 6. With Qt 6 now up to Qt 6.3, and Qt 6 being readily available on Flatpak, Debian, and now Ubuntu 22.04 we feel the time is right to make the upgrade.
What Version of Qt?
We plan to use the following Qt versions per platform:
We will still ship OBS Studio 28 via PPA for Ubuntu 20.04 built against Qt 5.12.x. We will be dropping support for Ubuntu 18.04.
When Will This Happen?
We're planning to enter the beta cycle of OBS Studio 28 in early-mid June. We're planning to have OBS Studio 28 fully released around the end of August.
Why Upgrade?
We currently backport a number of patches into Qt 5.15 that we would not have to maintain if we move to Qt 6. Qt 6 also provides better support for HiDPI and fractional scaling, as well as fixes for a number of QTBUGs that we are tracking and additional improvements.
Plugins
Plugins that link directly against Qt will have to be compiled against Qt 6 to be compatible with OBS Studio 28. This means that if a plugin author whose plugin links directly against Qt wishes to support both OBS Studio 28 and older versions of OBS Studio, they will have to make separate releases for OBS Studio 28+ and versions older than OBS Studio 28, linked against Qt 6 and Qt 5 respectively.
Plugin developers who wish to continue to support Ubuntu 20.04 natively will have to make their plugin source code compatible with Qt 5 at minimum.
If you need any help with this, please feel free to reach out to me here, in the OBS Discord server, or on Discord directly (RytoEX#5545).
32-bit Support
Qt 6 does not support 32-bit builds. As such, we will no longer provide 32-bit builds of OBS as of OBS Studio 28. If you rely on tools that currently require 32-bit OBS, you may wish to contact the providers of those tools to see if they are able to provide 64-bit versions.
Please note that 64-bit builds of OBS are able to capture 32-bit games, and 32-bit applications are able to use the OBS Virtual Camera from a 64-bit OBS.
Platform Support
Qt 6 no longer supports the following platforms:
As such, we cannot guarantee that OBS Studio 28 and newer will run on these platforms.
Furthermore, Qt 6.3 only fully supports the following Windows and macOS versions:
We cannot guarantee that OBS will run well or at all on Windows or macOS versions older than these.
Beta Was this translation helpful? Give feedback.
All reactions