[FFmpeg-devel] [PATCH]Fix tiff grayscale palette
Carl Eugen Hoyos
cehoyos at ag.or.at
Mon Sep 5 17:03:13 CEST 2011
Michael Niedermayer <michaelni <at> gmx.at> writes:
> > +++ b/libavcodec/tiff.c
> > @@ -294,8 +294,8 @@ static int init_image(TiffContext *s)
> > } else {
> > /* make default grayscale pal */
> > pal = (uint32_t *) s->picture.data[1];
> > - for (i = 0; i < 256; i++)
> > - pal[i] = i * 0x010101;
> > + for (i = 0; i < 1<<s->bpp; i++)
> > + pal[256 - (1<<s->bpp) + i] = i * 255 / ((1<<s->bpp) - 1) * 0x010101;
>
> filling the top only looks a bit strange why is it not
> pal[0..(1<<bpp)] ?
That doesn't work / shows wrong colours because TIFF_INVERT triggers "src[i] =
255 - src[i]" in the decode function.
Should the palette be filled from both ends?
Or is there a better solution?
Carl Eugen
More information about the ffmpeg-devel
mailing list