"Toby Hudon" <gldm@...> wrote..
> See I think the different operations like filters and muxing should just
be subsets of the message space.
I have always been in complete agreement with this. Most data types that
are passed to/from a codec/filter/muxer are identical. It always seemed
kind of useless to develop three separate designs that do 98% of the same
work. They all need things like:
Status (Error, Ready, etc)
Maybe things like the CodecPrivate would only ever be passed to/from the
codec and the muxer, but never to the filter. There is enough data that
would be duplicated across all of the interfaces that seperating the API's
would be silly. More code and more specs for nothing.
----- Original Message -----
From: Attila Kinali <attila@...>
Date: Sun, 28 Dec 2003 16:28:38 +0100
Subject: [UCI-Devel] Re: [MPlayer-dev-eng] Re: Common Opensource codec API
> On Sun, 28 Dec 2003 10:09:44 +0100
> ChristianHJW <christian@...> wrote:
> > You guys always want to keep things extremely simple and performant, and
> > i have no idea why that is. Maybe you cant afford new PCs with
> > state-of-the-art CPUs, and are running your boxes on AMD K6's or
> > similar, dont know. I have a pretty old Pentium III system, only 800
> > MHz, with a 32 MB 4xAGP videocard, and even with crappy, bloated Windows
> > + plus even more bloated, even more crappier matroska i was never ever
> > close to have CPU performance problems. So, there seems to be a clear
> > conflict of interests, for whatever reason.
> Sorry, but that's just...
> You know, a program needs to run as fast as possible, no matter what
> it does, otherwise we end up waiting for the computer and justify
> Wirth's law ("programs slow down faster than computers get faster").
> Beside, not everyone has the money to buy a top computer like you do.
> You may dont know that computer components cost more (2-3 times more)
> in countries like Turkey than they do here (not to mention that they
> earn 10 times less). Your comment reminds me Marie Anntoinette's
> "Why dont they eat cakes if they dont have bread ?". It has the same
> ignorant and arrogant sound.
No, not everything needs to run as fast as possible if it has too many other tradeoffs. If it did then why aren't you hand coding everything in assembly instead of wasting your time with things like C?
I can't speak for Matroska's design because I'm not all that familliar with it, but I designed my project with readibility of code and scalability of the algorithm and the entire thing including the interface isn't even 3100 lines if I remember right.
Moore's law makes CPU speed effectively infinite given enough time. Programmer man-hours however, will always be finite. Designing systems that are easy to understand and extend makes them easier to go back and optimize or improve later. Speed can be important but writing it so it can be understood, even if you go back and comment that to put in a faster implementation, is often even more important.
Sign-up for Ads Free at Mail.com