DisplayCAL 3.3.5 released

This is a maintenance/bugfix release.

Changed in this release:

  • [Enhancement] Updated french localization (thanks to Jean-Luc Coulon).
  • [Enhancement] When generating high resolution PCS to device tables for XYZ LUT profiles, round PCS candidate “fit” so a good match is not potentially needlessly discarded in favor of a match with lower effective usage of the available lookup table grid points (may speed up the process as well).
  • [Enhancement] Use single curve detection based on calibration accuracy for shaper tags of XYZ LUT profiles as well.

Fixed in this release:

  • [Minor] When enabling the Spyder2, check if the spyd2PLD.bin firmware has actually been successfully extracted (taking into account the install scope) and fall back to alternate methods when using automatic mode if the firmware cannot be extracted from the vendor software present in the local filesystem (fixes inability to enable the Spyder2 under Mac OS X if the vendor software is installed).
  • [Minor] Windows: Make measurement report filename safe for filesystem encoding (works around encoding quirks with certain locales).
  • [Minor] Windows: Windows silently strips any combination of trailing spaces and dots in file and folder names, so do the same for the profile name.
  • [Minor] Profile loader (Windows): WCS can return no profile without error in some situations, but the no error case wasn’t accounted for, resulting in an unhandled exception in that case.
  • [Minor] Profile loader (Windows): Get the process identifier before enumerating windows to prevent an unhandled exception if a madVR instance is already running before starting the profile loader.
  • [Cosmetic] Profile loader (Windows): Detect if the current display profile video card gamma table tag contains linear calibration when checking if madVR did reset the video card gamma table to linear to prevent the profile loader alternating between enabled and disabled state if using windowed overlay in madVR.

DisplayCAL 3.3.4.1 (Linux & Mac OS X only) released

Fixed in this release:

  • [Moderate] Linux (profile installation and profile loading): Getting the fallback XrandR display device ID could unexpectedly return no result in some cases due to incorrect parsing, leading to potential application of a stale device to profile mapping or no profile at all (regression of SVN revision r4800).
  • [Minor] Linux, Mac OS X: The visual whitepoint editor was failing to update the test pattern area of a connected madTPG instance when madVR was selected as display device, due to an implementation bug related to setting the background color.

DisplayCAL 3.3.4 released

This is a maintenance/bugfix release.

Added in this release:

  • Verification charts for ISO 14861:2015 soft proofing evaluation.

Changed in this release:

  • [Enhancement] More even and consistent CPU utilization on multi CPU/multi core systems during high resolution device-to-PCS table generation.
  • [Enhancement] Multi-threaded gamut view calculation.
  • [Enhancement] Use an alternate way to generate the matrix for profiles created from the small testchart for matrix profiles (may improve accuracy on very linear displays) and use an optimized tone response curve if using a single curve and the measured response is a good match to an idealized parametric or standardized tone response curve.
  • [Enhancement] Uniformity report: No longer include (meaningless) correlated/closest color temperature. Use “traffic light” visual indicators in conjunction with unambiguous pass/fail messages to allow easy at-a-glance assessment of the results, and also include contrast ratio deviation to fully conform to ISO 12646:2015 and 14861:2015. You can update old reports via “Update measurement or uniformity report…” in the “Report” sub-menu of the “Tools” menu.
  • [Enhancement] Measurement report: Use the display profile whitepoint as reference white for the measured vs. profile white delta E calculation and use the assumed target whitepoint as reference white for the measured vs. assumed white delta E calculation to make the reported delta E more meaningful.
  • [Enhancement] Measurement report: Allow to use the display profile whitepoint as reference white when using absolute (not D50 adapted) values.
  • [Enhancement] Profile installation (Linux): Always do fallback colord profile installation using colormgr if available unless the ARGYLL_USE_COLORD environment variable is set.
  • [Enhancement] Profile loader (Linux): Include the profile source (colord or Argyll’s UCMM) in diagnostic output and use the XrandR device ID as fallback when no EDID is available.
  • [Enhancement] Profile loader (Windows): Slightly improve encoding accuracy of quantizing to 8 < n < 16 bits.
  • [Trivial] Offer the complete range of input encodings for the eeColor 3D LUT format and do not force an identical output encoding.
  • [Trivial] Do not store calibration settings in a profile if calibration is disabled.
  • [Trivial] Revert the default profile type for the 79 patches auto-optimized testchart slider step to XYZ LUT + matrix.
  • [Trivial] Iridas cube 3D LUTs: Increase compatibility by stripping leading whitespace from text lines and adding DOMAIN_MIN/MAX keywords if missing.
  • [Trivial] Measurement report: Calculate true combined a*b* range for grayscale instead of summing separate ranges.
  • [Trivial] Measurement report: Automatically enable “Use absolute values” if using full whitepoint simulation (i.e. not relative to display profile whitepoint).

