Phonon 4.2 and integration for Qt 4.5

Matthias Kretz kretz at
Tue Jun 10 15:34:41 BST 2008


On Tuesday 10 June 2008, Thierry Bastian wrote:
> First, the change in AudioOutputInterface breaks source compat for
> apparently no really good reason. Adding the setOutputDevice with the
> parameter being an objectDescription doesn't really bring much over a int
> since the backend is in complete control of that int.

That's true for all the devices listed by the backend. But starting with 
Phonon 4.2 the platform plugin may list devices. And those the backend knows 
nothing about. But through the properties of ObjectDescription it gets all 
the info it needs. Currently this is not documented good enough. And for 
frontend users it should stay hidden. But Backend developers need those 
properties documented... I already implemented it (at least for ALSA) for the 
GStreamer backend.

And this is then probably the biggest feature for libphonon 4.2 since it means 
that now Phonon-GStreamer integrates into KDE as good as Phonon-Xine does.

> I don't think we can 
> accept to break source compat for this reason alone. We should probably try
> to minimize the number of versions of the same interface, for code
> readability's sake.

The alternative is to use QMetaObject::invokeMethod. I do like the added 
interfaces more, though.

Note that binary and behaviour compatibility is kept. Only recompilation of 
the backend against the new interface shows that a new function needs to be 

> Then for capture, it seems someone uncommented the code for audio capture
> device. It is in that case quite useless because one can't create such an
> object(AudioInput ?) for now. We suggest that we comment it back. We should
> work on it for a future release and add video capture as well. And this
> capture will really be useful only when it will be possible to stream it
> back to a file.

Yes, I'm working on all that, but I had to pull audio capture for KDE 4.1. I 
did leave the audio capture device code in since it doesn't do any harm, and 
I was too lazy to take it out.

If you believe it is harmful to release it with KDE 4.1 then we can still 
remove it - though it's not in the spirit of the freeze. :-)

> Other than that, we're pretty confident about integrating the newer Phonon
> into Qt 4.5.

Great. I guess you've only looked at branches/phonon/4.2 then and not at the 
changes in kdesupport/phonon?

I still have some unfinished work on a threadsafe AbstractMediaStream2 which I 
think should look different and not be as compatible to the current 
StreamInterface as I created it. But I'd like to discuss that with you first 
before I continue to work on it.

I'm also getting confident about Phonon::Experimental::AbstractVideoDataOutput 
which I'm playing with a lot these days, plugging it into Quasar - Zack's 
image manipulation framework.

Would be nice if you could review AbstractVideoDataOutput and tell me what you 
think about the threadsafe AbstractMediaStream plans.

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