[Pixman] sRGB processing for pixman

Antti Lankila alankila at bel.fi
Mon Jun 25 11:06:06 PDT 2012


Søren Sandmann kirjoitti 25.6.2012 kello 20.47:

> Bill Spitzak <spitzak at gmail.com> writes:
> 
>> A problem is the pseudo-random starting point. This is necessary so
>> that you do not get vertical stripes when the rows have the same
>> data. But if you want your composites to not change, it has to be
>> deterministic. I'm not sure but perhaps a hash of the y coordinate of
>> the source will work, or that hash plus the color of a pixel at x==0.
> 
> Error diffusion is a good idea in principle, but the problem you
> describe above is quite tricky to deal with. A hash of the source y
> coordinate won't work in the case where the source is a solid color and
> the coordinates are simply (0, 0). A hash of the destination y
> coordinate is not going to work either, because it would cause stripes
> when scrolling.
> 
> I think we just need to fix the bug and make the transformed paths use
> the wide pipeline when wide formats are involved.

Agreement on this one. No lipstick on a pig.

In any case, dithering the wide path's sRGB destination would be mildly interesting, maybe, but I'm not going to do it, because a random dithering requires not only the error feedback but also a random perturbation term to work properly, and there is a likelihood that a random process anywhere causes issues down the line depending on what happens to the bitmap after pixman is done with it. Plus some people aren't going to like the fact that pixman results are random, so it would require a flag to turn off.

-- 
Antti


More information about the Pixman mailing list