Merging Qt and JUCE GUI

I am building a UI with QML. It will have an audio player where audio waves will be shown. I have learnt that JUCE works with Qt:

Will it wise to combine my existing QML’ GUI with JUCE Qt?

Do I have to totally shift to Qt and ditch QML to embed JUCE in my Qt application?

I worked a lot with Qt C++ before QML came out. So I can say the mechanism is very similar between the systems, and a transition is quite simple for you.

Even though I built one QML app (almost 10 years ago), I am not sure if the generated code can be easily bridged to JUCE.

A big benefit of JUCE is it takes care of the thread safety between audio and GUI thread. I think in either way, Qt or QML you will have to do some work that takes a bit more experience.

My 2 pennies, if you can avoid mixing the systems, I would definitely do it.

1 Like

Thank you for the detailed response.

When you say:

My 2 pennies, if you can avoid mixing the systems, I would definitely do it.

Are you referring to QML and JUCE. or Qt and JUCE, or QML/QT and JUCE?

I meant Qt entirely.
Even though I miss some features of Qt, they don’t make up for the hassle gluing the systems together IMHO.

Things like the QtDesigner (there are alternatives meanwhile though, and I don’t mean the Projucer GuiEditor), printing support, the plugin loader for your own plugin formats.
So sometimes I have to use third party libs for features, that were built-in in Qt, so that would be a reason to try mixing Qt and JUCE.
But those things are probably not so much QML related anyway.

So take it as my preference, but there is nothing wrong with going Qt anyway.

Maybe you can outline what you are trying to build, so people can give a more specific advise?

1 Like

I am thankful for your detailed and helpful response again. I will post when I get more clarity on my end.

1 Like