MAFW is formed by the following packages:
MAFW Library: The MAFW library contains the basic classes and interfaces defined in the framework. These expose the major elements of the framework, like the concepts of Extension, Source and Renderer and the APIs the developers will use to interact with them.
MAFW Shared: This package provides means for sharing components among different applications using MAFW. It implements the logic behind the wrapper objects, as well as the concept of Shared playlists. It is composed of:
libmafw-shared: A library to use the shared components exposed by sharing services (extensions and shared playlists).
mafw-dbus-wrapper: This service is the one responsible for loading extensions in separate processes and export their interfaces as DBUS services. These services are used by the wrapper objects defined in libmafw-shared in the out-of-process use case.
mafw-playlist-daemon: A daemon that provides an API for shared playlist manipulation and storage.
Plugins: Plugins are provided as separate packages.