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

List:       kde-multimedia
Subject:    Re: SmartWrappers => Object conversion done!
From:       Stefan Westerfeld <stefan () space ! twc ! de>
Date:       2000-05-15 11:05:36
[Download RAW message or body]

   Hi!

These things belong on the list - we are currently at least four people
working on aRts/MCOP somehow. This makes having only two of them know 
what happens be a bad strategy ;-)

I hope everybody is subscribed?

On Sun, May 14, 2000 at 04:24:10PM +0100, Nicolas Brodu wrote:
> > > > currently I´m working with arts as well. But I dont understand
> > > > how it works. I have written an
> > > > * wav, mpeg audio,video and vorbis plugin for arts
> > > 
> > > Great! The thing is, video isn't done yet for arts. When that is implemented,
> > > we(I?)'ll probably start writing a library of components (a bit like what \
> > > Stefan has done in flow/artsflow.idl, you have a wave generator, a synth add
> > > filter,...). The goal is to provide those for all, not justs as plugins. >      \
> > > ^^^^^^^^^^^^^^^^^
> > 
> > Oh, sorry, maybe this was not clear.
> > 
> > With plugins I do _not_ mean the arts "C" Api. My "plugins"
> > are kdemia2 PlayObjects and fully integrated into artsd.
> > 
> > In other words, these already are your components.
> 
> More or less, yes. I had the idea to provide interfaces like:
> 
> interface VideoProvider {
> 	out video stream video;
> 	default out audio stream audio_left, audio_right;
> };
> 
> interface DataProvider {
> 	out byte stream data;
> };
> 
> interface DataConsumer {
> 	in byte stream data;
> };
> 
> interface FileReader : DataProvider {
> 	constructor(filename);
> };
> 
> interface VCDReader : DataProvider {
> };
> 
> interface MPEGFilter : DataConsumer, VideoProvider {
> };
> 
> interface Tuner : VideoProvider {
> };
> 
> And so on...
> 
> That's what I meant by a library of components: Something well structured, with
> Producers, Consumers, Filters, etc., that you could create locally or remotely,
> or even reuse if one already exists.
> But as you see, there is still a lot to do before we can actually start writing
> them (the video stuff, removing the SynthModule inheritance, and more technical
> details...)
> 
> I also CC this mail to Stefan to have his opinion on the idea.

True, thats my plan, too. There is some experimental video code in
kdemultimedia/noatun, by the way, which uses two special mcopidl options
to allow declaring VideoFrame streams. See avideoframe.cc/avideoframe.h.

To the PlayObjects <-> "Real streaming" issues: Of course having real
streaming is always better, that is putting data raw into a mp3 decoder
as asynchronous byte stream, and getting out the decoded data (maybe) as
byte stream, too.

PlayObjects are just the simple solution to have something that will
definitely work for KDE2.0, the "real solution" is splitting into smaller
components.

To the SynthModule inheritance: I think it should stay. A SynthModule is
a module that has the start()/stop() functionality which you will need
for all kinds of streams - its just the name that may be confusing a bit.

  Cu... Stefan
-- 
  -* Stefan Westerfeld, stefan@space.twc.de (PGP!), Hamburg/Germany
     KDE Developer, project infos at http://space.twc.de/~stefan/kde *-
_______________________________________________
Kde-multimedia mailing list
Kde-multimedia@master.kde.org
http://master.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