Trolltech and KDE Team on Multimedia Programming Framework

Open source community projects and commercial software aren't necessarily adversaries. Some interactions have resulted in a positive outcome for all. One such instance is the KDE project's collaboration with Oslo, Norway-based Trolltech. Since 1996, Trolltech's QT toolkit has been used in the KDE Desktop Environment. The collaboration resulted in user-friendly desktops for Unix and Unix-like operating systems (such as Linux).

Trolltech and the KDE community have continued to work together on Phonon, a cross-platform multimedia framework designed to make multimedia incorporation into C++ projects much easier. To make the project truly cross-platform, Phonon now utilizes GStreamer backends for Linux, (in addition to the original Xine-based code) and additional backends for Windows and OS X.

This functionality allows KDE 4 to be more flexible, since multimedia features are no longer tied to any one specific multimedia framework. It is no longer necessary to hard-code complete multimedia implementations into projects. Once Phonon's backend is configured to use a certain framework (such as Xine or Gstreamer), all programs using Phonon API calls will automatically use the framework that has been set. To implement Phonon, all a programmer has to do is invoke the API (use Phonon::createPlayer in a program's source code) and everything should work.

Phonon's code is included in the public KDE source repository so developers can track and participate in Trolltech's work on the Phonon backend. Meanwhile, KDE developers are free to turn their attention and resources to other projects.

KDE 4's anticipated release date is January 11, 2008. Unlike its predecessors, KDE 4 utilizes QT 4, which is more compatible with Windows. QT 4 will make it easier to build working Windows implementations of popular KDE applications.

About the Author

Will Kraft is a Web designer, technical consultant and freelance writer. He can be reached at [email protected]. Also, check out his blog at