Commit message (Collapse) | Author | Age | |
---|---|---|---|
* | meson: Various fixes | Xavier Claessens | 2022-04-25 |
| | | | | | | | | | | - Add missing lcms dependencies. That's needed when lcms is a subproject otherwise those targets does not find its headers. - Add lcms2 wrap so meson can build it as subproject in case the dependency is not found on system. - Fix couple meson warnings - Use meson.override_dependency() so babl can be used as subproject without hardcoding "babl_dep" variable name in main project. | ||
* | extensions: build arm-neon variants of basic extensions | Øyvind Kolås | 2022-03-22 |
| | |||
* | extensions: simple avoid unneccesary double | Øyvind Kolås | 2022-03-22 |
| | |||
* | CIE: full separation of single and double precision code | Øyvind Kolås | 2022-03-15 |
| | |||
* | avoid some avoidable implicit promotion to double | Øyvind Kolås | 2022-02-26 |
| | |||
* | Add CIE Lab alpha u16 format | Tomasz Golinski | 2022-02-19 |
| | |||
* | Add CIE Lab alpha u8 format | Tomasz Golinski | 2022-02-19 |
| | |||
* | sse2-float: correctly handle associted alpha in remainder | Øyvind Kolås | 2022-01-27 |
| | |||
* | babl: add more missing SIMD build related files | Øyvind Kolås | 2022-01-23 |
| | |||
* | extensions/cairo: add a correct enough for 8bit cairo32 to cairo24 conversion | Øyvind Kolås | 2022-01-23 |
| | |||
* | extensions: reduce amount of competing conversions | Øyvind Kolås | 2022-01-23 |
| | | | | | | | | Avoid loading extensions if a variant with better SIMD support is expected to exist. We know all variants that are expectd to exist and thus can register only the fastest known variant. This avoids combinatorial explosion of conversions to test. | ||
* | extensions: cairo remove a broken conversion, fix RGBA u8 to cairo reference | Øyvind Kolås | 2022-01-23 |
| | |||
* | multipass build, with SIMD variants for x86_64 and arm | Øyvind Kolås | 2022-01-23 |
| | | | | | | Some extensions have their own separate build, so does the RGB color space conversions, trc computations and base set of conversions. | ||
* | Oklab: disable only Oklch not Oklab | Øyvind Kolås | 2021-10-30 |
| | | | | | | | | | | Oklab itself is enabled by default now for testing, but does not seem to produce correct values with the Oklab test vectors, even with manual attempt at converting the test vector (presumed) CIE XYZ D65 to CIE XYZ D50 before running the conversion. The failure to pass symmetry tests as mentioned in issue #63 seems to be limited to Oklch, Oklab itself is fine. | ||
* | oklab: add double variant of code for model conversions | Øyvind Kolås | 2021-10-29 |
| | |||
* | oklab: add to meson, register model conversions | Øyvind Kolås | 2021-10-28 |
| | |||
* | quick fix | Mingye Wang | 2021-10-28 |
| | |||
* | oklab: chad back to D65 | Mingye Wang | 2021-10-28 |
| | |||
* | oklab, initial ver | Mingye Wang | 2021-10-28 |
| | |||
* | Another project can add babl as a subproject | santouits | 2021-02-25 |
| | |||
* | build: only check for link arg --no-undefined once | John Marshall | 2020-06-25 |
| | |||
* | build: code cleanup | John Marshall | 2020-06-25 |
| | |||
* | git: remove obsolete .gitignore files | John Marshall | 2020-06-25 |
| | |||
* | build: add build path variables | John Marshall | 2020-06-25 |
| | | | | - add build path variables for library and extensions | ||
* | HSV, HSL, HCY: wrap hue around during conversion to RGB | Ell | 2020-05-18 |
| | | | | | | | | In the conversions from HSV, HSL, and HCY to RGB, wrap the hue value around to the [0,1) range, instead of producing unspecified results outside this range. In particular, hue=1.0 may arise when going through lower precision, such as when decomposing/recomposing an 8-bit image in GIMP (see gimp#5097). | ||
* | avx2-int8: slightly improve accuracy of linear -> gamma tables | Ell | 2020-04-12 |
| | |||
* | avx2-int8: add gamma u8 -> linear float conversions | Ell | 2020-04-12 |
| | | | | | | | | | Add AVX2 conversions from u8 Y', Y'A, R'G'B, and R'G'B'A to float Y, YA, RGB, and RGBA, respectively. The conversions use an LUT together with the AVX2 gather instructions to process 8 values a once. Depending on the formats and cache utilization, the new conversions are between 1.25x to 2.2x faster than the existing conversions. | ||
* | CIE: comment out self assignments | Øyvind Kolås | 2019-11-28 |
| | | | | This squelches warnings when using clang as the compiler. | ||
* | cairo: add code path from Y'A float | Øyvind Kolås | 2019-08-22 |
| | |||
* | half/sse-half: register conversions for YaA as well | Øyvind Kolås | 2019-08-20 |
| | |||
* | float: add conversions to/from associated alpha for grayscale | Øyvind Kolås | 2019-08-20 |
| | | | | Further speeds up rotations/scales etc in all grayscale precisions. | ||
* | float: add grayscale alpha and trc converters | Øyvind Kolås | 2019-08-20 |
| | |||
* | gray: add graya to rgba expanders | Øyvind Kolås | 2019-08-20 |
| | |||
* | cairo: remove on of the conversaions added in last commit | Øyvind Kolås | 2019-08-19 |
| | |||
* | cairo: add more little endian conversions | Øyvind Kolås | 2019-08-19 |
| | |||
* | avx2, two-table: don't segfault for NaN input | Ell | 2019-08-19 |
| | | | | | | | In the AVX2 and two-table linear-float => gamma-int8 conversions, tweak the input bounds-check to handle NaN values. NaN would previously lead to an out-of-bounds table lookup, and a segfault (see issue #43). | ||
* | extensions: add a Y' u8 to RGBA float conversion | Øyvind Kolås | 2019-08-19 |
| | |||
* | extensions: add some u8 and u16 conversions for grayscale | Øyvind Kolås | 2019-08-19 |
| | | | | | This adds some missing end pieces for building much better than reference conversions for many useful u8 and u16 code paths. | ||
* | extensions: add sse2_cflags to CIE | Michael Schumacher | 2019-08-08 |
| | | | | Fixes #42 | ||
* | build: remove autotools | Øyvind Kolås | 2019-07-29 |
| | |||
* | extensions: distribute avx2-int8-tables.h | Ell | 2019-07-24 |
| | |||
* | extensions: add AVX2 linear-float -> gamma-u8 conversions | Ell | 2019-07-24 |
| | | | | | | | | | | | | | | | | Add AVX2 conversions from Y float, YA float, RGB float, and RGBA float, to Y' u8, Y'A u8, R'G'B' u8, and R'G'B'A u8, respectively. The conversions use a lookup table, similarly to the two-table conversions, indexed using AVX2's 256-bit gather instruction, which allow us to process 8 floats at once. Over here, this conversion is ~5x faster than the SSE conversions. Note, however, that unlike two-table, we don't use a second "feedback" table to correct the result, leading to an off-by-one conversion error with a probability of ~0.1%, using a 2^16-element table. This error rate is low enough for babl to use the conversion, but might still be a bit too high regardless; it can be further reduced with a bigger table. | ||
* | HCY: convert luminance relative to RGB chromaticities | Øyvind Kolås | 2019-07-24 |
| | |||
* | extensions/HSL: add model doc string | Øyvind Kolås | 2019-07-24 |
| | |||
* | extensions/HSV: update model docs | Øyvind Kolås | 2019-07-24 |
| | |||
* | extensions/HSV: add documentation for model | Øyvind Kolås | 2019-07-24 |
| | |||
* | extensions/CIE: add some documentation overrides | Øyvind Kolås | 2019-07-22 |
| | |||
* | docs: improve generated reference | Øyvind Kolås | 2019-07-22 |
| | | | | | When registering types, models, formats and components one can now specify override "doc" strings that end up in this reference. | ||
* | extensions/sse2-float: s/premul/assoc/ in function names | Øyvind Kolås | 2019-07-22 |
| | |||
* | extensions/gimp-8bit: s/premul/assoc/ in function names | Øyvind Kolås | 2019-07-22 |
| |