]>
git.sesse.net Git - movit/log
Steinar H. Gunderson [Sat, 27 Oct 2012 19:13:25 +0000 (21:13 +0200)]
Use the bilinear sampling trick in ResampleEffect.
This is a bit more complex than in BlurEffect, since we can have negative weights.
I had to adjust the test that's based on canonical output; I'm actually not 100%
sure, but everything else passes, the normal output looks fine, and who knows if
the previous value was actually the more accurate anyway (the difference is
just barely large enough to trigger the test).
Increases speed by over 50% on my machine.
Steinar H. Gunderson [Sat, 27 Oct 2012 19:10:52 +0000 (21:10 +0200)]
Factorize the code to compute sampling points for bilinear sampling into a shared function, and support negative weights.
Steinar H. Gunderson [Sat, 27 Oct 2012 17:57:18 +0000 (19:57 +0200)]
Implement wrapping of the resampling parameter texture.
Effectively a no-op frame rate-wise on my machine, but it saves some texture RAM.
Steinar H. Gunderson [Sat, 27 Oct 2012 11:38:46 +0000 (13:38 +0200)]
Add an effect for Lanczos resampling.
Steinar H. Gunderson [Tue, 16 Oct 2012 23:34:22 +0000 (01:34 +0200)]
Support different chroma positioning for Cb and Cr. The test is slightly shaky, so it needs high tolerances, but at least there is a test.
Steinar H. Gunderson [Tue, 16 Oct 2012 23:07:20 +0000 (01:07 +0200)]
Refactor YCbCr chroma offset calculation into a separate function.
Steinar H. Gunderson [Tue, 16 Oct 2012 22:15:15 +0000 (00:15 +0200)]
Add a high-cutoff filter to the glow effect.
Steinar H. Gunderson [Mon, 15 Oct 2012 18:49:11 +0000 (20:49 +0200)]
Add a unit test for Rec. 709 YCbCr.
Steinar H. Gunderson [Mon, 15 Oct 2012 18:04:42 +0000 (20:04 +0200)]
Add a unit test for 4:2:0 YCbCr input.
Steinar H. Gunderson [Mon, 15 Oct 2012 18:04:26 +0000 (20:04 +0200)]
The chroma positioning in YCbCrInput was broken; it moved things too far away when they were different from the center position. Fix.
Steinar H. Gunderson [Mon, 15 Oct 2012 00:06:20 +0000 (02:06 +0200)]
Fix initial pitch calculation in YCbCrInput when using subsampling.
Steinar H. Gunderson [Sun, 14 Oct 2012 23:57:51 +0000 (01:57 +0200)]
Add a unit test for full-range Rec. 601 YCbCr.
Steinar H. Gunderson [Sun, 14 Oct 2012 23:42:40 +0000 (01:42 +0200)]
Add a unit test for YCbCrInput (not done yet).
Steinar H. Gunderson [Sun, 14 Oct 2012 22:06:50 +0000 (00:06 +0200)]
Fix YCbCrInput returning bogus data if we do set_pixel_data() before finalize.
Steinar H. Gunderson [Sun, 14 Oct 2012 21:02:51 +0000 (23:02 +0200)]
Add a coverage target to the Makefile.
Steinar H. Gunderson [Sun, 14 Oct 2012 19:04:05 +0000 (21:04 +0200)]
Add a unit test for LiftGammaGainEffect.
Steinar H. Gunderson [Sun, 14 Oct 2012 17:32:53 +0000 (19:32 +0200)]
Convert from our home-grown matrices to Eigen all over.
Steinar H. Gunderson [Sun, 14 Oct 2012 16:12:07 +0000 (18:12 +0200)]
Remove dead function set_uniform_float_array().
Steinar H. Gunderson [Sun, 14 Oct 2012 16:03:28 +0000 (18:03 +0200)]
Add unit tests for WhiteBalanceEffect.
Steinar H. Gunderson [Sun, 14 Oct 2012 15:07:01 +0000 (17:07 +0200)]
The white balance effect was computing all wrong LMS scaling factors, since it was multiplying with the wrong matrices. Fixed.
Steinar H. Gunderson [Sun, 14 Oct 2012 13:02:32 +0000 (15:02 +0200)]
Make the bools in the demo app bools instead of 0/1 integers (some legacy from the C past there).
Steinar H. Gunderson [Sun, 14 Oct 2012 13:00:45 +0000 (15:00 +0200)]
Add a missing .gitignore. Again.
Steinar H. Gunderson [Sun, 14 Oct 2012 13:00:24 +0000 (15:00 +0200)]
Add a unit test for FlatInput.
Steinar H. Gunderson [Sun, 14 Oct 2012 11:45:29 +0000 (13:45 +0200)]
Add a unit test for DiffusionEffect.
Steinar H. Gunderson [Sun, 14 Oct 2012 11:21:01 +0000 (13:21 +0200)]
Add unit tests to EffectChain testing that the sRGB conversion on the GPU works.
Steinar H. Gunderson [Sun, 14 Oct 2012 10:48:03 +0000 (12:48 +0200)]
ColorSpace -> Colorspace. I kept typing it wrong, so even though I usually say color space, it is seemingly the best choice. :-)
Steinar H. Gunderson [Sun, 14 Oct 2012 10:46:48 +0000 (12:46 +0200)]
Add unit tests for colorspace conversion insertion.
Steinar H. Gunderson [Sun, 14 Oct 2012 10:35:35 +0000 (12:35 +0200)]
Fix a typo.
Steinar H. Gunderson [Sun, 14 Oct 2012 10:31:40 +0000 (12:31 +0200)]
Add a reference for where the D65 white point comes from.
Steinar H. Gunderson [Sun, 14 Oct 2012 10:29:55 +0000 (12:29 +0200)]
Add a unit test for the colorspace conversions.
Steinar H. Gunderson [Sun, 14 Oct 2012 01:12:32 +0000 (03:12 +0200)]
Find Y from the xyz and the D65 white point instead of using the luma coefficients from the standards; for sRGB, that was right, but for Rec. 601 it certainly was not. (This was massively fiddly, but in the end became surprisingly simple.)
Steinar H. Gunderson [Sat, 13 Oct 2012 22:54:07 +0000 (00:54 +0200)]
Support conversion to and from the XYZ color space.
Steinar H. Gunderson [Sat, 13 Oct 2012 22:10:50 +0000 (00:10 +0200)]
Add a hack so that RGBA pixels are flipped properly in unit tests.
Steinar H. Gunderson [Sat, 13 Oct 2012 21:51:12 +0000 (23:51 +0200)]
Move the GL_UNPACK_ALIGNMENT setting into the texture creation, so that clients won't have to worry.
Steinar H. Gunderson [Sat, 13 Oct 2012 21:43:12 +0000 (23:43 +0200)]
Fix an issue where we could try to incorrectly gamma correct the colorspace conversion inserted at the end, due to a missing propagate call.
Steinar H. Gunderson [Sat, 13 Oct 2012 20:26:22 +0000 (22:26 +0200)]
Deallocation in YCbCrInput.
Steinar H. Gunderson [Sat, 13 Oct 2012 20:18:07 +0000 (22:18 +0200)]
More deallocation.
Steinar H. Gunderson [Sat, 13 Oct 2012 19:56:43 +0000 (21:56 +0200)]
Be better at cleaning up at destruction time. Still stuff to do.
Steinar H. Gunderson [Sat, 13 Oct 2012 19:28:41 +0000 (21:28 +0200)]
Add unit tests for UnsharpMaskEffect.
Steinar H. Gunderson [Sat, 13 Oct 2012 19:18:39 +0000 (21:18 +0200)]
Be more consistent about how we handle textures and bouncing; either bounce them, or do not. Trying to do both (in different phases) causes issues currently.
Steinar H. Gunderson [Sat, 13 Oct 2012 17:09:33 +0000 (19:09 +0200)]
In the graph debug output, color each node according to which phase they are in.
Steinar H. Gunderson [Sat, 13 Oct 2012 16:43:15 +0000 (18:43 +0200)]
Remove stray leftover debugging.
Steinar H. Gunderson [Sat, 13 Oct 2012 13:46:12 +0000 (15:46 +0200)]
Fix a segfault in the DoubleSaturation test.
Steinar H. Gunderson [Sat, 13 Oct 2012 13:45:38 +0000 (15:45 +0200)]
Fix a GLSL warning.
Steinar H. Gunderson [Sat, 13 Oct 2012 13:41:41 +0000 (15:41 +0200)]
Add missing file mipmap_needing_effect.frag.
Steinar H. Gunderson [Sat, 13 Oct 2012 13:41:31 +0000 (15:41 +0200)]
Add a unit test for BlurEffect.
Steinar H. Gunderson [Sat, 13 Oct 2012 13:39:19 +0000 (15:39 +0200)]
Add a test that verifies resizing works. Incidentially, it is the first test that verifies multi-pass behavior.
Steinar H. Gunderson [Sat, 13 Oct 2012 13:33:43 +0000 (15:33 +0200)]
Unbreak multi-phase rendering after we added the render-to-FBO functionality.
Steinar H. Gunderson [Sat, 13 Oct 2012 13:26:08 +0000 (15:26 +0200)]
Fix a case with non-float input textures.
Steinar H. Gunderson [Sat, 13 Oct 2012 12:41:54 +0000 (14:41 +0200)]
MipmapGenerationWorks should be run with linear in/out (there was a cut-and-paste snafu).
Steinar H. Gunderson [Sat, 13 Oct 2012 12:14:48 +0000 (14:14 +0200)]
Even more informative output when single-pixel test fails.
Steinar H. Gunderson [Sat, 13 Oct 2012 12:11:03 +0000 (14:11 +0200)]
Have expect_equal() pinpoint the pixel with the largest error when that test fails.
Steinar H. Gunderson [Sat, 13 Oct 2012 11:31:01 +0000 (13:31 +0200)]
Radius calculation in the blur was about 10% off. Probably impossible to notice, but I guess nice to fix.
Steinar H. Gunderson [Sat, 13 Oct 2012 11:14:32 +0000 (13:14 +0200)]
Minor stylistic fix in the deconvolution test.
Steinar H. Gunderson [Sat, 13 Oct 2012 10:58:59 +0000 (12:58 +0200)]
Add a unit test that tests that mipmap generation works.
Steinar H. Gunderson [Sat, 13 Oct 2012 10:58:12 +0000 (12:58 +0200)]
FlatInput had broken mipmap generation. Fixed.
Steinar H. Gunderson [Sat, 13 Oct 2012 10:24:32 +0000 (12:24 +0200)]
Add the two missing deconvolution tests.
Steinar H. Gunderson [Sat, 13 Oct 2012 01:16:54 +0000 (03:16 +0200)]
Oops, forgot to actually add deconvolution_sharpen_effect_test.cpp.
Steinar H. Gunderson [Sat, 13 Oct 2012 01:13:09 +0000 (03:13 +0200)]
Ignore yet more test binaries.
Steinar H. Gunderson [Sat, 13 Oct 2012 01:12:55 +0000 (03:12 +0200)]
Split the TESTS= line in the Makefile now, since it is becoming quite long.
Steinar H. Gunderson [Sat, 13 Oct 2012 01:12:20 +0000 (03:12 +0200)]
Add a test for DeconvolutionSharpenEffect. Not completely done yet, but basic functionality is fine.
Steinar H. Gunderson [Sat, 13 Oct 2012 01:02:17 +0000 (03:02 +0200)]
Let users of expect_equal() override the default tolerance limits.
Steinar H. Gunderson [Sat, 13 Oct 2012 01:01:39 +0000 (03:01 +0200)]
Fix the mishandling of radius in the Gaussian deconvolution (it was off by a factor of sqrt(2)).
Steinar H. Gunderson [Fri, 12 Oct 2012 23:06:17 +0000 (01:06 +0200)]
Add the new tests to .gitignore.
Steinar H. Gunderson [Fri, 12 Oct 2012 22:59:23 +0000 (00:59 +0200)]
Add tests to check that rewriting works, and that gamma conversions are or are not inserted as needed.
Steinar H. Gunderson [Fri, 12 Oct 2012 22:20:28 +0000 (00:20 +0200)]
Add unit tests for back-and-forth conversions through sRGB and Rec. 709 gamma.
Steinar H. Gunderson [Fri, 12 Oct 2012 22:02:31 +0000 (00:02 +0200)]
Rename PROFILE= to COVERAGE=.
Steinar H. Gunderson [Fri, 12 Oct 2012 22:02:18 +0000 (00:02 +0200)]
Add a unit test for SaturationEffect.
Steinar H. Gunderson [Fri, 12 Oct 2012 21:43:28 +0000 (23:43 +0200)]
Support non-grayscale formats in the test pipeline, since we will want color quite soon.
Steinar H. Gunderson [Fri, 12 Oct 2012 20:59:38 +0000 (22:59 +0200)]
Now that we render to an FBO, we can do with a much smaller window for the test.
Steinar H. Gunderson [Fri, 12 Oct 2012 20:57:09 +0000 (22:57 +0200)]
Set RMS limit much tighter, now that we have floating-point textures.
Steinar H. Gunderson [Fri, 12 Oct 2012 20:56:13 +0000 (22:56 +0200)]
Add a unit test for GammaCompressionEffect.
Steinar H. Gunderson [Fri, 12 Oct 2012 20:52:28 +0000 (22:52 +0200)]
Add unit tests for Rec. 709 gamma expansion.
Steinar H. Gunderson [Fri, 12 Oct 2012 20:47:54 +0000 (22:47 +0200)]
Clean up profile files and .dot files.
Steinar H. Gunderson [Fri, 12 Oct 2012 20:47:41 +0000 (22:47 +0200)]
Do not unconditionally profile (that was a miscommit). Instead, make a PROFILE=1 parameter.
Steinar H. Gunderson [Fri, 12 Oct 2012 20:30:38 +0000 (22:30 +0200)]
If an output is not in the right output gamma but is in linear, that has to be good enough. Fixes an infinite loop.
Steinar H. Gunderson [Fri, 12 Oct 2012 20:24:14 +0000 (22:24 +0200)]
If at least one test fails, make check should also fail.
Steinar H. Gunderson [Fri, 12 Oct 2012 20:22:07 +0000 (22:22 +0200)]
Do not output the shader compile log if it is empty.
Steinar H. Gunderson [Fri, 12 Oct 2012 20:17:49 +0000 (22:17 +0200)]
Add a test for GammaExpansionEffect. Not done yet.
Steinar H. Gunderson [Fri, 12 Oct 2012 20:14:46 +0000 (22:14 +0200)]
Output the chained shaders to temporary files instead of to stdout, since it's near-impossible to see the test output with so much stuff in the way.
Steinar H. Gunderson [Fri, 12 Oct 2012 20:04:48 +0000 (22:04 +0200)]
Make unit tests render to a floating-point FBO, so that we get full precision.
Steinar H. Gunderson [Fri, 12 Oct 2012 19:27:43 +0000 (21:27 +0200)]
Support rendering to a given FBO instead of to the screen.
Steinar H. Gunderson [Fri, 12 Oct 2012 17:45:37 +0000 (19:45 +0200)]
Fix some issues with the case where we need to expand gamma to linear, but not compress afterwards.
Steinar H. Gunderson [Fri, 12 Oct 2012 17:21:24 +0000 (19:21 +0200)]
Fix step numbering.
Steinar H. Gunderson [Fri, 12 Oct 2012 17:06:21 +0000 (19:06 +0200)]
Fix a bug where find_nonlinear_inputs() would choke on GammaCompressionEffect and hit an infinite loop.
Steinar H. Gunderson [Fri, 12 Oct 2012 16:58:20 +0000 (18:58 +0200)]
Yet more Makefile tweaks/fixes.
Steinar H. Gunderson [Fri, 12 Oct 2012 00:25:34 +0000 (02:25 +0200)]
Add a unit test for MixEffect.
Steinar H. Gunderson [Fri, 12 Oct 2012 00:20:17 +0000 (02:20 +0200)]
can_output_linear_gamma() should never return true for float inputs.
Steinar H. Gunderson [Thu, 11 Oct 2012 23:59:36 +0000 (01:59 +0200)]
Split test utilities out into its own file.
Steinar H. Gunderson [Thu, 11 Oct 2012 23:58:57 +0000 (01:58 +0200)]
Ignore some gcov stuff.
Steinar H. Gunderson [Thu, 11 Oct 2012 23:50:44 +0000 (01:50 +0200)]
Fix an overly aggressive search-and-replace in the Makefile.
Steinar H. Gunderson [Thu, 11 Oct 2012 23:34:11 +0000 (01:34 +0200)]
Add some more simple tests to EffectChainTest.
Steinar H. Gunderson [Thu, 11 Oct 2012 22:35:18 +0000 (00:35 +0200)]
Start on unit testing (adds a dependency on Google Test). Right now, we have a single trivial test.
Steinar H. Gunderson [Thu, 11 Oct 2012 21:57:22 +0000 (23:57 +0200)]
Let FlatInput take in float data (sort of kludgy, though). Also remove the get_* methods, since we do not need them.
Steinar H. Gunderson [Thu, 11 Oct 2012 19:47:11 +0000 (21:47 +0200)]
needs_update should be set even after we have created the texture, since we have not actually filled it with anything.
Steinar H. Gunderson [Thu, 11 Oct 2012 17:05:04 +0000 (19:05 +0200)]
Split the test program from the actual library.
Steinar H. Gunderson [Wed, 10 Oct 2012 23:34:29 +0000 (01:34 +0200)]
Fix snafu in gamma expansion node insertion.
Steinar H. Gunderson [Wed, 10 Oct 2012 22:52:09 +0000 (00:52 +0200)]
Drop the 8-way symmetry; it causes bugs due to normalized texture coordinates.
Steinar H. Gunderson [Wed, 10 Oct 2012 22:43:02 +0000 (00:43 +0200)]
Simplify the refocus shader a bit.
Steinar H. Gunderson [Wed, 10 Oct 2012 22:42:49 +0000 (00:42 +0200)]
Fix a bug where we would send too few parameters down to the refocus shader.