obs-studio/libobs/data
jpark37 f27ece50c9 libobs: Optimize lanczos shader, remove scaling
Use bilinear filtering to reduce 36 taps to 25 for the regular path.
This works because the middle weights are always between 0 and 1,
allowing texture coordinates to be placed strategically to sample
correct ratios. I'm not sure about the undistort path, so I've left that
alone.

Also remove scaling added in #526, after which weight normalization is
unnecessary. If we want to use or invent an algorithm with alternate
downscaling properties, that's fine, but I don't think we should change
Lanczos scaling to mean something it's not. The scale implementation was
also seen not working when applied directly to scene items because of
assumptions made about the projection matrix.

Intel GPA, SetStablePowerState, Intel HD Graphics 530, D3D11
644x478 -> 1323x1080: 3890 us -> 3401 us
1920x1080 -> 1280x720: 2555 us -> 2261 us
2019-07-26 20:45:33 -07:00
..
area.effect libobs: obs-filters: Area upscale shader 2019-07-17 21:11:18 -07:00
bicubic_scale.effect libobs: Optimize bicubic shader 2019-07-25 22:21:11 -07:00
bilinear_lowres_scale.effect libobs: Rework RGB to YUV conversion 2019-07-22 01:12:35 -07:00
default.effect libobs: Rework RGB to YUV conversion 2019-07-22 01:12:35 -07:00
default_rect.effect libobs: Remove need for DrawMatrix technique in effects 2016-03-21 21:22:26 -07:00
deinterlace_base.effect libobs: Simplify YUV conversion 2019-04-11 23:00:03 -07:00
deinterlace_blend.effect libobs: Simplify YUV conversion 2019-04-11 23:00:03 -07:00
deinterlace_blend_2x.effect libobs: Simplify YUV conversion 2019-04-11 23:00:03 -07:00
deinterlace_discard.effect libobs: Simplify YUV conversion 2019-04-11 23:00:03 -07:00
deinterlace_discard_2x.effect libobs: Simplify YUV conversion 2019-04-11 23:00:03 -07:00
deinterlace_linear.effect libobs: Simplify YUV conversion 2019-04-11 23:00:03 -07:00
deinterlace_linear_2x.effect libobs: Simplify YUV conversion 2019-04-11 23:00:03 -07:00
deinterlace_yadif.effect libobs: Simplify YUV conversion 2019-04-11 23:00:03 -07:00
deinterlace_yadif_2x.effect libobs: Simplify YUV conversion 2019-04-11 23:00:03 -07:00
format_conversion.effect libobs: obs-ffmpeg: win-dshow: Planar 4:2:2 video 2019-07-25 20:11:37 -07:00
lanczos_scale.effect libobs: Optimize lanczos shader, remove scaling 2019-07-26 20:45:33 -07:00
opaque.effect libobs: Add obs_get_opaque_effect function 2015-03-22 19:18:04 -07:00
premultiplied_alpha.effect libobs: Add premultiplied alpha base effect 2016-03-26 21:41:49 -07:00
repeat.effect libobs: Simplify YUV conversion 2019-04-11 23:00:03 -07:00
solid.effect libobs: Add random shader 2017-05-06 11:29:24 -07:00