Fixed in this release:

  • [Moderate] When cancelling profiling measurements with the testchart set to “Auto”, the testchart UI and the internal test chart setting were no longer in sync until changing the profile type or restarting the application.
  • [Moderate] Synthetic ICC profile creator: Unhandled exception when trying to create DICOM (regression of a change in DisplayCAL 3.1.5, SVN revision r4020) or SMPTE 2084 profiles (regression of multiprocessing changes in DisplayCAL 3.3).
  • [Minor] Protect against potentially clipping slightly above black values during high resolution device-to-PCS table generation (regression of a change in DisplayCAL 3.3.3, SVN revision r4705).
  • [Minor] Protect against enumerating displays and ports in response to a DISPLAY_CHANGED event when the main window isn’t shown or isn’t enabled which could lead to a hang due to a race condition.
  • [Minor] Verification using a simulation profile that defines an identity matrix in its ‘chad’ tag (e.g. ISOnewspaperv4) did not work correctly due to the matrix being mapped to “None” insatead of “XYZ scaling”.
  • [Minor] Verification using a CMYK simulation profile failed with a “Profile invalid” error if previously “Use simulation profile as display profile” and “Device link profile” were enabled but no device link profile selected.
  • [Minor] Remove separate videoLUT access support under Windows and Mac OS X (separate videoLUT access is only supported under X11).
  • [Minor] Downloaded files were not renamed from their temporary name if the server did not return a Content-Length header (this typically only happens for text files, not binary files). Fixes not being able to import colorimeter corrections from iColor Display.
  • [Trivial] Do not reflect the black point hue in tone response curves of single curve + matrix profiles when not using black point compensation.
  • [Trivial] Measurement report: Additional stats median calculation index was off by n+1.
  • [Cosmetic] Display model name and manufacturer description tags were missing from profiles created using the alternate forward profiler.
  • [Cosmetic] Measurement report: Eliminate “Use absolute values” having a side-effect on the RGB patches preview.
  • [Cosmetic] Windows: When closing some of the standalone tools when minimized, e.g. by right-clicking the taskbar button and choosing “Close” from the menu, or by using the taskbar preview close button, the application did not close until restored from its minified state (i.e. by clicking on the taskbar button or switching to it with the task switcher).

DisplayCAL 3.3.3 released

This is a maintenance/bugfix release.

Added in this release:

  • Intermediate auto-optimized testchart step with 115 patches.

Changed in this release:

  • [UI] [Cosmetic] Verification tab: Always show advanced tone response curve options when “Show advanced options” is enabled in the “Options” menu.
  • [UI] [Trivial] Verification tab: Don’t reset the simulation profile tone response curve choice unless changing the simulation profile.
  • [Enhancement] [Trivial] When encountering an invalid peak white reading during output levels detection, advise to check if the instrument sensor is blocked.
  • [Enhancement] Visual whitepoint editor: Use whitepoint of currently selected profile (unless it’s a preset or “<Current>”) instead of associated display profile.
  • [Enhancement] Blend profile black point to a*b* = 0 by default. This makes the visual appearance of black and near black response in Photoshop (which uses relative colorimetric intent with black point compensation for display by default) match the DisplayCAL perceptual table of XYZ LUT profiles (which means neutral hues gradually blend over to the display black point hue relatively close to black. The rate of this blend and black point hue correction are influenced by the respective calibration settings, which is another added benefit of this change).
  • [Enhancement] Measurement & uniformity report: Change average delta a, b, L, C, and H to be calculated from absolute values.
  • [Enhancement] Profile loader (Windows): Don’t implicitly reset the video card gamma table to linear if no profile is assigned or couldn’t be determined. Show an orange-red error icon in the latter case and display details in the left-click notification popup.
  • [Cosmetic] Windows: Log errors when trying to determine the active display device during profile installation.

Fixed in this release:

  • [UI] [Cosmetic] Verification tab: Don’t accidentally enable the simulation profile tone response curve black output offset (100%) radio button when switching tabs.
  • [Trivial] Show error dialog if not able to connect to instrument for single reading.
  • [Minor] Strip the “firmware missing” message from the Spyder2 instrument name if it was not yet enabled (makes the automatic popup to enable the Spyder2 work).
  • [Minor] Prisma 3D LUT upload with 1.07 firmware.
  • [Minor] More accurately encode the black point in the colorimetric PCS to device table by explicitly clipping below black values to zero.

Enjoy!

DisplayCAL 3.3.2 released

This is a maintenance/bugfix release.

Added in this release:

  • IPT and Lpt color spaces (profile information 2D and 3D gamut view, testchart editor 3D view).
  • ACEScg and DCDM X’Y’Z’ source profiles.

Changed in this release:

  • [Enhancement] Changed HDR 3D LUT SMPTE 2084 roll-off colorimetric rendering to do gamut mapping in ICtCp (slightly improved hue and saturation preservation of bright saturated colors).
  • [Trivial] Include output levels detection related files in session archives.

