CLF Implementation Virtual Working Group

(ARCHIVED - This group is no longer active. This page remains here for reference only.) 

Document Workspace

Doug Walker - Working Group Chairman - email
Scott Dyer - ACES Working Group Liaison - email
Alex Forsythe - ACES Technical Lead - email
Steve Tobenkin - ACES Adoption/Comms Lead - email
Workspace Home:  https://aces.mp/VWG_HOME

Goals

Per Approved Working Group Proposal below - (subject to clarification and change)
  • Test and and validate CLFs
  • Determine how implementation-related information be communicated to enable implementers
  • Determine the minimal set of capabilities that should be required of implementers
  • Determine if different levels/profiles of CLF support be defined
  • Determine if it would be helpful to have a "reference implementation”
  • Determine if any recommendations should be provided for how to bake CLFs into approximate representations
  • Develop recommendations for how to set and/or propagate the metadata fields
  • Determine what tests are recommended for the first plug-fest

Anticipated Deliverable(s)

  • Reference Image(s) - before/after
  • Implementation Guide
  • An example implementation - refer to ociochecklut (e.g. it is a good example of parsing CLFs and issuing useful error messages to user when CLF is invalid)
  • A tool for those who don’t have a way to compare before/after images - OIIO idiff modified for use with testing tolerances
  • Plug-fest(s)?

Documents

CLF Implementation Guide


Current CLF Specification

Specification Revision VWG

The meeting summaries and work from the previous CLF Spec Revision Virtual Working Group is archived here: +CLF Spec Revision Virtual Working Group 

Implementations

Group Proposal/VWG Charter

Proposed list of test CLF files

Proposed reference target

List of LUT Formats

CLF Repository

The plan is to add all things CLF to the ampas/CLF repository. 
This repository currently needs updates and restructuring, as the python-based sample implementation is out-of-date for v3 of the CLF specification. 
The up to date restructuring will be done on Scott’s fork of the CLF repository, to ultimately be pushed to ampas/CLF when the group concludes its work.

The restructured repository will likely include:
  • README.md - information about the repository and its contents
  • docs/
  • Specification Document - existing S-2014-006 document - can be renamed…
  • Implementation Guide - this is the guide being drafted in the Google doc above
  • schema/
  • CLF.xsd - this is the .xsd included in the Appendix to S-2014-006. It will be removed from the document and presented in a form that is more usable (e.g. copy/paste will be easier here than from a PDF)
  • tests/ - already housed on OCIO, should probably add a readme with a redirect to there, rather than duplicating those here
  • reference-images/
  • README.md 
  • Description / how to use
  • Links to before/after files (hosted in Dropbox - similar to ‘aces-dev’ repository)
  • source image generation script (Alex’s Nuke script)

Preliminary example of a half float test for the Finishing Tier

Preliminary example of a half float test for the Preview Tier

LUT Box Capability Matrix

Manufacturer
Device
Software
Version
I/P 1D LUT
3D LUT
O/P 1D LUT
Tetrahedral
Bit depth
Sampling
I/O range***
Input
Output
AJA
LUT box
AJA Mini-config
2.25.1
1024 / 4096
16 / 17
N/A
NO
10 / 12
4:2:2 / 4:4:4
Selectable
SDI
SDI / HDMI
AJA
FS-HDR
Web UI
3.2.2
N/A
33
N/A
YES
10
4:2:2
Selectable
SDI / fiber
SDI / fiber / HDMI
Blackmagic Design
HDLink Pro Utility
3.5
N/A*
17
N/A
NO
10
4:2:2 / 4:4:4
LL
SDI
SDI / HDMI
Blackmagic Design
Teranex Utility
7.1
N/A
33
N/A
YES
10
4:2:2 / 4:4:4

Various
Various
Blackmagic Design
Converter Utility
7.4.1
N/A
33
N/A
YES
10
4:2:2 / 4:4:4

SDI
SDI / HDMI
Convergent Design
Odyssey 7Q****
CD LUT Utility
1.3
N/A
17
N/A
NO
10 / 12
4:2:2 / 4:4:4
Selectable
SDI / HDMI
SDI / HDMI
EEColor
EEColor
TruVue
2
N/A
65
N/A

