• Skip to content
  • Skip to link menu
KDE 4.0 API Reference
  • KDE API Reference
  • kdelibs
  • Sitemap
  • Contact Us
 

Phonon

Phonon Namespace Reference


Detailed Description

The KDE Multimedia classes.

In this Namespace you find the classes to access Multimedia functions for audio and video playback. Those classes are not dependent on any specific framework (like they were in pre KDE4 times) but rather use exchangeable backends to do the work.

If you want to write a new backend take a look at Phonon Backend Development.

Author:
Matthias Kretz <kretz@kde.org>


Classes

class  AbstractAudioOutput
 Common base class for all audio outputs. More...
class  AbstractMediaStream
 Base class for custom media data streams. More...
class  AbstractVideoOutput
 Common base class for all video outputs. More...
class  AudioOutput
 Class for audio output to the soundcard. More...
class  Effect
 Effects that can be inserted into a Path. More...
class  EffectParameter
 This class describes one parameter of an effect. More...
class  EffectWidget
 Widget to control the parameters of an Effect. More...
class  MediaController
 Controls optional features of a media file/device like title, chapter, angle. More...
class  MediaObject
 Interface for media playback of a given URL. More...
class  MediaSource
 Note that all constructors of this class are implicit, so that you can simply write. More...
class  ObjectDescription
 Provides a tuple of enduser visible name and description. More...
class  ObjectDescriptionModel
 The ObjectDescriptionModel class provides a model from a list of ObjectDescription objects. More...
class  Path
 Connection object providing convenient effect insertion. More...
class  SeekSlider
 Widget providing a slider for seeking in MediaObject objects. More...
class  VideoPlayer
 Playback class for simple tasks. More...
class  VideoWidget
 Widget to display video. More...
class  VolumeFaderEffect
 Audio effect to gradually fade the audio volume. More...
class  VolumeSlider
 Widget providing a slider to control the volume of an AudioOutput. More...

Namespaces

namespace  BackendCapabilities

Enumerations

enum  ObjectDescriptionType { AudioOutputDeviceType, EffectType }
enum  DiscType { NoDisc = -1, Cd = 0, Dvd = 1, Vcd = 2 }
enum  MetaData
enum  State {
  LoadingState, StoppedState, PlayingState, BufferingState,
  PausedState, ErrorState
}
enum  Category {
  NoCategory = -1, NotificationCategory = 0, MusicCategory = 1, VideoCategory = 2,
  CommunicationCategory = 3, GameCategory = 4, AccessibilityCategory = 5
}
enum  ErrorType { NoError = 0, NormalError = 1, FatalError = 2 }

Functions

MediaObject * createPlayer (Phonon::Category category, const MediaSource &source=MediaSource())
QString categoryToString (Category c)

Enumeration Type Documentation

enum Category

Set's the category your program should be listed in in the mixer.

A Jukebox will set this to Music, a VoIP program to Communication, a DVD player to video, and so on.

Note:
These categories can also become useful for an application that controls the volumes automatically, like turning down the music when a call comes in, or turning down the notifications when the media player knows it's playing classical music.
See also:
AudioOutput::setCategory
Enumerator:
NoCategory  Will make use of the default device.
NotificationCategory  If the sounds produced are notifications (bing, beep and such) you should use this category.
MusicCategory  If your application is a music player (like a jukebox or media player playing an audio file).
VideoCategory  If the sound is the audio channel of a video.
CommunicationCategory  If your applications produces sounds from communication with somebody else (VoIP, voice chat).
GameCategory  Sound produced by a computer game should go into this category.
AccessibilityCategory  Sounds produced for accessibility (e.g.

Text-To-Speech)

enum DiscType

Enum to identify the media discs supported by MediaObject.

See also:
MediaSource(Phonon::DiscType, const QString &deviceName)
Enumerator:
NoDisc  No disc was selected.

This is only useful as a return value from MediaSource::distType();

Cd  Identifies Audio CDs.
Dvd  Identifies DVDs (not arbitrary data DVDs, only movie DVDs).
Vcd  Identifies Video CDs.

enum ErrorType

Tells your program how to recover from an error.

See also:
MediaObject::errorType()
Enumerator:
NoError  No error.

MediaObject::errorType() returns this if MediaObject::state() != Phonon::ErrorState.

NormalError  Playback should work, and trying with another URL should work.
FatalError  Something important does not work.

Your program cannot continue playback or capture or whatever it was trying to do without help from the user.

enum MetaData

Provided as keys for MediaObject::metaData for convenience, in addition to the strings defined in the Ogg Vorbis specification.

enum State

The state the media producing object is in at the moment.

See also:
MediaObject
Enumerator:
LoadingState  After construction it might take a while before the Player is ready to play().

Normally this doesn't happen for local files, but can happen for remote files where the asynchronous mimetype detection and prebuffering can take a while.

StoppedState  The Player has a valid media file loaded and is ready for playing.
PlayingState  The Player is playing a media file.
BufferingState  The Player is waiting for data to be able to continue playing.
PausedState  The Player is currently paused.
ErrorState  An unrecoverable error occurred.

The Object is unusable in this state.


Function Documentation

QString Phonon::categoryToString ( Category  c  ) 

Returns a (translated) string to show to the user identifying the given Category.

MediaObject* Phonon::createPlayer ( Phonon::Category  category,
const MediaSource &  source = MediaSource() 
)

Convenience function to create a MediaObject and AudioOutput connected by a path.

Phonon

Skip menu "Phonon"
  • Main Page
  • Modules
  • Namespace List
  • Class Hierarchy
  • Alphabetical List
  • Class List
  • Namespace Members
  • Class Members
  • Related Pages

kdelibs

Skip menu "kdelibs"
  • DNSSD
  • Interfaces
  •   KHexEdit
  •   KMediaPlayer
  •   KSpeech
  •   KTextEditor
  • Kate
  • kconf_update
  • KDE3Support
  •   KUnitTest
  • KDECore
  • KDED
  • KDEsu
  • KDEUI
  • KDocTools
  • KFile
  • KHTML
  • KImgIO
  • KInit
  • KIO
  • KIOSlave
  • KJS
  •   WTF
  • KJSEmbed
  • KNewStuff
  • KParts
  • Kross
  • KUtils
  • Nepomuk
  •   core
  • Phonon
  •   Backend
  • Solid
  • Sonnet
  • ThreadWeaver
Generated for kdelibs by doxygen 1.5.4
This website is maintained by Adriaan de Groot and Allen Winter.
KDE® and the K Desktop Environment® logo are registered trademarks of KDE e.V. | Legal