Choosing a Phonon backend

Tanguy Krotoff tkrotoff at gmail.com
Sat Mar 29 17:01:50 GMT 2008


>  the idea of phonon is that you gave
>  him a file and he return a stream. that's it.

Of course, and?

Do you think adding this:
bool Phonon::setBackendName()
QObject * Phonon::getInternalBackend()

will make
Phonon::playSound()
disappear?

> If you want use vlc and not
> other backends, why use phonon and not the libvls api?

OK so let's make every advanced video/sound apps use #include
<libvlc.h>, #include <xine.h>, #include <mplayerprocess.h>, #include
<whatevercomenext.h>...
Yes, that is really ugly! and unproductive since everybody will
reinvent the wheel each time.
i.e a backend system
For example, SMPlayer was going this way with a GenericPlayer *
Factory::getPlayer("backend name")
cf http://smplayer.berlios.de/forums/viewtopic.php?id=169
If I remember well, Amarok had (still has?) a backend system before
Phonon was created...
Even Totem has a backend system with gstreamer/xine choice left to the user.

>  Another thing: now dragonplayer use xine only for the DVD's menu, for all the
>  other stuff it use phonon; and when phonon will support correctly the DVD's
>  menu, dragonplayer will leave completle xine.

Now it's OK for DVD's menu but for the next interesting feature that will come?

How will Phonon get new features? this is how I see it:

advanced multimedia app -> implement specific features via QObject *
Phonon::getInternalBackend()
-> test/improve -> make it into Phonon or reject if people don't like it

Here this is what happened:
Dragon Player -> DVD's menu via "a kind of" QObject *
Phonon::getInternalBackend()
-> test/improve -> make it into Phonon

If you break the possibility to extend Phonon, you get nothing:
Dragon Player -> no possibility to have "a kind of" QObject *
Phonon::getInternalBackend()
-> no DVD's menu or other functionnalities!
That is so obvious!

What do you think will improve Phonon?
Apps that only use Phonon::playSound() or advanced multimedia apps
that will push innovations?

-- 
Tanguy Krotoff <tkrotoff at gmail.com>
+33 6 68 42 70 24



More information about the kde-multimedia mailing list