DebugColourSpaces v2.0

Download: https://horman.net/avisynth/

DebugColourSpaces is a debugging filter for testing other filters against some or all of the various colour spaces supported by Avisynth.

Parameters

ParameterDescriptionDefault value
clip An input clip to apply the filter named in the filter parameter to
string "filter"The filter to be tested
float "width"Suggested output width of results grid. If width is less than 16, it is parsed as a multiplier of the current screen width1.0 (current screen width)
string "colo[u]rspaces"This parameter selects the colour spaces to be tested against (see below for more information)"all"
bool "interlaced"Specifies whether the input clip should be treated as interlaced during internal conversionfalse
array "args"An array of variables to be passed as unnamed parameters to the test filter[ ]

For convenience, the filter can also be called with three unnamed parameters: input clip, filter name, and filter argument array (optional).

colo[u]rspaces

This parameter specifies the colour spaces to be tested against, the results of which will be displayed as a grid. The following values are accepted:

ValueOutput
"all"All Avisynth+ colour spaces
"source"Source clip colour space only
"yuv"All planar YUV colour spaces
"yuv+a"All planar YUV and YUVA colour spaces, except YUY2
"rgb"All RGB colour spaces (including RGB32 and RGB64)
"rgb+a"All RGB and RGBA colour spaces
"classic"The eight original Avisynth colour spaces

The actual colour spaces used will depend on the version of Avisynth in use.

args

Filter arguments are passed as an array of values to DebugColourSpaces, which then passes them to the specified filter. Parameters must be supplied in order as argument names cannot be passed.
ColorBars.DebugColourSpaces("Subtitle", [ "Lorem ipsum dolor sit amet", 0, 360, 0, 100, "", 45 ])

Output

Each cell in the output video frame shows the result of applying the specified filter to a particular colour space, converted to RGB32 and conditionally scaled down for display.

The name of the input colour space is shown in white at the bottom of the cell:

If the filter has changed the colour space, the output colour space is shown in blue:

Error handling

Errors from the specified filter are reported with colour coded output:
OutputExplanation
Yellow indicates an Avisynth error thrown by the filter on creation. This is usually the result of invalid parameters.
Orange indicates an error generated when trying to get the current frame from the filter.
Red indicates an exception thrown during filter creation.
Blue indicates an Avisynth error or other exception thrown during conversion of the output to RGB32. This can occur because ConvertToRGB32 may encounter an error while trying to fetch the first frame to get frame properties.

© wonkey_monkey 2026