]>
git.sesse.net Git - movit/log
Steinar H. Gunderson [Wed, 9 Jan 2013 20:52:55 +0000 (21:52 +0100)]
Do not output .dot and .frag debug files if NDEBUG is set.
Steinar H. Gunderson [Wed, 9 Jan 2013 19:21:13 +0000 (20:21 +0100)]
Allow data files to be fetched somewhere else than the current directory.
Steinar H. Gunderson [Wed, 9 Jan 2013 19:12:06 +0000 (20:12 +0100)]
Change to using GLEW everywhere.
We could have done this on Windows only, but it's just as simple to
keep the dependency list equal on all platforms. This subsumes our
own extension-checking logic, too.
Steinar H. Gunderson [Mon, 26 Nov 2012 23:45:21 +0000 (00:45 +0100)]
Use the -MP switch (make phony) for better dependency generation when files are removed.
Steinar H. Gunderson [Mon, 26 Nov 2012 23:44:13 +0000 (00:44 +0100)]
Simplify the Makefile for building unit tests.
Steinar H. Gunderson [Mon, 26 Nov 2012 23:41:35 +0000 (00:41 +0100)]
Only run the pkg-config line for Eigen3 once.
Also, print an error message if pkg-config has failed.
skal [Fri, 16 Nov 2012 20:40:00 +0000 (21:40 +0100)]
use the argument from command line as file to process, if present
Steinar H. Gunderson [Thu, 15 Nov 2012 19:07:44 +0000 (20:07 +0100)]
Added a rudimentary README.
Steinar H. Gunderson [Tue, 6 Nov 2012 00:46:32 +0000 (01:46 +0100)]
Make the dither effect cheat a small bit and use a repeating dither texture no greater than 128x128, to save memory bandwidth.
Steinar H. Gunderson [Tue, 6 Nov 2012 00:30:30 +0000 (01:30 +0100)]
Make the ResampleEffect minimum tolerated error smaller; I could really see some artifacts when looking hard.
Steinar H. Gunderson [Tue, 6 Nov 2012 00:09:16 +0000 (01:09 +0100)]
Add an implementation of RPDF dither on the final output.
Steinar H. Gunderson [Mon, 5 Nov 2012 23:02:23 +0000 (00:02 +0100)]
Add resample_effect_test to .gitignore.
Steinar H. Gunderson [Mon, 5 Nov 2012 22:56:39 +0000 (23:56 +0100)]
Allow the EffectChainTester framebuffer to be in something else than float. This is useful since Mesa's glReadPixels() does not round, but the Intel hardware does.
Steinar H. Gunderson [Mon, 5 Nov 2012 20:36:43 +0000 (21:36 +0100)]
Add a variant of expect_equal() for uint8s.
Steinar H. Gunderson [Mon, 5 Nov 2012 20:24:31 +0000 (21:24 +0100)]
Add a function for EffectChainTester to get out the uint8 result.
Steinar H. Gunderson [Mon, 5 Nov 2012 20:22:15 +0000 (21:22 +0100)]
Factorize out some stuff from EffectChainTester::run().
Steinar H. Gunderson [Sat, 3 Nov 2012 17:22:15 +0000 (18:22 +0100)]
Add a missing const.
Steinar H. Gunderson [Sat, 3 Nov 2012 17:12:11 +0000 (18:12 +0100)]
Correct some untrue statements about CIECAM02 chromatic adaptation.
Steinar H. Gunderson [Sat, 3 Nov 2012 16:39:11 +0000 (17:39 +0100)]
When correcting for white balance, move the D65 normalization into compute_lms_scaling_factors() instead of folding it into the LMS matrix. This makes much more sense, and should be equivalent.
Steinar H. Gunderson [Sat, 3 Nov 2012 15:27:11 +0000 (16:27 +0100)]
Switch from the HPE matrix (RLAB space) to the Bradford matrix for white balancing.
Steinar H. Gunderson [Sat, 3 Nov 2012 15:16:13 +0000 (16:16 +0100)]
Move the XYZ (Y=1) definition of D65 to d65.h.
Steinar H. Gunderson [Sat, 3 Nov 2012 14:06:43 +0000 (15:06 +0100)]
Add a separate header file for the D65 white point.
Steinar H. Gunderson [Sat, 3 Nov 2012 14:03:15 +0000 (15:03 +0100)]
Make some constants static const.
Steinar H. Gunderson [Sun, 28 Oct 2012 23:02:54 +0000 (00:02 +0100)]
Update the comment on movit_texel_subpixel_precision.
Steinar H. Gunderson [Sun, 28 Oct 2012 18:58:23 +0000 (19:58 +0100)]
Add (safe) asserts around all Effect::set_* return values, and add warnings for not checking them.
Steinar H. Gunderson [Sun, 28 Oct 2012 17:48:25 +0000 (18:48 +0100)]
Check required extensions at start.
Steinar H. Gunderson [Sun, 28 Oct 2012 17:14:36 +0000 (18:14 +0100)]
Add the weight combining back, now that we have proper control over the interpolation error.
Steinar H. Gunderson [Sun, 28 Oct 2012 16:40:56 +0000 (17:40 +0100)]
Make combine_two_pixels() handle the fact that the GPU has limited subpixel interpolation precision.
Currently we only use it to somewhat improve the total_weight estimate
to reduce the error slightly. However, the function can now also return
the total error estimate, which will be useful for knowing when we can
and cannot combine weights with reasonable error.
Steinar H. Gunderson [Sun, 28 Oct 2012 15:45:51 +0000 (16:45 +0100)]
Do not inline combine_two_samples(); util.h has way too many files depending on it, leading to poor incremental compile times.
Steinar H. Gunderson [Sat, 27 Oct 2012 19:17:45 +0000 (21:17 +0200)]
Revert "Use the bilinear sampling trick in ResampleEffect."
On second thought, this doesn't really look correct; there are some artifacts.
This reverts commit
1a06994ccdeedba95a1bdd2c3c12bb54a7a897f9 .
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.