GSoC 2011 Idea

Trever Fischer tdfischer at fedoraproject.org
Tue Apr 5 01:22:12 BST 2011


On Monday, April 04, 2011 07:52:53 PM Pavel Punegov wrote:
> March 31 2011 16:57:00 Trever Fischer wrote:
> > Any idea how you might implement this? A quick UML diagram or even
> > example API consumer code would be great.
> 
> This is a UML diagram which represents how i want to create encoding. What
> do you think about?
> 
> http://img684.imageshack.us/i/classdiagramg.png/
Looks like a good start. There are a few small issues I see:

* 'MediaEncoder' is a silly name. Just shorten it to 'Encoder'. Tacking 
'Media' onto the front of it doesn't serve any real purpose. We already know 
that phonon handles media, so connecting 'encoder' with the purpose of 
encoding media isn't a big mental leap.
* You actually need three parts to 'encode' a media stream: Input, encoding, 
and a muxer. Muxers take one or more encodings and combine them into one 
single output stream. An example is streaming a webcam to an icecast server. 
You encode the video to theora, audio to vorbis, and then combine the two 
streams into an ogg output via a muxer.
* Taking the above into account, the audio and video coders have some 
reference to a container format. The container is the responsibility of the 
muxer, not the encoder.
* What 'properties' might be in the codecs? A defined interface for common 
properties isn't a bad idea, even if is a set of #define'd strings. In 
addition, using Qt's own property system instead of writing your own 
setProperties() would be a better approach. Less cruft to maintain in the long 
run.
> 
> Best regards, Pavel
> _______________________________________________
> kde-multimedia mailing list
> kde-multimedia at kde.org
> https://mail.kde.org/mailman/listinfo/kde-multimedia



More information about the kde-multimedia mailing list