[nzlug] developer cultures

David McNab david at rebirthing.co.nz
Wed Oct 24 11:31:20 NZDT 2007


On Wed, 2007-10-24 at 11:09 +1300, Richard Wade wrote:
> On Wed, October 24, 2007 10:08, David McNab wrote:
> > I've put forward the argument that the ffmpeg APIs (libavcodec,
> > libavformat etc) are unnecessarily low-level, and could benefit strongly
> > from higher level C primitives (or even C++ classes) which abstract away
> > a lot of the 'red tape'.
> 
> I suppose it's important to understand that developers working on that
> type of project will naturally be attracted to very detailed, low-level,
> code. In their view, the APIs provided are probably high-level in relation
> to the detailed code they've written to do the system's internal
> functions.

Agreed - if one gets one's head into that space, then one can totally
lose the client perspective without even realising it.

It's reminiscent of the VCR manuals in the early days, which made even
simple timed recording confusing for 60+ % of the user base.

> It probably shows that there's space for a glue API which has their
> libraries on one side and which exposes some aggregate functions to the
> user.

Yes!

> May be more generally useful in something like Pyton/Perl/Ruby,
> rather than in C?

Well, if a good quality C wrapper lib is written, it would be a snack to
wrap. As it is, SWIG haemorrhages at the existing avcodec.h/avformat.h
headers. And the API is not even suitable for SWIG, because so much has
to be done via n-level struct member accesses, rather than getter/setter
funcs.

I fear that if I wrote a mid-level C lib for lavc/lavf, it would break
within 3-6 months the way the lavf/lavc APIs keep changing.

Cheers
David

> --
> rik
> 
> 
> _______________________________________________
> NZLUG mailing list NZLUG at linux.net.nz
> http://www.linux.net.nz/cgi-bin/mailman/listinfo/nzlug
> 




More information about the NZLUG mailing list