[FFmpeg-devel] [PATCH]Fix tiff grayscale palette
Michael Niedermayer
michaelni at gmx.at
Tue Sep 6 01:06:55 CEST 2011
On Mon, Sep 05, 2011 at 10:56:02PM +0200, Carl Eugen Hoyos wrote:
> On Monday 05 September 2011 06:25:37 pm Michael Niedermayer wrote:
> > On Mon, Sep 05, 2011 at 03:03:13PM +0000, Carl Eugen Hoyos wrote:
> > > 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?
> >
> > invert (1<<bpp-1) - src[i] instead of 255 - src[i]
>
> New patch attached.
>
> Please comment, Carl Eugen
> tiff.c | 6 +++---
> 1 file changed, 3 insertions(+), 3 deletions(-)
> 3cd2658ab0315fa79da819882cb67cb75af10136 patchtiffgray.diff
LGTM
[...]
--
Michael GnuPG fingerprint: 9FF2128B147EF6730BADF133611EC787040B0FAB
Republics decline into democracies and democracies degenerate into
despotisms. -- Aristotle
-------------- next part --------------
A non-text attachment was scrubbed...
Name: not available
Type: application/pgp-signature
Size: 198 bytes
Desc: Digital signature
URL: <http://ffmpeg.org/pipermail/ffmpeg-devel/attachments/20110906/36be449b/attachment.asc>
More information about the ffmpeg-devel
mailing list