[FFmpeg-devel] pixfmt.h installed header using HAVE_BIGENDIAN?

Måns Rullgård mans
Sun Jan 17 15:57:15 CET 2010


Stefano Sabatini <stefano.sabatini-lala at poste.it> writes:

> On date Sunday 2010-01-17 14:30:35 +0000, M?ns Rullg?rd encoded:
>> Reimar D?ffinger <Reimar.Doeffinger at gmx.de> writes:
> [...]
>> >> > +#ifdef HAVE_AV_CONFIG_H
>> >> > +#include "config.h"
>> >> >  #if HAVE_BIGENDIAN
>> >> >  #   define PIX_FMT_NE(be, le) PIX_FMT_##be
>> >> >  #else
>> >> > @@ -148,5 +150,6 @@
>> >> >  #define PIX_FMT_YUV420P16 PIX_FMT_NE(YUV420P16BE, YUV420P16LE)
>> >> >  #define PIX_FMT_YUV422P16 PIX_FMT_NE(YUV422P16BE, YUV422P16LE)
>> >> >  #define PIX_FMT_YUV444P16 PIX_FMT_NE(YUV444P16BE, YUV444P16LE)
>> >> > +#endif
>> >> >
>> >> >  #endif /* AVUTIL_PIXFMT_H */
>> >> 
>> >> This is the type of temporary hack that will stay forever.  If we
>> >> intend to ever fix it, we might as well do so now.  Having a broken
>> >> API serves nobody.
>> >
>> > Uh, that actually is my fix. What more do you want?
>> 
>> I want a f*cking sane API without internal ifdefs sprinkled about it.
>> Either the _NE formats move to a non-public header, or they go away
>> entirely.  I don't really care which, but the current situation is
>> nonsensical.
>
> +1 with feeling.
>
> What would be the problem with a pixfmt_internal.h header with the _NE
> stuff used by both lavc and lsws?
>
> This would break public API compatibiliy, but giving the fact that the
> _NE stuff is currently broken I don't believe people is actually using
> it.

Breaking something that doesn't work hardly counts as breaking...

-- 
M?ns Rullg?rd
mans at mansr.com



More information about the ffmpeg-devel mailing list