Fixed in this release:

  • [Moderate] Unhandled exception when trying to set a white or black level target on the calibration tab via the newly introduced measurement buttons (regression of a change in DisplayCAL 3.3.x, SVN revision r4557).
  • [Moderate] Black point compensation for cLUT-type profiles in the advanced options did not work correctly (regression of a change in DisplayCAL 3.3.x, SVN revision r4538).
  • [Moderate] Unhandled exception when creating L*a*b* LUT profiles (regression of multiprocessing changes in DisplayCAL 3.3.x, SVN revision r4433). Note that creating L*a*b* LUT profiles is not recommended due to the limited ICC encoding range (not suitable for wide-gamut) and lower accuracy and smoothness compared to XYZ LUT.
  • [Minor] Output levels detection and alternate forward profiler were not working when using output levels quantization via additional dispread command line option -Z nbits.
  • [Minor] Do not create shaper curves for gamma + matrix profiles.
  • [Minor] Don’t fall back to colorimetric rendering for HDR 3D LUT SMPTE 2084 roll-off when using luminance matched appearance or luminance preserving perceptual appearance rendering intents.
  • [Trivial] DIN99c and DIN99d white point misalignment (profile information 2D and 3D gamut view, testchart editor 3D view).
  • [UI] [Cosmetic] Change info panel text to use system text color instead of defaulting to black.
  • [Minor] Linux (0install): Prevent system-installed protobuf package shadowing 0install implementation.

DisplayCAL 3.3.1 released

This is a bugfix release:

Fixed unhandled exception if using CIECAM02 gamut mapping when creating XYZ LUT profiles from regular spaced grid patch sets with the alternate forward profiling method introduced in DisplayCAL 3.3.

DisplayCAL 3.3 released

I’m happy to announce that I’ve just released DisplayCAL 3.3.

Highlights:

  • Better multi CPU/multi core support and overall speed enhancement due to smaller default patch sets using an alternate forward profiling method.
  • Calibration whitepoint targets other than “As measured” will now also be used as 3D LUT whitepoint target, allowing the use of the visual whitepoint editor to set a custom whitepoint target for 3D LUTs.
  • The visual whitepoint editor is now compatible with Chromecast, Web @ localhost, madVR, Prisma and Resolve pattern generators.
  • Automatic output levels detection, and manual output levels selection as an advanced option.
  • New experimental profiling patch sequence advanced options.
  • Profile loader (Windows): Windows 10 Creators Update compatibility.

See the changelog for the (huge!) full list of changes.

Enjoy!

DisplayCAL 3.2.4 released

Added in this release:

  • Korean translation thanks to 김환(Howard Kim).

Changed in this release:

  • Disable observer selection if observer is set by a colorimeter correction.
  • 3D LUT maker: Enable black output offset choice for 16-bit table-based source profiles.
  • Profile loader (Windows): “Automatically fix profile associations” is now enabled by default.
  • Build system: Filter out “build”, “dist” as well as entries starting with a dot (“.”) to speed up traversing the source directory tree (distutils/setuptools hack).

Fixed in this release:

  • Could not create colorimeter correction from existing measurements for instruments that don’t support alternative standard observers.
  • ColorHug / ColorHug2 “Auto” measurement mode threw an error if the extended display identification data did not contain a model name.
  • [Trivial/cosmetic] Testchart editor: When adding reference patches, resize row labels if needed.
  • Profile loader (Linux): When errors occured during calibration loading, there was no longer any message popup.
  • Profile loader (Windows): Filter non-existing profiles (e.g. ones that have been deleted via Windows Explorer without first disassociating them from the display device) from the list of associated profiles (same behavior as Windows color management settings).
  • Profile loader (Windows): When changing the language on-the-fly via DisplayCAL, update primary display device identfier string.

DisplayCAL 3.2.3 released

This is a bugfix and maintenance release.

Changed in this release:

  • Updated traditional chinese translation (thanks to 楊添明).
  • Profile loader (Windows): When creating the profile loader launcher task, set it to stop existing instance of the task when launching to circumvent a possible Windows bug where a task would not start even if no previous instance was running.

Fixed in this release:

  • When querying the online colorimeter corrections database for matching corrections, only query for corrections with a matching manufacturer ID in addition to a matching display model name (fixes corrections being offered for displays from different manufacturers, but matching model names).
  • Profile loader (Windows): Fix unhandled exception if no profile is assigned to a display (regression of a change to show the profile description instead of just the file name in DisplayCAL 3.2.1).

Happy new year everyone!

DisplayCAL 3.2.2 released

This is a bugfix and maintenance release.

Changed in this release:

  • Importing colorimeter corrections from other display profiling software now only imports from the explicitly selected entries in automatic mode.
  • Profile loader launcher (Windows): Pass through --oneshot argument to profile loader.

Fixed in this release:

  • Visual whitepoint editor: Opening a second editor on the same display without first dragging the previously opened editor to another display would overwrite the cached profile association for the current display with the visual whitepoint editor temporary profile, thus preventing the correct profile association being restored when the editor was closed.
  • Mac OS X: Fall back to HTTP when downloading X3D viewer components to work around broken Python TLS support.
  • Windows: When installing instrument drivers, catch WMI errors while trying to query device hardware IDs for instruments.
  • Profile loader (Windows): Possibility of unhandled exception when resuming from sleep if the graphics chipset is an Intel integrated HD graphics with more than one attached display device (may affect other graphics chipsets as well).