Notch Notch
Manual 1.0 Manual 0.9.23
 Light | Dark
NotchLC Processor

NotchLC Processor

Updated: 6 Mar 2025

Introduction #

This process encodes an image or sequence of images to a NotchLC quicktime MOV. The input image may be resized or cropped before conversion. Multiple crops and resizes are encoded in parallel for the fastest possible processing.

Supported input image formats: EXR, PNG, TIFF, JPEG, BMP - in either 8 bit RGBA or 16 bit RGBA float channel formats.

File and path names which are not DOS-compliant (e.g. contain spaces) must be enclosed in quotation marks.

Usage #

NotchLCProcessor.exe -options inputImageFilename outputMovFilename

Options #

Option Description
-i filename1 filename2 filename3 Specify multiple input files.
-if filename Specify a text file containing a list of input files.
-is filename <start> <end> Specify an image sequence, where the filename provided is the first image in the sequence. The sequence is detected by incrementing a digit on the end of the filename. An optional pair of digits can be supplied to narrow the set of digits gathered.
-alpha Force enable alpha channel on the exported file.
-noalpha Force disable alpha channel on the exported file. If neither -alpha or -noalpha is specified, alpha is autodetected based on the input image.
-quality 500 Specify NotchLC quality value between 0 and 1000. The equivalent values for the quality bands used by the Adobe NotchLC encoder are:
  • 0-204: Good
  • 205-407: Very Good
  • 408-611: Excellent
  • 612-815: Optimal
  • 816-1000: Best
-verbose Output an increased volume of logging information.
-benchmark Output execution time statistics.
-resize w h Resize the image to the dimensions specified before encoding.
-crop x y w h Crop the image to the rectangular region specified before encoding.
-fps 30.0 Specify the FPS of the output Quicktime MOV.
-presize w h Resize the input images to the given size - if their original size differs from it - before any other processing is applied.
-cpu Run the encoder on CPU instead of GPU. Running on CPU is generally significantly slower (x10 - x100 processing time).
-colourspace [cs] Interpret the input image data as the given colour space, and convert it to SRGB Gamma 2.2.
Where cs is either: linear, rec709, rec2020, dcip3 or acescg.

Linear refers to SRGB Linear. All input colour space options (including Rec709, DCI-P3) assume the linear variants.

The NotchLC codec is colour space agnostic - it does not in itself apply any colour space conversions or require any given colour space, as long as the pixel values are between 0 and 1. However, image data in gamma space tends to produce better results than linear due to limited bit depth. As such it can be useful to convert linear colour space image data to SRGB gamma 2.2 before conversion.

This parameter is not supported via CPU encoding.
-rf filename Specify a JSON file which contains a list of resize and crop regions. See the example JSON file below.

Example JSON File #

{
    "input_dimensions": [
        4096, 4096
    ],
    "output_resize": [
        {"posx": 0, "posy": 0, "sizex": 4096, "sizey": 4096, "resizex": 1024, "resizey": 1024, "regiontag": "_proxy"}
    ],
    "output_regions": [
        {"posx": 0, "posy": 0, "sizex": 512, "sizey": 512, "subfolder": "subfolder0", "regiontag": "_region0"},
        {"posx": 512, "posy": 0, "sizex": 512, "sizey": 512, "subfolder": "subfolder1", "regiontag": "_region1"},
        {"posx": 1024, "posy": 1024, "sizex": 2048, "sizey": 2048, "subfolder": "subfolder2", "regiontag": "_region2"},
        {"posx": 2048, "posy": 3072, "sizex": 512, "sizey": 512, "regiontag": "_region3"},
    ]
}
Attribute Description
input_dimensions Specify the resolution of the input image this JSON was built for, for optional validation purposes.
output_resize Specify one or more rectangular regions from the original image that are resized to the target resolution.
output_regions Specify one or more rectangular crop regions from the original image.
posx, posy, sizex, sizey Specify the source rectangle in the original image to copy from.
resizex, resizey Specify the resolution to resize the copied region to after copying.
subfolder Specify a subdirectory to place the output file for this region.
regiontag Specify a suffix to be appended to the output filename for this region.

Usage Examples #

  • Process an image “source image.tif”, cropping out a 500x500 region at 10,10. Output a single frame 29.97fps MOV called “out.mov” with no alpha channel to NotchLC using quality 700.
NotchLCProcessor.exe -crop 10 10 500 500 -benchmark -fps 29.97 -quality 700 -noalpha "source image.tif" out.mov
  • Process an image sequence starting with the image “test_sequence_0000.exr”. Load a region JSON file called test.json. Output multiple 30.0fps MOVs with alpha channel to NotchLC using quality 900, called “testregions.mov”, using the filename suffix and subfolder specified in the JSON.
NotchLCProcessor.exe -rf "test.json" -benchmark -fps 30.0 -quality 900 -alpha -is "test_sequence_0000.exr" testregions.mov