GSoC 2011 Idea

Harald Sitter sitter at
Tue Apr 5 20:21:59 BST 2011

On Tue, Apr 5, 2011 at 6:37 PM, Trever Fischer
<tdfischer at> wrote:
> On Tuesday, April 05, 2011 12:33:55 PM Pavel Punegov wrote:
>> On Tuesday, April 05, 2011 04:22:12 Trever Fischer wrote:
>> > * '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.
>> I haven't thought yet about names, and I suppose it's not very important
>> now. First i want to create generic description of what i will create
>> during GSoC.
> Fair enough. Just making sure you didn't have all this set in stone yet.

While I agree with Encoder being the better name, I am not sure it
would be appropriate in terms of consistent naming. We have MediaNodes
and MediaSources and MediaControllers and MediaObjects. Arguably those
are silly names as we also have classes with names such as Effect. So
I personally would think either way is fine.
There are more classes going MediaFoo rather than Foo (excluding
classes with names that actual reflect that they are bound to a
specific type of media), so I would think MediaEncoder is more in line
with the existing naming.

>> > * 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.
>> Should i create muxer as separate object? I think it's better to create it
>> as a some part of Encoder class, so user gets stream ready for
>> transmission or writing to a file.
> Yes, I feel the muxer should be separate from the encoder. Otherwise, you'd
> have to set the same container format for both the audio and video encoders.
> It makes sense to only provide one place (the muxer) for the developer to set
> which format to encode to.

More information about the kde-multimedia mailing list