BradLarson/GPUImage — pull request #1361 by karlvr (2014-01-07 05:30:18+00:00)
Title: Screen blend filter expected input as premultiplied alpha.

I have modified the shader to expect the input as non-premultiplied alpha.

I believe the expected input is unpremultiplied alpha? I'm a bit confused to be honest! I've been working on a filter to unpremultiply alpha and I intend to work that into the GPUImagePicture class so it can fix images on the way in.

Am I right that the shaders should expect unpremultiplied?

Also I changed the screen formula to the slightly simpler version:
B(cb,cs) = 1 – [(1–cb)×(1–cs)] = cb + cs – (cb × cs)

I'm not sure whether this has an efficiency implication.