[FFmpeg-devel] [PATCH] IFF: Add grayscale support to decoder
Ronald S. Bultje
Thu May 13 20:31:05 CEST 2010
On Thu, May 13, 2010 at 1:25 PM, Sebastian Vater
<cdgs.basty at googlemail.com> wrote:
> So this patch fixes this issue by setting PIX_FMT_GRAY8 only if bpp == 8
> and initializes a custom RGB color palette for bpp < 8 simulating
> correct behaviour (pictures are way too dark otherwise).
> Please note that the GRAY2RGB macro will later be used by HAM, too.
> +#define GRAY2RGB(x) (((x) << 16) | ((x) << 8) | (x))
So, this is OK in principle, but you're calculating x 3 times here.
Just look at the disasembly. A static inline function might be better.
> - return avctx->bits_per_coded_sample <= 8 ?
> + return (avctx->bits_per_coded_sample <= 8 &&
> + avctx->pix_fmt != PIX_FMT_GRAY8) ?
avctx->pix_fmt == PAL8 ? .. : .. should achieve the same thing in 1
line less code.
Rest of the patch is OK, good work.
More information about the ffmpeg-devel