[prev in list] [next in list] [prev in thread] [next in thread] 

List:       kde-multimedia
Subject:    Re: kdemm backends & Helix
From:       Allan Sandfeld Jensen <kde () carewolf ! com>
Date:       2004-09-14 22:12:12
Message-ID: 200409150012.13274.kde () carewolf ! com
[Download RAW message or body]

Hi Ryan

On Tuesday 14 September 2004 20:25, Ryan Gammon wrote:
> I was poking around kdelibs/kdemm on make_it_cool, looking at some of
> the neat stuff you're doing with multimedia.
>
> A couple of quick questions:
> 1. Is anyone interested in a helix-based implementation of these
> interfaces? (helixcommunity.org, helix client is the open-source media
> engine that powers the RealPlayer).
I don't think we would object to an implementation, but neither do I think 
anyone here is willing to write it themselves.

> 2. I'm a little confused by channels -- if there's something someone can
> point me at that talks a bit about what this is, it'd be much appreciated.
Unfortunately no. It is one of the things still under debate and heavy change, 
For instance I am currently changing a few designs while writing the shared 
state mixer. 

The basic idea is to group types of playback into logically groups that the 
user can interact with seperately (using a mixer or equalizer for instance). 
Groups such as; music, events and video are being proposed as a minimum. 
When an applications plays multimedia, it will have to specify which channel 
it wants to use. More advanced features such as being able to apply effects 
to channels are left as an option for the backends. 
We are still waiting for the basic implementations of various backends before 
seeing what exactly will be the best way to provide these options.

> 3. If one wanted to provide access to extended media engine
> functionality with these interfaces, how would they go about doing it?
>
> For example, we developed a simplifed gtk widget around the Helix Player
> for our Helix Player 1.0 / RealPlayer 10 for linux project. There's a
> lot of media engine functionality that we didn't want to add to the gtk
> api -- we wanted to keep it simple -- so we added a mechanism to get at
> the underlying engine.
>
> Let's say I wanted to make playback statistics (packet loss, etc)
> available to an app, but that statistics was not something that was
> standardized enough across backends that it made sense for kdemm.
>
> Would I implement those methods on a hypothetical HelixVideoPlayer
> class, and cast from a VideoPlayer up to a HelixVideoPlayer in my app?

If you want to use specialized interfaces you should use the Backend class 
directly and not through the factory. The factory would in this case only be 
used to get a pointer to the backend, and only the backend casted if 
necessary. Remember that return types can be changed in virtually inherited 
functions. So the HelixBackend::createVideoPlayer can return a 
HelixVideoPlayer* directly as long as HelixVideoPlayer derives from 
VideoPlayer. 

Please remember however, that this is work in progress and under continued 
discussion. Started only a few weeks ago and with a deadline 15 months from 
now, nothing much is really certain, and good ideas are still very much 
appreciated.

`Allan
_______________________________________________
kde-multimedia mailing list
kde-multimedia@kde.org
https://mail.kde.org/mailman/listinfo/kde-multimedia
[prev in list] [next in list] [prev in thread] [next in thread] 

Configure | About | News | Add a list | Sponsored by KoreLogic