More Info

Revision 633800

(Back to digest)
 

Features in Multimedia

Matthias Kretz committed changes in /trunk/KDE/kdemultimedia/phonon-xine:

post plugin infrastructure for audio:
- when creating a new stream use the null output and rewire it to a real output when it is available
- every AudioPath keeps it's AudioEffects in a AudioPostList object which defines the processing path between xine_stream and xine_audio_port
- started to make multiple AudioPaths per MediaProducer possible (needs another custom post plugin)
- implement AudioEffect::parameterList()
- add virtual function newInstance to AudioEffect that is used by AudioPostList to get a new xine_post_t object of the AudioEffect
- XineStream doesn't take AudioPort objects anymore but AudioPostList objects
- AudioPostList has a function to tell XineStream to start rewiring the post plugins in the xine thread
- implemented VolumeFaderEffect using the KVolumeFader post plugin
- AudioOutput does not create a AudioPort per XineStream anymore - one AudioPort per AudioOutput (output from one source to multiple sinks needs another post plugin)

also:
- no code in Q_ASSERT, this only works for debug builds

File Changes

Added 2 files
/trunk/KDE/kdemultimedia/phonon-xine
 
/audiopostlist.cpp
 
/audiopostlist.h
Modified 17 files
/trunk/KDE/kdemultimedia/phonon-xine
 
/abstractmediaproducer.cpp
 
/abstractmediaproducer.h
 
/audioeffect.cpp
 
/audioeffect.h
 
/audiooutput.cpp
 
/audiooutput.h
 
/audiopath.cpp
 
/audiopath.h
 
/audioport.cpp
 
/audioport.h
 
/CMakeLists.txt
 
/volumefadereffect.cpp
 
/volumefadereffect.h
 
/xineengine.cpp
 
/xineengine.h
 
/xinestream.cpp
 
/xinestream.h
19 files changed in total