Priority: P1: Critical
Affects Version/s: 5.15.2
Environment:Windows 10, Visual Studio Community 2019, Qt 5.15.2
Commits:b7e08599cc784777d06d34e49e90c2d408ab629d (qt/qtbase/dev) 26e34fcb52b44de6f8d6c8ca8910f9586e8eea81 (qt/qtbase/6.1) 87be26462a7dd1ceadc90309d6e2b2b75fee3efe (qt/tqtc-qtbase/tqtc/lts-5.15)
Sprint:Bug Fixing Candidates
Our company relies on Qt to develop cross platform audio software for 6 years now. We own a commercial license.
One major use case is to embbed one or more Qt application(s) into host plugin window: VST, AU and AAX plugins to be used in major Digital Audio Workstations software (DAW) such as Ableton Live.
I've been using Qt 5.12.5 for the last 2 years. Two months ago I've started the port to Qt 5.15.2. Apparently everything was running smoothly until we have found a MAJOR problem that so far can only reproduced when hosting one of our plugins compiled with 5.15.2 into Ableton Live, which is our reference software for testing and develop and probably the most popular and used DAW in the world.
When we drag an instance of our plugin to the DAW the first time, everything works perfectly. As soon as we start dragging a second instance, or anything else in Ableton Live (for example, an audio effect), it will dead lock Qt app rendering and interaction.
I've made an example that reproduces the problem. It is self contained but it requires Ableton Live to reproduce it. Ableton Live trial/demo can be downloaded from their website and appart from having to download and install, the installation and usage is pretty straight forward:
How to run and reproduce the problem:
- Install Ableton Live trial
- Compile Qt 5.15.2 statically for windows
- Open the project and choose the 5.15.2 static kit
- Create C:\plugins folder
- Build. The output is a single file VDL.dll and it will be placed on c:\plugins
- Set Ableton Live.exe as custom executable (C:\ProgramData\Ableton\Live 10 Suite\Program)
- Run from Qt Creator. Ableton Live will be launched.
- Under Ableton Live preferences (CTRL+,) choose the plugins tab, then enable custom VST2 plug-in custom folder and set it to c:\plugins and choose RESCAN (on top). Close preferences.
- On the left side panel, choose plugins, and drag VDL to a midi track on the right
- It should open a window that changes the color every 250ms
- Now, go back to the left side panel and start dragging another VDL
- As soon as the drag beggins, the UI of the first instance stops changing color and becomes unresponsive.
This doesn't happen with Qt 5.12.5 and it is a MAJOR show stopper for us. Please help!