Projects/Multimedia/Phonon

From KDE TechBase
The printable version is no longer supported and may have rendering errors. Please update your browser bookmarks and please use the default browser print function instead.

Phonon is the Qt multimedia toolkit. It allows developers to add multimedia functionality to applications with minimal effort.

Features

  • Works on Linux, OSX, *BSD, Windows, Meego, Maemo, and likely more
  • Leverages pre-existing multimedia frameworks such as GStreamer, VLC, DirectShow, etc.
  • Eliminates the need for developers to worry about installing codecs, managing pipelines, decoding to the proper format, learning XVideo or DirectShow, and more.

Documentation

For the most detailed and up-to-date information on using phonon, have a look at the latest API documentation. Several tutorials are also available:

In addition, numerous examples can be found inside the demos/ directory of the phonon sources. They are well-documented and provide the basis for the above tutorials.

Backends

To provide cross-platform support, Phonon is powered by various backend libraries. The stable backends are:

  • GStreamer
  • VLC

Other backends have been created in the past, however they are currently unmaintained and looking for developers:

  • MPlayer
  • Xine
  • DirectShow
  • QuickTime

Support

For general Phonon support, you can join the KDE-Multimedia mailing list. If you wish to join us in backend development, you might also want to subscribe to the phonon-backends list.

If you desire a more real-time support method, you can also hang out in #phonon on freenode.

Contributing

Phonon's source code is hosted on the KDE infrastructure and is available for viewing at quickgit.kde.org. It is recommended that you also join the kde-multimedia and phonon-backends mailing lists mentioned in the previous section. Finally, join us in #phonon on Freenode.

Our current developers:

  • Harald Sitter (apachelogger), Phonon master overlord, VLC backend developer
  • Torie Fischer (tdfischer), GStreamer backend developer
  • Romain Perier (bambee), GStreamer backend developer
  • Colin Guthrie (coling), PulseAudio integration officer