10
4:2:2 / 4:4:4
Selectable
HDMI
HDMI
Flanders Scientific (FSI)
Box IO**
IP Remote
1.8.4
4096
17 / 33
4096
Optional
10 / 12
4:2:2 / 4:4:4
Selectable
SDI
SDI / DP
Teradek
COLR
Web UI
-
N/A*
33
N/A
NO
10
4:2:2
LL
SDI / HDMI
SDI / HDMI
TV Logic
IS Mini
IS Mini Manager
4.3.1
1024
26
1024
YES
10
4:2:2 / 4:4:4
Selectable
SDI
SDI / HDMI(8-bit)
* Device can be operated as either a 1D or 3D LUT, but  not 1D + 3D, so the 1D capability is not really relevant for CLF
** The processing in FSI monitors is the same as that in the BoxIO, so although the LUTted output cannot be tested, the result should be the same
*** Using the nomenclature used by the ARRI LUT Generator web app, where LL means unscaled code values in and out, and EE means SDI 64-940 maps to 0-1 in the LUT
**** The Odyssey 7Q is a monitor, but is able to route the LUTted signal to the output, so can be used as a LUT box

Processed Reference Images Deliverable


Next Meeting 
The CLF Implementation VWG has completed its work and meetings have been suspended pending more feedback on the release candidate or requests from the TAC. 


Subscribe to calendar for this group. Right-click [this link] to copy to your clipboard. Then paste the address (it should end in .ics) into your calendar client as a calendar subscription.

We use GoToMeeting for our conference calls and we record and then post each meeting so the community can review.  Instructions for GoToMeeting are here:

Past Meetings

Tuesday, November 9th, 2021, 3pm Pacific Time 

  1. All deliverables are now completed!
  1. The group agreed on what to present to the TAC meeting next week.

Thursday, October 28th, 2021, 3pm Pacific Time

  1. The group met again to review the Implementation Guide and agreed for the chair to announce on ACESCentral that all deliverables are now ready for final review by the community.

Tuesday, October 26th, 2021, 3pm Pacific Time

  1. Implementation Guide is almost finished.  Editing sub-group will be meeting again on Thursday at the same time and GoToMtg coordinates to finalize the release candidate.

Tuesday, October 12th, 2021, 3pm Pacific Time

  1. Action item to Doug to resolve all outstanding issues in the Implementation Guide prior to the  next meeting.
  1. Action item to all VWG members to block some time on the 25th or 26th to review where the Implementation Guide is at that point and be prepared to vote at the next meeting on whether to send it out for review.

Tuesday, September 14th, 2021, 3pm Pacific Time 


Tuesday, August 31st, 2021, 3pm Pacific Time 


Tuesday, August 17th, 2021, 3pm Pacific Time 

Key Decisions / Action Items:
  1. Hearing no objections, we decided to remove the Inf and NaN from the test target to simplify the test evaluation.
  1. Action item to Alex Fry to update the target.
  1. Action item to Doug to update the test scripts and image in OCIO.

Tuesday, July 20th, 2021, 3pm Pacific Time 

Key Decisions / Action Items:
  1. Scott will test PR test files and run through document procedures.
  1. Doug will update Preview Tier in Guide with error metric and oiiotool command
  1. We are considering removing the Inf and NaN from the test target, any objections?

Tuesday, July 6th, 2021, 3pm Pacific Time 

Key Decisions / Action Items:
  1. Doug will make a PR with the discussed changes to parameter values in the CLF test suite
  1. Doug will remove the lut3by1d_nan_infinity_example.clf example from the test suite.
  1. We plan to change the relative error threshold of 0.01 to 0.1, please let us know if you object

Tuesday, June 22nd, 2021, 3pm Pacific Time 

Notes:
  1. Today’s was an abbreviated meeting

Tuesday, June 8th, 2021, 3pm Pacific Time 

Notes:
  1. Today’s was an abbreviated meeting
  1. Chris will post an update on his ACESCentral thread about using oiiotool

Tuesday, May 25th, 2021, 3pm Pacific Time 

