Commit Graph

38 Commits

Author SHA1 Message Date
1c062e6dd0
Add LICENSE file
Thanks tdeo for pointing this out
2021-05-29 07:55:38 +02:00
146743d2c7
Use fixed array for lut generation
The old version that was generated at runtime didn’t actually contain
1.0 as a value, so getting full white output for int input was impossible.
2020-09-11 15:51:41 +02:00
0499d6e166
Add an explanation for the two dlls to the readme 2020-06-24 21:17:39 +02:00
40604b2692
update build script 2020-06-22 13:52:30 +02:00
79596bc4bd
Clamp input values for float if necessary 2020-06-22 13:01:18 +02:00
9fa8270564
Update release build script
Default binaries are now compiled for haswell or higher
because using FMA instructions results in a noticeable performance gain.
2020-05-26 18:18:21 +02:00
1f3957f449
Update dependencies 2020-05-26 18:12:58 +02:00
8ef0654595
No longer use LUT for 32bit input
That means you’ll finally get full 32bit precision, not just 8bit.
This comes at a cost (~20% lower FPS), but it’s a lot more accurate,
and there’s potentially room for optimization in the future because we
actually do math now instead of just hacky lookups in a 256-element
vector.
2020-05-26 18:12:39 +02:00
d762821b88
Add benchmarks 2020-05-24 20:46:23 +02:00
d9b960c6c1
Remove unneeded test import
Now this builds on stable again. I’ll put future benchmarks under
benches/ to be sure.
2020-05-17 00:22:53 +02:00
9d6482204d
Fix test 2020-05-15 20:28:50 +02:00
4831298a9b
Optimize LUT generation
Directly calling f32::mul_add is actually more accurate and faster here
because rustc seems to be unable to rearrange the original instructions
in a way that can utilize `fma`.
When directly comparing the two implementations, mul_add was about 10%
faster on my machine (Ryzen 1700 with native target in rustflags).
Relevant Godbolt: https://godbolt.org/z/DDRZ4-
2020-05-13 23:26:23 +02:00
7b2a14deaf
add script to build release binaries 2020-04-13 13:10:23 +02:00
8529163d68
No longer error on out of range float input 2020-04-13 13:09:00 +02:00
cde9f6656b
Update dependencies 2020-04-03 22:28:47 +02:00
70e782612d
Add error message for invalid float input
A few people encountered these. Looks like a few other filters don’t
clip their limited range output properly.
2020-03-25 11:11:07 +01:00
3307943585
Link AUR package in README 2020-02-26 23:09:43 +01:00
6ef53a04f0
Correct error in README 2020-02-26 23:04:05 +01:00
cf9280aa79
Add Cargo.lock 2020-02-26 22:35:19 +01:00
1051a6a9ff
remove test files 2020-02-26 22:21:31 +01:00
6db1f7f7c7
update readme (again) 2020-02-26 22:16:18 +01:00
1bd8e2f816
update readme 2020-02-26 22:15:27 +01:00
fa9d9e69cc
Add readme 2020-02-26 22:13:17 +01:00
38650845e7
Release 0.2.0 2020-02-19 20:53:45 +01:00
d9bc767c26
make white output more likely in float mask 2020-02-19 20:24:08 +01:00
ecab0b5028
Remove unneeded dependency, replace helper with macro 2020-02-19 20:20:45 +01:00
a687dd90c4
Use macro for different bitdepths 2020-02-19 20:17:16 +01:00
13ac41ed97
Remove experiments 2019-08-12 15:01:07 +02:00
c67dda5371
no longer drop uninitialized memory (fixes #1) 2019-06-04 20:33:07 +02:00
4b46eefa51
Switched to range syntax for bitdepth matching 2019-06-03 08:30:17 +02:00
cacc762810
Support all common formats 2019-06-02 23:06:24 +02:00
9236534dab
rustfmt 2019-06-02 15:31:27 +02:00
b4eb5d8399
only enable mask filter and properly check the input format 2019-06-02 14:43:53 +02:00
a18a2ec6e2
adg.Mask actually works and seems to be faster than the old version 2019-06-02 10:14:58 +02:00
e571f400d1
does this even build? I have no idea; the wifi is too bad 2019-06-01 15:07:49 +02:00
c36233859c
added test.py and example image for manual testing 2019-06-01 09:46:28 +02:00
783d36bbd2
working implementation with lut 2019-06-01 08:55:47 +02:00
cf9c084cba
initial commit 2019-05-30 11:06:53 +00:00