since sebas asked me to bring up the phonons as he fears that lack of actual source compat in phonon5 could compromise the frameworks effort
there will be the following libraries: === phonon5 === (current five branch) will *not* be 100% source compatible because pieces of the architecture disappear entirely (namely the concept of a mediagraph where you can arbitrarily link nodes). Changes done or planned as of right now: * MediaNode gets renamed to Frontend * MediaObject gets renamed to Player * Arbitrary connectability (pathing) of Frontend/Nodes is replaced by fixed point linking on the respective objects. Such that Outputs are added using Player::addOutput(...); Effects on outputs are added using Output::addEffect(...); Controls are added to Sources via Source::addControl(...) [pending discussion on final Source API] * MediaSource gets renamed to Source to fall in line with the rest of the classes * MediaController gets split into multiple control units either manipulating the * Queuing/Playlist capability is moved out of the Player into a separate class allowing more precise API rather than having it mushed in with playback control and whatnot. * Pulseaudio API gets largely removed as its use case (which primarily was working around broken backends) desolved. * Device order and configuration gets removed or reduced as during the lifetime of kdelibs4 it gradually moved out of the feature scope of Phonon (which is why right now usually the Phonon KCM is in fact controlling PulseAudio and not Phonon). * ObjectDescriptions [QHash<QBA, QVariant>] is being replaced by concrete classes describing multimedia types (SubtitleDescription, DeviceDescription, MenuDescription, EffectDescription....) for all of the 'tiny' phonon users (playing notifications or what not) simple typdef compat could/can be introduced as the core ability (playback) does not go away or change. making phonon5 defacto scource compatible for the majority of applications. actual MM applications such as tomahawk or amarok will have to do porting to accommodate for changes to advanced features like the MediaController removing. however as the changes actually make their life easier and allow them to write nicer code they do not seem particularly bummed out about that. === phonon4qt5 === is a build of phonon4 against qt5 making it a 100% source and runtime compatible library that allows phonon4 applications to easily access qt5. last this was discussed I think the conclusion was that this library will have the same support/maintenance duration as phonon4, seeing as they are the same codebase nothing else would make sense anyway. === phonon4 === (aka phonon) is the thing that is considered part of kdelibs4 === support considerations === phonon5 is the thing moving forward, phonon4 won't get continuing feature development. from a support POV I do not see any reason to drop phonon4 maintenance any time soon since it's next to nothing. generally speaking however support and maintenance effort happens in the backends and not the library so since the library does not change there ought not be much going on in the backends either. except of course for when the underlying frameworks (gstreamer/vlc) decide to break their API support for a new version would probably have to arise. which IMO is a feature, and since phonon4 doesn't get feature development picking up SC breaks from gstreamer/vlc is outside the support scope. === various threads on various things phonon5: - Description replacement [1] http://lists.kde.org/?l=kde-multimedia&m=138122108822375&w=4 - Source proposal [2] http://lists.kde.org/?l=kde-multimedia&m=138193356706265&w=4 - Interface handling http://lists.kde.org/?l=kde-multimedia&m=136966480112022&w=4 - p4q5 announcement [3] http://lists.kde.org/?l=kde-multimedia&m=136983687004557&w=4 - Phonon5 API as originally created in 2012 http://lists.kde.org/?l=kde-multimedia&m=134857119810668&w=4 HS _______________________________________________ Kde-frameworks-devel mailing list Kde-frameworks-devel@kde.org https://mail.kde.org/mailman/listinfo/kde-frameworks-devel