Discussion:
  1. Determine process for generating 10-bit DPX preview tier test image
  1. Consider oiiotool instead of idiff for applying difference metric
  1. Nick’s shared Colab  

Tuesday, May 11th, 2021, 3pm Pacific Time

Key Decisions / Action Items:
  1. Scott to fix error in S-2014-006 where ProcessList Description element was listed as required when it should be optional.  Fixed on Github and in published PDF
  1. Nick to advise on sufficient negative coverage bound.
  1. Josh to check idiff for region-of-interest option
  1. Doug to add preview tier 3d-LUT to OCIO test set

Tuesday, April 27th, 2021, 3pm Pacific Time 

Key Decisions / Action Items:
  1. Chris will process the test image through ctlrender using the ACES2065-1 to ACEScct ctl and save as a 10-bit DPX file for use by the Preview Tier test.

Tuesday, April 13th, 2021, 3pm Pacific Time 

Tuesday, March 30th, 2021, 3pm PDT

Key Decisions / Action Items:
  1. Alex will verify if xs:float is the correct definition for numeric Array values.

Tuesday, March 16th, 2021, 3pm PDT

Tuesday, February 16th, 2021, 3pm PST

Tuesday, February 2nd, 2021, 3pm PST

Key Decisions / Action Items:
  1. Alex will start a table comparing LUT formats and their capabilities.

Tuesday, January 12th, 2021, 3pm PST

Tuesday, December 15th, 2020, 3pm PST

Key Decisions / Action Items:
  1. We will recommend “ACES2065-1” be written to the InputDescriptor and OutputDescriptor whenever an ACES LMT is written as a CLF.

Tuesday, December 1st, 2020, 3pm PST

Key Decisions / Action Items:
  1. We discussed the feedback received at the ACES Implementation TAC meeting about how to validate the Preview Tier implementations.  While the group agreed that in theory it would be possible to do more than validate a basic 3d-LUT CLF for that tier, the VWG does not currently have any volunteers willing to take on that work.  It should also be recognized that any such test likely would have more to do with the baking process being necessitated by that tier more than the actual pixel processing.
  1. Scott will ask at AMF meeting for input on our Implementation Guide Annex about using CLF with AMF.

Tuesday, November 17th, 2020, 3pm PST

Key Decisions / Action Items:
  1. The group agreed that the proposed compression feature, while useful, is not enough of a blocker to revise the current specification at this time, unless there is additional input from the TAC.  It should be considered for the next major update to the spec.

Tuesday, November 3rd, 2020, 3pm PST

Key Decisions / Action Items:
  1. Scott to follow up with Bill F. about CLF compression concerns. Nov. 12: Emailed Bill. Nov 17: Reply received.
  1. Progress was made by adding more details and guidance into the Implementation Guide outline. Participants are encouraged to further contribute to the document.

Tuesday, October 20th, 2020, 3pm PDT

Key Decisions / Action Items:
  1. Preview tier will be a simpler, single test of a 3D LUT.
  1. Scott will stage an update on the CLF spec to change coloring of examples to avoid blue, which is used in the overview diagram. 11/3: Changes pushed to ‘hotfixes’ branch (PDF not yet updated)
  1. Bill F. raised a good point about whether a simple compression scheme has/could be considered as part of the specification - greatly reduces file size for large LUT files.
  1. Next meeting will be used for live drafting of the Implementation Guide.

Tuesday, October 6th, 2020, 3pm PDT

Key Decisions / Action Items:
  1. Nick presented his analysis of the error in his Colab notebook. He will add some more tests based on conversation today.
  1. Chris and group discussed formatting of examples to make readability and adding callouts easier. 
  1. Chris will use ociochecklut to validate example CLFs being provided in Implementation Guide.
  1. Scott will pull schema from specification document and add to source control so that those interested can use it. Schema added to Scott’s fork
  1. ALL are implored to contribute writing to Implementation Guide.

Tuesday, September 22nd, 2020, 3pm PDT

Key Decisions / Action Items:
  1. ALL are encouraged to adopt a section of the Implementation Guide and contribute content.
  1. Nick & Scott to analyze the source of the 116/1023 max error in Nick’s colab script.
  1. Nick posted some follow-up on ACESCentral: https://community.acescentral.com/t/example-test-for-preview-tier/3085/7
  1. Josh to check on Teradek interpolation.

