Revision 633800
Go back to digest for 18th February 2007Features in Multimedia
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
- /trunk/KDE/kdemultimedia/phonon-xine
- /audiopostlist.cpp
- /audiopostlist.h
- /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