In this example, we will be using C++, Qt, and QML to create a graphical user interface that is capable of showing the current track that is playing, performing an audio visualization, indicating the playback progress, and allowing you to toggle different input modes using onscreen buttons.
This example is based on the Audio Visualizer example from the Qt documentation. This can be found in the Qt installation folder (if examples got installed), as well as on the Qt site: https://doc.qt.io/qt-5/qt3d-audio-visualizer-qml-example.html.
The main difference between this code and the official example is that the QMediaPlayer media player was moved into the C++ code, along with a number of other functions. Instead, a number of signals and slots between the QML UI and C++ backend are used in the new QmlInterface class for button presses...