Thread: [Lcms-user] Would You Consider Adding A "Pass Through" Option
An ICC-based CMM for color management
Brought to you by:
mm2
From: Noel C. <NCarboni@ProDigitalSoftware.com> - 2015-02-01 14:03:09
|
Hi Marti / Open Source Developer(s), As always, thank you for publishing your excellent LittleCMS library. Virtually all we use LittleCMS on are RGBA images. One of the things we have to do now is handle the unused field (A) separately. Would it be possible/reasonable to add an option to LittleCMS so that it would simply carry through unused A values without modification (or with a simple format change, per the format specifiers)? As it is now we have to copy the data first, then color-manage it, but it would be nice to be able to have a single function (embodying a cmsDoTransform call) that would copy / color-manage / format-convert ALL the data in one pass. We already have workarounds implemented, but having it all done at once by LittleCMS would better serialize RAM access and save some computer time. On today's powerful multi-core machines RAM bandwidth can be a bottleneck. If you are open to the idea of adding this functionality to the product, I may be able to allocate some time to help with the implementation. If you are a LittleCMS user on the mailing list who would also like to see this addition, please let us know. Thanks. -Noel Carboni ProDigital Software |
From: Terence T. <ter...@gm...> - 2015-02-01 17:56:43
|
Noel, I've run into the same issue as you and I would find the option you described to color-manage RBGA images in an out-of-place manner very useful. Terence > On Feb 1, 2015, at 9:02 AM, Noel Carboni <NCarboni@ProDigitalSoftware.com> wrote: > > Hi Marti / Open Source Developer(s), > > As always, thank you for publishing your excellent LittleCMS library. > > Virtually all we use LittleCMS on are RGBA images. One of the things we have to do now is handle the unused field (A) separately. > > Would it be possible/reasonable to add an option to LittleCMS so that it would simply carry through unused A values without > modification (or with a simple format change, per the format specifiers)? > > As it is now we have to copy the data first, then color-manage it, but it would be nice to be able to have a single function > (embodying a cmsDoTransform call) that would copy / color-manage / format-convert ALL the data in one pass. We already have > workarounds implemented, but having it all done at once by LittleCMS would better serialize RAM access and save some computer time. > On today's powerful multi-core machines RAM bandwidth can be a bottleneck. > > If you are open to the idea of adding this functionality to the product, I may be able to allocate some time to help with the > implementation. > > If you are a LittleCMS user on the mailing list who would also like to see this addition, please let us know. > > Thanks. > > -Noel Carboni > ProDigital Software > > > ------------------------------------------------------------------------------ > Dive into the World of Parallel Programming. The Go Parallel Website, > sponsored by Intel and developed in partnership with Slashdot Media, is your > hub for all things parallel software development, from weekly thought > leadership blogs to news, videos, case studies, tutorials and more. Take a > look and join the conversation now. http://goparallel.sourceforge.net/ > _______________________________________________ > Lcms-user mailing list > Lcm...@li... > https://lists.sourceforge.net/lists/listinfo/lcms-user |
From: <mar...@li...> - 2015-02-02 07:39:08
|
Alright, this is now in the list of "desired features" for next releases. 2.7 release candidate will be out in days, so this would eventually make its way on 2.8 or maybe will take a little bit more. The difficulty is in keeping backwards compatibility, actually lcms skips over alpha channel, this is documented and somebody may use this behavior. Workarounds are to use same buffer for input and output or to copy full buffer prior color manage it. Regards Marti Maria The LittleCMS project http://www.littlecms.com Quoting Terence Tay <ter...@gm...>: > Noel, > > I've run into the same issue as you and I would find the option you > described to color-manage RBGA images in an out-of-place manner very > useful. > > Terence > > >> On Feb 1, 2015, at 9:02 AM, Noel Carboni >> <NCarboni@ProDigitalSoftware.com> wrote: >> >> Hi Marti / Open Source Developer(s), >> >> As always, thank you for publishing your excellent LittleCMS library. >> >> Virtually all we use LittleCMS on are RGBA images. One of the >> things we have to do now is handle the unused field (A) separately. >> >> Would it be possible/reasonable to add an option to LittleCMS so >> that it would simply carry through unused A values without >> modification (or with a simple format change, per the format specifiers)? >> >> As it is now we have to copy the data first, then color-manage it, >> but it would be nice to be able to have a single function >> (embodying a cmsDoTransform call) that would copy / color-manage / >> format-convert ALL the data in one pass. We already have >> workarounds implemented, but having it all done at once by >> LittleCMS would better serialize RAM access and save some computer >> time. >> On today's powerful multi-core machines RAM bandwidth can be a bottleneck. >> >> If you are open to the idea of adding this functionality to the >> product, I may be able to allocate some time to help with the >> implementation. >> >> If you are a LittleCMS user on the mailing list who would also like >> to see this addition, please let us know. >> >> Thanks. >> >> -Noel Carboni >> ProDigital Software >> >> >> ------------------------------------------------------------------------------ >> Dive into the World of Parallel Programming. The Go Parallel Website, >> sponsored by Intel and developed in partnership with Slashdot Media, is your >> hub for all things parallel software development, from weekly thought >> leadership blogs to news, videos, case studies, tutorials and more. Take a >> look and join the conversation now. http://goparallel.sourceforge.net/ >> _______________________________________________ >> Lcms-user mailing list >> Lcm...@li... >> https://lists.sourceforge.net/lists/listinfo/lcms-user |
From: <mar...@li...> - 2015-02-05 15:38:05
|
Hello, Time to do a maintenance release. This is the release candidate 1. If all works fine, the release will be out in a week. http://www.littlecms.com/lcms2-2.7rc1.tar.gz Some new features: - Added a flag to clip negative values in unbounded transforms (only gray, rgb, cmyk) - Added a global optimization that merges consecutive matrices in pipelines. Fixes loss of precision in some transforms - New projects for Mac XCode and Visual Studio 2013 - Some bugfixes and some new functions. See ChaneLog for more details. In addition, lcms2 is now tracked by Coverity and Travis https://scan.coverity.com/projects/2736/view_defects https://travis-ci.org/mm2/Little-CMS Coverity is a great static analyses tool. The current lcms2 version raises some errors on the testbed application. Actually, I only care about errors in the core engine, so testbed right now is less important. I would like to fix everything but my bandwidth is quite limited. Travis checks everything each time somebody completes into the git repository, so with this I get less possibilities of breaking the build. Enjoy! Marti Maria The LittleCMS Project http://www.littlecms.com |
From: Richard H. <hug...@gm...> - 2015-02-05 16:14:21
|
On 5 February 2015 at 15:37, <mar...@li...> wrote: > Time to do a maintenance release. This is the release candidate 1. If > all works fine, the release will be out in a week. I've installed this and tested with colord's test suite. It failed, but only just. There's a test that runs 1,1,1 through a sRGB->RGB-display-profile, and checks the return values. LCMS 2.6 returns 144,0,69 and 2.7 returns 144,1,69 -- this is obviously not noticeable, and I can easily increase the tolerance on the selft test output value, but a different result non-the-less. I can provide the profile and some more details if this is interesting to you, but I'm fine just fixing up the test. Ideas welcome. Richard. |
From: <mar...@li...> - 2015-03-17 13:07:44
|
Hello, After several delays I finally managed to get all ready for 2.7 release, please see the release candidate 3 on lcms site: http://www.littlecms.com/lcms2-2.7rc3.tar.gz This is final in the sense no more features will be added and it only will be changed if a catastrophic bug is found. Otherwise I will do the "official" lcms2-2.7 release this week. Regards Marti Maria The LittleCMS project http://www.littlecms.com |
From: Richard H. <hug...@gm...> - 2015-03-17 14:10:36
|
On 17 March 2015 at 13:07, <mar...@li...> wrote: > This is final in the sense no more features will be added and it only > will be changed if a catastrophic bug is found. Otherwise I will do > the "official" lcms2-2.7 release this week. All tests pass here; good to go for me. Thanks! Richard. |
From: John J. <joh...@gl...> - 2015-02-05 20:28:06
|
On 05/02/2015 15:37, mar...@li... wrote: > In addition, lcms2 is now tracked by Coverity and Travis > > https://scan.coverity.com/projects/2736/view_defects > https://travis-ci.org/mm2/Little-CMS > > > Coverity is a great static analyses tool. The current lcms2 version > raises some errors on the testbed application. Actually, I only care > about errors in the core engine, so testbed right now is less > important. I would like to fix everything but my bandwidth is quite > limited. Hi Marti, I was interested to see the Coverity results. I'm afraid I just got sent to https://scan.coverity.com/ along with the message that "You are not authorized to access this page.". Nor could I find lcms in the public projects list. Are the results public? Regards. John |
From: <mar...@li...> - 2015-02-05 21:33:49
|
Hi John, Login by using github, search for project named mm2/Little-CMS and request Observer status. I will approve the request and I think that's all. Regards Marti Quoting John Jefferies <joh...@gl...>: > On 05/02/2015 15:37, mar...@li... wrote: >> In addition, lcms2 is now tracked by Coverity and Travis >> >> https://scan.coverity.com/projects/2736/view_defects >> https://travis-ci.org/mm2/Little-CMS >> >> >> Coverity is a great static analyses tool. The current lcms2 version >> raises some errors on the testbed application. Actually, I only care >> about errors in the core engine, so testbed right now is less >> important. I would like to fix everything but my bandwidth is quite >> limited. > > Hi Marti, > > I was interested to see the Coverity results. I'm afraid I just got > sent to https://scan.coverity.com/ along with the message that "You > are not authorized to access this page.". Nor could I find lcms in > the public projects list. Are the results public? > > Regards. > > John |
From: Elle S. <ell...@ni...> - 2015-02-24 13:41:42
|
On 02/02/2015 02:38 AM, mar...@li... wrote: > Alright, this is now in the list of "desired features" for next > releases. 2.7 release candidate will be out in days, so this would > eventually make its way on 2.8 or maybe will take a little bit more. The GIMP devs would also like to use this option. Thanks! for putting it on the wish list for 2.8. Elle > Quoting Terence Tay <ter...@gm...>: > >> Noel, >> >> I've run into the same issue as you and I would find the option you >> described to color-manage RBGA images in an out-of-place manner very >> useful. >> >> Terence >> >> >>> On Feb 1, 2015, at 9:02 AM, Noel Carboni >>> <NCarboni@ProDigitalSoftware.com> wrote: >>> >>> Hi Marti / Open Source Developer(s), >>> >>> As always, thank you for publishing your excellent LittleCMS library. >>> >>> Virtually all we use LittleCMS on are RGBA images. One of the >>> things we have to do now is handle the unused field (A) separately. >>> >>> Would it be possible/reasonable to add an option to LittleCMS so >>> that it would simply carry through unused A values without >>> modification (or with a simple format change, per the format specifiers)? >>> >>> As it is now we have to copy the data first, then color-manage it, >>> but it would be nice to be able to have a single function >>> (embodying a cmsDoTransform call) that would copy / color-manage / >>> format-convert ALL the data in one pass. We already have >>> workarounds implemented, but having it all done at once by >>> LittleCMS would better serialize RAM access and save some computer >>> time. >>> On today's powerful multi-core machines RAM bandwidth can be a bottleneck. >>> >>> If you are open to the idea of adding this functionality to the >>> product, I may be able to allocate some time to help with the >>> implementation. >>> >>> If you are a LittleCMS user on the mailing list who would also like >>> to see this addition, please let us know. >>> >>> Thanks. >>> >>> -Noel Carboni >>> ProDigital Software >>> > Lcms-user mailing list > Lcm...@li... > https://lists.sourceforge.net/lists/listinfo/lcms-user > |
From: Noel C. <NCarboni@ProDigitalSoftware.com> - 2015-02-07 18:19:27
|
Hi Marti, I've completed integration of your 2.7 release candidate library into our products in development, and everything tests out great. With a couple of profiles that have traditionally given us visible mismatches the new version may actually be doing a little better (based on visual results) than its predecessor because of your new matrix multiplication optimization. Thanks for that. With this version, on a 4 year old 12 core system we're able to do a linearizing color transform on a 8200 x 8200 x 16 bits/channel image (67 MP) in 360 milliseconds. Not bad! By the way, the Visual Studio code analyzer found a few small issues with the sources, none of which are likely to be serious bugs. Things like malloc results being used without being checked for NULL, that sort of thing. I see that you've cleaned up some of the warnings we saw in the past with VS 2013 - thanks for that, it will make merging your releases into our baseline easier going forward. If knowing the places I've tidied up warnings could be interesting to you, I can make the sources available. Please let me know. Thanks again for all your hard work on this project. -Noel Carboni ProDigital Software |
From: <mar...@li...> - 2015-02-08 15:03:58
|
Hi Noel, Thanks for doing the testing. Regarding the warnings on malloc, yes, I care about that because that would mean vulnerability issues. BUT, please make sure this is on the lcms core engine and not in the testbed. The test bed is not so important because it is not supposed to be used in production code. I would like to have everything clear, but my bandwidth is limited and I have to choose. If anyway, you have found a place in the core engine where the non-happy path is not well handled, please let me know and I will try to fix ASAP. Thank you again Best regards Marti Quoting Noel Carboni <NCa...@pr...>: > Hi Marti, > > I've completed integration of your 2.7 release candidate library > into our products in development, and everything tests out great. > With a couple of profiles that have traditionally given us visible > mismatches the new version may actually be doing a little better > (based on visual results) than its predecessor because of your new > matrix multiplication optimization. Thanks for that. > > With this version, on a 4 year old 12 core system we're able to do a > linearizing color transform on a 8200 x 8200 x 16 bits/channel > image (67 MP) in 360 milliseconds. Not bad! > > By the way, the Visual Studio code analyzer found a few small issues > with the sources, none of which are likely to be serious bugs. > Things like malloc results being used without being checked for > NULL, that sort of thing. I see that you've cleaned up some of the > warnings we saw in the past with VS 2013 - thanks for that, it will > make merging your releases into our baseline easier going > forward. If knowing the places I've tidied up warnings could be > interesting to you, I can make the sources available. Please let > me know. > > Thanks again for all your hard work on this project. > > -Noel Carboni > ProDigital Software |
From: Elle S. <ell...@ni...> - 2015-02-07 19:59:14
|
Hi Marti, I checked the matrix conversions that were producing erroneous negative channel values and such with RGB values that were zero and near zero (http://sourceforge.net/p/lcms/mailman/message/32821597/). With lcms2.7, everything is working exactly as expected. Thanks! Elle |
From: <mar...@li...> - 2015-02-08 14:59:51
|
Hi Elle, Great! thanks for doing the testing Regards Marti Quoting Elle Stone <ell...@ni...>: > Hi Marti, > > I checked the matrix conversions that were producing erroneous negative > channel values and such with RGB values that were zero and near zero > (http://sourceforge.net/p/lcms/mailman/message/32821597/). > > With lcms2.7, everything is working exactly as expected. Thanks! > > Elle > > ------------------------------------------------------------------------------ > Dive into the World of Parallel Programming. The Go Parallel Website, > sponsored by Intel and developed in partnership with Slashdot Media, is your > hub for all things parallel software development, from weekly thought > leadership blogs to news, videos, case studies, tutorials and more. Take a > look and join the conversation now. http://goparallel.sourceforge.net/ > _______________________________________________ > Lcms-user mailing list > Lcm...@li... > https://lists.sourceforge.net/lists/listinfo/lcms-user |
From: Noel C. <NCarboni@ProDigitalSoftware.com> - 2015-03-18 00:10:55
|
Changes reviewed, new version integrated and tested in our products. Looks good! -Noel -----Original Message----- From: mar...@li... [mailto:mar...@li...] Sent: Tue, March 17, 2015 9:08 AM To: Lcms list Subject: Re: [Lcms-user] lcms2.7 release candidate 3 available Hello, After several delays I finally managed to get all ready for 2.7 release, please see the release candidate 3 on lcms site: http://www.littlecms.com/lcms2-2.7rc3.tar.gz This is final in the sense no more features will be added and it only will be changed if a catastrophic bug is found. Otherwise I will do the "official" lcms2-2.7 release this week. Regards Marti Maria The LittleCMS project http://www.littlecms.com ------------------------------------------------------------------------------ Dive into the World of Parallel Programming The Go Parallel Website, sponsored by Intel and developed in partnership with Slashdot Media, is your hub for all things parallel software development, from weekly thought leadership blogs to news, videos, case studies, tutorials and more. Take a look and join the conversation now. http://goparallel.sourceforge.net/ _______________________________________________ Lcms-user mailing list Lcm...@li... https://lists.sourceforge.net/lists/listinfo/lcms-user |
From: Christian S. <rea...@mo...> - 2015-03-18 08:39:17
|
> Am 18.03.2015 um 01:10 schrieb Noel Carboni <NCarboni@ProDigitalSoftware.com>: > > Changes reviewed, new version integrated and tested in our products. Same for me. But no wonder as fc3 just adds one function... Sincerely Christian -- Read our blog about news on our plugins: http://www.mbsplugins.de/ |