Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Dynamic Movement Bilinear Filter artifiact #8

Open
azeem opened this issue Nov 5, 2013 · 0 comments
Open

Dynamic Movement Bilinear Filter artifiact #8

azeem opened this issue Nov 5, 2013 · 0 comments
Labels

Comments

@azeem
Copy link
Owner

azeem commented Nov 5, 2013

Bilinear filter shader code in compat: true mode is based on the avs BLEND4 code. This calculation produces inaccurate but more avs like results. Now the bug is this: In AVS if you use DM (with bFilter) on a white screen, the final filtered pixels will all be rgb(253,253,253). This works for the Webvs shader too, except that for some pixels the value comes to exactly rgb(255,255,255). This is not noticeable for most cases, but if you apply a colormap or a clip etc. these odd pixels start to show up as weird artifacts.

I have written a test case to bring this out https://github.com/azeem/webvs/blob/master/test/DynamicMovement.test.js#L104
Basically, this test clips off values above rgb(253, 253, 253) to show the artifacts. The result looks like this:
download 1

I've also figured out that this occurs when product of cornoff.x and cornoff.y is divisible by 255, which causes the sum of a1 to a4 to become exactly 255 without any flooring errors (unlike the remaining pixels) causing the output pixel to be exact white. Suprisingly though, the same problem should in principle happen in avs BLEND4 code as well (https://github.com/visbot/vis_avs/blob/master/avs/vis_avs/r_defs.h#L328), but it doesnt.

Will have to step through the AVS code to figure out why this happens. Any one with AVS build setup, please help!.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Projects
None yet
Development

No branches or pull requests

1 participant