Tuesday, September 8th, 2020, 3pm PDT

Key Decisions / Action Items:
  1. Scott will copy Nick’s table of LUT box capabilities to DropBox (done: see above).
  1. The tolerances for the Preview Tier will be based on a “reference” LUT box with the following characteristics:  10-bit SDI input/output, 4:4:4 RGB, full-range, 33x33x33, tetrahedral interpolation.

Tuesday, August 25th, 2020, 3pm PDT

Key Decisions / Action Items:
  1. Scott will create 2 new example CLFs for JZ. One will go from ACES2065-1, apply a matrix & log node to ACEScct, modify using a CDL node, then use a 3D lut to convert ACEScct to Rec709 code values through the ACES Rec.709 Output Transform (finishing tier). The other will replace Doug’s example from last meeting and apply CDL and 3D LUT to Rec. 709 only (preview tier). These are uploaded above and explained in this forum post.
  1. Scott will incorporate Alex’s work on documenting the reference image into the Implentation Guide. *(update 9/8) Alex updated his documentation of the reference image with more details and images.

Tuesday, July 28th, 2020, 3pm PDT

Key Decisions / Action Items:
  1. For the Preview Tier, Doug will add instructions for how to do a “naive bake” of an arbitrary CLF into a CLF that is just a simple Lut3D.  Each of these will have a custom tolerance that is chosen based on the distance of the baked CLF from the original CLF.
  1. Doug will upload a processed integer version of Alex’s target along with a CLF and processed result as an example of a Preview Tier test.  These are uploaded above.
  1. Nick will work on a capability chart for the hardware LUT boxes of interest

Tuesday, July 14th, 2020, 3pm PDT

Key Decision / Action Items:
  1. The nuke script will be sufficient for the target generation
  1. Alex will provide a first draft describing the target sections for the implementation guide
  1. Reference images will be hosted on DropBox, similar to ACES reference set
  1. Existing CLF site on GitHub will be repurposed to host LaTex of specification and implementation guide as well as pointers to reference files elsewhere
  1. Doug will add tolerance proposal from ACESCentral to the implementation guide
  1. Chris will start a draft of a CLF example for the implementation guide
  1. Nick will start thinking about reasonable tests for hardware implementations

June 30th, 2020, 3pm PDT

Key Decisions / Action Items:
  1. We will try to use OIIO idiff as the basis for the recommended image comparison tool
  1. Josh/Doug to work on making a modified version of idiff (goal is to eventually make a PR)
  1. We will *not* try to support 4:2:2 devices (the main LUT boxes seem to be 4:4:4 capable)
  1. We will make a CLF to convert the float target to an SDI-safe integer target and also have an integer set of processed reference images

June 16th, 2020, 3pm PDT

Key Decisions / Action Items:
  1. Scott to work on expanding Implementers Guide outline into prose
  1. Group to review and contribute to Implementers Guide
  1. Alex Fry to update test target based on feedback: (add Nick’s hue ramp, move Inf/NaN values to  first row to more easily exclude them, reduce precision of some ramps, add Macbeth patches in ACES2065-1 colorspace, make patch ramps horizontal so they read better on waveform monitors, make patch ramps centered around 2^-2.5 and in half/quarter(?) stop increments, make the grids use 65 so there is a center point - if feasible, etc.) 
  1. Josh/Doug to investigate adding an option to OpenImageIO idiff that will implement our metric

May 19th, 2020, 3pm PDT

Key Decisions / Action Items:
  1. Scott to fix CDL style contradiction in spec
  1. Nick to send Alex hue target suggestion (and group, please post/send any other ideas)
  1. Group to investigate how their favorite image comparison tools handle Inf/NaN values

May 5th, 2020, 3pm PDT

Key Decisions / Action Items:
  1. Alex Fry to look at updating test target based on discussion
  1. Group to review Scott’s proposed draft Guide outline, add section headings
  1. Doug to update CLF test set spreadsheet based on new PR in GitHub
  1. Doug to contact Josh about CDL issue discovered in spec

