On Fri, 23 Dec 2016 15:49:16 +0100 Nicolas George <geo...@nsup.org> wrote:
> Le primidi 1er nivôse, an CCXXV, wm4 a écrit : > > [about windows COM system] > > > To make it short, everything in COM consists of structs with function > > pointers. Structs are never extended, if you need new function > > pointers, you just add new structs, which you can dynamically query > > from the old ones. This gives you 100% ABI downwards and upwards > > compatibility. You also don't have to worry about linking to functions > > not present in older Windows or whatever versions, because structs with > > function pointers are a compile-time thing. You will merely get a > > runtime failure when trying to query support for an unsupported struct. > > (I tried to avoid COM terms, but COM calls these structs "interfaces".) > > > > It's a pretty fascinating contrast to the fuckhackery we do with > > extending structs while trying to keep ABI compatibility, version > > and configure checks in API user code when trying to stay compatible > > with multiple libavcodec versions, etc. > > It is probably a large part of the reason windows is slow on tomorrow's > computers while Linux and BSD are fast on yesterday's. No, it's not. _______________________________________________ ffmpeg-devel mailing list ffmpeg-devel@ffmpeg.org http://ffmpeg.org/mailman/listinfo/ffmpeg-devel