Tuesday, August 19, 2008

GUIs for ArgyllCMS - Part 3: Javascript GUI

On the mailing list for ArgyllCMS there was also a post by Gorazd, announcing his Javscript GUI for ArgyllCMS.

Third GUI: Javascript web interface by Gorazd.

Can be downloaded and be run from there.


It wasn’t completely clear to me what it really does. First let’sstart with a screenshot:

As I understood it, it will create the command lines from the parameters you set in the web form. You then can paste this command line into your shell and run the Argyll binaries. This basically saves you time for looking up all the parameters, their meaning and allowed combinations. It can not run the applications for you since the browser can not execute binaries on your harddisk – otherwise this would require you to only download the Argyll binaries and then use the most current GUI.


I’m a little puzzled what it really is good for right now but I think it is a different direction to what we know already (stand-alone applications for color profile generating). Extending this to a web-service that can create profiles from the user input can be nice for the future.

GUIs for ArgyllCMS - Part 2: dispcalGUI

In my previous post I announced that I would like to compare the different GUIs for ArgyllCMS. dispcalGUI was announced yesterday and I couldn't wait trying it out right after ArgyllCMSGUI.

Second GUI: dispcalGUI by Florian Höch

Win32 version can be download from http://hoech.net/dispcalGUI/dispcalGUI-v0.1b-win32-x86.zip . It also needs an existing unpacked Argyll for Win32.

When you start dispcalGUI, a command line-like window will appear and shortly after you have to select the directory for the Argyll binaries.

It is a simpler and more user-oriented GUI than Argyll CMS GUI. Clearly, many options are missing – but this can be ignored for the majority of users. The only thing I had to change was the display type to LCD and then I pressed “Calibrate & profile”.

Similarly to Argyll CMS GUI, dispcal (for calibration) will run and afterwards dispread (for measuring the patches). The test chart is not generated by dispcalGUI but it uses one of the files that come with the ZIP file. In my case, a test chart with 512 patches was used. This also takes some time and I had to abort the operation since another operation was in front of dispread’s measurement window. I then redid the “Profile only” with a much smaller test chart to save time. It the ran dispread followed by colprof and showed the final dialog afterwards:

As soon as I pressed OK, the dispwin binary was run to install the profile.


I liked dispcalGUI because it’s much more intuitive than the command line binaries or Argyll CMS GUI. In addition, the automatic colorimeter detection worked like a charm. dispcalGUI comes much closer to lprof (which I haven’t tried for a while). There are no cons for me besides that it hides expert options- but do you really need them?

GUIs for ArgyllCMS - Part 1: ArgyllCMSGUI

Today I started a small experiment: let's try out the various graphical user interfaces for ArgyllCMS that were announced on the Argyll mailing list recently. In this first post ArgyllCMSGUI was analyzed from the user perspective. I tried to act like a normal user although I know the Argyll tools quite well.

First GUI: ArgyllGUI by Steven Greaves / Digifab.


You must download both the ArgyllCMSGUI (as a ZIP archive for Win32) and the Argyll CMS itself (fort he normal user I recommend the precompiled executables). I’ve used the following download links:



Then you have to put the unpacked ArgyllCMS files into any directory on your hard drive (e.g. C:\Program Files\Argyll_V1.0.2\ ). I then put the content of the ArgyllCMSGUI zip archive (the single file) into the bin folder of Argyll ( i.e. in my case C:\Program Files\Argyll_V1.0.2\bin\ ) and started the ArgyllCMSGui.exe. It will then ask you for the directory where you have your Argyll binaries – I have them in the same folder so I could just press OK. When I pressed Cancel, the ArgyllCMSGUI app crashed, btw.

Then you should see a screen like this:

I decided to first test the display calibration part, hence I pressed on the big icon with a display on it. Et voila:

It exposes all parameters of dispcal. The parameters are hacked into the software – so this is not guaranteed to work with any version of dispcal - but this shouldn’t be a big issue for the future. This list of parameters is probably overwhelming for all but the very experienced users – but Steve included the Argyll documentation in his app. Simply press the blue buble with the i in it and the window will expand to show the parameters and their meaning.

I’ve previously installed a software from MonacoSys (the software that came with my DTP94/Monaco Optix XR device). Since the provided driver does not work with Argyll, I had to exchange the USB driver first with the procedure as given on Graeme’s site:

http://www.argyllcms.com/doc/Installing_MSWindows.html Because if I did not, then clicking next simply resulted in the window being closed without any further feedback to the user.

After I had the right driver and changed the “Display Type” to “LCD”, clicking next resulted in a command line window with the typical dispcal „user interface“. I then simply followed the messages in this window, which was basically to self-calibrate the instrument and select the user-controls that are available for the display (brightness, contrast, gain for red, green and blue). Since my laptop display has none of these, I pressed 7 for continuing. After a while and several measured patches a file argyllcal.cal was residing in the folder of ArgyllCMSGUI.

Then a new window appeared on the screen

This window is for configuring “targen”, the Argyll application that creates the measurement patches for all devices. The “Target Colorant Type” was already set to “Video RGB”, so I pressed Next. When I did this a new patch, named argylldisplay.ti1 was created in the working directory and a new window appeared:

This window configures the dispread application. The names of the output file of the previous running applications were already inserted into the fields, beside that I had to change the display type again from CRT to LCD.

Once again you have to self-calibrate the instrument. As you see, a patch consisting of 836 patches was created by targen that is then read after any key is pressed. Before measurement starts, the calibration is applied to the display (your display’s overall color appearance may notably change).

After the vast amount of patches was read (for me it took ~2 seconds per patch, so the overall procedure took half an hour), another window of Argyll CMS GUI appeared.

In this window the profile creation parameters can be set. By default, only the most upper region is visible. I decided to only fill out the manufacturer, model and description fields so that I can distinguish the profile from other profiles I have created or will create in the future. After clinking OK, the window closed. I was wondering where the profile is expected to reside on my hard drive but couldn’t find it. However, there was a debug file created for every step of Argyll CMS GUI that contains the command line for the invoked Argyll tools. So I retyped the command in a normal CMD shell:

C:\Program Files\Argyll_V1.0.2>"C:\Program Files\Argyll_V1.0.2\bin\colprof.exe" -v -A"Lenovo" -M"Thinkpad T60 SXGA+ LCD" -D"profile created using Argyll CMS GUI

on 2008-08-19" -qm -L100 -al -iD50 -o1931_2 -tp -Ts "argylldisplay"

C:\Program Files\Argyll_V1.0.2\bin\colprof.exe: Error - Requested spectral interpretation when data not available

Basically, there was an error that the “-o” and “-i” parameter are not allowed when only colorimetric data (as is when I use a colorimeter for display profile creation) are available. So I simply removed the “-iD50 -o1931_2” from the line and I finally got my profile. Giving the default parameter on the command line should a) not be done by the GUI (since it’s the default parameter) and b) be ignored by colprof anyway. So far I have not seen a way to disable this behaviour and therefore the additional command line work-around is necessary.


Very complex interface, which is basically a window for the command line programs existing in the Argyll CMS. By having the help included, people can look up the meaning of the parameters but many non-expert users will probably not understand the technical matters. The big plus is that all knobs available in the command line tools are available and the typical workflow (the order the command line applications have to be started) is included already. The big minus is that feedback to the user is virtually zero, hence errors are not displayed and users will not know what happened without starting a shell and typing the command line which is saved in the debug files. I personally see no benefit currently in using the tool because of the zero-user-feedback.

My first shot recommendations for improvement would be to pass error messages to the user, only show a subset of the options by default and eliminate the –i/-o bug.