Recent years I was actively developing a new framework. I wrote QtAV when I knew nothing about multimedia, so the framework is not well designed. The new framework MDK is better at any aspect.
MDK is written in pure C++(and of cause ObjC++ for Apple), no more Qt dependency. Qt is greate, but it's huge, and make deployment hard. Most of features QtAV needed in Qt can be easily done with powerful modern C++. Without Qt, MDK can be integrated in more applications.
C++17 is required to build MDK. But C++11 runtime is enough to use MDK. So MDK runs on all platforms providing C++11. Considering the C++ STL ABI stability, libc++ is used by default for unix platforms. GNU STL(libstdc++) is also supported, but it breaks ABI all the time, from 4.9 to 5.0, from 6.0 to 7.0 etc., so a binary SDK built with gcc may not run on another platform. With libc++, the same SDK binary should run on almost all linux distributions. On ubuntu >= 14.04 run apt install libc++1 libc++abi1
to install libc++.
No, at least not for all users. But some modules and dependencies will be. For example MFT decoder, Android utilities.
libmdk SDK only provides C APIs and it's C++ wrapper, and the ABI of C APIs changes rarely between versions. So it's ABI can be considered stable. You can simply replace a new SDK binary without rebuilding your program to fix SDK bugs and get new features.
Qt is a greate gui toolkit, and QML is the best language to write ui. libmdk can be used in Qt easily, via QOpenGL apis, or RHI, see https://github.com/wang-bin/mdk-examples/tree/master/Qt
There is also a qtmultimedia plugin in Qt Marketplace, so you can use libmdk features without changing your qtmultimedia code. Source code is here