[FFmpeg-devel] WORDS_BIGENDIAN used in installed header avutil.h

Michael Niedermayer michaelni
Thu Jan 29 16:09:14 CET 2009


On Thu, Jan 29, 2009 at 01:41:42PM +0100, Diego Biurrun wrote:
> On Thu, Jan 29, 2009 at 12:21:52PM +0100, Michael Niedermayer wrote:
> > On Wed, Jan 28, 2009 at 03:16:46PM -0800, Baptiste Coudurier wrote:
> > > 
> > > Diego Biurrun wrote:
> > > > Houston, we have a problem.  The installed header avutil.h uses
> > > > WORDS_BIGENDIAN, which is #defined in config.h, which is not installed...
> > > > 
> > > 
> > > first, pix_fmt stuff should be moved to another header.
> > > 
> > > second, Im pretty sure, these redefines for RGBA/BGRA/32 whatever can be
> > > avoided if dealt within libswscale when choosing func pointer.
> > 
> > they are part of the public API and they are intentionally part of it.
> > They are usefull and used, for example in codecs.
> > 
> > IMHO we shouldnt be butchering the API
> 
> Ummm, clearly only half of it is part of the API, since the
> '#ifdef WORDS_BIGENDIAN' amounts to a '#if 0'...

That may be the implementation but certainly not the API.
Not every bug in the implementation is part of the API


> 
> So the goal of the API - different semantics on big-endian systems - is
> not achieved.

something like

grep WORDS_BIGENDIAN config.h && echo '#define WORDS_BIGENDIAN 1' > lib/avutil.h
cat avutil.h >> lib/avutil.h

would solve it
of course that can be done cleaner its just to show it can be solved
trivially without breaking the API

[...]
-- 
Michael     GnuPG fingerprint: 9FF2128B147EF6730BADF133611EC787040B0FAB

Freedom in capitalist society always remains about the same as it was in
ancient Greek republics: Freedom for slave owners. -- Vladimir Lenin
-------------- next part --------------
A non-text attachment was scrubbed...
Name: not available
Type: application/pgp-signature
Size: 189 bytes
Desc: Digital signature
URL: <http://lists.mplayerhq.hu/pipermail/ffmpeg-devel/attachments/20090129/702b388e/attachment.pgp>



More information about the ffmpeg-devel mailing list