Phonon 4.2 and integration for Qt 4.5

Matthias Kretz kretz at
Wed Jun 11 13:27:08 BST 2008

On Wednesday 11 June 2008, Jens Bache-Wiig wrote:
> > I know that phonon isn't in kdelibs anymore... but would this break
> > KDE software written when Phonon 4.1 was current? i.e. would
> > applications be able to compile against the new Phonon?
> >
> > If so I have no objection (but then I don't see how it isn't source
> > compatible either). But we shouldn't cause KDE programs that used to
> > be valid to fail to compile, even if it is actually binary compatible.
> > I absolutely hate when other libraries have done this to me in a minor
> > rev.
> >
> > Besides, doesn't Trolltech have to maintain source compatibility for
> > Qt? I don't see how they could include a Phonon change that breaks
> > source compatibility...
> >
> > Regards,
> >
> > - Michael Pyne
> This would not break for applications using Phonon but it would break
> for People writing or modifying their Phonon backends. However as
> Thierry pointed out, Qt cannot break source compatibility in anything
> but major versions so we simply have to find another way to design
> around this. Don't we simply need a way for the backend to query for and
> mark platform devices from the frontend while populating the device list?

Well it sure is possible to keep BC and SC. It was a deliberate choice of mine 
to break SC. I did it because it makes it easier to keep backends up to date 
wrt the features Phonon provides.

How about we add some preprocessor logic to let the backend code explicitly 
say what version of the Phonon backend API it wants to implement? Then 
setting nothing would mean version <= 4.1. If you want to implement 4.2 you 
compile with -DPHONON_BACKEND_VERSION_4_2. It would additionally or 
alternatively be possible to ignore that macro and bump the interface version 
of the implementing class (i.e.
  class AudioOutput : public Phonon::AudioOutputInterface
  class AudioOutput : public Phonon::AudioOutputInterface42

What do you think?

Matthias Kretz (Germany)                            <><
MatthiasKretz at, kretz at,
Matthias.Kretz at
-------------- next part --------------
A non-text attachment was scrubbed...
Name: signature.asc
Type: application/pgp-signature
Size: 189 bytes
Desc: This is a digitally signed message part.
URL: <>
-------------- next part --------------
kde-multimedia mailing list
kde-multimedia at

More information about the kde-multimedia mailing list