April 21st, 2020, 1pm PDT

Key Decisions / Action Items:
  1. Scott to fix example 11 in Exponent Node section of S-2014-006 - [the document has been updated based on this post]
  1. Scott to create and share a Google Doc as a start for an Implementor’s Guide [link shared above under “Documents”]
  1. Scott to check with Steve T. about status of VWG calendar and ability for VWG participants to subscribe to future meetings - [info about how to do this was posted to ACESCentral community]
  1. Scott to follow up with ACES Leadership re: revising the Academy document naming scheme to exclude the year and then renaming S-2014-006 - [this was mentioned to ACES Leadership and is now on “the list”]
  1. Doug to check with Alex Fry about potentially moving next meeting a bit later.
  1. Alex Fry/Scott/JD to work on and propose a reference image. [Alex proposed a first target for group reaction]

April 7th 2020, 1pm PDT

Key Decisions / Action Items:
  1. JZ put out a call looking for CLF implementors that could participate in a webinar demo.
  1. We will try to have just one ref. image (not a set).  The color space is generic/arbitrary.
  1. Alex Fry to work on a reference image.
  1. Chris Davies to add his test set feedback to the google doc or start threads on ACESCentral.

March 24th, 2020, 1pm PDT

Key Decisions / Action Items:
  1. We will pursue the notion of having two tiers/levels for CLF processing accuracy.
  1. Doug will post a strawman proposal for processing tolerances to ACESCentral.
  1. Doug will start a sub-group to develop a test target, posting requirements to ACESCentral.
  1. Alex Forsythe will start a thread to discuss changes to the ACESTransformID.

March 10th, 2020, 1pm PDT

Key Decisions / Action Items:
  1. Alex/Scott: Engage with providers of on-set tools to get their feedback about having some sort of allowed tolerances for processing accuracy.  
  1. Doug will send OpenColorIO install/build instructions.
  1. Josh/Scott:  Discuss tools for comparing images.  Is there something we could leverage from past work at the Academy?

February 25th, 2020, 1pm PST

Key Decisions / Action Items:
  1. The Implementation VWG recommends to ACES leadership to consider including CLF files alongside CTL in future ACES releases for transforms that CLF may accurately represent (e.g. Input Transforms and Color Space Conversion transforms, but probably not Output Transforms).
  1. Josh Pines/Scott/Doug to work on tools for sending images through CLFs and comparing to a reference (generate a meaningful statistical report of differences).
  1. Alex Fry/Scott/Doug to work on developing a test image to be used as the source for CLF processing references.

February 4th, 2020, 1pm PST

Key Decisions / Action Items:
  1. The Implemention Guide deliverable will be a PDF produced/shared via the usual Academy process.
  1. The Implemention Guide should cover both authoring CLFs and consuming/applying CLFs.
  1. Please review the CLF_tests_v1 spreadsheet (linked above) and provide feedback.

January 21st, 2020, 1pm PST

January 10th, 2020, 1pm-2pm PST

Key Decisions Taken / Action Items: 
  1. The CLF Implementation VWG Proposal/Charter (posted above) looks good. That will be our plan of action.
  1. Deliverables from the group should include:  a guide for implementers; a set of test CLFs; a set of processed reference images (to verify processing accuracy).
  1. We want to get as much participation as possible from product partners and other likely implementers.  Action Item: Steve/JZ/Doug to organize an invite email (Done: Sent on Jan 14). Please encourage vendors you know to participate!

Group Norms

  • By accessing this site, you agree to abide by the following rules.
  • If you post anything, please set your Dropbox name to your actual name or a name we can reasonably identify
  • Please do not delete any entries, documents or lists on this site.   This site is read only by default.  Email the working group chair or staff technical lead if you need access to modify this page.

How the ACES VWG Process Works

If you’re new to our Virtual Working Group structure, please note the following:
  • Working Group Meetings are held on GoToMeeting 
  • Discussions are hosted on ACESCentral.com in the named VWG Discussions category 
  • Schedules, documents, to-dos, etc. are hosted on the named VWG workspace (i.e. you’re on the Workspace for this group: CLF Spec/Code Review)