cdl_convert

Project Info

PyPI VersionBuild StatusCoverage StatusCode Health

Introduction

cdl_convert converts between common ASC CDL formats. The American Society of Cinematographers Color Decision List (ASC CDL, or CDL for short) is a schema to simplify the process of interchanging color data between various programs and facilities.

The ASC has defined schemas for including the 10 basic numbers in 5 different formats:

  • Avid Log Exchange (ALE)
  • Film Log EDL Exchange (FLEx)
  • CMX EDL
  • XML Color Correction (cc)
  • XML Color Decision List (cdl)
  • XML Color Correction Collection (ccc)

Unofficial Formats:

  • OCIOCDLTransform, a Foundry Nuke node
  • Space separated CDL, a Rhythm & Hues internal cdl format

It is the purpose of cdl_convert to convert ASC CDL information between these basic formats to further facilitate the ease of exchange of color data within the Film and TV industries.

cdl_convert is not associated with the American Society of Cinematographers

Warning

cdl_convert is still in active development and the API is changing rapidly. Not all features work correctly in every instance. The best thing you can do to help this is to contribute and get through this period the quickest.

Changelog

New in version 0.6:

  • Adds much greater ASC CDL XML compliance with the addition of many classes that represent node concepts in the CDL XML schema.

  • Moves viewing_desc and input_desc attributes and methods into the base class AscColorSpaceBase .

  • Moved desc attribute and methods into the base class AscDescBase .

  • Adds ColorCollectionBase class for a basis of all collection type nodes (ColorCorrectionCollection , ColorDecisionList , etc).

  • Adds MediaRef class which represents the MediaRef node of a ColorDecision. This class allows convenient handling of files given as media reference.

  • Adds HALT_ON_ERROR module variable which determines certain exception handling behavior. Exceptions that can normally be handled with default behavior (such as negative Slope or Power values) will be dealt with silently instead of stopping the program. Negative Slope and Power values, for example, will clip to 0.0.

  • ColorCorrection (formally AscCdl) class changes:
    • Renames AscCdl to ColorCorrection .
    • Adds class level member dictionary, which allows lookup of a ColorCorrection instance by the unique ID.
    • ColorCorrection objects now require a unique ID to be instantiated.
    • Removes metadata attribute of ColorCorrection .
    • Moves SOP and SAT operations out of ColorCorrection into their own classes, which are based on ColorNodeBase . The SatNode and SopNode classes are still meant to be children of ColorCorrection.
    • Added sop_node and sat_node attributes to access the child SatNode and SopNode .
    • Removed metadata attribute, splitting it into the inherited attributes of input_desc, viewing_desc and desc.
    • desc attribute is now fully fleshed out as a list of all encountered description fields.
    • Renamed cc_id field to id, shadowing the built in id within the class.
    • Slope, Offset and Power now return as a tuple instead of a list to prevent index assignment, appending and extending.
  • parse_cc should now parse a much greater variety of .cc files more accurately.
    • Now supports infinite Description fields
    • Now supports Viewing and Input Description fields
    • Significantly simplifies the function.
  • parse_flex has been significantly simplified.

  • Test Suite broken up into sub-modules.

  • Adds PyPy support.

  • Adds ReadTheDocs

  • Adds docs to build

Indices and tables

Table Of Contents

Next topic

Usage

This Page