Over the past few releases, Qt has become richer, more powerful — and bigger. So far we have been using the same source code repository for all the modules that are included in Qt 4.x releases, but during the integration phase of Qt 4.7, it has become clear that we need to make Qt more modular in the future.
A Qt release should still consist of a set of modules that have been verified to work together, but we shouldn’t have to integrate all code to the same source code tree. So we have decided to make the modularization of Qt as one of the targets for Qt 4.8.
In the light of this future goal, we also realized that Qt 4.7 is actually not the best time to integrate the new Qt Multimedia features into Qt. That’s why we have decided to not include any new Qt Multimedia functionality in the final release of Qt 4.7.
Today’s beta packages still include a subset of the Qt Multimedia functionality, but we will remove this code from Qt before the final release of Qt 4.7.0. Not to fear however, this Multimedia API is part of the new Qt APIs for mobile development package, released as Qt Solutions last week.
Such a late scope change is of course quite exceptional, but the consequences are almost entirely positive. The reason for the “almost” is that we will temporarily lose the declarative elements for audio, video and sound effects in Qt Quick. We’re working on releasing the declarative elements as an additional module based on the Qt Multimedia Solution. Also QtWebKit will continue to rely on the Phonon framework to implement HTML5 media support in Qt 4.7. Improving HTML5 media in general is on our roadmap for the next releases of QtWebKit.
Then to the positive side. First, we’ll only have one Qt Multimedia framework instead of two different copies, a subset in Qt 4.7 and the whole framework in Qt Solutions. This makes it easier to understand our offering.
Second, the same use cases that are now in the Beta (plus more) are still going to be available, with API and binary compatibility, from the Qt Solutions release, and with roughly the same schedule.
Third, since our multimedia team can now focus on maintaining a single copy of the framework, we’ll have more time to polish it and with this we hope to reach a higher level of quality.
We also know we’re doing the right thing with regard to the future of Qt. So upward and onward to a modular and multimedia capable Qt!