- Oct 27, 2024
-
-
Øyvind "pippin" Kolås authored
-
Øyvind "pippin" Kolås authored
-
Øyvind "pippin" Kolås authored
-
Øyvind "pippin" Kolås authored
-
Øyvind "pippin" Kolås authored
-
- Oct 21, 2024
-
-
Øyvind "pippin" Kolås authored
-
- Oct 14, 2024
-
-
Øyvind "pippin" Kolås authored
It depends on set rounding mode, we get what we want from truncation + 0.5
-
-
Øyvind "pippin" Kolås authored
This should fix #102 - it seems -fno-unsafe-math-optimizations is not enough to counter -Ofast ending up neutering isnan()
-
- Oct 12, 2024
-
-
Jehan authored
On commonly-sized images, the HSL conversions went from near instant to "seeing-the-tiles-slowly-updating" after we switched some GIMP code to babl conversion. This is because the code is actually made to work in gamma 2.2 and the only conversion was from and to linear RGB. So when converting non-linear RGB, we were making far too many conversions. Let's have faster conversion paths.
-
Jehan authored
--input-profile and --output-profile options are replaced respectively by --input-space and --output-space (but the old option names still work for scripts compatibility). They can still be used to specify an ICC file like we used to, but additionally if you start with '*', you can select one of the known spaces, such as sRGB, Rec2020, etc. In the weird case that you wanted to select a profile in a path starting with '*' (it's not a forbidden character by the file system even though usually used for glob file selection), you can protect the initial character with a double asterisk '**'.
-
- Oct 01, 2024
-
-
Jacob Boerema authored
When building using clang and AVX2 is available on a users's computer running GIMP, then we get a crash when showing a 32-bit float image that includes NAN values. See e.g. GIMP issue gimp#11453 Apparently clang handles NAN in a different way than gcc and needs testing for NAN before doing a comparison on the value. So we add a test for isnan first and adjust the other conditions accordingly.
-
- Sep 21, 2024
-
-
Lukas Oberhuber authored
gimp#12064
-
- Sep 16, 2024
-
-
Jehan authored
rgbaf_to_Labaf_sse2() was falling back to the non-SSE2 algorithm when input and output were not 16-byte-aligned. Additionally to missing some good optimization, the slightly different implementation makes for creating opportunities for artifact-looking results when a single canvas is broken into smaller parts, some of which may be processed with one implementation, others with the other implementation. See: gimp#12030 gimp#2933
-
- Sep 13, 2024
-
-
Jehan authored
… codepath give different results than without SSE2. The slightly different result is expected and the SSE2 code does not seem bugged at all. The problem though is that in a single babl_process, we end up with different results, which may be amplified by further algorithm into surprising renders (cf. gimp#12030). With this commit, we ensure than when using the SSE2 codepath, we do not end processing the last few pixels with different code.
-
- Aug 19, 2024
-
-
Øyvind "pippin" Kolås authored
-
- Aug 17, 2024
-
-
Øyvind "pippin" Kolås authored
-
- Jun 14, 2024
-
-
Bruno authored
-
- May 24, 2024
-
- May 04, 2024
-
-
This fixes the following linker errors. ld.lld: error: undefined symbol: __android_log_print referenced by babl-internal.h:134 (../babl/babl-internal.h:134) babl/libbabl-0.1.so.0.208.1.p/babl-component.c.o:(babl_fatal) referenced by babl-internal.h:142 (../babl/babl-internal.h:142) babl/libbabl-0.1.so.0.208.1.p/babl-component.c.o:(babl_fatal) referenced by babl-internal.h:134 (../babl/babl-internal.h:134) babl/libbabl-0.1.so.0.208.1.p/babl-component.c.o:(babl_log)
-
- Apr 11, 2024
-
- Mar 25, 2024
-
-
Bruno authored
It is possible to use GCC on macOS.
-
- Feb 11, 2024
-
-
Jehan authored
Though the models may itself be registered with a similarly named attribute to mean they encode alpha, babl_format_has_alpha() in particular works by verifying if any of the components represents/encodes alpha. As a consequence, the function was failing to consider e.g. HSVA as a model encoding alpha.
-
- Feb 09, 2024
-
-
Øyvind "pippin" Kolås authored
-
Øyvind "pippin" Kolås authored
-
Øyvind "pippin" Kolås authored
-
- Jan 16, 2024
-
- Nov 27, 2023
-
-
Andre Klapper authored
-
- Nov 15, 2023
-
-
Jehan authored
Again, even though it's basically the same as float or half for a CLI tool (where all these floating point values are just converted from string representation), it is still interesting since the tool is doing actual conversion with a fish using the requested formats. Therefore it's a nice way to quickly test conversions in terminal.
-
Jehan authored
While apparently fixing the compilation for Windows (and still compiling on Linux), my previous commit was in fact crashing the CLI tool when it runs babl_init() in some infinite loop (it looks like it's crashing inside babl logging code, hence the infinite looping). Anyway this was annoying me that we had to build-in more than necessary from babl-internal when all I wanted was to share 2 functions. So I split babl-util with a new babl-shared-util. The latter is to be used only for the few utility functions which we might want to share with the CLI tool (so far, only the 2 half to/from float (en|de)coders). This time, I've not only compiled but also run the CLI tool both on Linux and with Wine for the Windows cross-build.
-
- Nov 14, 2023
-
-
Jehan authored
While I didn't have a problem for Linux builds, when cross-compiling for Windows, these errors occur: > babl-util.c:296: undefined reference to `babl_strcat' (and a few similar other "undefined reference" as this one gets fixed) This is because we include babl-internal.h in bin/babl.c but don't add the right compilation unit sources. The build was still finding them (or maybe ignoring them as the functions were unused in the babl CLI tool code) on Linux, but not on Windows.
-
- Nov 12, 2023
-
-
Jehan authored
The code to encode half values into and from float values was moved from type-half.c to babl-util.h as an internal function, to make it usable by the CLI code. It may not seem totally useful to have half support since anyway we convert from/to string for the CLI tool (in this regard, half and float are the same). But since the tool performs an actual babl conversion, it's actually a good way to test quickly that half conversion works properly too.
-
- Oct 27, 2023
-
-
- Oct 04, 2023
-
-
Jehan authored
Similar to babl_space_is_cmyk|gray() functions, because right now to know whether a space is RGB, we have to test whether it's **not** any of the other. And such code would break as soon as we will add new values to BablICCType.
-
- Aug 12, 2023
- Jul 25, 2023
-
-
John Marshall authored
-
John Marshall authored
-
- pluginsdir: to set BABL_PATH - girdir: location of introspection gir file - typelibdir: location of introspection typelib file
-
- May 16, 2023
-
-
Øyvind "pippin" Kolås authored
-