Qualify Template Schemas

Full Template Schema JSON based on engine version

QC Engine Version 2023.5.1

{
    "$schema": "http://json-schema.org/schema#",
    "title": "Templates Schema",
    "type": "object",
    "description": "Represents a Qualify job template",
    "definitions": {
        "audio_program": {
            "type": "array",
            "items": {
                "type": "integer",
                "enum": [
                    0,
                    1,
                    2,
                    3,
                    4,
                    5,
                    6,
                    7,
                    8,
                    9,
                    10,
                    11,
                    12,
                    13,
                    14,
                    15,
                    16,
                    17,
                    18,
                    19,
                    20,
                    65,
                    66,
                    68,
                    69,
                    70,
                    33,
                    34,
                    35
                ]
            }
        },
        "audio_mapping": {
            "type": "array",
            "items": {
                "$ref": "#/definitions/audio_program"
            }
        },
        "audio_layout": {
            "type": [
                "object",
                "null"
            ],
            "properties": {
                "name": {
                    "type": "string"
                },
                "layout": {
                    "type": "array",
                    "items": {
                        "$ref": "#/definitions/audio_mapping"
                    }
                }
            },
            "required": [
                "name",
                "layout"
            ]
        },
        "package_layout": {
            "type": [
                "object",
                "null"
            ],
            "properties": {
                "name": {
                    "type": "string"
                },
                "video_index": {
                    "description": "Index of video track from ABR manifest file that will be used in checks\n",
                    "type": "integer",
                    "minimum": 1
                },
                "audio_indexes": {
                    "description": "Index of audio track from ABR manifest file that will be  used in checks\n",
                    "type": "array",
                    "items": {
                        "type": "integer",
                        "minimum": 1
                    }
                },
                "subtitle_indexes": {
                    "description": "Index of subtitle track from ABR manifest file that will be used in check\n",
                    "type": "array",
                    "items": {
                        "type": "integer",
                        "minimum": 1
                    }
                }
            },
            "required": [
                "name",
                "video_index",
                "audio_indexes",
                "subtitle_indexes"
            ]
        },
        "audio_description_test_config": {
            "type": "object",
            "required": [
                "description",
                "control"
            ],
            "allOf": [
                {
                    "$ref": "#/definitions/audio_config"
                },
                {
                    "properties": {
                        "description": {
                            "title": "Audio Description Channel",
                            "description": "The channel where the Audio Description should be present",
                            "type": "integer",
                            "minimum": 1
                        },
                        "control": {
                            "title": "Control Channel",
                            "description": "The channel where the Audio Description Control should be present",
                            "type": "integer",
                            "minimum": 1
                        },
                        "advanced": {
                            "title": "Advanced",
                            "description": "Enable advanced options",
                            "type": "boolean",
                            "default": false
                        },
                        "ctrl_frequency": {
                            "title": "Control channel Frequency",
                            "description": "The expected frequency of the Control channel",
                            "type": "number",
                            "default": 1280,
                            "suffix": "Hz"
                        },
                        "ctrl_frequency_tolerance": {
                            "title": "Control channel Frequency Tolerance",
                            "description": "The tolerance of the Control channel frequency",
                            "type": "number",
                            "default": 20,
                            "suffix": "Hz"
                        },
                        "ctrl_amplitude": {
                            "title": "Control channel Amplitude",
                            "description": "The expected amplitude of the Control channel",
                            "type": "number",
                            "default": -36,
                            "suffix": "dBFS"
                        },
                        "ctrl_amplitude_tolerance": {
                            "title": "Control channel Amplitude Tolerance",
                            "description": "The tolerance of the Control channel amplitude",
                            "type": "number",
                            "default": 3,
                            "suffix": "dB"
                        }
                    }
                }
            ]
        },
        "blackframe_range": {
            "allOf": [
                {
                    "$ref": "#/definitions/tolerant_range"
                },
                {
                    "properties": {
                        "range_type": {
                            "title": "Must Be",
                            "$ref": "#/definitions/base_range_type",
                            "titleMap": [
                                {
                                    "value": 0,
                                    "name": "Black"
                                },
                                {
                                    "value": 1,
                                    "name": "Not Black"
                                },
                                {
                                    "value": 2,
                                    "name": "Any"
                                }
                            ]
                        }
                    }
                },
                {
                    "allOf": [
                        {
                            "if": {
                                "properties": {
                                    "layout": {
                                        "enum": [
                                            "0"
                                        ]
                                    }
                                }
                            },
                            "then": {
                                "required": [
                                    "start",
                                    "end",
                                    "tolerance",
                                    "units",
                                    "range_type"
                                ]
                            }
                        },
                        {
                            "if": {
                                "properties": {
                                    "layout": {
                                        "enum": [
                                            "1"
                                        ]
                                    }
                                }
                            },
                            "then": {
                                "required": [
                                    "start_from_end",
                                    "duration",
                                    "tolerance",
                                    "units",
                                    "range_type"
                                ]
                            }
                        }
                    ]
                }
            ]
        },
        "channel_position_test_config": {
            "type": "object",
            "allOf": [
                {
                    "$ref": "#/definitions/audio_config"
                },
                {
                    "properties": {
                        "min_center_freq": {
                            "title": "Minimum center channel frequency",
                            "type": "number",
                            "description": "Minimum center frequency",
                            "default": 80,
                            "minimum": 0
                        },
                        "max_center_freq": {
                            "title": "Maximum center channel frequency",
                            "type": "number",
                            "description": "Maximum center frequency",
                            "default": 6000,
                            "minimum": 0
                        },
                        "min_lfe_freq": {
                            "title": "Minimum LFE channel frequency",
                            "type": "number",
                            "description": "Minimum LFE frequency",
                            "default": 3,
                            "minimum": 0
                        },
                        "max_lfe_freq": {
                            "title": "Maximum LFE channel frequency",
                            "type": "number",
                            "description": "Maximum LFE frequency",
                            "default": 120,
                            "minimum": 0
                        }
                    }
                }
            ]
        },
        "clicksandpops_test_config": {
            "type": "object",
            "required": [
                "sensitivity"
            ],
            "allOf": [
                {
                    "$ref": "#/definitions/audio_config"
                },
                {
                    "properties": {
                        "ignore_silence": {
                            "type": "boolean",
                            "title": "Ignore silence",
                            "description": "When turned on, silent parts will be ignored",
                            "default": true
                        },
                        "sensitivity": {
                            "$ref": "#/definitions/customizable_sensitivity",
                            "description": "Determines how sensitive the test will be in detecting clicks and pops"
                        },
                        "custom_sensitivity": {
                            "type": "number",
                            "description": "Custom sensitivity percentage. Higher is more sensitive",
                            "minimum": 0.0,
                            "maximum": 100.0,
                            "default": 68.75
                        }
                    }
                },
                {
                    "if": {
                        "properties": {
                            "sensitivity": {
                                "const": 3
                            }
                        }
                    },
                    "then": {
                        "required": [
                            "custom_sensitivity"
                        ]
                    }
                }
            ]
        },
        "clipping_test_config": {
            "type": "object",
            "required": [
                "sensitivity",
                "percentage_check"
            ],
            "allOf": [
                {
                    "$ref": "#/definitions/audio_config"
                },
                {
                    "properties": {
                        "min_threshold": {
                            "type": "number",
                            "description": "Specify custom value where samples are suppressed and do not count towards the clipping test",
                            "suffix": "dB",
                            "default": -60.0,
                            "minimum": -100
                        },
                        "sensitivity": {
                            "$ref": "#/definitions/customizable_sensitivity",
                            "description": "Determines the number of successive samples which must be equal before the sequence is deemed to contain clipping. Choose between High (least number of samples), Medium, and Low (most number of samples)"
                        },
                        "custom_sensitivity": {
                            "type": "number",
                            "description": "Specify custom value for successive samples which must be equal before the sequence is deemed to contain clipping"
                        },
                        "units": {
                            "type": "integer",
                            "title": "Custom Sensitivity Units",
                            "enum": [
                                0,
                                1
                            ],
                            "default": 0,
                            "titleMap": [
                                {
                                    "value": 0,
                                    "name": "Samples"
                                },
                                {
                                    "value": 1,
                                    "name": "Milliseconds"
                                }
                            ]
                        },
                        "percentage_check": {
                            "title": "Percentage Check",
                            "type": "boolean",
                            "default": false
                        },
                        "percentage": {
                            "title": "Percentage",
                            "type": "number",
                            "minimum": 0,
                            "maximum": 100.0,
                            "default": 1,
                            "suffix": "%"
                        }
                    }
                },
                {
                    "if": {
                        "properties": {
                            "sensitivity": {
                                "const": 3
                            }
                        }
                    },
                    "then": {
                        "required": [
                            "custom_sensitivity",
                            "units"
                        ]
                    }
                },
                {
                    "if": {
                        "properties": {
                            "percentage_check": {
                                "const": true
                            }
                        }
                    },
                    "then": {
                        "required": [
                            "percentage"
                        ]
                    }
                },
                {
                    "if": {
                        "properties": {
                            "units": {
                                "const": 0
                            }
                        }
                    },
                    "then": {
                        "properties": {
                            "custom_sensitivity": {
                                "minimum": 2
                            }
                        }
                    }
                },
                {
                    "if": {
                        "properties": {
                            "units": {
                                "const": 1
                            }
                        }
                    },
                    "then": {
                        "properties": {
                            "custom_sensitivity": {
                                "minimum": 0.1
                            }
                        }
                    }
                }
            ]
        },
        "colorbar_range": {
            "allOf": [
                {
                    "$ref": "#/definitions/tolerant_range"
                },
                {
                    "properties": {
                        "range_type": {
                            "title": "Must Be",
                            "$ref": "#/definitions/base_range_type",
                            "titleMap": [
                                {
                                    "value": 0,
                                    "name": "ColorBars"
                                },
                                {
                                    "value": 1,
                                    "name": "Not ColorBars"
                                },
                                {
                                    "value": 2,
                                    "name": "Any"
                                }
                            ]
                        }
                    }
                },
                {
                    "allOf": [
                        {
                            "if": {
                                "properties": {
                                    "layout": {
                                        "enum": [
                                            "0"
                                        ]
                                    }
                                }
                            },
                            "then": {
                                "required": [
                                    "start",
                                    "end",
                                    "tolerance",
                                    "units",
                                    "range_type"
                                ]
                            }
                        },
                        {
                            "if": {
                                "properties": {
                                    "layout": {
                                        "enum": [
                                            "1"
                                        ]
                                    }
                                }
                            },
                            "then": {
                                "required": [
                                    "start_from_end",
                                    "duration",
                                    "tolerance",
                                    "units",
                                    "range_type"
                                ]
                            }
                        }
                    ]
                }
            ]
        },
        "gop_structure": {
            "type": "object",
            "properties": {
                "i_distance": {
                    "title": "I-Frame distance",
                    "type": "string"
                },
                "p_distance": {
                    "title": "P-Frame distance",
                    "type": "string"
                },
                "open_closed": {
                    "title": "Open/Closed",
                    "type": "integer",
                    "enum": [
                        0,
                        1,
                        2
                    ],
                    "default": 0,
                    "titleMap": [
                        {
                            "value": 0,
                            "name": "Either"
                        },
                        {
                            "value": 1,
                            "name": "Open"
                        },
                        {
                            "value": 2,
                            "name": "Closed"
                        }
                    ]
                }
            }
        },
        "timecode": {
            "type": "string",
            "default": "00:00:00:00",
            "pattern": "^[0-9]{2}:[0-9]{2}:[0-9]{2}[;:.][0-9]{2,3}$"
        },
        "bool_false": {
            "type": "boolean",
            "default": false
        },
        "bool_true": {
            "type": "boolean",
            "default": true
        },
        "bool_optional": {
            "type": "integer",
            "enum": [
                0,
                1,
                2
            ],
            "default": 0
        },
        "bool_extended": {
            "type": "integer",
            "enum": [
                0,
                1,
                2,
                3
            ],
            "default": 2
        },
        "allowed_disallowed_required": {
            "$ref": "#/definitions/bool_optional",
            "titleMap": [
                {
                    "value": 0,
                    "name": "Allowed"
                },
                {
                    "value": 1,
                    "name": "Disallowed"
                },
                {
                    "value": 2,
                    "name": "Required"
                }
            ]
        },
        "rational": {
            "type": "object",
            "required": [
                "num",
                "denom"
            ],
            "properties": {
                "num": {
                    "title": "Numerator",
                    "type": "integer",
                    "minimum": 0,
                    "default": 0
                },
                "denom": {
                    "title": "Denominator",
                    "type": "integer",
                    "minimum": 1,
                    "default": 1
                }
            }
        },
        "minmax": {
            "type": "object",
            "properties": {
                "min": {
                    "title": "Minimum",
                    "type": "integer",
                    "minimum": 0,
                    "default": 0
                },
                "max": {
                    "title": "Maximum",
                    "type": "integer",
                    "minimum": 0,
                    "default": 0
                }
            }
        },
        "minmax_bits": {
            "type": "object",
            "properties": {
                "min": {
                    "title": "Minimum",
                    "type": "integer",
                    "minimum": 0,
                    "default": 0,
                    "suffix": "bits per second"
                },
                "max": {
                    "title": "Maximum",
                    "type": "integer",
                    "minimum": 0,
                    "default": 0,
                    "suffix": "bits per second"
                }
            }
        },
        "audio_config_silence": {
            "properties": {
                "audio_track": {
                    "$ref": "#/definitions/audio_track"
                },
                "audio_track_type": {
                    "$ref": "#/definitions/audio_track_type"
                },
                "dolbye_program": {
                    "$ref": "#/definitions/dolbye_program"
                },
                "channel_mask": {
                    "$ref": "#/definitions/channel_mask"
                }
            },
            "allOf": [
                {
                    "if": {
                        "properties": {
                            "silence": {
                                "const": true
                            }
                        }
                    },
                    "then": {
                        "required": [
                            "audio_track",
                            "audio_track_type"
                        ],
                        "allOf": [
                            {
                                "if": {
                                    "properties": {
                                        "audio_track_type": {
                                            "const": 2
                                        }
                                    }
                                },
                                "then": {
                                    "required": [
                                        "dolbye_program"
                                    ]
                                }
                            }
                        ]
                    }
                }
            ]
        },
        "audio_config": {
            "properties": {
                "audio_track": {
                    "$ref": "#/definitions/audio_track"
                },
                "audio_track_type": {
                    "$ref": "#/definitions/audio_track_type"
                },
                "dolbye_program": {
                    "$ref": "#/definitions/dolbye_program"
                },
                "channel_mask": {
                    "$ref": "#/definitions/channel_mask"
                }
            },
            "required": [
                "audio_track",
                "audio_track_type"
            ],
            "allOf": [
                {
                    "if": {
                        "properties": {
                            "audio_track_type": {
                                "const": 2
                            }
                        }
                    },
                    "then": {
                        "required": [
                            "dolbye_program"
                        ]
                    }
                }
            ]
        },
        "audio_track": {
            "title": "Mix",
            "type": "integer",
            "description": "Audio mix to test",
            "minimum": 1,
            "default": 1
        },
        "audio_track_type": {
            "title": "Mix type",
            "type": "integer",
            "description": "Audio mix type to test",
            "enum": [
                0,
                1,
                2,
                3
            ],
            "titleMap": [
                {
                    "value": 0,
                    "name": "Any"
                },
                {
                    "value": 1,
                    "name": "PCM"
                },
                {
                    "value": 2,
                    "name": "DolbyE"
                },
                {
                    "value": 3,
                    "name": "Encoded"
                }
            ],
            "default": 0
        },
        "dolbye_program": {
            "title": "Dolby E Program",
            "type": "integer",
            "description": "Dolby E program to test (only for Dolby E mixes)",
            "minimum": 1,
            "default": 1
        },
        "channel_mask": {
            "title": "Channel Selection",
            "type": "string",
            "pattern": "^$|^\\s*\\d+\\s*(,\\s*\\d+\\s*)*$",
            "description": "Select channels using comma separated numbers. Leave empty to select all."
        },
        "time_units": {
            "type": "integer",
            "description": "Test in seconds or frames",
            "enum": [
                0,
                1
            ],
            "default": 0,
            "titleMap": [
                {
                    "value": 0,
                    "name": "Seconds"
                },
                {
                    "value": 1,
                    "name": "Frames"
                }
            ]
        },
        "base_range_type": {
            "type": "integer",
            "enum": [
                0,
                1,
                2
            ],
            "default": 0
        },
        "range_limit": {
            "type": "number",
            "default": 0,
            "minimum": 0
        },
        "base_range": {
            "type": "object",
            "required": [
                "layout"
            ],
            "properties": {
                "layout": {
                    "title": "Layout",
                    "type": "string",
                    "enum": [
                        "0",
                        "1"
                    ],
                    "default": "0",
                    "titleMap": [
                        {
                            "value": "0",
                            "name": "Test Fixed Duration"
                        },
                        {
                            "value": "1",
                            "name": "Test End Of File"
                        }
                    ]
                },
                "start": {
                    "title": "Starts At",
                    "$ref": "#/definitions/range_limit"
                },
                "end": {
                    "title": "Ends At",
                    "$ref": "#/definitions/range_limit"
                },
                "start_from_end": {
                    "title": "Test Last",
                    "$ref": "#/definitions/range_limit"
                },
                "duration": {
                    "title": "With Duration",
                    "$ref": "#/definitions/range_limit"
                },
                "units": {
                    "title": "Time Units",
                    "$ref": "#/definitions/time_units"
                }
            }
        },
        "tolerant_range": {
            "allOf": [
                {
                    "$ref": "#/definitions/base_range"
                },
                {
                    "properties": {
                        "tolerance": {
                            "title": "Tolerance +/-",
                            "type": "number",
                            "default": 0,
                            "minimum": 0
                        }
                    }
                }
            ]
        },
        "video_bit_depth": {
            "type": "integer",
            "enum": [
                8,
                10,
                12,
                14
            ],
            "default": 8
        },
        "level_8_bit": {
            "title": "Black Level",
            "type": "integer",
            "minimum": 0,
            "maximum": 255,
            "default": 16
        },
        "level_10_bit": {
            "title": "Black Level",
            "type": "integer",
            "minimum": 0,
            "maximum": 1023,
            "default": 64
        },
        "level_12_bit": {
            "title": "Black Level",
            "type": "integer",
            "minimum": 0,
            "maximum": 4095,
            "default": 256
        },
        "level_14_bit": {
            "title": "Black Level",
            "type": "integer",
            "minimum": 0,
            "maximum": 16383,
            "default": 1024
        },
        "max_black_level_8_bit": {
            "title": "Max Black Level",
            "type": "integer",
            "minimum": 0,
            "maximum": 255,
            "default": 235
        },
        "max_black_level_10_bit": {
            "title": "Max Black Level",
            "type": "integer",
            "minimum": 0,
            "maximum": 1023,
            "default": 940
        },
        "max_black_level_12_bit": {
            "title": "Max Black Level",
            "type": "integer",
            "minimum": 0,
            "maximum": 4095,
            "default": 3760
        },
        "max_black_level_14_bit": {
            "title": "Max Black Level",
            "type": "integer",
            "minimum": 0,
            "maximum": 16383,
            "default": 15040
        },
        "warnings_as": {
            "title": "Treat Warnings as",
            "type": "integer",
            "enum": [
                0,
                1,
                2
            ],
            "titleMap": [
                {
                    "value": 0,
                    "name": "Info"
                },
                {
                    "value": 1,
                    "name": "Warning"
                },
                {
                    "value": 2,
                    "name": "Error"
                }
            ],
            "default": 1
        },
        "sensitivity": {
            "title": "Sensitivity",
            "type": "integer",
            "description": "A High sensitivity will find more problems but could also find more false positives. A Low sensitivity will only detect more obvious problems",
            "enum": [
                0,
                1,
                2
            ],
            "default": 1,
            "titleMap": [
                {
                    "value": 0,
                    "name": "Low"
                },
                {
                    "value": 1,
                    "name": "Medium"
                },
                {
                    "value": 2,
                    "name": "High"
                }
            ]
        },
        "customizable_sensitivity": {
            "title": "Sensitivity",
            "type": "integer",
            "enum": [
                0,
                1,
                2,
                3
            ],
            "default": 1,
            "titleMap": [
                {
                    "value": 0,
                    "name": "Low"
                },
                {
                    "value": 1,
                    "name": "Medium"
                },
                {
                    "value": 2,
                    "name": "High"
                },
                {
                    "value": 3,
                    "name": "Custom"
                }
            ]
        },
        "dialnorm_test_config": {
            "type": "object",
            "required": [
                "minimum",
                "maximum"
            ],
            "allOf": [
                {
                    "$ref": "#/definitions/audio_config"
                },
                {
                    "properties": {
                        "minimum": {
                            "title": "Minimum Dialnorm Value",
                            "description": "Minimum valid dialnorm value is 1",
                            "type": "integer",
                            "minimum": 1,
                            "maximum": 31
                        },
                        "maximum": {
                            "title": "Maximum Dialnorm Value",
                            "description": "Maximum valid dialnorm value is 31",
                            "type": "integer",
                            "minimum": 1,
                            "maximum": 31
                        }
                    }
                }
            ]
        },
        "dualmono_test_config": {
            "type": "object",
            "allOf": [
                {
                    "$ref": "#/definitions/audio_config"
                },
                {
                    "properties": {
                        "tolerance": {
                            "title": "Tolerance Window",
                            "type": "number",
                            "default": 1,
                            "description": "A dual mono section lasting less than this time window will be ignored."
                        }
                    }
                }
            ]
        },
        "freezeframe_range": {
            "allOf": [
                {
                    "$ref": "#/definitions/tolerant_range"
                },
                {
                    "properties": {
                        "range_type": {
                            "title": "Must Be",
                            "$ref": "#/definitions/base_range_type",
                            "titleMap": [
                                {
                                    "value": 0,
                                    "name": "Freeze"
                                },
                                {
                                    "value": 1,
                                    "name": "Not Freeze"
                                },
                                {
                                    "value": 2,
                                    "name": "Any"
                                }
                            ]
                        }
                    }
                },
                {
                    "allOf": [
                        {
                            "if": {
                                "properties": {
                                    "layout": {
                                        "enum": [
                                            "0"
                                        ]
                                    }
                                }
                            },
                            "then": {
                                "required": [
                                    "start",
                                    "end",
                                    "tolerance",
                                    "units",
                                    "range_type"
                                ]
                            }
                        },
                        {
                            "if": {
                                "properties": {
                                    "layout": {
                                        "enum": [
                                            "1"
                                        ]
                                    }
                                }
                            },
                            "then": {
                                "required": [
                                    "start_from_end",
                                    "duration",
                                    "tolerance",
                                    "units",
                                    "range_type"
                                ]
                            }
                        }
                    ]
                }
            ]
        },
        "integrated_loudness_test_config": {
            "type": "object",
            "allOf": [
                {
                    "$ref": "#/definitions/audio_config"
                },
                {
                    "properties": {
                        "level": {
                            "title": "Loudness Level",
                            "description": "Specify the loudness (and tolerance range) within which loudness must lie",
                            "type": "number",
                            "default": -20.0,
                            "suffix": "dB"
                        },
                        "tolerance": {
                            "title": "Loudness Tolerance",
                            "description": "Specify the loudness (and tolerance range) within which loudness must lie",
                            "type": "number",
                            "default": 2.0,
                            "minimum": 0.0,
                            "suffix": "dB"
                        },
                        "mode": {
                            "title": "Loudness Mode",
                            "description": "Select standard to use for measuring integrated loudness",
                            "type": "integer",
                            "enum": [
                                0,
                                1,
                                2,
                                3,
                                4
                            ],
                            "default": 0,
                            "titleMap": [
                                {
                                    "value": 0,
                                    "name": "ITU 1770-4 / EBU I"
                                },
                                {
                                    "value": 1,
                                    "name": "ITU 1770-1"
                                },
                                {
                                    "value": 3,
                                    "name": "ITU 1770-2"
                                },
                                {
                                    "value": 4,
                                    "name": "ITU 1770-3"
                                },
                                {
                                    "value": 2,
                                    "name": "ARIB TR-B32"
                                }
                            ]
                        },
                        "dialog_gating": {
                            "title": "Dialog Gating",
                            "description": "Measure loudness only when dialog is present",
                            "type": "boolean"
                        }
                    }
                }
            ]
        },
        "loudness_range_test_config": {
            "type": "object",
            "description": "Measure the variation in loudness over the duration of a file. The algorithm is specified in EBU-Tech 3342 and produces an output Loudness Range ('LRA') in terms of Loudness Units ('LU')",
            "allOf": [
                {
                    "$ref": "#/definitions/audio_config"
                },
                {
                    "properties": {
                        "check_min": {
                            "title": "Check Minimum",
                            "type": "boolean"
                        },
                        "min_range": {
                            "title": "Min",
                            "description": "Minimum permitted loudness range",
                            "type": "number",
                            "suffix": "LU"
                        },
                        "check_max": {
                            "title": "Check Maximum",
                            "type": "boolean"
                        },
                        "max_range": {
                            "title": "Max",
                            "description": "Maximum permitted loudness range",
                            "type": "number",
                            "suffix": "LU"
                        }
                    }
                },
                {
                    "if": {
                        "properties": {
                            "check_min": {
                                "const": true
                            }
                        }
                    },
                    "then": {
                        "required": [
                            "min_range"
                        ]
                    }
                },
                {
                    "if": {
                        "properties": {
                            "check_max": {
                                "const": true
                            }
                        }
                    },
                    "then": {
                        "required": [
                            "max_range"
                        ]
                    }
                }
            ]
        },
        "minlevel_test_config": {
            "type": "object",
            "required": [
                "audio_track",
                "dolbye_program",
                "minlevel_elsewhere",
                "level",
                "duration",
                "units"
            ],
            "description": "Checks if the RMS level for a given channel drops below the given level for a window longer than the given duration",
            "allOf": [
                {
                    "$ref": "#/definitions/audio_config"
                },
                {
                    "properties": {
                        "minlevel_elsewhere": {
                            "title": "Test whole file",
                            "description": "Evaluate minimum level across the whole file",
                            "type": "boolean",
                            "default": true
                        },
                        "level": {
                            "title": "Min Level Threshold (dBFS)",
                            "type": "number",
                            "default": -70.0,
                            "description": "The minimum acceptable level over the window duration, in dBFS RMS."
                        },
                        "duration": {
                            "title": "Window Duration",
                            "$ref": "#/definitions/range_limit"
                        },
                        "units": {
                            "title": "Time Units",
                            "$ref": "#/definitions/time_units"
                        },
                        "ranges": {
                            "title": "Range",
                            "type": "array",
                            "default": [],
                            "items": {
                                "$ref": "#/definitions/minlevel_range"
                            }
                        }
                    }
                }
            ]
        },
        "minlevel_range": {
            "allOf": [
                {
                    "$ref": "#/definitions/base_range"
                },
                {
                    "properties": {
                        "range_type": {
                            "title": "Test for minimum level",
                            "type": "integer",
                            "enum": [
                                0,
                                2
                            ],
                            "default": 0,
                            "titleMap": [
                                {
                                    "value": 0,
                                    "name": "Should be below"
                                },
                                {
                                    "value": 2,
                                    "name": "Don't care"
                                }
                            ]
                        }
                    }
                },
                {
                    "allOf": [
                        {
                            "if": {
                                "properties": {
                                    "layout": {
                                        "enum": [
                                            "0"
                                        ]
                                    }
                                }
                            },
                            "then": {
                                "required": [
                                    "start",
                                    "end",
                                    "units",
                                    "range_type"
                                ]
                            }
                        },
                        {
                            "if": {
                                "properties": {
                                    "layout": {
                                        "enum": [
                                            "1"
                                        ]
                                    }
                                }
                            },
                            "then": {
                                "required": [
                                    "start_from_end",
                                    "duration",
                                    "units",
                                    "range_type"
                                ]
                            }
                        }
                    ]
                }
            ]
        },
        "momentary_loudness_test_config": {
            "type": "object",
            "allOf": [
                {
                    "$ref": "#/definitions/audio_config"
                },
                {
                    "properties": {
                        "level": {
                            "title": "Loudness Level",
                            "type": "number",
                            "default": -20.0,
                            "suffix": "dB"
                        },
                        "violations": {
                            "title": "Report Violations",
                            "description": "Max Violations will report only the worst violation",
                            "type": "integer",
                            "enum": [
                                0,
                                1
                            ],
                            "titleMap": [
                                {
                                    "value": 0,
                                    "name": "Max Only"
                                },
                                {
                                    "value": 1,
                                    "name": "All Violations"
                                }
                            ],
                            "default": 0
                        }
                    }
                }
            ]
        },
        "timecode_track_test": {
            "type": "object",
            "required": [
                "continuity"
            ],
            "properties": {
                "continuity": {
                    "title": "Structural Continuity",
                    "type": "boolean",
                    "default": false
                },
                "dropframe": {
                    "title": "Drop Frame",
                    "$ref": "#/definitions/bool_optional",
                    "titleMap": [
                        {
                            "value": 0,
                            "name": "Don't Test"
                        },
                        {
                            "value": 1,
                            "name": "False"
                        },
                        {
                            "value": 2,
                            "name": "True"
                        }
                    ],
                    "default": 0
                }
            }
        },
        "location_test": {
            "type": "object",
            "properties": {
                "header": {
                    "title": "Header Partition",
                    "$ref": "#/definitions/allowed_disallowed_required"
                },
                "body": {
                    "title": "Body Partition(s)",
                    "$ref": "#/definitions/allowed_disallowed_required"
                },
                "exclude_first": {
                    "title": "Exclude First Body Partition",
                    "type": "boolean",
                    "default": false
                },
                "footer": {
                    "title": "Footer Partition",
                    "$ref": "#/definitions/allowed_disallowed_required"
                },
                "is_repeated": {
                    "title": "Repeated footer partition",
                    "type": "boolean",
                    "default": false
                },
                "present": {
                    "title": "Present In At Least One",
                    "type": "boolean",
                    "default": false
                }
            }
        },
        "partition_status_test": {
            "type": "object",
            "properties": {
                "closedcomplete": {
                    "title": "Closed / Complete",
                    "type": "boolean"
                },
                "openincomplete": {
                    "title": "Open / Incomplete",
                    "type": "boolean"
                },
                "closedincomplete": {
                    "title": "Closed / Incomplete",
                    "type": "boolean"
                },
                "opencomplete": {
                    "title": "Open / Complete",
                    "type": "boolean"
                },
                "notpresent": {
                    "title": "Not Present",
                    "type": "boolean"
                }
            }
        },
        "pic_frame_size": {
            "type": "object",
            "properties": {
                "size": {
                    "title": "Frame Size",
                    "type": "string",
                    "pattern": "^\\d+x|X\\d+$",
                    "suffix": "(WxH)  e.g. 1920x544"
                }
            }
        },
        "sid": {
            "type": "string",
            "pattern": "^$|^\\s*\\d+\\s*(,\\s*\\d+\\s*)*$",
            "description": "Leave blank for any"
        },
        "nielsen_test_config": {
            "type": "object",
            "allOf": [
                {
                    "$ref": "#/definitions/audio_config"
                },
                {
                    "properties": {
                        "naes2": {
                            "title": "NAES 2",
                            "type": "boolean",
                            "default": false,
                            "description": "Detects and reports N2 watermarks"
                        },
                        "naes2_sids": {
                            "$ref": "#/definitions/sid"
                        },
                        "naes6": {
                            "title": "NAES 6",
                            "type": "boolean",
                            "default": false,
                            "description": "Detects and reports Nielsen Watermark TAM** Codes (NW) and Nielsen Watermark Commercial Codes (NWCC)"
                        },
                        "naes6_sids": {
                            "$ref": "#/definitions/sid"
                        }
                    }
                }
            ]
        },
        "peak_test_config": {
            "type": "object",
            "allOf": [
                {
                    "$ref": "#/definitions/audio_config"
                },
                {
                    "properties": {
                        "min_peak_enable": {
                            "title": "Min Peak Enable",
                            "type": "boolean"
                        },
                        "min_peak_level": {
                            "title": "Min Peak Level",
                            "description": "Minimum acceptable peak level",
                            "type": "number"
                        },
                        "max_peak_enable": {
                            "title": "Max Peak Enable",
                            "type": "boolean"
                        },
                        "max_peak_level": {
                            "title": "Max Peak Level",
                            "description": "Maximum acceptable peak level",
                            "type": "number"
                        },
                        "peak_type": {
                            "title": "Peak Type",
                            "description": "dbTP (True Peak) as per Annex 2 of ITU-R BS.1770-1 or in dbFS (Full Scale)",
                            "type": "integer",
                            "enum": [
                                0,
                                1
                            ],
                            "titleMap": [
                                {
                                    "value": 0,
                                    "name": "dBFS"
                                },
                                {
                                    "value": 1,
                                    "name": "dBTP"
                                }
                            ],
                            "default": 0
                        }
                    }
                },
                {
                    "if": {
                        "properties": {
                            "min_peak_enable": {
                                "const": true
                            }
                        }
                    },
                    "then": {
                        "required": [
                            "min_peak_level"
                        ]
                    }
                },
                {
                    "if": {
                        "properties": {
                            "max_peak_enable": {
                                "const": true
                            }
                        }
                    },
                    "then": {
                        "required": [
                            "max_peak_level"
                        ]
                    }
                }
            ]
        },
        "phase_test_config": {
            "type": "object",
            "allOf": [
                {
                    "$ref": "#/definitions/audio_config"
                },
                {
                    "properties": {
                        "min_instant_phase_enable": {
                            "title": "Min Instant Phase Enable",
                            "type": "boolean"
                        },
                        "min_instant_phase": {
                            "title": "Min Instant Phase",
                            "description": "Taken over a 10ms window period, the lowest value for the stream is recorded",
                            "type": "number"
                        },
                        "min_mean_phase_enable": {
                            "title": "Min Mean Phase Enable",
                            "type": "boolean"
                        },
                        "min_mean_phase": {
                            "title": "Min Mean Phase",
                            "description": "Measured over the whole audio stream",
                            "type": "number"
                        },
                        "max_mean_phase_enable": {
                            "title": "Max Mean Phase Enable",
                            "type": "boolean"
                        },
                        "max_mean_phase": {
                            "title": "Max Mean Phase",
                            "description": "Measured over the whole audio stream",
                            "type": "number"
                        }
                    }
                },
                {
                    "if": {
                        "properties": {
                            "min_instant_phase_enable": {
                                "const": true
                            }
                        }
                    },
                    "then": {
                        "required": [
                            "min_instant_phase"
                        ]
                    }
                },
                {
                    "if": {
                        "properties": {
                            "min_mean_phase_enable": {
                                "const": true
                            }
                        }
                    },
                    "then": {
                        "required": [
                            "min_mean_phase"
                        ]
                    }
                },
                {
                    "if": {
                        "properties": {
                            "max_mean_phase_enable": {
                                "const": true
                            }
                        }
                    },
                    "then": {
                        "required": [
                            "max_mean_phase"
                        ]
                    }
                }
            ]
        },
        "ppm_level_test_config": {
            "type": "object",
            "allOf": [
                {
                    "$ref": "#/definitions/audio_config"
                },
                {
                    "properties": {
                        "min_ppm_enable": {
                            "title": "Min PPM Level Enable",
                            "type": "boolean"
                        },
                        "min_ppm_level": {
                            "title": "Min PPM Level",
                            "type": "number"
                        },
                        "max_ppm_enable": {
                            "title": "Max PPM Level Enable",
                            "type": "boolean"
                        },
                        "max_ppm_level": {
                            "title": "Max PPM Level",
                            "type": "number"
                        },
                        "ppm_mode": {
                            "title": "PPM Mode",
                            "type": "integer",
                            "enum": [
                                0,
                                1,
                                2
                            ],
                            "titleMap": [
                                {
                                    "value": 0,
                                    "name": "M3"
                                },
                                {
                                    "value": 1,
                                    "name": "M6"
                                },
                                {
                                    "value": 2,
                                    "name": "AB"
                                }
                            ],
                            "default": 0
                        }
                    }
                },
                {
                    "if": {
                        "properties": {
                            "min_ppm_enable": {
                                "const": true
                            }
                        }
                    },
                    "then": {
                        "required": [
                            "min_ppm_level"
                        ]
                    }
                },
                {
                    "if": {
                        "properties": {
                            "max_ppm_enable": {
                                "const": true
                            }
                        }
                    },
                    "then": {
                        "required": [
                            "max_ppm_level"
                        ]
                    }
                }
            ]
        },
        "shortterm_loudness_test_config": {
            "type": "object",
            "allOf": [
                {
                    "$ref": "#/definitions/audio_config"
                },
                {
                    "properties": {
                        "level": {
                            "title": "Loudness Level",
                            "type": "number",
                            "default": -20.0,
                            "suffix": "dB"
                        },
                        "window": {
                            "title": "Loudness Window",
                            "description": "Default window length of 3 seconds corresponds to EBU-Tech 3341 Short-term mode",
                            "type": "number",
                            "suffix": "seconds",
                            "default": 3.0,
                            "minimum": 0
                        },
                        "violations": {
                            "title": "Report Violations",
                            "description": "Max Violations will report only the worst violation",
                            "type": "integer",
                            "enum": [
                                0,
                                1
                            ],
                            "titleMap": [
                                {
                                    "value": 0,
                                    "name": "Max Only"
                                },
                                {
                                    "value": 1,
                                    "name": "All Violations"
                                }
                            ],
                            "default": 0
                        }
                    }
                }
            ]
        },
        "silence_test_config": {
            "type": "object",
            "required": [
                "silent_elsewhere"
            ],
            "allOf": [
                {
                    "$ref": "#/definitions/audio_config"
                },
                {
                    "properties": {
                        "silent_elsewhere": {
                            "title": "Test whole file",
                            "description": "Test whole file for the presence of silence",
                            "type": "boolean",
                            "default": true
                        },
                        "silent": {
                            "type": "boolean",
                            "default": true,
                            "titleMap": [
                                {
                                    "value": true,
                                    "name": "Must Be Silent"
                                },
                                {
                                    "value": false,
                                    "name": "Must Not Be Silent"
                                }
                            ]
                        },
                        "digital": {
                            "title": "Digital Silence",
                            "type": "boolean",
                            "description": "The track is checked for the presence or absence of audio samples"
                        },
                        "threshold": {
                            "title": "Silence Threshold",
                            "type": "number",
                            "default": -70.0,
                            "description": "The threshold below which an audio track is considered silent"
                        },
                        "ranges": {
                            "title": "Range",
                            "type": "array",
                            "default": [],
                            "items": {
                                "$ref": "#/definitions/silence_range"
                            }
                        },
                        "quiet": {
                            "type": "boolean",
                            "default": false
                        }
                    }
                }
            ]
        },
        "silence_range": {
            "allOf": [
                {
                    "$ref": "#/definitions/base_range"
                },
                {
                    "properties": {
                        "range_type": {
                            "title": "Must Be",
                            "$ref": "#/definitions/base_range_type",
                            "titleMap": [
                                {
                                    "value": 0,
                                    "name": "Silent"
                                },
                                {
                                    "value": 1,
                                    "name": "Not Silent"
                                },
                                {
                                    "value": 2,
                                    "name": "Any"
                                }
                            ]
                        }
                    }
                },
                {
                    "allOf": [
                        {
                            "if": {
                                "properties": {
                                    "layout": {
                                        "enum": [
                                            "0"
                                        ]
                                    }
                                }
                            },
                            "then": {
                                "required": [
                                    "start",
                                    "end",
                                    "units",
                                    "range_type"
                                ]
                            }
                        },
                        {
                            "if": {
                                "properties": {
                                    "layout": {
                                        "enum": [
                                            "1"
                                        ]
                                    }
                                }
                            },
                            "then": {
                                "required": [
                                    "start_from_end",
                                    "duration",
                                    "units",
                                    "range_type"
                                ]
                            }
                        }
                    ]
                }
            ]
        },
        "singlecolor_range": {
            "allOf": [
                {
                    "$ref": "#/definitions/tolerant_range"
                },
                {
                    "properties": {
                        "range_type": {
                            "title": "Must Be",
                            "$ref": "#/definitions/base_range_type",
                            "titleMap": [
                                {
                                    "value": 0,
                                    "name": "Single Color"
                                },
                                {
                                    "value": 1,
                                    "name": "Not Single Color"
                                },
                                {
                                    "value": 2,
                                    "name": "Any"
                                }
                            ]
                        }
                    }
                },
                {
                    "allOf": [
                        {
                            "if": {
                                "properties": {
                                    "layout": {
                                        "enum": [
                                            "0"
                                        ]
                                    }
                                }
                            },
                            "then": {
                                "required": [
                                    "start",
                                    "end",
                                    "tolerance",
                                    "units",
                                    "range_type"
                                ]
                            }
                        },
                        {
                            "if": {
                                "properties": {
                                    "layout": {
                                        "enum": [
                                            "1"
                                        ]
                                    }
                                }
                            },
                            "then": {
                                "required": [
                                    "start_from_end",
                                    "duration",
                                    "tolerance",
                                    "units",
                                    "range_type"
                                ]
                            }
                        }
                    ]
                }
            ]
        },
        "tone_type": {
            "title": "Tone Type",
            "type": "string",
            "description": "Check for presence of sine wave tone at level given in dBFS peak-to-peak (to convert from RMS add 3dB)",
            "enum": [
                "0",
                "1",
                "2",
                "3",
                "4",
                "5",
                "6"
            ],
            "default": "0",
            "titleMap": [
                {
                    "value": "0",
                    "name": "Continuous"
                },
                {
                    "value": "1",
                    "name": "Ebu1000Hz"
                },
                {
                    "value": "2",
                    "name": "Ebu440Hz"
                },
                {
                    "value": "3",
                    "name": "Glits1000Hz"
                },
                {
                    "value": "4",
                    "name": "Glits2000Hz"
                },
                {
                    "value": "5",
                    "name": "Blits"
                },
                {
                    "value": "6",
                    "name": "EAS (Emergency Alert System)"
                }
            ]
        },
        "tone_test_config": {
            "type": "object",
            "required": [
                "tone_type"
            ],
            "allOf": [
                {
                    "$ref": "#/definitions/audio_config"
                },
                {
                    "properties": {
                        "tone_type": {
                            "$ref": "#/definitions/tone_type"
                        },
                        "tone_elsewhere": {
                            "title": "Test whole file",
                            "description": "Test whole file for the presence of a test tone",
                            "type": "boolean",
                            "default": true
                        },
                        "tone": {
                            "type": "boolean",
                            "default": false,
                            "titleMap": [
                                {
                                    "value": true,
                                    "name": "Must Be Present"
                                },
                                {
                                    "value": false,
                                    "name": "Must Be Absent"
                                }
                            ]
                        },
                        "frequency": {
                            "title": "Tone frequency",
                            "description": "The expected frequency of the test tone",
                            "type": "number",
                            "default": 1000.0,
                            "suffix": "Hz"
                        },
                        "power": {
                            "title": "Tone level",
                            "type": "number",
                            "default": -6.0,
                            "suffix": "dBFS"
                        },
                        "tolerance": {
                            "title": "Level tolerance",
                            "type": "number",
                            "default": 0.5,
                            "suffix": "dB"
                        },
                        "ranges": {
                            "title": "Range",
                            "type": "array",
                            "default": [],
                            "items": {
                                "$ref": "#/definitions/tone_range"
                            }
                        },
                        "segment": {
                            "$ref": "#/definitions/tone_segment"
                        }
                    }
                },
                {
                    "if": {
                        "properties": {
                            "tone_type": {
                                "const": "0"
                            }
                        }
                    },
                    "then": {
                        "required": [
                            "tolerance",
                            "frequency",
                            "power",
                            "tone_elsewhere"
                        ],
                        "allOf": [
                            {
                                "if": {
                                    "properties": {
                                        "tone_elsewhere": {
                                            "const": true
                                        }
                                    }
                                },
                                "then": {
                                    "required": [
                                        "tone"
                                    ]
                                }
                            }
                        ]
                    }
                },
                {
                    "if": {
                        "properties": {
                            "tone_type": {
                                "const": "1"
                            }
                        }
                    },
                    "then": {
                        "required": [
                            "tolerance",
                            "segment"
                        ]
                    }
                },
                {
                    "if": {
                        "properties": {
                            "tone_type": {
                                "const": "2"
                            }
                        }
                    },
                    "then": {
                        "required": [
                            "tolerance",
                            "segment"
                        ]
                    }
                },
                {
                    "if": {
                        "properties": {
                            "tone_type": {
                                "const": "3"
                            }
                        }
                    },
                    "then": {
                        "required": [
                            "tolerance",
                            "segment"
                        ]
                    }
                },
                {
                    "if": {
                        "properties": {
                            "tone_type": {
                                "const": "4"
                            }
                        }
                    },
                    "then": {
                        "required": [
                            "tolerance",
                            "segment"
                        ]
                    }
                },
                {
                    "if": {
                        "properties": {
                            "tone_type": {
                                "const": "5"
                            }
                        }
                    },
                    "then": {
                        "required": [
                            "tolerance",
                            "segment"
                        ]
                    }
                }
            ]
        },
        "tone_range": {
            "allOf": [
                {
                    "$ref": "#/definitions/base_range"
                },
                {
                    "properties": {
                        "range_type": {
                            "title": "Must Be",
                            "$ref": "#/definitions/base_range_type",
                            "titleMap": [
                                {
                                    "value": 0,
                                    "name": "Present"
                                },
                                {
                                    "value": 1,
                                    "name": "Not Present"
                                },
                                {
                                    "value": 2,
                                    "name": "Any"
                                }
                            ]
                        }
                    }
                },
                {
                    "if": {
                        "properties": {
                            "layout": {
                                "enum": [
                                    "0"
                                ]
                            }
                        }
                    },
                    "then": {
                        "required": [
                            "start",
                            "end",
                            "units",
                            "range_type"
                        ]
                    }
                },
                {
                    "if": {
                        "properties": {
                            "layout": {
                                "enum": [
                                    "1"
                                ]
                            }
                        }
                    },
                    "then": {
                        "required": [
                            "start_from_end",
                            "duration",
                            "units",
                            "range_type"
                        ]
                    }
                }
            ]
        },
        "tone_segment": {
            "type": "object",
            "required": [
                "start",
                "duration",
                "units"
            ],
            "properties": {
                "start": {
                    "title": "Start At",
                    "$ref": "#/definitions/range_limit"
                },
                "duration": {
                    "title": "Duration",
                    "$ref": "#/definitions/range_limit"
                },
                "units": {
                    "title": "Time Units",
                    "$ref": "#/definitions/time_units"
                }
            }
        }
    },
    "properties": {
        "name": {
            "description": "User given name of a template",
            "type": "string",
            "nullable": false
        },
        "id": {
            "description": "Cloud ID",
            "type": [
                "string",
                "null"
            ],
            "nullable": true
        },
        "created_at": {
            "description": "Cloud Created at",
            "type": [
                "string",
                "null"
            ],
            "regex": "^[0-9]{4}-[0-9]{2}-[0-9]{2}T[0-9]{2}:[0-9]{2}:[0-9]{2}Z$",
            "nullable": true
        },
        "updated_at": {
            "description": "Cloud Updated at",
            "type": [
                "string",
                "null"
            ],
            "regex": "^[0-9]{4}-[0-9]{2}-[0-9]{2}T[0-9]{2}:[0-9]{2}:[0-9]{2}Z$",
            "nullable": true
        },
        "aggregate_alerts_limit": {
            "description": "Option to aggregate alerts of the same ID",
            "type": [
                "integer",
                "null"
            ],
            "nullable": true
        },
        "use_starttimecode": {
            "description": "Option to use the video's timecode for alert start & end times",
            "type": [
                "boolean",
                "null"
            ],
            "nullable": true
        },
        "audio_layout": {
            "description": "Audio layout to use",
            "$ref": "#/definitions/audio_layout"
        },
        "audio_layout_id": {
            "description": "Id of audio layout to use",
            "type": [
                "string",
                "null"
            ],
            "nullable": true
        },
        "package_layout": {
            "description": "Package layout to use",
            "$ref": "#/definitions/package_layout"
        },
        "package_layout_id": {
            "description": "Id of package layout to use",
            "type": [
                "string",
                "null"
            ],
            "nullable": true
        },
        "engine_version": {
            "description": "Engine version",
            "type": "string",
            "regex": "^[0-9]{4}.[0-9]{1,2}.[1-9]{1,2}$"
        },
        "treat_missing_media_as": {
            "description": "What type of alerts missing media should generate, e.g. Info, Warning, Error",
            "type": "integer",
            "enum": [
                0,
                1,
                2
            ],
            "titleMap": [
                {
                    "value": 0,
                    "name": "Info"
                },
                {
                    "value": 1,
                    "name": "Warning"
                },
                {
                    "value": 2,
                    "name": "Error"
                }
            ],
            "default": 1,
            "nullable": true
        },
        "tests": {
            "properties": {
                "audio_description": {
                    "type": "object",
                    "properties": {
                        "treat_warnings_as": {
                            "$ref": "#/definitions/warnings_as"
                        },
                        "audioconfigs": {
                            "title": "Audio Description Test Configuration",
                            "type": "array",
                            "items": {
                                "$ref": "#/definitions/audio_description_test_config"
                            }
                        }
                    }
                },
                "audio_metadata": {
                    "type": "object",
                    "properties": {
                        "treat_warnings_as": {
                            "$ref": "#/definitions/warnings_as"
                        },
                        "audio_bitdepth_test": {
                            "type": "object",
                            "required": [
                                "enable"
                            ],
                            "properties": {
                                "enable": {
                                    "title": "Bit Depth",
                                    "description": "Check the number of bits per audio sample per channel",
                                    "type": "boolean",
                                    "default": false
                                },
                                "options": {
                                    "type": "string",
                                    "description": "Select multiple by using comma separated values",
                                    "default": "16",
                                    "suffix": "bits per sample"
                                }
                            },
                            "if": {
                                "properties": {
                                    "enable": {
                                        "const": true
                                    }
                                }
                            },
                            "then": {
                                "required": [
                                    "options"
                                ]
                            }
                        },
                        "audio_bitrate_test": {
                            "type": "object",
                            "required": [
                                "enable"
                            ],
                            "properties": {
                                "enable": {
                                    "title": "Bit Rate",
                                    "description": "Check the bit rate of the audio track as it appears in the input file",
                                    "type": "boolean",
                                    "default": false
                                },
                                "mode": {
                                    "title": "Test mode",
                                    "description": "Test specific value(s) or that bit rate lies within given range",
                                    "type": "string",
                                    "enum": [
                                        "value",
                                        "range"
                                    ],
                                    "default": "value"
                                },
                                "options": {
                                    "title": "Value(s)",
                                    "description": "Select multiple by using comma separated values",
                                    "type": "string",
                                    "suffix": "kbps"
                                },
                                "minimum": {
                                    "title": "Minimum",
                                    "description": "The minimum allowed bit rate",
                                    "type": "integer",
                                    "minimum": 0,
                                    "suffix": "kbps"
                                },
                                "maximum": {
                                    "title": "Maximum",
                                    "description": "The maximum allowed bit rate",
                                    "type": "integer",
                                    "minimum": 0,
                                    "suffix": "kbps"
                                }
                            },
                            "allOf": [
                                {
                                    "if": {
                                        "properties": {
                                            "enable": {
                                                "const": true
                                            }
                                        }
                                    },
                                    "then": {
                                        "if": {
                                            "properties": {
                                                "mode": {
                                                    "const": "value"
                                                }
                                            }
                                        },
                                        "then": {
                                            "required": [
                                                "options"
                                            ]
                                        }
                                    }
                                },
                                {
                                    "if": {
                                        "properties": {
                                            "enable": {
                                                "const": true
                                            }
                                        }
                                    },
                                    "then": {
                                        "if": {
                                            "properties": {
                                                "mode": {
                                                    "const": "range"
                                                }
                                            }
                                        },
                                        "then": {
                                            "required": [
                                                "minimum",
                                                "maximum"
                                            ]
                                        }
                                    }
                                }
                            ]
                        },
                        "audio_endianness_test": {
                            "type": "object",
                            "required": [
                                "enable"
                            ],
                            "properties": {
                                "enable": {
                                    "title": "Check endianness of LPCM",
                                    "type": "boolean",
                                    "default": false,
                                    "description": "Check the endianness of the audio LPCM data against the original audio."
                                },
                                "options": {
                                    "title": "Endianess Required",
                                    "type": "integer",
                                    "enum": [
                                        0,
                                        1
                                    ],
                                    "titleMap": [
                                        {
                                            "value": 0,
                                            "name": "Little Endian"
                                        },
                                        {
                                            "value": 1,
                                            "name": "Big Endian"
                                        }
                                    ]
                                }
                            },
                            "allOf": [
                                {
                                    "if": {
                                        "properties": {
                                            "enable": {
                                                "const": true
                                            }
                                        }
                                    },
                                    "then": {
                                        "required": [
                                            "options"
                                        ]
                                    }
                                }
                            ]
                        },
                        "audio_trackcount_test": {
                            "type": "object",
                            "required": [
                                "enable"
                            ],
                            "properties": {
                                "enable": {
                                    "title": "Number of Tracks",
                                    "description": "Check the number of audio tracks in the file",
                                    "type": "boolean",
                                    "default": false
                                },
                                "count": {
                                    "type": "string",
                                    "description": "Select multiple by using comma separated values",
                                    "default": "1"
                                }
                            },
                            "if": {
                                "properties": {
                                    "enable": {
                                        "const": true
                                    }
                                }
                            },
                            "then": {
                                "required": [
                                    "count"
                                ]
                            }
                        },
                        "audio_codec_test": {
                            "type": "object",
                            "required": [
                                "enable"
                            ],
                            "properties": {
                                "enable": {
                                    "title": "Codec",
                                    "description": "Check the format of the audio elementary stream",
                                    "type": "boolean",
                                    "default": false
                                },
                                "codec": {
                                    "title": "All",
                                    "type": "array",
                                    "items": {
                                        "type": "integer",
                                        "enum": [
                                            0,
                                            1,
                                            2,
                                            3,
                                            4,
                                            5,
                                            6,
                                            7
                                        ],
                                        "titleMap": [
                                            {
                                                "value": 0,
                                                "name": "AAC"
                                            },
                                            {
                                                "value": 1,
                                                "name": "Dolby AC-3"
                                            },
                                            {
                                                "value": 2,
                                                "name": "Dolby Digital Plus"
                                            },
                                            {
                                                "value": 3,
                                                "name": "Dolby E"
                                            },
                                            {
                                                "value": 4,
                                                "name": "MPEG-1 / MPEG-2"
                                            },
                                            {
                                                "value": 5,
                                                "name": "PCM"
                                            },
                                            {
                                                "value": 7,
                                                "name": "SMPTE 331M"
                                            },
                                            {
                                                "value": 6,
                                                "name": "WMA"
                                            }
                                        ]
                                    }
                                },
                                "aac_profile": {
                                    "title": "AAC profiles",
                                    "type": "array",
                                    "items": {
                                        "type": "integer",
                                        "enum": [
                                            0,
                                            1,
                                            2,
                                            3,
                                            4,
                                            5
                                        ],
                                        "titleMap": [
                                            {
                                                "value": 0,
                                                "name": "HE-AAC"
                                            },
                                            {
                                                "value": 1,
                                                "name": "HE-AACv2"
                                            },
                                            {
                                                "value": 2,
                                                "name": "LC"
                                            },
                                            {
                                                "value": 3,
                                                "name": "Main"
                                            },
                                            {
                                                "value": 4,
                                                "name": "SSR"
                                            },
                                            {
                                                "value": 5,
                                                "name": "LTP"
                                            }
                                        ]
                                    }
                                },
                                "pcm_type": {
                                    "title": "PCM types",
                                    "type": "array",
                                    "items": {
                                        "type": "integer",
                                        "enum": [
                                            0,
                                            1,
                                            2,
                                            3,
                                            4,
                                            5,
                                            6,
                                            7,
                                            8,
                                            9,
                                            10
                                        ],
                                        "titleMap": [
                                            {
                                                "value": 0,
                                                "name": "Frame (BWF)"
                                            },
                                            {
                                                "value": 1,
                                                "name": "Clip (BWF)"
                                            },
                                            {
                                                "value": 2,
                                                "name": "Frame (AES)"
                                            },
                                            {
                                                "value": 3,
                                                "name": "Clip (AES)"
                                            },
                                            {
                                                "value": 4,
                                                "name": "Custom (BWF)"
                                            },
                                            {
                                                "value": 5,
                                                "name": "Custom (AES)"
                                            },
                                            {
                                                "value": 6,
                                                "name": "Frame"
                                            },
                                            {
                                                "value": 7,
                                                "name": "Clip"
                                            },
                                            {
                                                "value": 8,
                                                "name": "D-10"
                                            },
                                            {
                                                "value": 9,
                                                "name": "Custom"
                                            },
                                            {
                                                "value": 10,
                                                "name": "Custom: Fixed Audio Size"
                                            }
                                        ]
                                    }
                                }
                            },
                            "allOf": [
                                {
                                    "if": {
                                        "properties": {
                                            "enable": {
                                                "const": true
                                            }
                                        }
                                    },
                                    "then": {
                                        "required": [
                                            "codec"
                                        ],
                                        "allOf": [
                                            {
                                                "if": {
                                                    "properties": {
                                                        "codec": {
                                                            "contains": {
                                                                "enum": [
                                                                    0
                                                                ]
                                                            }
                                                        }
                                                    }
                                                },
                                                "then": {
                                                    "required": [
                                                        "aac_profile"
                                                    ]
                                                },
                                                "else": {
                                                    "if": {
                                                        "properties": {
                                                            "codec": {
                                                                "contains": {
                                                                    "enum": [
                                                                        5
                                                                    ]
                                                                }
                                                            }
                                                        }
                                                    },
                                                    "then": {
                                                        "required": [
                                                            "pcm_type"
                                                        ]
                                                    }
                                                }
                                            }
                                        ]
                                    }
                                }
                            ]
                        },
                        "audio_languageid_test": {
                            "type": "object",
                            "required": [
                                "enable"
                            ],
                            "properties": {
                                "enable": {
                                    "title": "Language ID",
                                    "description": "Check the audio language ID in the audio stream",
                                    "type": "boolean",
                                    "default": false
                                },
                                "options": {
                                    "title": "Languages",
                                    "type": "array",
                                    "items": {
                                        "type": "string",
                                        "enum": [
                                            "abk",
                                            "ady",
                                            "aar",
                                            "afr",
                                            "aka",
                                            "sqi",
                                            "amh",
                                            "ara",
                                            "arg",
                                            "arp",
                                            "aae",
                                            "hye",
                                            "rup",
                                            "asm",
                                            "ina",
                                            "ava",
                                            "ave",
                                            "aym",
                                            "aze",
                                            "bam",
                                            "bak",
                                            "eus",
                                            "bar",
                                            "bel",
                                            "ben",
                                            "bih",
                                            "bis",
                                            "bos",
                                            "bre",
                                            "bul",
                                            "mya",
                                            "spa",
                                            "cat",
                                            "cha",
                                            "che",
                                            "zho",
                                            "chv",
                                            "cim",
                                            "cor",
                                            "cos",
                                            "cre",
                                            "crh",
                                            "hrv",
                                            "ces",
                                            "dan",
                                            "div",
                                            "nld",
                                            "dzo",
                                            "eng",
                                            "enm",
                                            "myv",
                                            "epo",
                                            "est",
                                            "ewe",
                                            "fao",
                                            "fij",
                                            "fin",
                                            "fra",
                                            "frm",
                                            "fur",
                                            "frr",
                                            "fry",
                                            "ful",
                                            "gla",
                                            "glg",
                                            "lug",
                                            "kat",
                                            "deu",
                                            "ell",
                                            "grn",
                                            "guj",
                                            "hat",
                                            "hau",
                                            "heb",
                                            "her",
                                            "hin",
                                            "hmo",
                                            "hun",
                                            "isl",
                                            "ido",
                                            "ibo",
                                            "ind",
                                            "inh",
                                            "ile",
                                            "iku",
                                            "ipk",
                                            "gle",
                                            "ita",
                                            "jpn",
                                            "jav",
                                            "lad",
                                            "kbd",
                                            "kal",
                                            "xal",
                                            "kan",
                                            "kau",
                                            "krc",
                                            "krl",
                                            "kas",
                                            "csb",
                                            "kaz",
                                            "khm",
                                            "kik",
                                            "kin",
                                            "kir",
                                            "kom",
                                            "kon",
                                            "kor",
                                            "kua",
                                            "kur",
                                            "lao",
                                            "lat",
                                            "lav",
                                            "ast",
                                            "lim",
                                            "lin",
                                            "lit",
                                            "lub",
                                            "ltz",
                                            "mkd",
                                            "mlg",
                                            "msa",
                                            "mal",
                                            "mlt",
                                            "glv",
                                            "mri",
                                            "mar",
                                            "chm",
                                            "mah",
                                            "mwl",
                                            "mdf",
                                            "ron",
                                            "mon",
                                            "nau",
                                            "nav",
                                            "ndo",
                                            "nap",
                                            "nep",
                                            "nde",
                                            "sme",
                                            "nor",
                                            "nob",
                                            "nno",
                                            "nya",
                                            "oci",
                                            "oji",
                                            "ori",
                                            "orm",
                                            "oss",
                                            "pli",
                                            "pan",
                                            "fas",
                                            "pol",
                                            "por",
                                            "pus",
                                            "que",
                                            "roh",
                                            "rom",
                                            "run",
                                            "rus",
                                            "smo",
                                            "sag",
                                            "san",
                                            "srd",
                                            "sco",
                                            "srp",
                                            "sna",
                                            "scn",
                                            "snd",
                                            "sin",
                                            "slk",
                                            "slv",
                                            "som",
                                            "wen",
                                            "sot",
                                            "nbl",
                                            "sma",
                                            "sun",
                                            "swa",
                                            "ssw",
                                            "swe",
                                            "gsw",
                                            "tgl",
                                            "tah",
                                            "tgk",
                                            "tam",
                                            "tat",
                                            "tel",
                                            "tha",
                                            "bod",
                                            "tir",
                                            "ton",
                                            "tso",
                                            "tsn",
                                            "tur",
                                            "tuk",
                                            "twi",
                                            "udm",
                                            "uig",
                                            "ukr",
                                            "mis",
                                            "urd",
                                            "uzb",
                                            "ven",
                                            "vie",
                                            "vol",
                                            "wln",
                                            "cym",
                                            "wol",
                                            "xho",
                                            "yid",
                                            "yor",
                                            "zha",
                                            "zul",
                                            "none"
                                        ],
                                        "titleMap": [
                                            {
                                                "value": "abk",
                                                "name": "Abkhazian - abk"
                                            },
                                            {
                                                "value": "ady",
                                                "name": "Adygei, Adyghe - ady"
                                            },
                                            {
                                                "value": "aar",
                                                "name": "Afar - aar"
                                            },
                                            {
                                                "value": "afr",
                                                "name": "Afrikaans - afr"
                                            },
                                            {
                                                "value": "aka",
                                                "name": "Akan - aka"
                                            },
                                            {
                                                "value": "sqi",
                                                "name": "Albanian - sqi"
                                            },
                                            {
                                                "value": "amh",
                                                "name": "Amharic - amh"
                                            },
                                            {
                                                "value": "ara",
                                                "name": "Arabic - ara"
                                            },
                                            {
                                                "value": "arg",
                                                "name": "Aragonese - arg"
                                            },
                                            {
                                                "value": "arp",
                                                "name": "Arapaho - arp"
                                            },
                                            {
                                                "value": "aae",
                                                "name": "Arb\u00ebresh\u00eb Albanian - aae"
                                            },
                                            {
                                                "value": "hye",
                                                "name": "Armenian - hye"
                                            },
                                            {
                                                "value": "rup",
                                                "name": "Aromanian, Arumanian, Macedo-Romanian - rup"
                                            },
                                            {
                                                "value": "asm",
                                                "name": "Assamese - asm"
                                            },
                                            {
                                                "value": "ina",
                                                "name": "Auxiliary Language Association - ina"
                                            },
                                            {
                                                "value": "ava",
                                                "name": "Avaric - ava"
                                            },
                                            {
                                                "value": "ave",
                                                "name": "Avestan - ave"
                                            },
                                            {
                                                "value": "aym",
                                                "name": "Aymara - aym"
                                            },
                                            {
                                                "value": "aze",
                                                "name": "Azerbaijani - aze"
                                            },
                                            {
                                                "value": "bam",
                                                "name": "Bambara - bam"
                                            },
                                            {
                                                "value": "bak",
                                                "name": "Bashkir - bak"
                                            },
                                            {
                                                "value": "eus",
                                                "name": "Basque - eus"
                                            },
                                            {
                                                "value": "bar",
                                                "name": "Bavarian - bar"
                                            },
                                            {
                                                "value": "bel",
                                                "name": "Belarusian - bel"
                                            },
                                            {
                                                "value": "ben",
                                                "name": "Bengali - ben"
                                            },
                                            {
                                                "value": "bih",
                                                "name": "Bihari - bih"
                                            },
                                            {
                                                "value": "bis",
                                                "name": "Bislama - bis"
                                            },
                                            {
                                                "value": "bos",
                                                "name": "Bosnian - bos"
                                            },
                                            {
                                                "value": "bre",
                                                "name": "Breton - bre"
                                            },
                                            {
                                                "value": "bul",
                                                "name": "Bulgarian - bul"
                                            },
                                            {
                                                "value": "mya",
                                                "name": "Burmese - mya"
                                            },
                                            {
                                                "value": "spa",
                                                "name": "Castilian, Spanish - spa"
                                            },
                                            {
                                                "value": "cat",
                                                "name": "Catalan, Valencian - cat"
                                            },
                                            {
                                                "value": "cha",
                                                "name": "Chamorro - cha"
                                            },
                                            {
                                                "value": "che",
                                                "name": "Chechen - che"
                                            },
                                            {
                                                "value": "zho",
                                                "name": "Chinese - zho"
                                            },
                                            {
                                                "value": "chv",
                                                "name": "Chuvash - chv"
                                            },
                                            {
                                                "value": "cim",
                                                "name": "Cimbrian - cim"
                                            },
                                            {
                                                "value": "cor",
                                                "name": "Cornish - cor"
                                            },
                                            {
                                                "value": "cos",
                                                "name": "Corsican - cos"
                                            },
                                            {
                                                "value": "cre",
                                                "name": "Cree - cre"
                                            },
                                            {
                                                "value": "crh",
                                                "name": "Crimean Tatar, Crimean Turkish - crh"
                                            },
                                            {
                                                "value": "hrv",
                                                "name": "Croatian - hrv"
                                            },
                                            {
                                                "value": "ces",
                                                "name": "Czech - ces"
                                            },
                                            {
                                                "value": "dan",
                                                "name": "Danish - dan"
                                            },
                                            {
                                                "value": "div",
                                                "name": "Dhivehi, Divehi, Maldivian - div"
                                            },
                                            {
                                                "value": "nld",
                                                "name": "Dutch, Flemish - nld"
                                            },
                                            {
                                                "value": "dzo",
                                                "name": "Dzongkha - dzo"
                                            },
                                            {
                                                "value": "eng",
                                                "name": "English - eng"
                                            },
                                            {
                                                "value": "enm",
                                                "name": "Middle English - enm"
                                            },
                                            {
                                                "value": "myv",
                                                "name": "Erzya - myv"
                                            },
                                            {
                                                "value": "epo",
                                                "name": "Esperanto - epo"
                                            },
                                            {
                                                "value": "est",
                                                "name": "Estonian - est"
                                            },
                                            {
                                                "value": "ewe",
                                                "name": "Ewe - ewe"
                                            },
                                            {
                                                "value": "fao",
                                                "name": "Faroese - fao"
                                            },
                                            {
                                                "value": "fij",
                                                "name": "Fijian - fij"
                                            },
                                            {
                                                "value": "fin",
                                                "name": "Finnish - fin"
                                            },
                                            {
                                                "value": "fra",
                                                "name": "French - fra"
                                            },
                                            {
                                                "value": "frm",
                                                "name": "Middle French - frm"
                                            },
                                            {
                                                "value": "fur",
                                                "name": "Friulian - fur"
                                            },
                                            {
                                                "value": "frr",
                                                "name": "Northern Frisian - frr"
                                            },
                                            {
                                                "value": "fry",
                                                "name": "Western Frisian - fry"
                                            },
                                            {
                                                "value": "ful",
                                                "name": "Fulah - ful"
                                            },
                                            {
                                                "value": "gla",
                                                "name": "Gaelic, Scottish Gaelic - gla"
                                            },
                                            {
                                                "value": "glg",
                                                "name": "Galician - glg"
                                            },
                                            {
                                                "value": "lug",
                                                "name": "Ganda - lug"
                                            },
                                            {
                                                "value": "kat",
                                                "name": "Georgian - kat"
                                            },
                                            {
                                                "value": "deu",
                                                "name": "German - deu"
                                            },
                                            {
                                                "value": "ell",
                                                "name": "Greek - ell"
                                            },
                                            {
                                                "value": "grn",
                                                "name": "Guarani - grn"
                                            },
                                            {
                                                "value": "guj",
                                                "name": "Gujarati - guj"
                                            },
                                            {
                                                "value": "hat",
                                                "name": "Haitian, Haitian Creole - hat"
                                            },
                                            {
                                                "value": "hau",
                                                "name": "Hausa - hau"
                                            },
                                            {
                                                "value": "heb",
                                                "name": "Hebrew - heb"
                                            },
                                            {
                                                "value": "her",
                                                "name": "Herero - her"
                                            },
                                            {
                                                "value": "hin",
                                                "name": "Hindi - hin"
                                            },
                                            {
                                                "value": "hmo",
                                                "name": "Hiri Motu - hmo"
                                            },
                                            {
                                                "value": "hun",
                                                "name": "Hungarian - hun"
                                            },
                                            {
                                                "value": "isl",
                                                "name": "Icelandic - isl"
                                            },
                                            {
                                                "value": "ido",
                                                "name": "Ido - ido"
                                            },
                                            {
                                                "value": "ibo",
                                                "name": "Igbo - ibo"
                                            },
                                            {
                                                "value": "ind",
                                                "name": "Indonesian - ind"
                                            },
                                            {
                                                "value": "inh",
                                                "name": "Ingush - inh"
                                            },
                                            {
                                                "value": "ile",
                                                "name": "Interlingue, Occidental - ile"
                                            },
                                            {
                                                "value": "iku",
                                                "name": "Inuktitut - iku"
                                            },
                                            {
                                                "value": "ipk",
                                                "name": "Inupiaq - ipk"
                                            },
                                            {
                                                "value": "gle",
                                                "name": "Irish - gle"
                                            },
                                            {
                                                "value": "ita",
                                                "name": "Italian - ita"
                                            },
                                            {
                                                "value": "jpn",
                                                "name": "Japanese - jpn"
                                            },
                                            {
                                                "value": "jav",
                                                "name": "Javanese - jav"
                                            },
                                            {
                                                "value": "lad",
                                                "name": "Ladino - lad"
                                            },
                                            {
                                                "value": "kbd",
                                                "name": "Kabardian - kbd"
                                            },
                                            {
                                                "value": "kal",
                                                "name": "Greenlandic, Kalaallisut - kal"
                                            },
                                            {
                                                "value": "xal",
                                                "name": "Kalmyk, Oirat - xal"
                                            },
                                            {
                                                "value": "kan",
                                                "name": "Kannada - kan"
                                            },
                                            {
                                                "value": "kau",
                                                "name": "Kanuri - kau"
                                            },
                                            {
                                                "value": "krc",
                                                "name": "Karachay-Balkar - krc"
                                            },
                                            {
                                                "value": "krl",
                                                "name": "Karelian - krl"
                                            },
                                            {
                                                "value": "kas",
                                                "name": "Kashmiri - kas"
                                            },
                                            {
                                                "value": "csb",
                                                "name": "Kashubian - csb"
                                            },
                                            {
                                                "value": "kaz",
                                                "name": "Kazakh - kaz"
                                            },
                                            {
                                                "value": "khm",
                                                "name": "Central Khmer, Khmer - khm"
                                            },
                                            {
                                                "value": "kik",
                                                "name": "Gikuyu, Kikuyu - kik"
                                            },
                                            {
                                                "value": "kin",
                                                "name": "Kinyarwanda - kin"
                                            },
                                            {
                                                "value": "kir",
                                                "name": "Kirghiz, Kyrgyz - kir"
                                            },
                                            {
                                                "value": "kom",
                                                "name": "Komi - kom"
                                            },
                                            {
                                                "value": "kon",
                                                "name": "Kongo - kon"
                                            },
                                            {
                                                "value": "kor",
                                                "name": "Korean - kor"
                                            },
                                            {
                                                "value": "kua",
                                                "name": "Kuanyama, Kwanyama - kua"
                                            },
                                            {
                                                "value": "kur",
                                                "name": "Kurdish - kur"
                                            },
                                            {
                                                "value": "lao",
                                                "name": "Lao - lao"
                                            },
                                            {
                                                "value": "lat",
                                                "name": "Latin - lat"
                                            },
                                            {
                                                "value": "lav",
                                                "name": "Latvian - lav"
                                            },
                                            {
                                                "value": "ast",
                                                "name": "Leonese, Asturian, Asturleonese, Bable - ast"
                                            },
                                            {
                                                "value": "lim",
                                                "name": "Limburgan, Limburger, Limburgish - lim"
                                            },
                                            {
                                                "value": "lin",
                                                "name": "Lingala - lin"
                                            },
                                            {
                                                "value": "lit",
                                                "name": "Lithuanian - lit"
                                            },
                                            {
                                                "value": "lub",
                                                "name": "Luba-Katanga - lub"
                                            },
                                            {
                                                "value": "ltz",
                                                "name": "Letzeburgesch, Luxembourgish - ltz"
                                            },
                                            {
                                                "value": "mkd",
                                                "name": "Macedonian - mkd"
                                            },
                                            {
                                                "value": "mlg",
                                                "name": "Malagasy - mlg"
                                            },
                                            {
                                                "value": "msa",
                                                "name": "Malay - msa"
                                            },
                                            {
                                                "value": "mal",
                                                "name": "Malayalam - mal"
                                            },
                                            {
                                                "value": "mlt",
                                                "name": "Maltese - mlt"
                                            },
                                            {
                                                "value": "glv",
                                                "name": "Manx - glv"
                                            },
                                            {
                                                "value": "mri",
                                                "name": "Maori - mri"
                                            },
                                            {
                                                "value": "mar",
                                                "name": "Marathi - mar"
                                            },
                                            {
                                                "value": "chm",
                                                "name": "Mari (Russia) - chm"
                                            },
                                            {
                                                "value": "mah",
                                                "name": "Marshallese - mah"
                                            },
                                            {
                                                "value": "mwl",
                                                "name": "Mirandese - mwl"
                                            },
                                            {
                                                "value": "mdf",
                                                "name": "Moksha  - mdf"
                                            },
                                            {
                                                "value": "ron",
                                                "name": "Moldavian, Moldovan, Romanian - ron"
                                            },
                                            {
                                                "value": "mon",
                                                "name": "Mongolian - mon"
                                            },
                                            {
                                                "value": "nau",
                                                "name": "Nauru - nau"
                                            },
                                            {
                                                "value": "nav",
                                                "name": "Navaho, Navajo - nav"
                                            },
                                            {
                                                "value": "ndo",
                                                "name": "Ndonga - ndo"
                                            },
                                            {
                                                "value": "nap",
                                                "name": "Neapolitan - nap"
                                            },
                                            {
                                                "value": "nep",
                                                "name": "Nepali - nep"
                                            },
                                            {
                                                "value": "nde",
                                                "name": "North Ndebele - nde"
                                            },
                                            {
                                                "value": "sme",
                                                "name": "Northern Sami - sme"
                                            },
                                            {
                                                "value": "nor",
                                                "name": "Norwegian - nor"
                                            },
                                            {
                                                "value": "nob",
                                                "name": "Norwegian Bokm\u00e5l - nob"
                                            },
                                            {
                                                "value": "nno",
                                                "name": "Norwegian Nynorsk - nno"
                                            },
                                            {
                                                "value": "nya",
                                                "name": "Nyanja, Chewa, Chichewa - nya"
                                            },
                                            {
                                                "value": "oci",
                                                "name": "Occitan - oci"
                                            },
                                            {
                                                "value": "oji",
                                                "name": "Ojibwa - oji"
                                            },
                                            {
                                                "value": "ori",
                                                "name": "Oriya - ori"
                                            },
                                            {
                                                "value": "orm",
                                                "name": "Oromo - orm"
                                            },
                                            {
                                                "value": "oss",
                                                "name": "Ossetian, Ossetic - oss"
                                            },
                                            {
                                                "value": "pli",
                                                "name": "Pali - pli"
                                            },
                                            {
                                                "value": "pan",
                                                "name": "Panjabi, Punjabi - pan"
                                            },
                                            {
                                                "value": "fas",
                                                "name": "Persian - fas"
                                            },
                                            {
                                                "value": "pol",
                                                "name": "Polish - pol"
                                            },
                                            {
                                                "value": "por",
                                                "name": "Portuguese - por"
                                            },
                                            {
                                                "value": "pus",
                                                "name": "Pashto, Pushto - pus"
                                            },
                                            {
                                                "value": "que",
                                                "name": "Quechua - que"
                                            },
                                            {
                                                "value": "roh",
                                                "name": "Romansh - roh"
                                            },
                                            {
                                                "value": "rom",
                                                "name": "Romany - rom"
                                            },
                                            {
                                                "value": "run",
                                                "name": "Rundi - run"
                                            },
                                            {
                                                "value": "rus",
                                                "name": "Russian - rus"
                                            },
                                            {
                                                "value": "smo",
                                                "name": "Samoan - smo"
                                            },
                                            {
                                                "value": "sag",
                                                "name": "Sango - sag"
                                            },
                                            {
                                                "value": "san",
                                                "name": "Sanskrit - san"
                                            },
                                            {
                                                "value": "srd",
                                                "name": "Sardinian - srd"
                                            },
                                            {
                                                "value": "sco",
                                                "name": "Scots - sco"
                                            },
                                            {
                                                "value": "srp",
                                                "name": "Serbian - srp"
                                            },
                                            {
                                                "value": "sna",
                                                "name": "Shona - sna"
                                            },
                                            {
                                                "value": "scn",
                                                "name": "Sicilian - scn"
                                            },
                                            {
                                                "value": "snd",
                                                "name": "Sindhi - snd"
                                            },
                                            {
                                                "value": "sin",
                                                "name": "Sinhala, Sinhalese - sin"
                                            },
                                            {
                                                "value": "slk",
                                                "name": "Slovak - slk"
                                            },
                                            {
                                                "value": "slv",
                                                "name": "Slovenian - slv"
                                            },
                                            {
                                                "value": "som",
                                                "name": "Somali - som"
                                            },
                                            {
                                                "value": "wen",
                                                "name": "Sorbian languages - wen"
                                            },
                                            {
                                                "value": "sot",
                                                "name": "Southern Sotho - sot"
                                            },
                                            {
                                                "value": "nbl",
                                                "name": "South Ndebele - nbl"
                                            },
                                            {
                                                "value": "sma",
                                                "name": "Southern Sami - sma"
                                            },
                                            {
                                                "value": "sun",
                                                "name": "Sundanese - sun"
                                            },
                                            {
                                                "value": "swa",
                                                "name": "Swahili - swa"
                                            },
                                            {
                                                "value": "ssw",
                                                "name": "Swati - ssw"
                                            },
                                            {
                                                "value": "swe",
                                                "name": "Swedish - swe"
                                            },
                                            {
                                                "value": "gsw",
                                                "name": "Swiss German, Alemannic, Alsatian - gsw"
                                            },
                                            {
                                                "value": "tgl",
                                                "name": "Tagalog - tgl"
                                            },
                                            {
                                                "value": "tah",
                                                "name": "Tahitian - tah"
                                            },
                                            {
                                                "value": "tgk",
                                                "name": "Tajik - tgk"
                                            },
                                            {
                                                "value": "tam",
                                                "name": "Tamil - tam"
                                            },
                                            {
                                                "value": "tat",
                                                "name": "Tatar - tat"
                                            },
                                            {
                                                "value": "tel",
                                                "name": "Telugu - tel"
                                            },
                                            {
                                                "value": "tha",
                                                "name": "Thai - tha"
                                            },
                                            {
                                                "value": "bod",
                                                "name": "Tibetan - bod"
                                            },
                                            {
                                                "value": "tir",
                                                "name": "Tigrinya - tir"
                                            },
                                            {
                                                "value": "ton",
                                                "name": "Tonga - ton"
                                            },
                                            {
                                                "value": "tso",
                                                "name": "Tsonga - tso"
                                            },
                                            {
                                                "value": "tsn",
                                                "name": "Tswana - tsn"
                                            },
                                            {
                                                "value": "tur",
                                                "name": "Turkish - tur"
                                            },
                                            {
                                                "value": "tuk",
                                                "name": "Turkmen - tuk"
                                            },
                                            {
                                                "value": "twi",
                                                "name": "Twi - twi"
                                            },
                                            {
                                                "value": "udm",
                                                "name": "Udmurt - udm"
                                            },
                                            {
                                                "value": "uig",
                                                "name": "Uighur, Uyghur - uig"
                                            },
                                            {
                                                "value": "ukr",
                                                "name": "Ukrainian - ukr"
                                            },
                                            {
                                                "value": "mis",
                                                "name": "Uncoded languages - mis"
                                            },
                                            {
                                                "value": "urd",
                                                "name": "Urdu - urd"
                                            },
                                            {
                                                "value": "uzb",
                                                "name": "Uzbek - uzb"
                                            },
                                            {
                                                "value": "ven",
                                                "name": "Venda - ven"
                                            },
                                            {
                                                "value": "vie",
                                                "name": "Vietnamese - vie"
                                            },
                                            {
                                                "value": "vol",
                                                "name": "Volap\u00fck - vol"
                                            },
                                            {
                                                "value": "wln",
                                                "name": "Walloon - wln"
                                            },
                                            {
                                                "value": "cym",
                                                "name": "Welsh - cym"
                                            },
                                            {
                                                "value": "wol",
                                                "name": "Wolof - wol"
                                            },
                                            {
                                                "value": "xho",
                                                "name": "Xhosa - xho"
                                            },
                                            {
                                                "value": "yid",
                                                "name": "Yiddish - yid"
                                            },
                                            {
                                                "value": "yor",
                                                "name": "Yoruba - yor"
                                            },
                                            {
                                                "value": "zha",
                                                "name": "Zhuang, Chuang - zha"
                                            },
                                            {
                                                "value": "zul",
                                                "name": "Zulu - zul"
                                            },
                                            {
                                                "value": "none",
                                                "name": "None"
                                            }
                                        ]
                                    },
                                    "default": []
                                }
                            },
                            "if": {
                                "properties": {
                                    "enable": {
                                        "const": true
                                    }
                                }
                            },
                            "then": {
                                "required": [
                                    "options"
                                ]
                            }
                        },
                        "audio_numberofchannels_test": {
                            "type": "object",
                            "required": [
                                "enable"
                            ],
                            "properties": {
                                "enable": {
                                    "title": "Number of Channels",
                                    "description": "Check the number of audio channels in the track",
                                    "type": "boolean",
                                    "default": false
                                },
                                "mode": {
                                    "title": "Test mode",
                                    "type": "string",
                                    "description": "Test specific value(s) or that number of channels lie within given range",
                                    "enum": [
                                        "value",
                                        "range"
                                    ],
                                    "default": "value"
                                },
                                "maximum": {
                                    "title": "Maximum",
                                    "description": "The maximum allowed number of channels",
                                    "type": "integer",
                                    "minimum": 0,
                                    "default": 0
                                },
                                "minimum": {
                                    "title": "Minimum",
                                    "description": "The minimum allowed number of channels",
                                    "type": "integer",
                                    "minimum": 0,
                                    "default": 0
                                },
                                "equals": {
                                    "title": "Equal to",
                                    "description": "Test the channel count is equal to given value",
                                    "type": "integer",
                                    "minimum": 0,
                                    "default": 0
                                },
                                "source": {
                                    "title": "Source",
                                    "description": "Test the number of channels per audio stream or across all audio streams",
                                    "type": "integer",
                                    "enum": [
                                        0,
                                        1
                                    ],
                                    "titleMap": [
                                        {
                                            "value": 0,
                                            "name": "channels per audio stream"
                                        },
                                        {
                                            "value": 1,
                                            "name": "channels across all streams"
                                        }
                                    ],
                                    "default": 0
                                }
                            },
                            "allOf": [
                                {
                                    "if": {
                                        "properties": {
                                            "enable": {
                                                "const": true
                                            }
                                        }
                                    },
                                    "then": {
                                        "required": [
                                            "mode",
                                            "source"
                                        ],
                                        "allOf": [
                                            {
                                                "if": {
                                                    "properties": {
                                                        "mode": {
                                                            "const": "value"
                                                        }
                                                    }
                                                },
                                                "then": {
                                                    "required": [
                                                        "equals"
                                                    ]
                                                }
                                            },
                                            {
                                                "if": {
                                                    "properties": {
                                                        "mode": {
                                                            "const": "range"
                                                        }
                                                    }
                                                },
                                                "then": {
                                                    "required": [
                                                        "minimum",
                                                        "maximum"
                                                    ]
                                                }
                                            }
                                        ]
                                    }
                                }
                            ]
                        },
                        "audio_samplerate_test": {
                            "type": "object",
                            "required": [
                                "enable"
                            ],
                            "properties": {
                                "enable": {
                                    "title": "Sample rate",
                                    "description": "Check the number of audio samples per channel per second",
                                    "type": "boolean",
                                    "default": false
                                },
                                "options": {
                                    "type": "string",
                                    "description": "Select multiple by using comma separated values",
                                    "suffix": "kHz"
                                }
                            },
                            "if": {
                                "properties": {
                                    "enable": {
                                        "const": true
                                    }
                                }
                            },
                            "then": {
                                "required": [
                                    "options"
                                ]
                            }
                        }
                    }
                },
                "black_frame": {
                    "type": "object",
                    "allOf": [
                        {
                            "properties": {
                                "treat_warnings_as": {
                                    "$ref": "#/definitions/warnings_as"
                                },
                                "custom_level": {
                                    "title": "Custom Level",
                                    "type": "boolean",
                                    "description": "Use custom luminance level (Y) for non-active picture area"
                                },
                                "bit_depth": {
                                    "title": "Bit Depth",
                                    "$ref": "#/definitions/video_bit_depth"
                                },
                                "level_8_bit": {
                                    "title": "Black Level",
                                    "$ref": "#/definitions/level_8_bit"
                                },
                                "level_10_bit": {
                                    "title": "Black Level",
                                    "$ref": "#/definitions/level_10_bit"
                                },
                                "level_12_bit": {
                                    "title": "Black Level",
                                    "$ref": "#/definitions/level_12_bit"
                                },
                                "level_14_bit": {
                                    "title": "Black Level",
                                    "$ref": "#/definitions/level_14_bit"
                                },
                                "percentage": {
                                    "title": "Percentage Of Frame",
                                    "type": "integer",
                                    "minimum": 0,
                                    "maximum": 100,
                                    "default": 100,
                                    "description": "Percentage of frame required to be black"
                                },
                                "max_allowed_enable": {
                                    "title": "Test Whole File",
                                    "description": "Test whole file for the presence of black frames",
                                    "type": "boolean",
                                    "default": true
                                },
                                "max_allowed_duration": {
                                    "title": "Max Black Video Allowed",
                                    "description": "The maximum black video allowed (frames/seconds)",
                                    "$ref": "#/definitions/range_limit"
                                },
                                "max_allowed_units": {
                                    "title": "Max Allowed Time Units",
                                    "$ref": "#/definitions/time_units"
                                },
                                "silence": {
                                    "title": "Must Also Be Digitally Silent",
                                    "description": "Test for digital silence in conjunction with black frames",
                                    "type": "boolean"
                                },
                                "ranges": {
                                    "title": "Range",
                                    "type": "array",
                                    "default": [],
                                    "items": {
                                        "$ref": "#/definitions/blackframe_range"
                                    }
                                }
                            }
                        },
                        {
                            "$ref": "#/definitions/audio_config_silence"
                        },
                        {
                            "required": [
                                "silence",
                                "custom_level"
                            ]
                        }
                    ]
                },
                "cadence": {
                    "type": "object",
                    "required": [
                        "cadence_must_be",
                        "broken_cadence",
                        "report_all_cadences",
                        "poor_patterns"
                    ],
                    "properties": {
                        "treat_warnings_as": {
                            "$ref": "#/definitions/warnings_as"
                        },
                        "cadence_must_be": {
                            "title": "Cadence must be:",
                            "description": "Cadence expected in the stream",
                            "type": "integer",
                            "enum": [
                                0,
                                1,
                                2,
                                3,
                                4,
                                5,
                                6
                            ],
                            "titleMap": [
                                {
                                    "value": 0,
                                    "name": "Progressive"
                                },
                                {
                                    "value": 1,
                                    "name": "2:2 (TFF)"
                                },
                                {
                                    "value": 2,
                                    "name": "2:2 (BFF)"
                                },
                                {
                                    "value": 3,
                                    "name": "2:3 (TFF)"
                                },
                                {
                                    "value": 4,
                                    "name": "2:3 (BFF)"
                                },
                                {
                                    "value": 5,
                                    "name": "24->25 fps (TFF)"
                                },
                                {
                                    "value": 6,
                                    "name": "24->25 fps (BFF)"
                                }
                            ],
                            "default": 0
                        },
                        "broken_cadence": {
                            "title": "Check for broken 2:3 cadence (compromises Reverse Telecine)",
                            "type": "boolean",
                            "default": false,
                            "description": "Look for breaks in the cadence pattern such as can be caused by editing 2:3 cadence video. An interrupted pattern can cause problems with a Reverse Telecine operation"
                        },
                        "report_all_cadences": {
                            "title": "Report all detected cadences",
                            "type": "boolean",
                            "default": false,
                            "description": "Analyze the video stream and report all cadences found as Info alerts"
                        },
                        "poor_patterns": {
                            "title": "Check for poor patterns",
                            "type": "boolean",
                            "default": false,
                            "description": "Raises an alert if a cadence pattern is found that causes excessive visual 'stutter'. This includes patterns which repeat frames (e.g. 2:2:2:4) and pull-down patterns not best suited for broadcast (e.g. 'Advanced' pull-down 2:3:3:2)"
                        }
                    }
                },
                "caption_subtitle": {
                    "type": "object",
                    "properties": {
                        "treat_warnings_as": {
                            "$ref": "#/definitions/warnings_as"
                        },
                        "caption_present": {
                            "title": "Detect and report the presence of Closed Captions",
                            "type": "boolean",
                            "description": "Will test for and report on the presence of 608 and 708 captions.",
                            "default": false
                        },
                        "608_present": {
                            "title": "Test for the presence of 608 captions",
                            "type": "boolean",
                            "description": "Will test for the presence of 608 captions.",
                            "default": false
                        },
                        "708_present": {
                            "title": "Test for the presence of 708 captions",
                            "type": "boolean",
                            "description": "Will test for the presence of 708 captions.",
                            "default": false
                        },
                        "caption_dropout": {
                            "title": "Detect and report any Closed Caption Dropouts",
                            "type": "boolean",
                            "description": "Will test for the absence of captions in the given interval.",
                            "default": false
                        },
                        "no_caption_threshold": {
                            "title": "Max time allowed with no caption data",
                            "type": "number",
                            "minimum": 0.0,
                            "maximum": 3600.0,
                            "description": "The minimum threshold for which captions must be updated.",
                            "default": 10.0
                        },
                        "caption_dropout_duration_units": {
                            "title": "Units",
                            "type": "integer",
                            "enum": [
                                0,
                                1
                            ],
                            "default": 0,
                            "titleMap": [
                                {
                                    "value": 0,
                                    "name": "Seconds"
                                },
                                {
                                    "value": 1,
                                    "name": "Frames"
                                }
                            ]
                        },
                        "cc1_presence": {
                            "title": "CC1 Presence",
                            "type": "boolean",
                            "description": "Find captions in CC1.",
                            "default": false
                        },
                        "cc2_presence": {
                            "title": "CC2 Presence",
                            "type": "boolean",
                            "description": "Find captions in CC2.",
                            "default": false
                        },
                        "cc3_presence": {
                            "title": "CC3 Presence",
                            "type": "boolean",
                            "description": "Find captions in CC3.",
                            "default": false
                        },
                        "cc4_presence": {
                            "title": "CC4 Presence",
                            "type": "boolean",
                            "description": "Find captions in CC4.",
                            "default": false
                        },
                        "service1_presence": {
                            "title": "Service 1 Presence",
                            "type": "boolean",
                            "description": "Find captions in Service 1.",
                            "default": false
                        },
                        "service2_presence": {
                            "title": "Service 2 Presence",
                            "type": "boolean",
                            "description": "Find captions in Service 2.",
                            "default": false
                        },
                        "service3_presence": {
                            "title": "Service 3 Presence",
                            "type": "boolean",
                            "description": "Find captions in Service 3.",
                            "default": false
                        },
                        "service4_presence": {
                            "title": "Service 4 Presence",
                            "type": "boolean",
                            "description": "Find captions in Service 4.",
                            "default": false
                        },
                        "service5_presence": {
                            "title": "Service 5 Presence",
                            "type": "boolean",
                            "description": "Find captions in Service 5.",
                            "default": false
                        },
                        "service6_presence": {
                            "title": "Service 6 Presence",
                            "type": "boolean",
                            "description": "Find captions in Service 6.",
                            "default": false
                        },
                        "teletext_presence": {
                            "title": "Detect and report the presence of Teletext subtitles",
                            "type": "boolean",
                            "description": "Find Teletext in specified page number.",
                            "default": false
                        },
                        "teletext_page": {
                            "title": "Teletext page",
                            "type": "integer",
                            "description": "The specified page number.",
                            "minimum": 0,
                            "default": 0
                        }
                    }
                },
                "channel_position": {
                    "type": "object",
                    "description": "Test whether 5.1 channels are in the correct place by analyzing base band and checking against what it should be",
                    "properties": {
                        "treat_warnings_as": {
                            "$ref": "#/definitions/warnings_as"
                        },
                        "audioconfigs": {
                            "title": "Channel Position Test Configuration",
                            "type": "array",
                            "items": {
                                "$ref": "#/definitions/channel_position_test_config"
                            }
                        }
                    }
                },
                "clicks_and_pops": {
                    "type": "object",
                    "description": "Detect transients or sudden changes in amplitude, such as those caused by noise on an analog or digital audio line",
                    "properties": {
                        "treat_warnings_as": {
                            "$ref": "#/definitions/warnings_as"
                        },
                        "audioconfigs": {
                            "title": "Clicks and Pops Test Configuration",
                            "type": "array",
                            "items": {
                                "$ref": "#/definitions/clicksandpops_test_config"
                            }
                        }
                    }
                },
                "clipping": {
                    "type": "object",
                    "description": "Detect audio clipping by testing for successive samples of equal value. Quiet samples (those below a fixed small value) are suppressed and do not count towards the clipping test",
                    "properties": {
                        "treat_warnings_as": {
                            "$ref": "#/definitions/warnings_as"
                        },
                        "audioconfigs": {
                            "title": "Clipping Test Configuration",
                            "type": "array",
                            "items": {
                                "$ref": "#/definitions/clipping_test_config"
                            }
                        }
                    }
                },
                "color_bars": {
                    "type": "object",
                    "description": "Detect the presence of color bars in the video to determine that they are of the correct type and/or that they are present when they should be and not present when they should not be",
                    "properties": {
                        "treat_warnings_as": {
                            "$ref": "#/definitions/warnings_as"
                        },
                        "standard": {
                            "title": "Color Bar Standard",
                            "type": "integer",
                            "enum": [
                                0,
                                1,
                                2,
                                3,
                                4,
                                5
                            ],
                            "default": 0,
                            "titleMap": [
                                {
                                    "value": 0,
                                    "name": "Any"
                                },
                                {
                                    "value": 1,
                                    "name": "SMPTE SD"
                                },
                                {
                                    "value": 2,
                                    "name": "SMPTE HD"
                                },
                                {
                                    "value": 3,
                                    "name": "EBU 75"
                                },
                                {
                                    "value": 4,
                                    "name": "EBU 100"
                                },
                                {
                                    "value": 5,
                                    "name": "EBU UHD"
                                }
                            ]
                        },
                        "color_tolerance": {
                            "title": "Color Level Tolerance (%)",
                            "type": "integer",
                            "minimum": 0,
                            "maximum": 100,
                            "default": 3,
                            "description": "Percentage of allowed deviation from colorbar specification colors"
                        },
                        "max_allowed_enable": {
                            "title": "Test Whole File",
                            "description": "Test whole file for the presence of colorbars",
                            "type": "boolean",
                            "default": true
                        },
                        "max_allowed_duration": {
                            "title": "Max ColorBars Allowed",
                            "description": "The maximum number of colorbars allowed",
                            "$ref": "#/definitions/range_limit"
                        },
                        "max_allowed_units": {
                            "title": "Max Allowed Time Units",
                            "$ref": "#/definitions/time_units"
                        },
                        "ranges": {
                            "title": "Range",
                            "type": "array",
                            "default": [],
                            "items": {
                                "$ref": "#/definitions/colorbar_range"
                            }
                        }
                    }
                },
                "comb_artifacts": {
                    "type": "object",
                    "description": "Detect if the input video stream has any interlacing or combing artifacts",
                    "properties": {
                        "treat_warnings_as": {
                            "$ref": "#/definitions/warnings_as"
                        },
                        "consecutive_frame_count": {
                            "title": "Consecutive Error Frames",
                            "type": "integer",
                            "default": 1,
                            "suffix": "frames",
                            "description": "Raise an alert if number of Consecutive Error Frames exceeds this limit."
                        }
                    },
                    "allOf": [
                        {
                            "required": [
                                "consecutive_frame_count"
                            ]
                        }
                    ]
                },
                "corrupt_frame": {
                    "type": "object",
                    "description": "Check for corrupt or unexpected frames",
                    "properties": {
                        "treat_warnings_as": {
                            "$ref": "#/definitions/warnings_as"
                        },
                        "sensitivity": {
                            "title": "Corrupt Frame Detection Sensitivity",
                            "$ref": "#/definitions/sensitivity"
                        }
                    }
                },
                "dialnorm": {
                    "type": "object",
                    "description": "Test the dialnorm value of Dolby AC-3 and Dolby Digital Plus audio tracks. Valid values are from 1 to 31",
                    "properties": {
                        "treat_warnings_as": {
                            "$ref": "#/definitions/warnings_as"
                        },
                        "audioconfigs": {
                            "title": "Dialnorm Test Configuration",
                            "type": "array",
                            "items": {
                                "$ref": "#/definitions/dialnorm_test_config"
                            }
                        }
                    }
                },
                "dual_mono": {
                    "type": "object",
                    "description": "Compares 2 audio streams and reports back if dual mono sections are detected between them",
                    "properties": {
                        "treat_warnings_as": {
                            "$ref": "#/definitions/warnings_as"
                        },
                        "audioconfigs": {
                            "title": "DualMono Test Configuration",
                            "type": "array",
                            "items": {
                                "$ref": "#/definitions/dualmono_test_config"
                            }
                        }
                    }
                },
                "field_order": {
                    "type": "object",
                    "required": [
                        "encoded_flag"
                    ],
                    "properties": {
                        "treat_warnings_as": {
                            "$ref": "#/definitions/warnings_as"
                        },
                        "encoded_flag": {
                            "title": "Encoded Flag",
                            "type": "integer",
                            "description": "Field order that should be flagged in the stream",
                            "enum": [
                                0,
                                1,
                                2,
                                3
                            ],
                            "titleMap": [
                                {
                                    "value": 0,
                                    "name": "Top field first"
                                },
                                {
                                    "value": 1,
                                    "name": "Bottom field first"
                                },
                                {
                                    "value": 2,
                                    "name": "Progressive"
                                },
                                {
                                    "value": 3,
                                    "name": "Any"
                                }
                            ],
                            "default": 0
                        },
                        "check_baseband": {
                            "title": "Analyze Baseband",
                            "type": "boolean",
                            "description": "Analyze baseband against given field order"
                        },
                        "baseband_mode": {
                            "type": "integer",
                            "description": "Check that the video will play without problems or that the video is a specific field order",
                            "enum": [
                                0,
                                1
                            ],
                            "titleMap": [
                                {
                                    "value": 0,
                                    "name": "Will play correctly with this flag"
                                },
                                {
                                    "value": 1,
                                    "name": "Field order must be"
                                }
                            ]
                        },
                        "field_order_must_be": {
                            "title": "Field Order expected",
                            "type": "integer",
                            "enum": [
                                0,
                                1,
                                2,
                                3
                            ],
                            "titleMap": [
                                {
                                    "value": 0,
                                    "name": "Top field first"
                                },
                                {
                                    "value": 1,
                                    "name": "Bottom field first"
                                },
                                {
                                    "value": 2,
                                    "name": "Progressive"
                                },
                                {
                                    "value": 3,
                                    "name": "Same as encoded flag"
                                }
                            ],
                            "default": 0
                        }
                    },
                    "allOf": [
                        {
                            "if": {
                                "properties": {
                                    "check_baseband": {
                                        "const": true
                                    }
                                }
                            },
                            "then": {
                                "if": {
                                    "properties": {
                                        "baseband_mode": {
                                            "const": "Will play correctly with this flag"
                                        }
                                    }
                                },
                                "then": {
                                    "disabled": [
                                        "field_order_must_be"
                                    ]
                                }
                            }
                        },
                        {
                            "if": {
                                "properties": {
                                    "check_baseband": {
                                        "const": true
                                    }
                                }
                            },
                            "then": {
                                "if": {
                                    "properties": {
                                        "baseband_mode": {
                                            "const": "Field order must be"
                                        }
                                    }
                                },
                                "then": {
                                    "enabled": [
                                        "field_order_must_be"
                                    ],
                                    "required": [
                                        "field_order_must_be"
                                    ]
                                }
                            }
                        }
                    ]
                },
                "file_checks": {
                    "type": "object",
                    "properties": {
                        "treat_warnings_as": {
                            "$ref": "#/definitions/warnings_as"
                        },
                        "container_duration_test": {
                            "type": "object",
                            "properties": {
                                "enable": {
                                    "title": "Duration",
                                    "description": "Check the video duration (if a video track is present) falls within the Min/Max parameters",
                                    "type": "boolean",
                                    "default": false
                                },
                                "maximum": {
                                    "title": "Maximum",
                                    "$ref": "#/definitions/timecode"
                                },
                                "minimum": {
                                    "title": "Minimum",
                                    "$ref": "#/definitions/timecode"
                                }
                            },
                            "allOf": [
                                {
                                    "if": {
                                        "enable": {
                                            "const": true
                                        }
                                    },
                                    "then": {
                                        "required": [
                                            "minimum",
                                            "maximum"
                                        ]
                                    }
                                },
                                {
                                    "required": [
                                        "enable"
                                    ]
                                }
                            ]
                        },
                        "container_ebpmarker_test": {
                            "type": "object",
                            "required": [
                                "enable"
                            ],
                            "properties": {
                                "enable": {
                                    "title": "EBP Metadata Checks",
                                    "type": "boolean",
                                    "default": false
                                },
                                "mode": {
                                    "title": "Mode",
                                    "type": "integer",
                                    "enum": [
                                        0,
                                        1
                                    ],
                                    "titleMap": [
                                        {
                                            "value": 0,
                                            "name": "Explicit"
                                        },
                                        {
                                            "value": 1,
                                            "name": "Implicit"
                                        }
                                    ],
                                    "default": 0
                                },
                                "distance": {
                                    "type": "object",
                                    "title": "EBP Marker Distance",
                                    "required": [
                                        "minimum",
                                        "maximum"
                                    ],
                                    "properties": {
                                        "minimum": {
                                            "title": "Minimum",
                                            "type": "integer",
                                            "suffix": "seconds",
                                            "minimum": 0,
                                            "default": 1
                                        },
                                        "maximum": {
                                            "title": "Maximum",
                                            "type": "integer",
                                            "suffix": "seconds",
                                            "minimum": 0,
                                            "default": 10
                                        }
                                    }
                                }
                            },
                            "allOf": [
                                {
                                    "if": {
                                        "enable": {
                                            "const": true
                                        }
                                    },
                                    "then": {
                                        "required": [
                                            "mode",
                                            "distance"
                                        ]
                                    }
                                }
                            ]
                        },
                        "container_filesize_test": {
                            "type": "object",
                            "properties": {
                                "enable": {
                                    "title": "Size",
                                    "description": "Check that the total file size falls within the Min/Max parameters",
                                    "type": "boolean",
                                    "default": false
                                },
                                "maximum": {
                                    "title": "Maximum (bytes)",
                                    "type": "number",
                                    "default": 0
                                },
                                "minimum": {
                                    "title": "Minimum (bytes)",
                                    "type": "number",
                                    "default": 0
                                }
                            },
                            "allOf": [
                                {
                                    "if": {
                                        "enable": {
                                            "const": true
                                        }
                                    },
                                    "then": {
                                        "required": [
                                            "minimum",
                                            "maximum"
                                        ]
                                    }
                                }
                            ]
                        },
                        "container_format_test": {
                            "type": "object",
                            "properties": {
                                "enable": {
                                    "title": "Container Format",
                                    "description": "Check the 'wrapper' or container file used to hold the video and/or audio matches the user defined value",
                                    "type": "boolean",
                                    "default": false
                                },
                                "options": {
                                    "title": "All formats",
                                    "type": "array",
                                    "items": {
                                        "type": "string",
                                        "enum": [
                                            "3gpp",
                                            "asf ",
                                            "avi ",
                                            "avs",
                                            "dcp ",
                                            "dpx ",
                                            "flv ",
                                            "gxf ",
                                            "imf ",
                                            "lxf ",
                                            "m2ps",
                                            "m2ts",
                                            "mkv ",
                                            "mov ",
                                            "mp4 ",
                                            "mxf ",
                                            "oexr"
                                        ],
                                        "titleMap": [
                                            {
                                                "value": "3gpp",
                                                "name": "3GPP"
                                            },
                                            {
                                                "value": "asf ",
                                                "name": "ASF"
                                            },
                                            {
                                                "value": "avi ",
                                                "name": "AVI"
                                            },
                                            {
                                                "value": "avs",
                                                "name": "AVS"
                                            },
                                            {
                                                "value": "dcp ",
                                                "name": "DCP"
                                            },
                                            {
                                                "value": "dpx ",
                                                "name": "DPX"
                                            },
                                            {
                                                "value": "flv ",
                                                "name": "Flash/FLV"
                                            },
                                            {
                                                "value": "gxf ",
                                                "name": "GXF"
                                            },
                                            {
                                                "value": "imf ",
                                                "name": "IMF"
                                            },
                                            {
                                                "value": "lxf ",
                                                "name": "LXF"
                                            },
                                            {
                                                "value": "m2ps",
                                                "name": "Mpeg-2 PS"
                                            },
                                            {
                                                "value": "m2ts",
                                                "name": "Mpeg-2 TS"
                                            },
                                            {
                                                "value": "mkv ",
                                                "name": "MKV"
                                            },
                                            {
                                                "value": "mov ",
                                                "name": "MOV"
                                            },
                                            {
                                                "value": "mp4 ",
                                                "name": "MP4"
                                            },
                                            {
                                                "value": "mxf ",
                                                "name": "MXF"
                                            },
                                            {
                                                "value": "oexr",
                                                "name": "OpenEXR"
                                            }
                                        ]
                                    },
                                    "default": []
                                }
                            },
                            "allOf": [
                                {
                                    "if": {
                                        "properties": {
                                            "enable": {
                                                "const": true
                                            }
                                        }
                                    },
                                    "then": {
                                        "required": [
                                            "options"
                                        ]
                                    }
                                },
                                {
                                    "required": [
                                        "enable"
                                    ]
                                }
                            ]
                        },
                        "container_bitrate_test": {
                            "type": "object",
                            "properties": {
                                "enable": {
                                    "title": "File Bit Rate",
                                    "description": "Check the calculated bit rate of the file",
                                    "type": "boolean",
                                    "default": false
                                },
                                "mode": {
                                    "title": "Test mode",
                                    "description": "Test specific value(s) or that bit rate lies within given range",
                                    "type": "string",
                                    "enum": [
                                        "value",
                                        "range"
                                    ],
                                    "default": "value"
                                },
                                "options": {
                                    "title": "Value(s)",
                                    "description": "Select multiple by using comma separated values",
                                    "type": "string",
                                    "suffix": "Mbit/s"
                                },
                                "minimum": {
                                    "title": "Minimum (Mbit/s)",
                                    "description": "The minimum allowed bit rate",
                                    "type": "number",
                                    "suffix": "Mbit/s",
                                    "default": 0
                                },
                                "maximum": {
                                    "title": "Maximum (Mbit/s)",
                                    "description": "The maximum allowed bit rate",
                                    "type": "number",
                                    "suffix": "Mbit/s",
                                    "default": 0
                                }
                            },
                            "allOf": [
                                {
                                    "if": {
                                        "properties": {
                                            "enable": {
                                                "const": true
                                            }
                                        }
                                    },
                                    "then": {
                                        "if": {
                                            "properties": {
                                                "mode": {
                                                    "const": "value"
                                                }
                                            }
                                        },
                                        "then": {
                                            "required": [
                                                "options"
                                            ]
                                        }
                                    }
                                },
                                {
                                    "if": {
                                        "properties": {
                                            "enable": {
                                                "const": true
                                            }
                                        }
                                    },
                                    "then": {
                                        "if": {
                                            "properties": {
                                                "mode": {
                                                    "const": "range"
                                                }
                                            }
                                        },
                                        "then": {
                                            "required": [
                                                "minimum",
                                                "maximum"
                                            ]
                                        }
                                    }
                                }
                            ]
                        },
                        "comparestreamlengths_test": {
                            "type": "object",
                            "required": [
                                "enable"
                            ],
                            "properties": {
                                "enable": {
                                    "title": "Compare Stream Lengths",
                                    "description": "Check whether the audio track is present throughout the duration of the video",
                                    "type": "boolean",
                                    "default": false
                                }
                            }
                        },
                        "moov_atom": {
                            "type": "object",
                            "properties": {
                                "enable": {
                                    "title": "MOOV Atom",
                                    "type": "boolean",
                                    "default": false,
                                    "description": "Check that there is only 1 MOOV atom in a mov/mp4 file"
                                }
                            }
                        },
                        "container_starttimecode_test": {
                            "type": "object",
                            "properties": {
                                "enable": {
                                    "title": "Container Start Timecode",
                                    "description": "Check the Container Start Timecode",
                                    "type": "boolean",
                                    "default": false
                                },
                                "timecode": {
                                    "title": "Timecode",
                                    "$ref": "#/definitions/timecode"
                                },
                                "tolerance": {
                                    "title": "Tolerance (+/- frames)",
                                    "type": "number",
                                    "default": 0
                                },
                                "drop_frame": {
                                    "title": "Drop Frame",
                                    "descrption": "Check that the container's start timecode is either drop-frame or non-drop as specified",
                                    "type": "integer",
                                    "enum": [
                                        0,
                                        1,
                                        2
                                    ],
                                    "default": 0,
                                    "titleMap": [
                                        {
                                            "value": 0,
                                            "name": "Either"
                                        },
                                        {
                                            "value": 1,
                                            "name": "Drop"
                                        },
                                        {
                                            "value": 2,
                                            "name": "Non-drop"
                                        }
                                    ]
                                }
                            },
                            "allOf": [
                                {
                                    "if": {
                                        "properties": {
                                            "enable": {
                                                "const": true
                                            }
                                        }
                                    },
                                    "then": {
                                        "required": [
                                            "timecode"
                                        ]
                                    }
                                },
                                {
                                    "required": [
                                        "enable"
                                    ]
                                }
                            ]
                        },
                        "container_endtimecode_test": {
                            "type": "object",
                            "properties": {
                                "enable": {
                                    "title": "Container End Timecode",
                                    "description": "Check the Container End Timecode",
                                    "type": "boolean",
                                    "default": false
                                },
                                "timecode": {
                                    "title": "Timecode",
                                    "$ref": "#/definitions/timecode"
                                },
                                "tolerance": {
                                    "title": "Tolerance (+/- frames)",
                                    "type": "number",
                                    "default": 0
                                }
                            },
                            "allOf": [
                                {
                                    "if": {
                                        "properties": {
                                            "enable": {
                                                "const": true
                                            }
                                        }
                                    },
                                    "then": {
                                        "required": [
                                            "timecode",
                                            "tolerance"
                                        ]
                                    }
                                },
                                {
                                    "required": [
                                        "enable"
                                    ]
                                }
                            ]
                        },
                        "container_essence_test": {
                            "type": "object",
                            "properties": {
                                "enable": {
                                    "title": "Container/Header agrees with Essence",
                                    "type": "boolean",
                                    "description": "Checks that the video duration in the container metadata is correct (within a small margin of error). This can indicate truncation. For MOV and MP4 files, checks that the media samples described in the header do not exceed the file's length, and is therefore also useful in detecting truncation in these file types.",
                                    "default": false
                                },
                                "tolerance": {
                                    "title": "Tolerance (seconds/frames)",
                                    "type": "number",
                                    "default": 0
                                },
                                "units": {
                                    "title": "Tolerance Units",
                                    "$ref": "#/definitions/time_units"
                                }
                            },
                            "allOf": [
                                {
                                    "if": {
                                        "properties": {
                                            "enable": {
                                                "const": true
                                            }
                                        }
                                    },
                                    "then": {
                                        "required": [
                                            "tolerance",
                                            "units"
                                        ]
                                    }
                                },
                                {
                                    "required": [
                                        "enable"
                                    ]
                                }
                            ]
                        },
                        "video_cleanaperture_test": {
                            "type": "object",
                            "properties": {
                                "enable": {
                                    "title": "Clean Aperture",
                                    "description": "Check Clean Aperture is equal to Production Aperture",
                                    "type": "boolean",
                                    "default": false
                                }
                            },
                            "required": [
                                "enable"
                            ]
                        },
                        "video_goplength_test": {
                            "type": "object",
                            "properties": {
                                "enable": {
                                    "title": "GOP Length",
                                    "description": "Check the distance between successive I-frames in the encoded video",
                                    "type": "boolean",
                                    "default": false
                                },
                                "length": {
                                    "title": "I-Frame distance",
                                    "description": "Distance between I-frames",
                                    "type": "number",
                                    "default": 1,
                                    "minimum": 1
                                }
                            },
                            "allOf": [
                                {
                                    "if": {
                                        "properties": {
                                            "enable": {
                                                "const": true
                                            }
                                        }
                                    },
                                    "then": {
                                        "required": [
                                            "length"
                                        ]
                                    }
                                },
                                {
                                    "required": [
                                        "enable"
                                    ]
                                }
                            ]
                        },
                        "video_starttimecode_test": {
                            "type": "object",
                            "properties": {
                                "enable": {
                                    "title": "Essence Start Timecode",
                                    "description": "Check the Essence Start Timecode",
                                    "type": "boolean",
                                    "default": false
                                },
                                "timecode": {
                                    "title": "Timecode",
                                    "$ref": "#/definitions/timecode"
                                },
                                "tolerance": {
                                    "title": "Tolerance (+/- frames)",
                                    "type": "number",
                                    "default": 0
                                },
                                "drop_frame": {
                                    "title": "Drop Frame",
                                    "descrption": "Check that the essence's start timecode is either drop-frame or non-drop as specified",
                                    "type": "integer",
                                    "enum": [
                                        0,
                                        1,
                                        2
                                    ],
                                    "default": 0,
                                    "titleMap": [
                                        {
                                            "value": 0,
                                            "name": "Either"
                                        },
                                        {
                                            "value": 1,
                                            "name": "Drop"
                                        },
                                        {
                                            "value": 2,
                                            "name": "Non-drop"
                                        }
                                    ]
                                },
                                "matches_container": {
                                    "title": "Matches container",
                                    "description": "If the file is MXF and video is H.262, compare the video start-timecode against the Material Package start-timecode",
                                    "type": "boolean",
                                    "default": false
                                }
                            },
                            "allOf": [
                                {
                                    "if": {
                                        "properties": {
                                            "enable": {
                                                "const": true
                                            }
                                        }
                                    },
                                    "then": {
                                        "required": [
                                            "timecode"
                                        ]
                                    }
                                },
                                {
                                    "required": [
                                        "enable"
                                    ]
                                }
                            ]
                        },
                        "video_endtimecode_test": {
                            "type": "object",
                            "properties": {
                                "enable": {
                                    "title": "Essence End Timecode",
                                    "description": "Check the Essence End Timecode",
                                    "type": "boolean",
                                    "default": false
                                },
                                "timecode": {
                                    "title": "Timecode",
                                    "$ref": "#/definitions/timecode"
                                },
                                "tolerance": {
                                    "title": "Tolerance (+/- frames)",
                                    "type": "number",
                                    "default": 0
                                }
                            },
                            "allOf": [
                                {
                                    "if": {
                                        "properties": {
                                            "enable": {
                                                "const": true
                                            }
                                        }
                                    },
                                    "then": {
                                        "required": [
                                            "timecode",
                                            "tolerance"
                                        ]
                                    }
                                },
                                {
                                    "required": [
                                        "enable"
                                    ]
                                }
                            ]
                        },
                        "video_advancedgop_test": {
                            "type": "object",
                            "properties": {
                                "enable": {
                                    "title": "Advanced GOP Length",
                                    "description": "A more thorough GOP test for MPEG-2 and H.264 that can test for a range of GOP lengths, test for open and closed GOPs (MPEG-2 only), and allow special handling of first and last GOPs",
                                    "type": "boolean",
                                    "default": false
                                },
                                "order": {
                                    "title": "Test order",
                                    "type": "integer",
                                    "enum": [
                                        0,
                                        1
                                    ],
                                    "default": 1,
                                    "titleMap": [
                                        {
                                            "value": 0,
                                            "name": "Coded"
                                        },
                                        {
                                            "value": 1,
                                            "name": "Display"
                                        }
                                    ]
                                },
                                "report": {
                                    "title": "Report",
                                    "description": "Report each unique GOP structure or all errors as specified",
                                    "type": "integer",
                                    "enum": [
                                        0,
                                        1
                                    ],
                                    "default": 0,
                                    "titleMap": [
                                        {
                                            "value": 0,
                                            "name": "each unique GOP structure"
                                        },
                                        {
                                            "value": 1,
                                            "name": "all errors"
                                        }
                                    ]
                                },
                                "first_gop": {
                                    "title": "First GOP",
                                    "description": "Enable specific values to be given for the first GOP structure",
                                    "type": "boolean",
                                    "default": false
                                },
                                "first_gop_options": {
                                    "title": "Options",
                                    "type": "object",
                                    "$ref": "#/definitions/gop_structure"
                                },
                                "other_gop": {
                                    "title": "Other GOPs",
                                    "description": "Enable specific values to be given for other GOP structures. This will apply to first and last GOPs if their specific sections are not selected",
                                    "type": "boolean",
                                    "default": false
                                },
                                "other_gop_options": {
                                    "type": "object",
                                    "$ref": "#/definitions/gop_structure"
                                },
                                "last_2gop": {
                                    "title": "Last 2 GOPs",
                                    "description": "Enable specific values to be given for the last two GOP structures",
                                    "type": "boolean",
                                    "default": false
                                },
                                "last_2gop_options": {
                                    "type": "object",
                                    "$ref": "#/definitions/gop_structure"
                                }
                            }
                        }
                    }
                },
                "freeze_frame": {
                    "type": "object",
                    "allOf": [
                        {
                            "properties": {
                                "treat_warnings_as": {
                                    "$ref": "#/definitions/warnings_as"
                                },
                                "ignore_black_frames": {
                                    "title": "Ignore Black Frames",
                                    "type": "boolean"
                                },
                                "custom_level": {
                                    "title": "Custom Level",
                                    "type": "boolean",
                                    "description": "Use custom luminance level (Y) for non-active picture area"
                                },
                                "bit_depth": {
                                    "title": "Bit Depth",
                                    "$ref": "#/definitions/video_bit_depth"
                                },
                                "level_8_bit": {
                                    "title": "Black Level",
                                    "$ref": "#/definitions/level_8_bit"
                                },
                                "level_10_bit": {
                                    "title": "Black Level",
                                    "$ref": "#/definitions/level_10_bit"
                                },
                                "level_12_bit": {
                                    "title": "Black Level",
                                    "$ref": "#/definitions/level_12_bit"
                                },
                                "level_14_bit": {
                                    "title": "Black Level",
                                    "$ref": "#/definitions/level_14_bit"
                                },
                                "percentage": {
                                    "title": "Percentage Of Frame",
                                    "type": "integer",
                                    "minimum": 0,
                                    "maximum": 100,
                                    "default": 100,
                                    "description": "Percentage of frame required to be frozen"
                                },
                                "max_allowed_enable": {
                                    "title": "Test Whole File",
                                    "description": "Test whole file for the presence of frozen frames",
                                    "type": "boolean",
                                    "default": true
                                },
                                "max_allowed_duration": {
                                    "title": "Max Frozen Video Allowed",
                                    "description": "The maximum frozen video allowed (frames/seconds)",
                                    "$ref": "#/definitions/range_limit"
                                },
                                "max_allowed_units": {
                                    "title": "Max Allowed Time Units",
                                    "$ref": "#/definitions/time_units"
                                },
                                "silence": {
                                    "title": "Must Also Be Digitally Silent",
                                    "description": "Test for digital silence in conjunction with frozen frames",
                                    "type": "boolean"
                                },
                                "ranges": {
                                    "title": "Range",
                                    "type": "array",
                                    "default": [],
                                    "items": {
                                        "$ref": "#/definitions/freezeframe_range"
                                    }
                                }
                            }
                        },
                        {
                            "$ref": "#/definitions/audio_config_silence"
                        },
                        {
                            "required": [
                                "silence",
                                "ignore_black_frames"
                            ]
                        }
                    ]
                },
                "hdr_area": {
                    "type": "object",
                    "properties": {
                        "treat_warnings_as": {
                            "$ref": "#/definitions/warnings_as"
                        },
                        "luminance": {
                            "title": "Luminance",
                            "type": "number",
                            "default": 203,
                            "description": "Minimum desired Luminance value greater than 0"
                        },
                        "luminance_units": {
                            "title": "Luminance Units",
                            "type": "integer",
                            "enum": [
                                0,
                                1
                            ],
                            "titleMap": [
                                {
                                    "value": 0,
                                    "name": "NITS"
                                },
                                {
                                    "value": 1,
                                    "name": "Code Values"
                                }
                            ],
                            "default": 0
                        },
                        "area_threshold": {
                            "title": "Area Threshold",
                            "type": "number",
                            "default": 20,
                            "minimum": 0,
                            "maximum": 100,
                            "suffix": "%",
                            "description": "Area threshold in percentage (0 to 100)"
                        },
                        "continues_for": {
                            "title": "Continues For",
                            "type": "number",
                            "default": 5,
                            "minimum": 0,
                            "maximum": 100,
                            "description": "Value in number of measurements"
                        }
                    },
                    "allOf": [
                        {
                            "required": [
                                "luminance",
                                "area_threshold",
                                "continues_for"
                            ]
                        }
                    ]
                },
                "hdr_change_detection": {
                    "type": "object",
                    "description": "Check each frame for changes in the HDR metadata encoded as SEI messages in the HEVC bit-stream",
                    "properties": {
                        "treat_warnings_as": {
                            "$ref": "#/definitions/warnings_as"
                        }
                    }
                },
                "hdr_limit": {
                    "type": "object",
                    "description": "Check the luminance level that marks the boundary such that (x) percentile of pixels in a frame lie above this level and the remaining, (100-x) percentile of pixels, lie below this level. Both PQ and HLG-1000 gradings are supported",
                    "properties": {
                        "treat_warnings_as": {
                            "$ref": "#/definitions/warnings_as"
                        },
                        "limit_brightest_percentage": {
                            "title": "First Brightest Check",
                            "type": "number",
                            "default": 1,
                            "minimum": 0,
                            "maximum": 100,
                            "description": "Percentage of Pixels in a frame above luminance threshold"
                        },
                        "limit_threshold_luminance": {
                            "title": "Luminance",
                            "type": "number",
                            "default": 320,
                            "minimum": 0,
                            "maximum": 10000,
                            "description": "luminance threshold"
                        },
                        "limit_brightest_percentage_top": {
                            "title": "Second Brightest Check",
                            "type": "number",
                            "default": 10,
                            "minimum": 0,
                            "maximum": 100,
                            "description": "Percentage of Pixels in a frame above luminance threshold"
                        },
                        "limit_threshold_luminance_top": {
                            "title": "Luminance",
                            "type": "number",
                            "default": 150,
                            "minimum": 0,
                            "maximum": 10000,
                            "description": "luminance threshold"
                        },
                        "limit_darkest_percentage": {
                            "title": "Darkest",
                            "type": "number",
                            "default": 1,
                            "minimum": 0,
                            "maximum": 100,
                            "description": "Percentage of Pixels in a frame below luminance threshold"
                        },
                        "limit_threshold_luminance_dark": {
                            "title": "Luminance",
                            "type": "number",
                            "default": 10,
                            "minimum": 0,
                            "maximum": 10000,
                            "description": "luminance threshold"
                        },
                        "luminance_units": {
                            "title": "Luminance Units",
                            "type": "integer",
                            "enum": [
                                0,
                                1
                            ],
                            "titleMap": [
                                {
                                    "value": 0,
                                    "name": "NITS"
                                },
                                {
                                    "value": 1,
                                    "name": "CODE VALUES"
                                }
                            ],
                            "default": 0
                        },
                        "continues_for": {
                            "title": "Continues for",
                            "type": "number",
                            "default": 1,
                            "minimum": 0,
                            "description": "measurements"
                        }
                    },
                    "allOf": [
                        {
                            "required": [
                                "limit_brightest_percentage",
                                "limit_threshold_luminance",
                                "limit_brightest_percentage_top",
                                "limit_threshold_luminance_top",
                                "limit_darkest_percentage",
                                "limit_threshold_luminance_dark",
                                "luminance_units",
                                "continues_for"
                            ]
                        }
                    ]
                },
                "hdr_measurement": {
                    "type": "object",
                    "description": "Check each decoded frame in its native bit depth to calculate the MaxCLL and MaxFALL",
                    "properties": {
                        "treat_warnings_as": {
                            "$ref": "#/definitions/warnings_as"
                        }
                    }
                },
                "integrated_loudness": {
                    "type": "object",
                    "description": "Measure Integrated loudness over the duration of the file",
                    "properties": {
                        "treat_warnings_as": {
                            "$ref": "#/definitions/warnings_as"
                        },
                        "audioconfigs": {
                            "title": "Integrated Loudness Test Configuration",
                            "type": "array",
                            "items": {
                                "$ref": "#/definitions/integrated_loudness_test_config"
                            }
                        }
                    }
                },
                "itunes_compatibility": {
                    "type": "object",
                    "description": "Test several aspects of MOV file atom structure which are relevant for iTunes submission",
                    "properties": {
                        "treat_warnings_as": {
                            "$ref": "#/definitions/warnings_as"
                        }
                    }
                },
                "letterboxing": {
                    "type": "object",
                    "properties": {
                        "treat_warnings_as": {
                            "$ref": "#/definitions/warnings_as"
                        },
                        "letterboxing_pillarboxing": {
                            "title": "Detect and report letterboxing/pillarboxing violations",
                            "type": "boolean",
                            "description": "This test is used to detect if video content has the correct letterboxing and/or pillarboxing.",
                            "default": false
                        },
                        "aspect_ratio": {
                            "title": "Aspect ratio",
                            "description": "The number of black lines needed at the edges is automatically calculated based on this ratio, the frame size and the pixel aspect ratio",
                            "type": "integer",
                            "enum": [
                                0,
                                1,
                                2
                            ],
                            "default": 0,
                            "titleMap": [
                                {
                                    "value": 0,
                                    "name": "Defined aspect ratio"
                                },
                                {
                                    "value": 1,
                                    "name": "Custom aspect ratio"
                                },
                                {
                                    "value": 2,
                                    "name": "Defined number of lines"
                                }
                            ]
                        },
                        "active_picture_ratio_value": {
                            "title": "Active picture aspect ratio must be :",
                            "description": "Select from a number of common aspect ratios",
                            "type": "integer",
                            "enum": [
                                0,
                                1,
                                2,
                                3,
                                4,
                                5,
                                6
                            ],
                            "default": 0,
                            "titleMap": [
                                {
                                    "value": 0,
                                    "name": "4:3"
                                },
                                {
                                    "value": 1,
                                    "name": "14:9"
                                },
                                {
                                    "value": 2,
                                    "name": "16:9"
                                },
                                {
                                    "value": 3,
                                    "name": "1.85:1"
                                },
                                {
                                    "value": 4,
                                    "name": "2.35:1"
                                },
                                {
                                    "value": 5,
                                    "name": "2.39:1"
                                },
                                {
                                    "value": 6,
                                    "name": "2.40:1"
                                }
                            ]
                        },
                        "custom_aspect_ratio_numerator": {
                            "title": "Custom aspect ratio numerator",
                            "type": "number",
                            "description": "Specify the required custom aspect ratio",
                            "default": 0,
                            "minimum": 0
                        },
                        "custom_aspect_ratio_denominator": {
                            "title": "Custom aspect ratio denominator",
                            "type": "integer",
                            "description": "Specify the required custom aspect ratio",
                            "default": 0,
                            "minimum": 0
                        },
                        "lines_required_top_bottom": {
                            "title": "Set the number of required black lines at the top/bottom",
                            "type": "integer",
                            "description": "This allows the number of required black lines at the top/bottom to be set to any value.",
                            "default": 0,
                            "minimum": 0
                        },
                        "lines_required_left_right": {
                            "title": "Set the number of required black lines at the left/right",
                            "type": "integer",
                            "description": "This allows the number of required black lines at the left/right to be set to any value.",
                            "default": 0,
                            "minimum": 0
                        },
                        "tolerance": {
                            "title": "Tolerance",
                            "type": "integer",
                            "description": "If the number of lines to give the selected active picture varies by +/- Tolerance lines then no error or warning will be given. This can be set to zero if required.",
                            "default": 0,
                            "minimum": 0
                        },
                        "report_blanking": {
                            "title": "Detect and report all changes in blanking",
                            "type": "boolean",
                            "description": "Will raise info alerts detailing the number of black lines bordering the active picture content",
                            "default": false
                        },
                        "custom_level": {
                            "title": "Custom Black Level",
                            "description": "Use custom luminance level (Y) for non-active picture area",
                            "type": "boolean",
                            "default": false
                        },
                        "bit_depth": {
                            "title": "Bit Depth",
                            "$ref": "#/definitions/video_bit_depth"
                        },
                        "level_8_bit": {
                            "title": "Black Level",
                            "$ref": "#/definitions/level_8_bit"
                        },
                        "level_10_bit": {
                            "title": "Black Level",
                            "$ref": "#/definitions/level_10_bit"
                        },
                        "level_12_bit": {
                            "title": "Black Level",
                            "$ref": "#/definitions/level_12_bit"
                        },
                        "level_14_bit": {
                            "title": "Black Level",
                            "$ref": "#/definitions/level_14_bit"
                        }
                    },
                    "allOf": [
                        {
                            "if": {
                                "properties": {
                                    "aspect_ratio": {
                                        "const": 0
                                    }
                                }
                            },
                            "then": {
                                "required": [
                                    "active_picture_ratio_value"
                                ]
                            }
                        },
                        {
                            "if": {
                                "properties": {
                                    "aspect_ratio": {
                                        "const": 1
                                    }
                                }
                            },
                            "then": {
                                "required": [
                                    "custom_aspect_ratio_numerator",
                                    "custom_aspect_ratio_denominator"
                                ]
                            }
                        },
                        {
                            "if": {
                                "properties": {
                                    "aspect_ratio": {
                                        "const": 2
                                    }
                                }
                            },
                            "then": {
                                "required": [
                                    "lines_required_top_bottom",
                                    "lines_required_left_right"
                                ]
                            }
                        }
                    ]
                },
                "luma_chroma_levels": {
                    "type": "object",
                    "description": "Check the Y, U and V levels of the video are within the given limits",
                    "properties": {
                        "treat_warnings_as": {
                            "$ref": "#/definitions/warnings_as"
                        },
                        "luma_range_from": {
                            "title": "Low Luma Limit (%)",
                            "type": "number",
                            "default": -1,
                            "minimum": -9,
                            "maximum": 109,
                            "description": "Default value is 1%, as suggested in EBU R103-2000. Use 0-100 for no tolerance"
                        },
                        "luma_range_to": {
                            "title": "High Luma Limit (%)",
                            "type": "number",
                            "default": 103,
                            "minimum": -9,
                            "maximum": 109,
                            "description": "Default value is 3%, as suggested in EBU R103-2000. Use 0-100 for no tolerance"
                        },
                        "luma_max_area_outside": {
                            "title": "Luma Max area outside (%)",
                            "type": "number",
                            "default": 1,
                            "minimum": 0,
                            "maximum": 100,
                            "description": "The maximum area of the video picture that can be outside the given range without generating an error. Typically set to 1% (as per EBU R103-2000 recommendation)"
                        },
                        "luma_low_pass_filter": {
                            "title": "Luma Low-pass filter",
                            "type": "integer",
                            "description": "When EBU R103 2000 is selected, a horizontal signal filter (as described in EBU R103-2000) is applied to the luma component before testing to remove transient violations. When EBU R103-2016 is selected, a quarter band signal filter is applied horizontally and a half band signal filter is applied vertically (as described in EBU R103-2016) to the luma component before testing to remove transient violations",
                            "enum": [
                                0,
                                1,
                                2
                            ],
                            "default": 0,
                            "titleMap": [
                                {
                                    "value": 0,
                                    "name": "None"
                                },
                                {
                                    "value": 1,
                                    "name": "EBU R103 2000"
                                },
                                {
                                    "value": 2,
                                    "name": "EBU R103 2016"
                                }
                            ]
                        },
                        "chroma_range_from": {
                            "title": "Low Chroma Limit (%)",
                            "type": "number",
                            "default": -1,
                            "minimum": -9,
                            "maximum": 109,
                            "description": "Default value is 1%, as suggested in EBU R103-2000. Use 0-100 for no tolerance"
                        },
                        "chroma_range_to": {
                            "title": "High Chroma Limit (%)",
                            "type": "number",
                            "default": 103,
                            "minimum": -9,
                            "maximum": 109,
                            "description": "Default value is 3%, as suggested in EBU R103-2000. Use 0-100 for no tolerance"
                        },
                        "chroma_max_area_outside": {
                            "title": "Chroma max area outside (%)",
                            "type": "number",
                            "default": 1,
                            "minimum": 0,
                            "maximum": 100,
                            "description": "The maximum area of the video picture that can be outside the given range without generating an error. Typically set to 1% (as per EBU R103-2000 recommendation)"
                        }
                    },
                    "required": [
                        "luma_range_from",
                        "luma_range_to",
                        "luma_max_area_outside",
                        "luma_low_pass_filter",
                        "chroma_range_from",
                        "chroma_range_to",
                        "chroma_max_area_outside"
                    ]
                },
                "loudness_range": {
                    "type": "object",
                    "description": "Measure the variation in loudness over the duration of a file",
                    "properties": {
                        "treat_warnings_as": {
                            "$ref": "#/definitions/warnings_as"
                        },
                        "audioconfigs": {
                            "title": "Loudness Range Test Configuration",
                            "type": "array",
                            "items": {
                                "$ref": "#/definitions/loudness_range_test_config"
                            }
                        }
                    }
                },
                "macro_block": {
                    "type": "object",
                    "required": [
                        "duration_units"
                    ],
                    "description": "Check for macroblocking artifacts where the macroblock edge is clearly visible",
                    "properties": {
                        "treat_warnings_as": {
                            "$ref": "#/definitions/warnings_as"
                        },
                        "quality_score": {
                            "title": "Quality Score",
                            "type": "number",
                            "default": 80,
                            "minimum": 0,
                            "maximum": 100,
                            "description": "Minimum desired quality score, varies from 0 (poor) to 99 (excellent)"
                        },
                        "averaged_over": {
                            "title": "Averaged Over",
                            "type": "number",
                            "default": 5,
                            "description": "Duration over which the quality scores are averaged"
                        },
                        "duration_units": {
                            "title": "Duration Units",
                            "$ref": "#/definitions/time_units"
                        }
                    },
                    "allOf": [
                        {
                            "required": [
                                "quality_score",
                                "averaged_over",
                                "duration_units"
                            ]
                        }
                    ]
                },
                "media_offline": {
                    "type": "object",
                    "description": "Test for the presence of a media offline slate",
                    "properties": {
                        "treat_warnings_as": {
                            "$ref": "#/definitions/warnings_as"
                        }
                    }
                },
                "minimum_level": {
                    "type": "object",
                    "properties": {
                        "treat_warnings_as": {
                            "$ref": "#/definitions/warnings_as"
                        },
                        "audioconfigs": {
                            "title": "Minimum Level Test Configuration",
                            "type": "array",
                            "items": {
                                "$ref": "#/definitions/minlevel_test_config"
                            }
                        }
                    }
                },
                "momentary_loudness": {
                    "type": "object",
                    "description": "Measure Momentary Loudness over a 400ms sliding rectangular time window as per EBU-Tech 3341 Momentary mode. The measurement is not gated",
                    "properties": {
                        "treat_warnings_as": {
                            "$ref": "#/definitions/warnings_as"
                        },
                        "audioconfigs": {
                            "title": "Momentary Loudness Test Configuration",
                            "type": "array",
                            "items": {
                                "$ref": "#/definitions/momentary_loudness_test_config"
                            }
                        }
                    }
                },
                "deep_mxf": {
                    "type": "object",
                    "properties": {
                        "treat_warnings_as": {
                            "$ref": "#/definitions/warnings_as"
                        },
                        "basic_operational_pattern": {
                            "type": "object",
                            "required": [
                                "enable"
                            ],
                            "properties": {
                                "enable": {
                                    "title": "MXF Operational Pattern",
                                    "type": "boolean",
                                    "default": false
                                },
                                "pattern": {
                                    "title": "Operational Pattern",
                                    "type": "integer",
                                    "enum": [
                                        0,
                                        1
                                    ],
                                    "titleMap": [
                                        {
                                            "value": 0,
                                            "name": "OP-1a"
                                        },
                                        {
                                            "value": 1,
                                            "name": "OP Atom"
                                        }
                                    ],
                                    "default": 0
                                },
                                "partition_closed": {
                                    "title": "Partition must be Closed",
                                    "type": "boolean",
                                    "default": false
                                },
                                "partition_complete": {
                                    "title": "Partition must be Complete",
                                    "type": "boolean",
                                    "default": false
                                }
                            },
                            "allOf": [
                                {
                                    "if": {
                                        "properties": {
                                            "enable": {
                                                "const": true
                                            }
                                        }
                                    },
                                    "then": {
                                        "required": [
                                            "pattern",
                                            "partition_closed",
                                            "partition_complete"
                                        ]
                                    }
                                }
                            ]
                        },
                        "basic_avc_sps_pps": {
                            "type": "object",
                            "required": [
                                "enable"
                            ],
                            "properties": {
                                "enable": {
                                    "title": "AVC SPS/PPS",
                                    "type": "boolean",
                                    "default": false
                                }
                            }
                        },
                        "as11_uk_dpp_metadata": {
                            "type": "object",
                            "required": [
                                "enable"
                            ],
                            "properties": {
                                "enable": {
                                    "title": "AS-11 UK DPP Metadata",
                                    "description": "Test MXF structural and descriptive metadata against selected shim",
                                    "type": "boolean",
                                    "default": false
                                },
                                "shim": {
                                    "title": "AS-11 UK DPP Shim",
                                    "type": "integer",
                                    "enum": [
                                        0,
                                        1,
                                        2
                                    ],
                                    "titleMap": [
                                        {
                                            "value": 0,
                                            "name": "Auto"
                                        },
                                        {
                                            "value": 1,
                                            "name": "SD"
                                        },
                                        {
                                            "value": 2,
                                            "name": "HD"
                                        }
                                    ],
                                    "default": 0
                                }
                            },
                            "allOf": [
                                {
                                    "if": {
                                        "properties": {
                                            "enable": {
                                                "const": true
                                            }
                                        }
                                    },
                                    "then": {
                                        "required": [
                                            "shim"
                                        ]
                                    }
                                }
                            ]
                        },
                        "as11_xprofile": {
                            "type": "object",
                            "required": [
                                "enable"
                            ],
                            "properties": {
                                "enable": {
                                    "title": "AMWA AS-11 Rule Blocks",
                                    "descriptiomn": "Compliance checking to AMWA AS-11 X profile specifications",
                                    "type": "boolean",
                                    "default": false
                                },
                                "rules": {
                                    "title": "AMWA AS-11 Rules",
                                    "type": "array",
                                    "items": {
                                        "type": "string",
                                        "enum": [
                                            "STRICT_FRAME_WRAPPING",
                                            "ONE_TO_ONE_TRACK_MAPPING",
                                            "SEGMENT_THE_ESSENCE_CONTAINER",
                                            "INDEX_EACH_ESSENCE_CONTAINER_SEGMENT",
                                            "GENERIC_CONTAINER",
                                            "MXF_INDEXING_AND_PARTITIONING",
                                            "MXF_INDEXING_AND_PARTITIONING_FOR_VBE_ESSENCE",
                                            "MXF_INDEXING_AND_PARTITIONING_FOR_CBE_ESSENCE",
                                            "ONE_PICTURE_TRACK",
                                            "AVC_BYTE_STREAM_FORMAT_PICTURE_ESSENCE",
                                            "ST831_3_MAPPING",
                                            "ONE_SOUNDFIELD_GROUP_PER_SOUND_TRACK",
                                            "UNCOMPRESSED_24BIT_PCM_AUDIO_AT_48KHZ",
                                            "CONSTRAINED_ST382_WAVE_PCM_MAPPING",
                                            "AUDIO_LAYOUT",
                                            "AUDIO_LAYOUT_X8",
                                            "AS11_SEGMENTATION_DM",
                                            "SPECIFICATION_IDENTIFICATION",
                                            "SPECIFICATION_IDENTIFICATION_X7",
                                            "SPECIFICATION_IDENTIFICATION_X8",
                                            "SPECIFICATION_IDENTIFICATION_X9",
                                            "TIMECODE_TRACK_PRESENCE",
                                            "CONSTRAINED_TIMECODE_TRACK_IN_MATERIAL_PACKAGE",
                                            "TIMECODE_MODE_SIGNALLING"
                                        ]
                                    },
                                    "titleMap": [
                                        {
                                            "value": "STRICT_FRAME_WRAPPING",
                                            "name": "Strict Frame Wrapping"
                                        },
                                        {
                                            "value": "ONE_TO_ONE_TRACK_MAPPING",
                                            "name": "One-to-one Track Mapping"
                                        },
                                        {
                                            "value": "SEGMENT_THE_ESSENCE_CONTAINER",
                                            "name": "Segment The Essence Container"
                                        },
                                        {
                                            "value": "INDEX_EACH_ESSENCE_CONTAINER_SEGMENT",
                                            "name": "Index Each Essence Container Segment"
                                        },
                                        {
                                            "value": "GENERIC_CONTAINER",
                                            "name": "Generic Container"
                                        },
                                        {
                                            "value": "MXF_INDEXING_AND_PARTITIONING",
                                            "name": "MXF Indexing and Partitioning (VBE or CBE)"
                                        },
                                        {
                                            "value": "MXF_INDEXING_AND_PARTITIONING_FOR_VBE_ESSENCE",
                                            "name": "MXF Indexing and Partitioning for VBE Essence"
                                        },
                                        {
                                            "value": "MXF_INDEXING_AND_PARTITIONING_FOR_CBE_ESSENCE",
                                            "name": "MXF Indexing and Partitioning for CBE Essence"
                                        },
                                        {
                                            "value": "ONE_PICTURE_TRACK",
                                            "name": "One Picture Track"
                                        },
                                        {
                                            "value": "AVC_BYTE_STREAM_FORMAT_PICTURE_ESSENCE",
                                            "name": "AVC byte Stream Format Picture Essence"
                                        },
                                        {
                                            "value": "ST831_3_MAPPING",
                                            "name": "ST831-3 mapping"
                                        },
                                        {
                                            "value": "ONE_SOUNDFIELD_GROUP_PER_SOUND_TRACK",
                                            "name": "One Soundfield Group per Sound Track"
                                        },
                                        {
                                            "value": "UNCOMPRESSED_24BIT_PCM_AUDIO_AT_48KHZ",
                                            "name": "Uncompressed 24-bit PCM Audio at 48kHz"
                                        },
                                        {
                                            "value": "CONSTRAINED_ST382_WAVE_PCM_MAPPING",
                                            "name": "Constrained ST382 Wave PCM Mapping"
                                        },
                                        {
                                            "value": "AUDIO_LAYOUT",
                                            "name": "Audio Layout"
                                        },
                                        {
                                            "value": "AUDIO_LAYOUT_X8",
                                            "name": "Audio Layout [X8]"
                                        },
                                        {
                                            "value": "AS11_SEGMENTATION_DM",
                                            "name": "AS-11 Segmentation DM"
                                        },
                                        {
                                            "value": "SPECIFICATION_IDENTIFICATION",
                                            "name": "Specification Identification"
                                        },
                                        {
                                            "value": "SPECIFICATION_IDENTIFICATION_X7",
                                            "name": "Specification Identification [X7]"
                                        },
                                        {
                                            "value": "SPECIFICATION_IDENTIFICATION_X8",
                                            "name": "Specification Identification [X8]"
                                        },
                                        {
                                            "value": "SPECIFICATION_IDENTIFICATION_X9",
                                            "name": "Specification Identification [X9]"
                                        },
                                        {
                                            "value": "TIMECODE_TRACK_PRESENCE",
                                            "name": "Timecode Track Presence"
                                        },
                                        {
                                            "value": "CONSTRAINED_TIMECODE_TRACK_IN_MATERIAL_PACKAGE",
                                            "name": "Constrained Timecode Track in Material Package"
                                        },
                                        {
                                            "value": "TIMECODE_MODE_SIGNALLING",
                                            "name": "Timecode Mode Signalling"
                                        }
                                    ]
                                },
                                "embedded_xml_documents": {
                                    "title": "Embedded XML Documents",
                                    "type": "integer",
                                    "enum": [
                                        0,
                                        1
                                    ],
                                    "titleMap": [
                                        {
                                            "value": 0,
                                            "name": "None"
                                        },
                                        {
                                            "value": 1,
                                            "name": "XML DM for Programmes"
                                        }
                                    ],
                                    "default": 0
                                },
                                "extra_audio_layout_modes": {
                                    "title": "Extra Audio Layout Modes",
                                    "type": "integer",
                                    "enum": [
                                        0,
                                        1,
                                        2
                                    ],
                                    "titleMap": [
                                        {
                                            "value": 0,
                                            "name": "None"
                                        },
                                        {
                                            "value": 1,
                                            "name": "Mode 1"
                                        },
                                        {
                                            "value": 2,
                                            "name": "Modes 1 and 2"
                                        }
                                    ],
                                    "default": 0
                                },
                                "file_format_specification_identification_label": {
                                    "title": "Specification Identification",
                                    "type": "integer",
                                    "enum": [
                                        0,
                                        1,
                                        2,
                                        3,
                                        4,
                                        5
                                    ],
                                    "titleMap": [
                                        {
                                            "value": 0,
                                            "name": "None"
                                        },
                                        {
                                            "value": 1,
                                            "name": "Blocks_FF_1"
                                        },
                                        {
                                            "value": 2,
                                            "name": "Blocks_FF_2"
                                        },
                                        {
                                            "value": 3,
                                            "name": "Blocks_FF_5_WIP"
                                        },
                                        {
                                            "value": 4,
                                            "name": "Blocks_FF_6_WIP"
                                        },
                                        {
                                            "value": 5,
                                            "name": "Blocks_FF_11_WIP"
                                        }
                                    ],
                                    "default": 0
                                },
                                "picture_essence_constraints": {
                                    "title": "Picture Essence Constraints",
                                    "type": "integer",
                                    "enum": [
                                        0,
                                        1,
                                        5
                                    ],
                                    "titleMap": [
                                        {
                                            "value": 0,
                                            "name": "None"
                                        },
                                        {
                                            "value": 1,
                                            "name": "X1 (AVC)"
                                        },
                                        {
                                            "value": 5,
                                            "name": "X9 (AVC)"
                                        }
                                    ],
                                    "default": 0
                                }
                            },
                            "allOf": [
                                {
                                    "if": {
                                        "properties": {
                                            "enable": {
                                                "const": true
                                            }
                                        }
                                    },
                                    "then": {
                                        "required": [
                                            "rules",
                                            "embedded_xml_documents",
                                            "extra_audio_layout_modes",
                                            "file_format_specification_identification_label",
                                            "picture_essence_constraints"
                                        ]
                                    }
                                }
                            ]
                        },
                        "operational_pattern": {
                            "type": "object",
                            "required": [
                                "enable"
                            ],
                            "properties": {
                                "enable": {
                                    "title": "Operational Pattern",
                                    "desciption": "Scan every Operational Pattern (in every partition pack and in the preface of any header metadata) to ensure that it is identical in every location, and that it matches the given constraints",
                                    "type": "boolean",
                                    "default": false
                                },
                                "generalized": {
                                    "title": "Generalized",
                                    "type": "array",
                                    "items": {
                                        "type": "string",
                                        "enum": [
                                            "Op1a",
                                            "Op1b",
                                            "Op1c",
                                            "Op2a",
                                            "Op2b",
                                            "Op2c",
                                            "Op3a",
                                            "Op3b",
                                            "Op3c"
                                        ]
                                    }
                                },
                                "essence_reference": {
                                    "$ref": "#/definitions/bool_optional",
                                    "titleMap": [
                                        {
                                            "value": 0,
                                            "name": "Don't Test"
                                        },
                                        {
                                            "value": 1,
                                            "name": "External"
                                        },
                                        {
                                            "value": 2,
                                            "name": "Internal"
                                        }
                                    ],
                                    "default": 0
                                },
                                "essence_streaming": {
                                    "$ref": "#/definitions/bool_optional",
                                    "titleMap": [
                                        {
                                            "value": 0,
                                            "name": "Don't Test"
                                        },
                                        {
                                            "value": 1,
                                            "name": "Non-Streamable"
                                        },
                                        {
                                            "value": 2,
                                            "name": "Streamable"
                                        }
                                    ],
                                    "default": 0
                                },
                                "essence_containers": {
                                    "$ref": "#/definitions/bool_optional",
                                    "titleMap": [
                                        {
                                            "value": 0,
                                            "name": "Don't Test"
                                        },
                                        {
                                            "value": 1,
                                            "name": "Multi-track"
                                        },
                                        {
                                            "value": 2,
                                            "name": "Uni-track"
                                        }
                                    ],
                                    "default": 0
                                },
                                "specialized": {
                                    "type": "boolean",
                                    "title": "OP-Atom",
                                    "default": false
                                },
                                "material_package": {
                                    "$ref": "#/definitions/bool_optional",
                                    "titleMap": [
                                        {
                                            "value": 0,
                                            "name": "Don't Test"
                                        },
                                        {
                                            "value": 1,
                                            "name": "Multi-source"
                                        },
                                        {
                                            "value": 2,
                                            "name": "Single-source"
                                        }
                                    ],
                                    "default": 0
                                },
                                "essence_tracks": {
                                    "$ref": "#/definitions/bool_optional",
                                    "titleMap": [
                                        {
                                            "value": 0,
                                            "name": "Don't Test"
                                        },
                                        {
                                            "value": 1,
                                            "name": "Multi-essence"
                                        },
                                        {
                                            "value": 2,
                                            "name": "Single-essence"
                                        }
                                    ],
                                    "default": 0
                                }
                            },
                            "allOf": [
                                {
                                    "if": {
                                        "properties": {
                                            "enable": {
                                                "const": true
                                            }
                                        }
                                    },
                                    "then": {
                                        "required": [
                                            "essence_reference",
                                            "essence_streaming",
                                            "essence_containers",
                                            "specialized",
                                            "material_package",
                                            "essence_tracks"
                                        ]
                                    }
                                }
                            ]
                        },
                        "version": {
                            "type": "object",
                            "required": [
                                "enable"
                            ],
                            "properties": {
                                "enable": {
                                    "title": "Version Test",
                                    "description": "Check for a specific MXF version. All versions within a file (inside each Preface and Partition Pack) are tested",
                                    "type": "boolean",
                                    "default": false
                                },
                                "mxf_version": {
                                    "title": "MXF Version",
                                    "type": "integer",
                                    "enum": [
                                        0,
                                        1
                                    ],
                                    "titleMap": [
                                        {
                                            "value": 0,
                                            "name": "SMPTE 377 2004"
                                        },
                                        {
                                            "value": 1,
                                            "name": "SMPTE 377 2011"
                                        }
                                    ],
                                    "default": 0
                                }
                            },
                            "allOf": [
                                {
                                    "if": {
                                        "properties": {
                                            "enable": {
                                                "const": true
                                            }
                                        }
                                    },
                                    "then": {
                                        "required": [
                                            "mxf_version"
                                        ]
                                    }
                                }
                            ]
                        },
                        "kagsize": {
                            "type": "object",
                            "required": [
                                "enable"
                            ],
                            "properties": {
                                "enable": {
                                    "title": "KAG Size Test",
                                    "description": "Ensure that the file offset of every partition pack matches the stated alignment",
                                    "type": "boolean",
                                    "default": false
                                },
                                "size": {
                                    "title": "KAG Size",
                                    "type": "integer",
                                    "minimum": 0,
                                    "default": 0,
                                    "suffix": "bytes"
                                }
                            },
                            "allOf": [
                                {
                                    "if": {
                                        "properties": {
                                            "enable": {
                                                "const": true
                                            }
                                        }
                                    },
                                    "then": {
                                        "required": [
                                            "size"
                                        ]
                                    }
                                }
                            ]
                        },
                        "runin": {
                            "type": "object",
                            "required": [
                                "enable"
                            ],
                            "properties": {
                                "enable": {
                                    "title": "Run-In Test",
                                    "description": "Ensure that any run-in does not exceed a given length. It is most often used with a value of 0 to prohibit any run-in",
                                    "type": "boolean",
                                    "default": false
                                },
                                "max_bytes": {
                                    "type": "integer",
                                    "minimum": 0,
                                    "default": 0,
                                    "suffix": "bytes"
                                }
                            },
                            "allOf": [
                                {
                                    "if": {
                                        "properties": {
                                            "enable": {
                                                "const": true
                                            }
                                        }
                                    },
                                    "then": {
                                        "required": [
                                            "max_bytes"
                                        ]
                                    }
                                }
                            ]
                        },
                        "essence_wrapping": {
                            "type": "object",
                            "required": [
                                "enable"
                            ],
                            "properties": {
                                "enable": {
                                    "title": "Essence Wrapping",
                                    "description": "Ensure that any essence is either clip-wrapped or frame-wrapped. It looks at the Essence Container labels in every partition pack",
                                    "type": "boolean",
                                    "default": false
                                },
                                "type": {
                                    "title": "Wrapping Type",
                                    "type": "integer",
                                    "enum": [
                                        0,
                                        1
                                    ],
                                    "titleMap": [
                                        {
                                            "value": 0,
                                            "name": "Clip Wrapped"
                                        },
                                        {
                                            "value": 1,
                                            "name": "Frame Wrapped"
                                        }
                                    ],
                                    "default": 0
                                }
                            },
                            "allOf": [
                                {
                                    "if": {
                                        "properties": {
                                            "enable": {
                                                "const": true
                                            }
                                        }
                                    },
                                    "then": {
                                        "required": [
                                            "type"
                                        ]
                                    }
                                }
                            ]
                        },
                        "source_package_timecode": {
                            "type": "object",
                            "required": [
                                "enable"
                            ],
                            "properties": {
                                "enable": {
                                    "title": "Source Package Timecode Test",
                                    "description": "Ensure that there is only one timecode track in the File Source Package",
                                    "type": "boolean",
                                    "default": false
                                },
                                "test": {
                                    "title": "Timecode Track Test",
                                    "$ref": "#/definitions/timecode_track_test"
                                }
                            },
                            "if": {
                                "properties": {
                                    "enable": {
                                        "const": true
                                    }
                                }
                            },
                            "then": {
                                "required": [
                                    "test"
                                ]
                            }
                        },
                        "material_package_timecode": {
                            "type": "object",
                            "required": [
                                "enable"
                            ],
                            "properties": {
                                "enable": {
                                    "title": "Material Package Timecode Test",
                                    "description": "Ensures that there is only one timecode track in the Material Package",
                                    "type": "boolean",
                                    "default": false
                                },
                                "test": {
                                    "title": "Timecode Track Test",
                                    "$ref": "#/definitions/timecode_track_test"
                                }
                            },
                            "if": {
                                "properties": {
                                    "enable": {
                                        "const": true
                                    }
                                }
                            },
                            "then": {
                                "required": [
                                    "test"
                                ]
                            }
                        },
                        "sdti_timecode_continuity": {
                            "type": "object",
                            "required": [
                                "enable"
                            ],
                            "properties": {
                                "enable": {
                                    "title": "SDTI Timecode Continuity Test",
                                    "description": "Inspect the SDTI timestamp of every MXF Content Package and ensure that the timestamps are continuous. This test should only be enabled for MXF files conforming to the SDTI Content Package Format (see SMPTE 326M and 331M)",
                                    "type": "boolean",
                                    "default": false
                                }
                            }
                        },
                        "index_table": {
                            "type": "object",
                            "required": [
                                "enable"
                            ],
                            "properties": {
                                "enable": {
                                    "title": "Index Table Test",
                                    "description": "Check each index table segment in isolation",
                                    "type": "boolean",
                                    "default": false
                                },
                                "edit_rate": {
                                    "title": "Edit Rate",
                                    "description": "Tests the numerator and denominator of the edit rate. This is typically a frame rate, e.g. 25 / 1 or 30000 / 1001",
                                    "suffix": "Hz",
                                    "$ref": "#/definitions/rational"
                                },
                                "duration": {
                                    "title": "Index Duration",
                                    "description": "Tests the duration of the index table segment, in edit rate units.  0 is a valid duration with a special meaning for constant sized edit units",
                                    "suffix": "edit rate units",
                                    "$ref": "#/definitions/minmax"
                                },
                                "editunit_bytecount": {
                                    "title": "Edit Unit Bytecount",
                                    "description": "Tests the value of the Edit Unit Byte count field. 0 is a valid byte count, meaning that each edit unit is individually indexed",
                                    "$ref": "#/definitions/minmax"
                                },
                                "editunit_bytecount_constant": {
                                    "title": "Edit Unit Bytecount Is Constant",
                                    "description": "Ensure that only a single value is ever used",
                                    "type": "boolean"
                                },
                                "slicecount": {
                                    "title": "Slice Count",
                                    "description": "Number of slices in each index entry, minus one",
                                    "type": "integer"
                                },
                                "single_index_location": {
                                    "title": "Single Index Location",
                                    "description": "Flags are described in Amendment 2:2012 to SMPTE ST 377M",
                                    "$ref": "#/definitions/bool_optional",
                                    "titleMap": [
                                        {
                                            "value": 0,
                                            "name": "Don't Test"
                                        },
                                        {
                                            "value": 1,
                                            "name": "False"
                                        },
                                        {
                                            "value": 2,
                                            "name": "True"
                                        }
                                    ],
                                    "default": 0
                                },
                                "single_essence_location": {
                                    "title": "Single Essence Location",
                                    "$ref": "#/definitions/bool_optional",
                                    "titleMap": [
                                        {
                                            "value": 0,
                                            "name": "Don't Test"
                                        },
                                        {
                                            "value": 1,
                                            "name": "False"
                                        },
                                        {
                                            "value": 2,
                                            "name": "True"
                                        }
                                    ],
                                    "default": 0
                                },
                                "forward_index_direction": {
                                    "title": "Forward Index Direction",
                                    "$ref": "#/definitions/bool_optional",
                                    "titleMap": [
                                        {
                                            "value": 0,
                                            "name": "Don't Test"
                                        },
                                        {
                                            "value": 1,
                                            "name": "False"
                                        },
                                        {
                                            "value": 2,
                                            "name": "True"
                                        }
                                    ],
                                    "default": 0
                                },
                                "index_entry_array": {
                                    "title": "Index Entry Array",
                                    "$ref": "#/definitions/bool_optional",
                                    "titleMap": [
                                        {
                                            "value": 0,
                                            "name": "Don't Test"
                                        },
                                        {
                                            "value": 1,
                                            "name": "Absent"
                                        },
                                        {
                                            "value": 2,
                                            "name": "Present"
                                        }
                                    ],
                                    "default": 0
                                }
                            },
                            "allOf": [
                                {
                                    "if": {
                                        "properties": {
                                            "enable": {
                                                "const": true
                                            }
                                        }
                                    },
                                    "then": {
                                        "required": [
                                            "edit_rate",
                                            "duration",
                                            "editunit_bytecount",
                                            "editunit_bytecount_constant",
                                            "slicecount",
                                            "single_index_location",
                                            "single_essence_location",
                                            "forward_index_direction",
                                            "index_entry_array"
                                        ]
                                    }
                                }
                            ]
                        },
                        "index_table_location": {
                            "type": "object",
                            "required": [
                                "enable"
                            ],
                            "properties": {
                                "enable": {
                                    "title": "Index Table Location",
                                    "description": "Restrict the places in the file where index table segments may appear",
                                    "type": "boolean",
                                    "default": false
                                },
                                "test": {
                                    "title": "Location Test",
                                    "$ref": "#/definitions/location_test"
                                }
                            },
                            "allOf": [
                                {
                                    "if": {
                                        "properties": {
                                            "enable": {
                                                "const": true
                                            }
                                        }
                                    },
                                    "then": {
                                        "required": [
                                            "test"
                                        ]
                                    }
                                }
                            ]
                        },
                        "header_partition_status": {
                            "type": "object",
                            "properties": {
                                "enable": {
                                    "title": "Header Partition Status",
                                    "description": "Ensure that the header partition is present and is restricted to a given combination of open/closed and complete/incomplete",
                                    "type": "boolean",
                                    "default": false
                                },
                                "test": {
                                    "title": "Partition Status Test",
                                    "$ref": "#/definitions/partition_status_test"
                                }
                            },
                            "allOf": [
                                {
                                    "if": {
                                        "properties": {
                                            "enable": {
                                                "const": true
                                            }
                                        }
                                    },
                                    "then": {
                                        "required": [
                                            "test"
                                        ]
                                    }
                                }
                            ]
                        },
                        "header_fill": {
                            "type": "object",
                            "required": [
                                "enable"
                            ],
                            "properties": {
                                "enable": {
                                    "title": "Header Fill Test",
                                    "description": "Check for a KLV fill item of at least the specified length, following the header metadata",
                                    "type": "boolean",
                                    "default": false
                                },
                                "bytes": {
                                    "suffix": "bytes Of KLV Fill after Header Metadata",
                                    "type": "integer",
                                    "minimum": 0,
                                    "default": 0
                                }
                            },
                            "allOf": [
                                {
                                    "if": {
                                        "properties": {
                                            "enable": {
                                                "const": true
                                            }
                                        }
                                    },
                                    "then": {
                                        "required": [
                                            "bytes"
                                        ]
                                    }
                                }
                            ]
                        },
                        "header_metadata": {
                            "type": "object",
                            "required": [
                                "enable"
                            ],
                            "properties": {
                                "enable": {
                                    "title": "Header Metadata Size",
                                    "description": "Check the value of HeaderByteCount in the header partition",
                                    "type": "boolean",
                                    "default": false
                                },
                                "bytes": {
                                    "suffix": "bytes Of Header Metadata including KLV Fill",
                                    "type": "integer",
                                    "minimum": 0,
                                    "default": 0
                                }
                            },
                            "allOf": [
                                {
                                    "if": {
                                        "properties": {
                                            "enable": {
                                                "const": true
                                            }
                                        }
                                    },
                                    "then": {
                                        "required": [
                                            "bytes"
                                        ]
                                    }
                                }
                            ]
                        },
                        "body_partition_status": {
                            "type": "object",
                            "required": [
                                "enable"
                            ],
                            "properties": {
                                "enable": {
                                    "title": "Body Partition Status",
                                    "description": "Ensure that the body partition is restricted to a given combination of open/closed and complete/incomplete",
                                    "type": "boolean",
                                    "default": false
                                },
                                "test": {
                                    "title": "Partition Status Test",
                                    "$ref": "#/definitions/partition_status_test"
                                }
                            },
                            "allOf": [
                                {
                                    "if": {
                                        "properties": {
                                            "enable": {
                                                "const": true
                                            }
                                        }
                                    },
                                    "then": {
                                        "required": [
                                            "test"
                                        ]
                                    }
                                }
                            ]
                        },
                        "body_partition_count": {
                            "type": "object",
                            "required": [
                                "enable"
                            ],
                            "properties": {
                                "enable": {
                                    "title": "Body Partition Count",
                                    "description": "Enforce a minimum or maximum number of body partitions in the file",
                                    "type": "boolean",
                                    "default": false
                                },
                                "test": {
                                    "title": "Min Max Test",
                                    "$ref": "#/definitions/minmax"
                                }
                            },
                            "allOf": [
                                {
                                    "if": {
                                        "properties": {
                                            "enable": {
                                                "const": true
                                            }
                                        }
                                    },
                                    "then": {
                                        "required": [
                                            "test"
                                        ]
                                    }
                                }
                            ]
                        },
                        "body_partition_duration": {
                            "type": "object",
                            "required": [
                                "enable"
                            ],
                            "properties": {
                                "enable": {
                                    "title": "Body Partition Duration",
                                    "description": "Scan each body partition to ensure that its duration (measured in edit units) is within a given range",
                                    "type": "boolean",
                                    "default": false
                                },
                                "test": {
                                    "title": "Min Max Test",
                                    "$ref": "#/definitions/minmax"
                                }
                            },
                            "allOf": [
                                {
                                    "if": {
                                        "properties": {
                                            "enable": {
                                                "const": true
                                            }
                                        }
                                    },
                                    "then": {
                                        "required": [
                                            "test"
                                        ]
                                    }
                                }
                            ]
                        },
                        "body_partition_length": {
                            "type": "object",
                            "required": [
                                "enable"
                            ],
                            "properties": {
                                "enable": {
                                    "title": "Body Partition Length",
                                    "description": "Scan each body partition to ensure that its length (measured in bytes) is within a given range",
                                    "type": "boolean",
                                    "default": false
                                },
                                "test": {
                                    "title": "Min Max Test",
                                    "$ref": "#/definitions/minmax"
                                }
                            },
                            "allOf": [
                                {
                                    "if": {
                                        "properties": {
                                            "enable": {
                                                "const": true
                                            }
                                        }
                                    },
                                    "then": {
                                        "required": [
                                            "test"
                                        ]
                                    }
                                }
                            ]
                        },
                        "footer_partition_status": {
                            "type": "object",
                            "required": [
                                "enable"
                            ],
                            "properties": {
                                "enable": {
                                    "title": "Footer Partition Status",
                                    "description": "Ensure that the footer partition is restricted to a given combination of open/closed and complete/incomplete",
                                    "type": "boolean",
                                    "default": false
                                },
                                "test": {
                                    "title": "Partition Status Test",
                                    "$ref": "#/definitions/partition_status_test"
                                }
                            },
                            "allOf": [
                                {
                                    "if": {
                                        "properties": {
                                            "enable": {
                                                "const": true
                                            }
                                        }
                                    },
                                    "then": {
                                        "required": [
                                            "test"
                                        ]
                                    }
                                }
                            ]
                        },
                        "rip_presence": {
                            "type": "object",
                            "required": [
                                "enable"
                            ],
                            "properties": {
                                "enable": {
                                    "title": "RIP Presence",
                                    "description": "Ensure a Random Index Pack is present at the end of the file",
                                    "type": "boolean",
                                    "default": false
                                }
                            }
                        },
                        "essence_location": {
                            "type": "object",
                            "required": [
                                "enable"
                            ],
                            "properties": {
                                "enable": {
                                    "title": "Essence Location",
                                    "description": "Restrict the places in the file where essence may appear",
                                    "type": "boolean",
                                    "default": false
                                },
                                "test": {
                                    "title": "Location Test",
                                    "$ref": "#/definitions/location_test"
                                }
                            },
                            "allOf": [
                                {
                                    "if": {
                                        "properties": {
                                            "enable": {
                                                "const": true
                                            }
                                        }
                                    },
                                    "then": {
                                        "required": [
                                            "test"
                                        ]
                                    }
                                }
                            ]
                        },
                        "essence_container_label": {
                            "type": "object",
                            "required": [
                                "enable"
                            ],
                            "properties": {
                                "enable": {
                                    "title": "Essence Container Label",
                                    "description": "Ensure that the given Picture Essence Container Label(s) appear in the Partition Pack and Preface Set (if any) of every Partition",
                                    "type": "boolean",
                                    "default": false
                                },
                                "predefined": {
                                    "title": "Predefined",
                                    "type": "string",
                                    "enum": [
                                        "06.0e.2b.34.04.01.01.0a.0d.01.03.01.02.10.60.01",
                                        "06.0e.2b.34.04.01.01.02.0d.01.03.01.02.04.60.01"
                                    ],
                                    "titleMap": [
                                        {
                                            "value": "06.0e.2b.34.04.01.01.0a.0d.01.03.01.02.10.60.01",
                                            "name": "GC AVC Byte Stream VideoStream-0 SID Frame-wrapped"
                                        },
                                        {
                                            "value": "06.0e.2b.34.04.01.01.02.0d.01.03.01.02.04.60.01",
                                            "name": "GC MPEG-ES VideoStream-0 SID Frame-wrapped"
                                        }
                                    ],
                                    "default": "06.0e.2b.34.04.01.01.0a.0d.01.03.01.02.10.60.01"
                                },
                                "usecustom": {
                                    "title": "Use Custom",
                                    "type": "boolean",
                                    "default": false
                                },
                                "custom": {
                                    "title": "e.g. 06.0e.2b.34.04.01.01.0a.0d.01.03.01.02.10.60.01",
                                    "description": "Custom labels may be specified using a dotted 16-hex-byte format (e.g. '06.0e.2b.34.04.01.01.02.0d.01.03.01.02.04.60.01'). Multiple allowable labels may be separated by commas, and any single hex digit may be given as 'x' as a wildcard",
                                    "type": "string"
                                }
                            },
                            "allOf": [
                                {
                                    "if": {
                                        "properties": {
                                            "enable": {
                                                "const": true
                                            }
                                        }
                                    },
                                    "then": {
                                        "required": [
                                            "predefined",
                                            "usecustom"
                                        ]
                                    }
                                },
                                {
                                    "if": {
                                        "properties": {
                                            "usecustom": {
                                                "const": true
                                            }
                                        }
                                    },
                                    "then": {
                                        "required": [
                                            "custom"
                                        ]
                                    }
                                }
                            ]
                        },
                        "element_key": {
                            "type": "object",
                            "required": [
                                "enable"
                            ],
                            "properties": {
                                "enable": {
                                    "title": "Element Key",
                                    "description": "Ensure that the Picture Element Keys (which wrap the stored essence) match the given value(s). Only the first content package is examined; this is not a continuous test throughout the whole file",
                                    "type": "boolean",
                                    "default": false
                                },
                                "predefined": {
                                    "title": "Predefined",
                                    "type": "string",
                                    "enum": [
                                        "06.0e.2b.34.01.02.01.01.0d.01.03.01.15.01.05.00"
                                    ],
                                    "titleMap": [
                                        {
                                            "value": "06.0e.2b.34.01.02.01.01.0d.01.03.01.15.01.05.00",
                                            "name": "GC SMPTE 381M MPEG Frame-wrapped"
                                        }
                                    ],
                                    "default": "06.0e.2b.34.01.02.01.01.0d.01.03.01.15.01.05.00"
                                },
                                "usecustom": {
                                    "title": "Use Custom",
                                    "type": "boolean",
                                    "default": false
                                },
                                "custom": {
                                    "title": "e.g. 06.0e.2b.34.01.02.01.01.0d.01.03.01.15.01.05.00",
                                    "description": "Custom keys may be specified using a dotted 16-hex-byte format (e.g. '06.0e.2b.34.01.02.01.01.0d.01.03.01.15.01.05.00'). Multiple allowable keys may be separated by commas, and any single hex digit may be given as 'x' as a wildcard",
                                    "type": "string"
                                }
                            },
                            "allOf": [
                                {
                                    "if": {
                                        "properties": {
                                            "enable": {
                                                "const": true
                                            }
                                        }
                                    },
                                    "then": {
                                        "required": [
                                            "predefined",
                                            "usecustom"
                                        ]
                                    }
                                },
                                {
                                    "if": {
                                        "properties": {
                                            "usecustom": {
                                                "const": true
                                            }
                                        }
                                    },
                                    "then": {
                                        "required": [
                                            "custom"
                                        ]
                                    }
                                }
                            ]
                        },
                        "picture_essence_coding": {
                            "type": "object",
                            "required": [
                                "enable"
                            ],
                            "properties": {
                                "enable": {
                                    "title": "Picture Essence Coding",
                                    "description": "Ensure that the picture essence coding label is one of the given value(s)",
                                    "type": "boolean",
                                    "default": false
                                },
                                "codings": {
                                    "title": "Codings",
                                    "type": "array",
                                    "items": {
                                        "type": "integer",
                                        "enum": [
                                            0,
                                            1,
                                            2,
                                            3,
                                            4,
                                            5,
                                            6,
                                            7,
                                            8,
                                            9,
                                            10,
                                            11,
                                            12,
                                            13,
                                            14,
                                            15,
                                            16,
                                            17,
                                            18,
                                            19,
                                            20,
                                            21,
                                            22
                                        ],
                                        "titleMap": [
                                            {
                                                "value": 0,
                                                "name": "AVCI-50-1080-60-I"
                                            },
                                            {
                                                "value": 1,
                                                "name": "AVCI-50-1080-50-I"
                                            },
                                            {
                                                "value": 2,
                                                "name": "AVCI-50-1080-30-P"
                                            },
                                            {
                                                "value": 3,
                                                "name": "AVCI-50-1080-25-P"
                                            },
                                            {
                                                "value": 4,
                                                "name": "AVCI-50-720-60-P"
                                            },
                                            {
                                                "value": 5,
                                                "name": "AVCI-50-720-50-P"
                                            },
                                            {
                                                "value": 6,
                                                "name": "AVCI-100-1080-60-I"
                                            },
                                            {
                                                "value": 7,
                                                "name": "AVCI-100-1080-50-I"
                                            },
                                            {
                                                "value": 8,
                                                "name": "AVCI-100-1080-30-P"
                                            },
                                            {
                                                "value": 9,
                                                "name": "AVCI-100-1080-25-P"
                                            },
                                            {
                                                "value": 10,
                                                "name": "AVCI-100-720-60-P"
                                            },
                                            {
                                                "value": 11,
                                                "name": "AVCI-100-720-50-P"
                                            },
                                            {
                                                "value": 12,
                                                "name": "AVC-HIGH-10-INTRA-UNCS"
                                            },
                                            {
                                                "value": 13,
                                                "name": "AVC-HIGH-422-INTRA-UNCS"
                                            },
                                            {
                                                "value": 14,
                                                "name": "MPEG2-MP-HL-LONGGOP"
                                            },
                                            {
                                                "value": 15,
                                                "name": "MPEG2-422P-HL-LONGGOP"
                                            },
                                            {
                                                "value": 16,
                                                "name": "MPEG2-MP-H14-LONGGOP"
                                            },
                                            {
                                                "value": 17,
                                                "name": "D10-50-625-50"
                                            },
                                            {
                                                "value": 18,
                                                "name": "D10-50-525-60"
                                            },
                                            {
                                                "value": 19,
                                                "name": "D10-40-625-50"
                                            },
                                            {
                                                "value": 20,
                                                "name": "D10-40-525-60"
                                            },
                                            {
                                                "value": 21,
                                                "name": "D10-30-625-50"
                                            },
                                            {
                                                "value": 22,
                                                "name": "D10-30-525-60"
                                            }
                                        ],
                                        "default": 0
                                    }
                                }
                            },
                            "allOf": [
                                {
                                    "if": {
                                        "properties": {
                                            "enable": {
                                                "const": true
                                            }
                                        }
                                    },
                                    "then": {
                                        "required": [
                                            "codings"
                                        ]
                                    }
                                }
                            ]
                        },
                        "field_dominance": {
                            "type": "object",
                            "required": [
                                "enable"
                            ],
                            "properties": {
                                "enable": {
                                    "title": "Field Dominance",
                                    "description": "Examine the FieldDominance item in the Generic Picture Essence Descriptor",
                                    "type": "boolean",
                                    "default": false
                                },
                                "firstfield": {
                                    "title": "First Field",
                                    "type": "integer",
                                    "enum": [
                                        0,
                                        1,
                                        2
                                    ],
                                    "titleMap": [
                                        {
                                            "value": 0,
                                            "name": "Field 1 First"
                                        },
                                        {
                                            "value": 1,
                                            "name": "Field 2 First"
                                        },
                                        {
                                            "value": 2,
                                            "name": "No Field Dominance Flag "
                                        }
                                    ],
                                    "default": 0
                                }
                            },
                            "allOf": [
                                {
                                    "if": {
                                        "properties": {
                                            "enable": {
                                                "const": true
                                            }
                                        }
                                    },
                                    "then": {
                                        "required": [
                                            "firstfield"
                                        ]
                                    }
                                }
                            ]
                        },
                        "signal_standard": {
                            "type": "object",
                            "required": [
                                "enable"
                            ],
                            "properties": {
                                "enable": {
                                    "title": "Signal Standard",
                                    "description": "Examine the Signal Standard item in the Generic Picture Essence Descriptor, indicating the source of the video essence",
                                    "type": "boolean",
                                    "default": false
                                },
                                "standard": {
                                    "title": "Standard",
                                    "type": "integer",
                                    "enum": [
                                        0,
                                        1,
                                        2,
                                        3,
                                        4,
                                        5,
                                        6,
                                        7
                                    ],
                                    "titleMap": [
                                        {
                                            "value": 0,
                                            "name": "0: No Specific Underlying Standard"
                                        },
                                        {
                                            "value": 1,
                                            "name": "1: ITU-R BT.601 and BT.656, SMPTE 125M"
                                        },
                                        {
                                            "value": 2,
                                            "name": "2: ITU-R BT.1358 and ITU-R BT.799-3, SMPTE 293M"
                                        },
                                        {
                                            "value": 3,
                                            "name": "3: SMPTE 347M (540 Mbps Mappings)"
                                        },
                                        {
                                            "value": 4,
                                            "name": "4: SMPTE 274M (1125 Line)"
                                        },
                                        {
                                            "value": 5,
                                            "name": "5: SMPTE 296M (750 Line Progressive)"
                                        },
                                        {
                                            "value": 6,
                                            "name": "6: SMPTE 349M (1485 Mbps Mappings)"
                                        },
                                        {
                                            "value": 7,
                                            "name": "7: SMPTE 428-1 DCDM"
                                        }
                                    ],
                                    "default": 0
                                }
                            },
                            "allOf": [
                                {
                                    "if": {
                                        "properties": {
                                            "enable": {
                                                "const": true
                                            }
                                        }
                                    },
                                    "then": {
                                        "required": [
                                            "standard"
                                        ]
                                    }
                                }
                            ]
                        },
                        "picture_offsets": {
                            "type": "object",
                            "required": [
                                "enable"
                            ],
                            "properties": {
                                "enable": {
                                    "title": "Picture Offsets",
                                    "description": "Examine several items in the Generic Picture Essence Descriptor which describe the geometrical relationship between the Stored Rectangle, the Sampled Rectangle and the Display Rectangle",
                                    "type": "boolean",
                                    "default": false
                                },
                                "storedftwo": {
                                    "title": "Stored F2",
                                    "type": "integer",
                                    "minimum": 0,
                                    "default": 0
                                },
                                "displayftwo": {
                                    "title": "Display F2",
                                    "type": "integer",
                                    "minimum": 0,
                                    "default": 0
                                },
                                "sampledx": {
                                    "title": "Sampled X",
                                    "type": "integer",
                                    "minimum": 0,
                                    "default": 0
                                },
                                "sampledy": {
                                    "title": "Sampled Y",
                                    "type": "integer",
                                    "minimum": 0,
                                    "default": 0
                                },
                                "displayx": {
                                    "title": "Display X",
                                    "type": "integer",
                                    "minimum": 0,
                                    "default": 0
                                },
                                "displayy": {
                                    "title": "Display Y",
                                    "type": "integer",
                                    "minimum": 0,
                                    "default": 0
                                },
                                "imagestart": {
                                    "title": "Image Start",
                                    "type": "integer",
                                    "minimum": 0,
                                    "default": 0,
                                    "suffix": "byte(s)"
                                },
                                "imageend": {
                                    "title": "Image End",
                                    "type": "integer",
                                    "minimum": 0,
                                    "default": 0,
                                    "suffix": "byte(s)"
                                }
                            },
                            "allOf": [
                                {
                                    "if": {
                                        "properties": {
                                            "enable": {
                                                "const": true
                                            }
                                        }
                                    },
                                    "then": {
                                        "required": [
                                            "storedftwo",
                                            "displayftwo",
                                            "sampledx",
                                            "sampledy",
                                            "displayx",
                                            "displayy",
                                            "imagestart",
                                            "imageend"
                                        ]
                                    }
                                }
                            ]
                        },
                        "active_format_descriptor": {
                            "type": "object",
                            "required": [
                                "enable"
                            ],
                            "properties": {
                                "enable": {
                                    "title": "Active Format Descriptor",
                                    "description": "Examine the AFD information byte, present in the Generic Picture Essence Descriptor and specified in SMPTE S2016-1. This is not the 4-bit AFD code, but the whole AFD information byte which also includes an Aspect Ratio (AR) bit",
                                    "type": "boolean",
                                    "default": false
                                },
                                "allowed_formats": {
                                    "title": "AFD Information Byte Values",
                                    "type": "string",
                                    "description": "A comma separated list can be provided for multiple values e.g. 4,36,68,76"
                                }
                            },
                            "allOf": [
                                {
                                    "if": {
                                        "properties": {
                                            "enable": {
                                                "const": true
                                            }
                                        }
                                    },
                                    "then": {
                                        "required": [
                                            "allowed_formats"
                                        ]
                                    }
                                }
                            ]
                        },
                        "colorsiting": {
                            "type": "object",
                            "required": [
                                "enable"
                            ],
                            "properties": {
                                "enable": {
                                    "title": "Color Siting",
                                    "description": "Check the Color Siting item of the CDCI Picture Essence Descriptor. This item describes the spatial relationship between the luma and chroma samples",
                                    "type": "boolean",
                                    "default": false
                                },
                                "colorsiting": {
                                    "title": "Color Siting",
                                    "type": "integer",
                                    "enum": [
                                        0,
                                        1,
                                        2,
                                        3,
                                        4,
                                        5,
                                        6,
                                        255
                                    ],
                                    "titleMap": [
                                        {
                                            "value": 0,
                                            "name": "CoSiting"
                                        },
                                        {
                                            "value": 1,
                                            "name": "HorizontalMidpoint"
                                        },
                                        {
                                            "value": 2,
                                            "name": "ThreeTap"
                                        },
                                        {
                                            "value": 3,
                                            "name": "Quincunx"
                                        },
                                        {
                                            "value": 4,
                                            "name": "Rec601"
                                        },
                                        {
                                            "value": 5,
                                            "name": "LineAlternating"
                                        },
                                        {
                                            "value": 6,
                                            "name": "VerticalMidpoint"
                                        },
                                        {
                                            "value": 255,
                                            "name": "Unknown"
                                        }
                                    ],
                                    "default": 0
                                }
                            },
                            "allOf": [
                                {
                                    "if": {
                                        "properties": {
                                            "enable": {
                                                "const": true
                                            }
                                        }
                                    },
                                    "then": {
                                        "required": [
                                            "colorsiting"
                                        ]
                                    }
                                }
                            ]
                        },
                        "padding_bits": {
                            "type": "object",
                            "required": [
                                "enable"
                            ],
                            "properties": {
                                "enable": {
                                    "title": "Padding Bits",
                                    "description": "Check the Padding Bits item in the CDCI Picture Essence Descriptor, which is the number of bits added to each component sample to pad it to its stored size",
                                    "type": "boolean",
                                    "default": false
                                },
                                "bits": {
                                    "title": "Padding Bits",
                                    "type": "integer",
                                    "minimum": 0,
                                    "default": 0,
                                    "suffix": "bits"
                                }
                            },
                            "allOf": [
                                {
                                    "if": {
                                        "properties": {
                                            "enable": {
                                                "const": true
                                            }
                                        }
                                    },
                                    "then": {
                                        "required": [
                                            "bits"
                                        ]
                                    }
                                }
                            ]
                        },
                        "color_range": {
                            "type": "object",
                            "required": [
                                "enable"
                            ],
                            "properties": {
                                "enable": {
                                    "title": "Color Range",
                                    "description": "Check the Color Range item in the CDCI Picture Essence Descriptor, which is the number of distinct values for color difference (chroma) samples",
                                    "type": "boolean",
                                    "default": false
                                },
                                "range": {
                                    "title": "Color Range",
                                    "type": "integer",
                                    "minimum": 0,
                                    "default": 0
                                }
                            },
                            "allOf": [
                                {
                                    "if": {
                                        "properties": {
                                            "enable": {
                                                "const": true
                                            }
                                        }
                                    },
                                    "then": {
                                        "required": [
                                            "range"
                                        ]
                                    }
                                }
                            ]
                        },
                        "subsampling": {
                            "type": "object",
                            "required": [
                                "enable"
                            ],
                            "properties": {
                                "enable": {
                                    "title": "Subsampling",
                                    "description": "Check the Horizontal and Vertical Subsampling items in the CDCI Picture Essence Descriptor",
                                    "type": "boolean",
                                    "default": false
                                },
                                "horizontal": {
                                    "title": "Horizontal",
                                    "type": "integer",
                                    "minimum": 0,
                                    "default": 0
                                },
                                "vertical": {
                                    "title": "Vertical",
                                    "type": "integer",
                                    "minimum": 0,
                                    "default": 0
                                }
                            },
                            "allOf": [
                                {
                                    "if": {
                                        "properties": {
                                            "enable": {
                                                "const": true
                                            }
                                        }
                                    },
                                    "then": {
                                        "required": [
                                            "horizontal",
                                            "vertical"
                                        ]
                                    }
                                }
                            ]
                        },
                        "component_depth": {
                            "type": "object",
                            "required": [
                                "enable"
                            ],
                            "properties": {
                                "enable": {
                                    "title": "Component Depth",
                                    "description": "Check the Component Depth item in the CDCI Picture Essence Descriptor",
                                    "type": "boolean",
                                    "default": false
                                },
                                "depth": {
                                    "title": "Component Depth",
                                    "type": "integer",
                                    "minimum": 0,
                                    "default": 0,
                                    "suffix": "bits per sample"
                                }
                            },
                            "allOf": [
                                {
                                    "if": {
                                        "properties": {
                                            "enable": {
                                                "const": true
                                            }
                                        }
                                    },
                                    "then": {
                                        "required": [
                                            "depth"
                                        ]
                                    }
                                }
                            ]
                        },
                        "stored_frame_size": {
                            "type": "object",
                            "required": [
                                "enable"
                            ],
                            "properties": {
                                "enable": {
                                    "title": "Stored Frame Size",
                                    "description": "Restrict the values of 'Stored Width' and 'Stored Height' in the picture essence descriptor",
                                    "type": "boolean",
                                    "default": false
                                },
                                "frame": {
                                    "title": "Frame Size",
                                    "suffix": "(wxh)",
                                    "$ref": "#/definitions/pic_frame_size"
                                }
                            },
                            "allOf": [
                                {
                                    "if": {
                                        "properties": {
                                            "enable": {
                                                "const": true
                                            }
                                        }
                                    },
                                    "then": {
                                        "required": [
                                            "frame"
                                        ]
                                    }
                                }
                            ]
                        },
                        "sampled_frame_size": {
                            "type": "object",
                            "required": [
                                "enable"
                            ],
                            "properties": {
                                "enable": {
                                    "title": "Sampled Frame Size",
                                    "description": "Restrict the values of 'Sampled Width' and 'Sampled Height' in the picture essence descriptor",
                                    "type": "boolean",
                                    "default": false
                                },
                                "frame": {
                                    "title": "Frame Size",
                                    "suffix": "(wxh)",
                                    "$ref": "#/definitions/pic_frame_size"
                                }
                            },
                            "allOf": [
                                {
                                    "if": {
                                        "properties": {
                                            "enable": {
                                                "const": true
                                            }
                                        }
                                    },
                                    "then": {
                                        "required": [
                                            "frame"
                                        ]
                                    }
                                }
                            ]
                        },
                        "display_frame_size": {
                            "type": "object",
                            "required": [
                                "enable"
                            ],
                            "properties": {
                                "enable": {
                                    "title": "Display Frame Size",
                                    "description": "Restrict the values of 'Display Width' and 'Display Height' in the picture essence descriptor",
                                    "type": "boolean",
                                    "default": false
                                },
                                "frame": {
                                    "title": "Frame Size",
                                    "suffix": "(wxh)",
                                    "$ref": "#/definitions/pic_frame_size"
                                }
                            },
                            "allOf": [
                                {
                                    "if": {
                                        "properties": {
                                            "enable": {
                                                "const": true
                                            }
                                        }
                                    },
                                    "then": {
                                        "required": [
                                            "frame"
                                        ]
                                    }
                                }
                            ]
                        },
                        "aspect_ratio": {
                            "type": "object",
                            "required": [
                                "enable"
                            ],
                            "properties": {
                                "enable": {
                                    "title": "Aspect Ratio",
                                    "description": "Ensure that the given aspect ratio is present in the picture essence descriptor",
                                    "type": "boolean",
                                    "default": false
                                },
                                "ratio": {
                                    "title": "Ratio",
                                    "$ref": "#/definitions/rational"
                                }
                            },
                            "allOf": [
                                {
                                    "if": {
                                        "properties": {
                                            "enable": {
                                                "const": true
                                            }
                                        }
                                    },
                                    "then": {
                                        "required": [
                                            "ratio"
                                        ]
                                    }
                                }
                            ]
                        },
                        "edit_rate": {
                            "type": "object",
                            "required": [
                                "enable"
                            ],
                            "properties": {
                                "enable": {
                                    "title": "Edit Rate",
                                    "description": "Ensure that the given edit rate is present in the picture essence descriptor",
                                    "type": "boolean",
                                    "default": false
                                },
                                "ratio": {
                                    "title": "Ratio",
                                    "$ref": "#/definitions/rational"
                                }
                            },
                            "allOf": [
                                {
                                    "if": {
                                        "properties": {
                                            "enable": {
                                                "const": true
                                            }
                                        }
                                    },
                                    "then": {
                                        "required": [
                                            "ratio"
                                        ]
                                    }
                                }
                            ]
                        },
                        "reference_levels": {
                            "type": "object",
                            "required": [
                                "enable"
                            ],
                            "properties": {
                                "enable": {
                                    "title": "Reference Levels",
                                    "description": "Check for specific black and white reference levels in the picture essence descriptor (see SMPTE 377M G.2.32 and G.2.33 respectively)",
                                    "type": "boolean",
                                    "default": false
                                },
                                "black": {
                                    "title": "Black",
                                    "type": "integer",
                                    "minimum": 0,
                                    "default": 0
                                },
                                "white": {
                                    "title": "White",
                                    "type": "integer",
                                    "minimum": 0,
                                    "default": 0
                                }
                            },
                            "allOf": [
                                {
                                    "if": {
                                        "properties": {
                                            "enable": {
                                                "const": true
                                            }
                                        }
                                    },
                                    "then": {
                                        "required": [
                                            "black",
                                            "white"
                                        ]
                                    }
                                }
                            ]
                        },
                        "video_line_map": {
                            "type": "object",
                            "required": [
                                "enable"
                            ],
                            "properties": {
                                "enable": {
                                    "title": "Video Line Map",
                                    "description": "Check for a given comma-separated list of Video Line Map entries (e.g. '16,278') in the picture essence descriptor. The order of the entries is important",
                                    "type": "boolean",
                                    "default": false
                                },
                                "linemaps": {
                                    "title": "Line Maps",
                                    "type": "string",
                                    "description": "comma-separated e.g. 21, 584"
                                }
                            },
                            "allOf": [
                                {
                                    "if": {
                                        "properties": {
                                            "enable": {
                                                "const": true
                                            }
                                        }
                                    },
                                    "then": {
                                        "required": [
                                            "linemaps"
                                        ]
                                    }
                                }
                            ]
                        },
                        "video_descriptor": {
                            "type": "object",
                            "required": [
                                "enable"
                            ],
                            "properties": {
                                "enable": {
                                    "title": "Video Descriptor",
                                    "description": "Ensure that the Picture Essence Descriptor is an MPEG-2 Video Descriptor as specified in SMPTE 381M",
                                    "type": "boolean",
                                    "default": false
                                },
                                "type": {
                                    "title": "Descriptor Type",
                                    "type": "integer",
                                    "enum": [
                                        0
                                    ],
                                    "titleMap": [
                                        {
                                            "value": 0,
                                            "name": "MPEG"
                                        }
                                    ],
                                    "default": 0
                                }
                            },
                            "allOf": [
                                {
                                    "if": {
                                        "properties": {
                                            "enable": {
                                                "const": true
                                            }
                                        }
                                    },
                                    "then": {
                                        "required": [
                                            "type"
                                        ]
                                    }
                                }
                            ]
                        },
                        "mpeg_bit_rate": {
                            "type": "object",
                            "properties": {
                                "enable": {
                                    "title": "MPEG Bit Rate",
                                    "description": "Check the value of the BitRate item within the MPEG-2 Video Descriptor",
                                    "type": "boolean",
                                    "default": false
                                },
                                "test": {
                                    "title": "Min Max Test",
                                    "$ref": "#/definitions/minmax_bits"
                                }
                            }
                        },
                        "mpeg_identical_gop": {
                            "type": "object",
                            "properties": {
                                "enable": {
                                    "title": "MPEG Identical GOP Indicator",
                                    "description": "Check the value of the IdenticalGOP item within the MPEG-2 Video Descriptor",
                                    "type": "boolean",
                                    "default": false
                                },
                                "test": {
                                    "title": "Extended Bool Test",
                                    "$ref": "#/definitions/bool_extended",
                                    "titleMap": [
                                        {
                                            "value": 0,
                                            "name": "1"
                                        },
                                        {
                                            "value": 1,
                                            "name": "0"
                                        },
                                        {
                                            "value": 2,
                                            "name": "Either"
                                        },
                                        {
                                            "value": 3,
                                            "name": "Not Present"
                                        }
                                    ]
                                }
                            }
                        },
                        "mpeg_max_gop": {
                            "type": "object",
                            "properties": {
                                "enable": {
                                    "title": "MPEG Max GOP Size",
                                    "description": "Check the value of the MaxGOP item within the MPEG-2 Video Descriptor",
                                    "type": "boolean",
                                    "default": false
                                },
                                "test": {
                                    "title": "Min Max Test",
                                    "suffix": "frames",
                                    "$ref": "#/definitions/minmax"
                                }
                            }
                        },
                        "mpeg_max_bpicture_count": {
                            "type": "object",
                            "properties": {
                                "enable": {
                                    "title": "MPEG Max B Picture Count",
                                    "description": "Check the value of the BPictureCount item within the MPEG-2 Video Descriptor",
                                    "type": "boolean",
                                    "default": false
                                },
                                "test": {
                                    "title": "Min Max Test",
                                    "suffix": "B pictures",
                                    "$ref": "#/definitions/minmax"
                                }
                            }
                        },
                        "mpeg_constant_bpicture_flag": {
                            "type": "object",
                            "properties": {
                                "enable": {
                                    "title": "MPEG Constant B Picture Flag",
                                    "description": "Check the value of the ConstantBframes item within the MPEG-2 Video Descriptor",
                                    "type": "boolean",
                                    "default": false
                                },
                                "test": {
                                    "title": "Extended Bool Test",
                                    "$ref": "#/definitions/bool_extended",
                                    "titleMap": [
                                        {
                                            "value": 0,
                                            "name": "1"
                                        },
                                        {
                                            "value": 1,
                                            "name": "0"
                                        },
                                        {
                                            "value": 2,
                                            "name": "Either"
                                        },
                                        {
                                            "value": 3,
                                            "name": "Not Present"
                                        }
                                    ]
                                }
                            }
                        },
                        "mpeg_coded_content": {
                            "type": "object",
                            "properties": {
                                "enable": {
                                    "title": "MPEG Coded Content Kind",
                                    "description": "Check the value of the CodedContentType item within the MPEG-2 Video Descriptor, indicating whether the content is interlaced, progressive or mixed",
                                    "type": "boolean",
                                    "default": false
                                },
                                "kind": {
                                    "title": "Coded Kind",
                                    "type": "integer",
                                    "enum": [
                                        0,
                                        1,
                                        2,
                                        3
                                    ],
                                    "titleMap": [
                                        {
                                            "value": 0,
                                            "name": "Unknown"
                                        },
                                        {
                                            "value": 1,
                                            "name": "Progressive"
                                        },
                                        {
                                            "value": 2,
                                            "name": "Interlaced"
                                        },
                                        {
                                            "value": 3,
                                            "name": "Mixed"
                                        }
                                    ],
                                    "default": 0
                                }
                            }
                        },
                        "video_subdescriptor": {
                            "type": "object",
                            "properties": {
                                "enable": {
                                    "title": "Video Subdescriptor",
                                    "description": "Check for the presence of an AVC SubDescriptor within the Picture Essence Descriptor",
                                    "type": "boolean",
                                    "default": false
                                },
                                "type": {
                                    "title": "Subdescriptor Type",
                                    "type": "integer",
                                    "enum": [
                                        0
                                    ],
                                    "titleMap": [
                                        {
                                            "value": 0,
                                            "name": "AVC"
                                        }
                                    ],
                                    "default": 0
                                }
                            }
                        },
                        "avc_decoding_delay": {
                            "type": "object",
                            "properties": {
                                "enable": {
                                    "title": "AVC Decoding Delay",
                                    "description": "Check the value of the Decoding Delay item within the AVC Video SubDescriptor",
                                    "type": "boolean",
                                    "default": false
                                },
                                "delay": {
                                    "title": "Decoding Delay",
                                    "type": "integer",
                                    "default": 0
                                }
                            }
                        },
                        "avc_coded_content": {
                            "type": "object",
                            "properties": {
                                "enable": {
                                    "title": "AVC Coded Content Kind",
                                    "description": "Check the value of the Coded Content Kind item within the AVC Video SubDescriptor",
                                    "type": "boolean",
                                    "default": false
                                },
                                "kind": {
                                    "title": "Coded Kind",
                                    "type": "integer",
                                    "enum": [
                                        0,
                                        1,
                                        2,
                                        3,
                                        4,
                                        5
                                    ],
                                    "titleMap": [
                                        {
                                            "value": 0,
                                            "name": "Unknown"
                                        },
                                        {
                                            "value": 1,
                                            "name": "Progressive Frame"
                                        },
                                        {
                                            "value": 2,
                                            "name": "Interlaced Field"
                                        },
                                        {
                                            "value": 3,
                                            "name": "Interlaced Frame"
                                        },
                                        {
                                            "value": 4,
                                            "name": "Interlaced Field and Frame"
                                        },
                                        {
                                            "value": 5,
                                            "name": "Any"
                                        }
                                    ],
                                    "default": 0
                                }
                            }
                        },
                        "avc_identical_gop": {
                            "type": "object",
                            "properties": {
                                "enable": {
                                    "title": "AVC Identical GOP Indicator",
                                    "description": "Check the value of the AVC Identical GOP Indicator item within the AVC Video SubDescriptor",
                                    "type": "boolean",
                                    "default": false
                                },
                                "value": {
                                    "title": "Flag Value",
                                    "type": "boolean"
                                }
                            }
                        },
                        "avc_max_gop": {
                            "type": "object",
                            "properties": {
                                "enable": {
                                    "title": "AVC Max GOP Size",
                                    "description": "Check the value of the Maximum B Picture Count item within the AVC Video SubDescriptor. This is the maximum spacing of IDR frames in the sequence",
                                    "type": "boolean",
                                    "default": false
                                },
                                "max": {
                                    "title": "Maximum GOP",
                                    "type": "integer"
                                }
                            }
                        },
                        "avc_max_bpicture_count": {
                            "type": "object",
                            "properties": {
                                "enable": {
                                    "title": "AVC Max B Picture Count",
                                    "description": "Check the value of the Maximum B Picture Count item within the AVC Video SubDescriptor. This is the maximum number of B-pictures between P- or I-frames",
                                    "type": "boolean",
                                    "default": false
                                },
                                "max": {
                                    "title": "Maximum Count",
                                    "type": "integer"
                                }
                            }
                        },
                        "avc_bit_rate": {
                            "type": "object",
                            "properties": {
                                "enable": {
                                    "title": "AVC Max Bit Rate",
                                    "description": "Check the value of the Maximum Bit Rate item within the AVC Video SubDescriptor",
                                    "type": "boolean",
                                    "default": false
                                },
                                "test": {
                                    "title": "Min Max Test",
                                    "suffix": "bits per second",
                                    "$ref": "#/definitions/minmax"
                                }
                            }
                        },
                        "avc_average_bit_rate": {
                            "type": "object",
                            "properties": {
                                "enable": {
                                    "title": "AVC Average Bit Rate",
                                    "description": "Check the value of the Average Bit Rate item within the AVC Video SubDescriptor",
                                    "type": "boolean",
                                    "default": false
                                },
                                "test": {
                                    "title": "Min Max Test",
                                    "suffix": "bits per second",
                                    "$ref": "#/definitions/minmax"
                                }
                            }
                        },
                        "avc_sps_pps": {
                            "type": "object",
                            "properties": {
                                "enable": {
                                    "title": "AVC SPS and PPS",
                                    "description": "Check various profile and level flags within the AVC Video SubDescriptor.",
                                    "type": "boolean",
                                    "default": false
                                },
                                "profile": {
                                    "title": "Profile",
                                    "type": "integer"
                                },
                                "profileconstraint": {
                                    "title": "Profile Constrain",
                                    "type": "integer"
                                },
                                "spsflag": {
                                    "title": "SPS Flag",
                                    "type": "integer"
                                },
                                "ppsflag": {
                                    "title": "PPS Flag",
                                    "type": "integer"
                                },
                                "level": {
                                    "title": "Level",
                                    "type": "integer"
                                }
                            }
                        },
                        "sound_essence_container_label": {
                            "type": "object",
                            "required": [
                                "enable"
                            ],
                            "properties": {
                                "enable": {
                                    "title": "Sound Essence Container Label",
                                    "description": "Ensure that the given Sound Essence Container Label(s) appear in the Partition Pack and Preface Set (if any) of every Partition",
                                    "type": "boolean",
                                    "default": false
                                },
                                "predefined": {
                                    "title": "Predefined",
                                    "type": "string",
                                    "enum": [
                                        "06.0e.2b.34.04.01.01.01.0d.01.03.01.02.06.01.00",
                                        "06.0e.2b.34.04.01.01.01.0d.01.03.01.02.06.02.00",
                                        "06.0e.2b.34.04.01.01.01.0d.01.03.01.02.06.03.00",
                                        "06.0e.2b.34.04.01.01.01.0d.01.03.01.02.06.04.00"
                                    ],
                                    "titleMap": [
                                        {
                                            "value": "06.0e.2b.34.04.01.01.01.0d.01.03.01.02.06.01.00",
                                            "name": "GC BWF Frame-wrapped"
                                        },
                                        {
                                            "value": "06.0e.2b.34.04.01.01.01.0d.01.03.01.02.06.02.00",
                                            "name": "GC BWF Clip-wrapped"
                                        },
                                        {
                                            "value": "06.0e.2b.34.04.01.01.01.0d.01.03.01.02.06.03.00",
                                            "name": "GC AES-3 Frame-wrapped"
                                        },
                                        {
                                            "value": "06.0e.2b.34.04.01.01.01.0d.01.03.01.02.06.04.00",
                                            "name": "GC AES-3 Clip-wrapped"
                                        }
                                    ],
                                    "default": "06.0e.2b.34.04.01.01.01.0d.01.03.01.02.06.01.00"
                                },
                                "usecustom": {
                                    "title": "Use Custom",
                                    "type": "boolean",
                                    "default": false
                                },
                                "custom": {
                                    "title": "e.g. 06.0e.2b.34.04.01.01.01.0d.01.03.01.02.06.01.00",
                                    "description": "Custom labels may be specified using a dotted 16-hex-byte format (e.g. '06.0e.2b.34.04.01.01.01.0d.01.03.01.02.06.03.00'). Multiple allowable labels may be separated by commas, and any single hex digit may be given as 'x' as a wildcard",
                                    "type": "string"
                                }
                            },
                            "allOf": [
                                {
                                    "if": {
                                        "properties": {
                                            "enable": {
                                                "const": true
                                            }
                                        }
                                    },
                                    "then": {
                                        "required": [
                                            "predefined",
                                            "usecustom"
                                        ]
                                    }
                                },
                                {
                                    "if": {
                                        "properties": {
                                            "usecustom": {
                                                "const": true
                                            }
                                        }
                                    },
                                    "then": {
                                        "required": [
                                            "custom"
                                        ]
                                    }
                                }
                            ]
                        },
                        "sound_element_key": {
                            "type": "object",
                            "required": [
                                "enable"
                            ],
                            "properties": {
                                "enable": {
                                    "title": "Sound Element Key",
                                    "description": "Ensure that the Sound Element Keys (which wrap the stored essence) match the given value(s). Only the first content package is examined; this is not a continuous test throughout the whole file",
                                    "type": "boolean",
                                    "default": false
                                },
                                "predefined": {
                                    "title": "Predefined",
                                    "type": "string",
                                    "enum": [
                                        "06.0e.2b.34.01.02.01.01.0d.01.03.01.16.08.03.0x",
                                        "06.0e.2b.34.01.02.01.01.0d.01.03.01.16.10.03.0x"
                                    ],
                                    "titleMap": [
                                        {
                                            "value": "06.0e.2b.34.01.02.01.01.0d.01.03.01.16.08.03.0x",
                                            "name": "GC SMPTE 382M 8-Ch AES Frame-wrapped"
                                        },
                                        {
                                            "value": "06.0e.2b.34.01.02.01.01.0d.01.03.01.16.10.03.0x",
                                            "name": "GC SMPTE 382M 16-Ch AES Frame-wrapped"
                                        }
                                    ],
                                    "default": "06.0e.2b.34.01.02.01.01.0d.01.03.01.16.08.03.0x"
                                },
                                "usecustom": {
                                    "title": "Use Custom",
                                    "type": "boolean",
                                    "default": false
                                },
                                "custom": {
                                    "title": "e.g. 06.0e.2b.34.01.02.01.01.0d.01.03.01.16.08.03.0x",
                                    "description": "Custom keys may be specified using a dotted 16-hex-byte format (e.g. '06.0e.2b.34.01.02.01.01.0d.01.03.01.16.08.03.0x'). Multiple allowable keys may be separated by commas, and any single hex digit may be given as 'x' as a wildcard",
                                    "type": "string"
                                }
                            },
                            "allOf": [
                                {
                                    "if": {
                                        "properties": {
                                            "enable": {
                                                "const": true
                                            }
                                        }
                                    },
                                    "then": {
                                        "required": [
                                            "predefined",
                                            "usecustom"
                                        ]
                                    }
                                },
                                {
                                    "if": {
                                        "properties": {
                                            "usecustom": {
                                                "const": true
                                            }
                                        }
                                    },
                                    "then": {
                                        "required": [
                                            "custom"
                                        ]
                                    }
                                }
                            ]
                        },
                        "sound_essence_coding": {
                            "type": "object",
                            "required": [
                                "enable"
                            ],
                            "properties": {
                                "enable": {
                                    "title": "Sound Essence Coding",
                                    "description": "Ensure that the sound essence coding label is one of the given values",
                                    "type": "boolean",
                                    "default": false
                                },
                                "codings": {
                                    "title": "Codings",
                                    "type": "array",
                                    "items": {
                                        "type": "integer",
                                        "enum": [
                                            0,
                                            1,
                                            2
                                        ],
                                        "titleMap": [
                                            {
                                                "value": 0,
                                                "name": "PCM"
                                            },
                                            {
                                                "value": 1,
                                                "name": "Default Uncompressed"
                                            },
                                            {
                                                "value": 2,
                                                "name": "Dolby E"
                                            }
                                        ],
                                        "default": 0
                                    }
                                }
                            },
                            "allOf": [
                                {
                                    "if": {
                                        "properties": {
                                            "enable": {
                                                "const": true
                                            }
                                        }
                                    },
                                    "then": {
                                        "required": [
                                            "codings"
                                        ]
                                    }
                                }
                            ]
                        },
                        "audio_sampling_rate": {
                            "type": "object",
                            "properties": {
                                "enable": {
                                    "title": "Audio Sampling Rate",
                                    "description": "Check the value of the Audio Sampling Rate item in the Generic Sound Essence Descriptor(s)",
                                    "type": "boolean",
                                    "default": false
                                },
                                "options": {
                                    "type": "number",
                                    "suffix": "Hz"
                                }
                            },
                            "allOf": [
                                {
                                    "if": {
                                        "properties": {
                                            "enable": {
                                                "const": true
                                            }
                                        }
                                    },
                                    "then": {
                                        "required": [
                                            "options"
                                        ]
                                    }
                                }
                            ]
                        },
                        "audio_locked": {
                            "type": "object",
                            "required": [
                                "enable"
                            ],
                            "properties": {
                                "enable": {
                                    "title": "Audio Locked/Unlocked",
                                    "description": "Check the value of the Locked/Unlocked flag in the Generic Sound Essence Descriptor(s), indicating whether the number of audio samples per frame is constant or not",
                                    "type": "boolean",
                                    "default": false
                                },
                                "value": {
                                    "title": "Locked / Unlocked",
                                    "type": "boolean",
                                    "titleMap": [
                                        {
                                            "value": true,
                                            "name": "Locked"
                                        },
                                        {
                                            "value": false,
                                            "name": "Unlocked"
                                        }
                                    ],
                                    "default": true
                                }
                            },
                            "allOf": [
                                {
                                    "if": {
                                        "properties": {
                                            "enable": {
                                                "const": true
                                            }
                                        }
                                    },
                                    "then": {
                                        "required": [
                                            "value"
                                        ]
                                    }
                                }
                            ]
                        },
                        "dialnorm": {
                            "type": "object",
                            "required": [
                                "enable"
                            ],
                            "properties": {
                                "enable": {
                                    "title": "DialNorm",
                                    "description": "Check the value of the Dial Norm item in the Generic Sound Essence Descriptor(s)",
                                    "type": "boolean",
                                    "default": false
                                },
                                "test": {
                                    "type": "object",
                                    "properties": {
                                        "min": {
                                            "title": "Minimum",
                                            "type": "integer",
                                            "minimum": 1,
                                            "maximum": 31,
                                            "default": 1
                                        },
                                        "max": {
                                            "title": "Maximum",
                                            "type": "integer",
                                            "minimum": 1,
                                            "maximum": 31,
                                            "default": 31
                                        }
                                    }
                                }
                            },
                            "allOf": [
                                {
                                    "if": {
                                        "properties": {
                                            "enable": {
                                                "const": true
                                            }
                                        }
                                    },
                                    "then": {
                                        "required": [
                                            "test"
                                        ]
                                    }
                                }
                            ]
                        },
                        "audio_ref_level": {
                            "type": "object",
                            "required": [
                                "enable"
                            ],
                            "properties": {
                                "enable": {
                                    "title": "Audio Ref Level",
                                    "description": "Check the value of the Audio Ref Level item in the Generic Sound Essence Descriptor(s)",
                                    "type": "boolean",
                                    "default": false
                                },
                                "test": {
                                    "title": "Min Max Test",
                                    "$ref": "#/definitions/minmax"
                                }
                            },
                            "allOf": [
                                {
                                    "if": {
                                        "properties": {
                                            "enable": {
                                                "const": true
                                            }
                                        }
                                    },
                                    "then": {
                                        "required": [
                                            "test"
                                        ]
                                    }
                                }
                            ]
                        },
                        "channel_count": {
                            "type": "object",
                            "required": [
                                "enable"
                            ],
                            "properties": {
                                "enable": {
                                    "title": "Channel Count",
                                    "description": "Check the value of the Channel Count item in the Generic Sound Essence Descriptor(s). Because each track has a separate descriptor, this should be set to '1' for formats which expect multiple mono tracks",
                                    "type": "boolean",
                                    "default": false
                                },
                                "channels": {
                                    "title": "Number Of Channels",
                                    "type": "integer",
                                    "minimum": 0,
                                    "default": 0
                                }
                            },
                            "allOf": [
                                {
                                    "if": {
                                        "properties": {
                                            "enable": {
                                                "const": true
                                            }
                                        }
                                    },
                                    "then": {
                                        "required": [
                                            "channels"
                                        ]
                                    }
                                }
                            ]
                        },
                        "quantization_bits": {
                            "type": "object",
                            "required": [
                                "enable"
                            ],
                            "properties": {
                                "enable": {
                                    "title": "Quantization Bits",
                                    "description": "Check the value of the Quantization Bits item in the Generic Sound Essence Descriptor(s)",
                                    "type": "boolean",
                                    "default": false
                                },
                                "bits": {
                                    "title": "Number Of Bits",
                                    "type": "integer",
                                    "minimum": 0,
                                    "default": 0,
                                    "suffix": "bits"
                                }
                            },
                            "allOf": [
                                {
                                    "if": {
                                        "properties": {
                                            "enable": {
                                                "const": true
                                            }
                                        }
                                    },
                                    "then": {
                                        "required": [
                                            "bits"
                                        ]
                                    }
                                }
                            ]
                        },
                        "average_bytes_per_second": {
                            "type": "object",
                            "required": [
                                "enable"
                            ],
                            "properties": {
                                "enable": {
                                    "title": "Average Bytes per Second",
                                    "description": "Check the value of the Average Bytes Per Second item in the Wave Audio Essence Descriptor(s)",
                                    "type": "boolean",
                                    "default": false
                                },
                                "test": {
                                    "title": "Min Max Test",
                                    "suffix": "bytes per second",
                                    "$ref": "#/definitions/minmax"
                                }
                            },
                            "allOf": [
                                {
                                    "if": {
                                        "properties": {
                                            "enable": {
                                                "const": true
                                            }
                                        }
                                    },
                                    "then": {
                                        "required": [
                                            "test"
                                        ]
                                    }
                                }
                            ]
                        }
                    }
                },
                "nielsen_watermark": {
                    "type": "object",
                    "description": "Decode an audio stream and reports Nielsen watermarks found in the stream",
                    "properties": {
                        "treat_warnings_as": {
                            "$ref": "#/definitions/warnings_as"
                        },
                        "audioconfigs": {
                            "title": "Nielsen Watermark Test Configuration",
                            "type": "array",
                            "items": {
                                "$ref": "#/definitions/nielsen_test_config"
                            }
                        }
                    }
                },
                "peak_level": {
                    "type": "object",
                    "description": "Measure the instantaneous audio level on the selected audio Channel(s)",
                    "properties": {
                        "treat_warnings_as": {
                            "$ref": "#/definitions/warnings_as"
                        },
                        "audioconfigs": {
                            "title": "Peak Test Configuration",
                            "type": "array",
                            "items": {
                                "$ref": "#/definitions/peak_test_config"
                            }
                        }
                    }
                },
                "phase_coherence": {
                    "type": "object",
                    "description": "Measure how similar the left and right channels are",
                    "properties": {
                        "treat_warnings_as": {
                            "$ref": "#/definitions/warnings_as"
                        },
                        "audioconfigs": {
                            "title": "Phase Test Configuration",
                            "type": "array",
                            "items": {
                                "$ref": "#/definitions/phase_test_config"
                            }
                        }
                    }
                },
                "ppm_level": {
                    "type": "object",
                    "properties": {
                        "treat_warnings_as": {
                            "$ref": "#/definitions/warnings_as"
                        },
                        "audioconfigs": {
                            "title": "PPM Level Test Configuration",
                            "type": "array",
                            "items": {
                                "$ref": "#/definitions/ppm_level_test_config"
                            }
                        }
                    }
                },
                "pse_harding": {
                    "type": "object",
                    "description": "Harding",
                    "properties": {
                        "treat_warnings_as": {
                            "$ref": "#/definitions/warnings_as"
                        },
                        "standard": {
                            "title": "Standard",
                            "type": "integer",
                            "enum": [
                                0,
                                1,
                                2,
                                3,
                                4
                            ],
                            "titleMap": [
                                {
                                    "value": 0,
                                    "name": "Ofcom 2009"
                                },
                                {
                                    "value": 1,
                                    "name": "NAB Japan 2006"
                                },
                                {
                                    "value": 2,
                                    "name": "ITU BT.1702-1"
                                },
                                {
                                    "value": 3,
                                    "name": "ITU BT.1702-2"
                                },
                                {
                                    "value": 4,
                                    "name": "Japan HDR"
                                }
                            ],
                            "default": 2
                        }
                    }
                },
                "pse": {
                    "type": "object",
                    "description": "This test utilizes Telestream PSE Algorithm v5.1",
                    "properties": {
                        "treat_warnings_as": {
                            "$ref": "#/definitions/warnings_as"
                        },
                        "use_legacy": {
                            "title": "Use Legacy Standard",
                            "type": "boolean",
                            "description": "Use BT1702-1 PSE checking standard"
                        },
                        "check_type": {
                            "title": "Check Type",
                            "type": "integer",
                            "enum": [
                                0,
                                1
                            ],
                            "titleMap": [
                                {
                                    "value": 0,
                                    "name": "Standard"
                                },
                                {
                                    "value": 1,
                                    "name": "Strict"
                                }
                            ],
                            "default": 0,
                            "description": "Standard: 3.5 flashes at 25% of the picture\n Strict: 3.5 flashes at 20% of the picture"
                        },
                        "check_for_extended": {
                            "title": "Check For Extended",
                            "type": "boolean",
                            "description": "Check For Extended flashing."
                        },
                        "check_for_red": {
                            "title": "Check For Red",
                            "type": "boolean",
                            "description": "Check for saturated red flashes."
                        },
                        "check_for_patterns": {
                            "title": "Check For Patterns",
                            "type": "boolean",
                            "description": "Check for potentially harmful regular patterns."
                        }
                    }
                },
                "rgb_gamut": {
                    "type": "object",
                    "description": "Detect if the RGB color values are within the given range",
                    "properties": {
                        "treat_warnings_as": {
                            "$ref": "#/definitions/warnings_as"
                        },
                        "range_from": {
                            "title": "Low RGB Component Limit (%)",
                            "type": "number",
                            "default": -5,
                            "minimum": -9,
                            "maximum": 109,
                            "description": "Default value is 5%, as suggested in the EBU R103-2000 section 'Tolerances on color gamut'. Use 0-100 for no tolerance"
                        },
                        "range_to": {
                            "title": "High RGB Component Limit (%)",
                            "type": "number",
                            "default": 105,
                            "minimum": -9,
                            "maximum": 109,
                            "description": "Default value is 5%, as suggested in the EBU R103-2000 section 'Tolerances on color gamut'. Use 0-100 for no tolerance"
                        },
                        "max_area_outside": {
                            "title": "Max area outside (%)",
                            "type": "number",
                            "default": 1,
                            "minimum": 0,
                            "maximum": 100,
                            "description": "Maximum area of the video picture that can be outside the given range without generating an error"
                        },
                        "low_pass_filter": {
                            "title": "Low-pass filter",
                            "type": "integer",
                            "description": "When EBU R103 2000 is selected, a horizontal signal filter (as described in EBU R103-2000) is applied to the RGB components before testing to remove transient violations. When EBU R103-2016 is selected, a quarter band signal filter is applied horizontally and a half band signal filter is applied vertically (as described in EBU R103-2016) to the RGB components before testing to remove transient violations",
                            "enum": [
                                0,
                                1,
                                2
                            ],
                            "default": 0,
                            "titleMap": [
                                {
                                    "value": 0,
                                    "name": "None"
                                },
                                {
                                    "value": 1,
                                    "name": "EBU R103 2000"
                                },
                                {
                                    "value": 2,
                                    "name": "EBU R103 2016"
                                }
                            ]
                        }
                    },
                    "required": [
                        "range_from",
                        "range_to",
                        "max_area_outside",
                        "low_pass_filter"
                    ]
                },
                "video_segment_detection": {
                    "type": "object",
                    "required": [
                        "custom_level"
                    ],
                    "description": "Detect video segments within the content",
                    "allOf": [
                        {
                            "properties": {
                                "treat_warnings_as": {
                                    "$ref": "#/definitions/warnings_as"
                                },
                                "custom_level": {
                                    "title": "Custom Level",
                                    "type": "boolean",
                                    "description": "Use custom luminance level (Y) for non-active picture area"
                                },
                                "bit_depth": {
                                    "title": "Bit Depth",
                                    "$ref": "#/definitions/video_bit_depth"
                                },
                                "level_8_bit": {
                                    "title": "Black Level",
                                    "$ref": "#/definitions/level_8_bit"
                                },
                                "level_10_bit": {
                                    "title": "Black Level",
                                    "$ref": "#/definitions/level_10_bit"
                                },
                                "level_12_bit": {
                                    "title": "Black Level",
                                    "$ref": "#/definitions/level_12_bit"
                                },
                                "level_14_bit": {
                                    "title": "Black Level",
                                    "$ref": "#/definitions/level_14_bit"
                                },
                                "percentage": {
                                    "title": "Percentage of Frame",
                                    "type": "integer",
                                    "minimum": 0,
                                    "maximum": 100,
                                    "default": 100,
                                    "description": "This is the area of the frame which must all be non-active in order to trigger the alert"
                                },
                                "duration": {
                                    "title": "Minimum Black Frame Duration",
                                    "type": "number",
                                    "minimum": 0,
                                    "default": 10,
                                    "description": "Black frames with duration below the given threshold will be treated as active frames"
                                },
                                "units": {
                                    "title": "Time Units",
                                    "$ref": "#/definitions/time_units"
                                },
                                "silence": {
                                    "title": "Digital Silence",
                                    "type": "boolean",
                                    "description": "Black frames must be accompanied by digital silence across all tracks otherwise they will be treated as active frames"
                                }
                            }
                        },
                        {
                            "$ref": "#/definitions/audio_config_silence"
                        },
                        {
                            "required": [
                                "silence"
                            ]
                        }
                    ]
                },
                "short_term_loudness": {
                    "type": "object",
                    "description": "Measure short-term loudness over a sliding rectangular time window. The measurement is not gated",
                    "properties": {
                        "treat_warnings_as": {
                            "$ref": "#/definitions/warnings_as"
                        },
                        "audioconfigs": {
                            "title": "Short-term Loudness Test Configuration",
                            "type": "array",
                            "items": {
                                "$ref": "#/definitions/shortterm_loudness_test_config"
                            }
                        }
                    }
                },
                "silence": {
                    "type": "object",
                    "description": "Check for the presence or absence of silence for the whole or parts of a track",
                    "properties": {
                        "treat_warnings_as": {
                            "$ref": "#/definitions/warnings_as"
                        },
                        "audioconfigs": {
                            "title": "Silence Test Configuration",
                            "type": "array",
                            "items": {
                                "$ref": "#/definitions/silence_test_config"
                            }
                        }
                    }
                },
                "single_color_frame": {
                    "type": "object",
                    "description": "Detect sequences where the entire frame is a single color",
                    "properties": {
                        "treat_warnings_as": {
                            "$ref": "#/definitions/warnings_as"
                        },
                        "custom_level": {
                            "title": "Custom Level",
                            "type": "boolean",
                            "description": "Use custom luminance level (Y) for non-active picture area"
                        },
                        "bit_depth": {
                            "title": "Bit Depth",
                            "$ref": "#/definitions/video_bit_depth"
                        },
                        "level_8_bit": {
                            "title": "Black Level",
                            "$ref": "#/definitions/level_8_bit"
                        },
                        "level_10_bit": {
                            "title": "Black Level",
                            "$ref": "#/definitions/level_10_bit"
                        },
                        "level_12_bit": {
                            "title": "Black Level",
                            "$ref": "#/definitions/level_12_bit"
                        },
                        "level_14_bit": {
                            "title": "Black Level",
                            "$ref": "#/definitions/level_14_bit"
                        },
                        "percentage_of_frame": {
                            "title": "Percentage of Frame",
                            "type": "integer",
                            "minimum": 0,
                            "maximum": 100,
                            "default": 100,
                            "description": "This is the area of the frame which must all be a single color in order to trigger the alert. When testing video from an analog source (or in the presence of other noise) it may be desirable to select a value less than 100% to ensure that colored frames are still detected."
                        },
                        "max_allowed_enable": {
                            "title": "Test Whole File",
                            "description": "Test whole file for the presence of single color frames",
                            "type": "boolean",
                            "default": true
                        },
                        "max_allowed_duration": {
                            "title": "Max Single Color Frames Allowed",
                            "description": "Maximum permitted duration of a single-color sequence. Set to 0 to disallow any single-color frames",
                            "$ref": "#/definitions/range_limit"
                        },
                        "max_allowed_units": {
                            "title": "Max Allowed Time Units",
                            "$ref": "#/definitions/time_units"
                        },
                        "ranges": {
                            "title": "Range",
                            "type": "array",
                            "default": [],
                            "items": {
                                "$ref": "#/definitions/singlecolor_range"
                            }
                        }
                    }
                },
                "discrete_subtitle": {
                    "type": "object",
                    "description": "Check for the presence of discreet subtitles",
                    "properties": {
                        "treat_warnings_as": {
                            "$ref": "#/definitions/warnings_as"
                        },
                        "subtitle_presence": {
                            "title": "Detect and Report the Presence of Discrete Subtitles",
                            "type": "boolean",
                            "description": "Find subtitles.",
                            "default": false
                        },
                        "subtitle_dropout": {
                            "title": "Detect and report any Subtitle Dropouts",
                            "type": "boolean",
                            "description": "Will test for the absence of subtitles in the given interval.",
                            "default": false
                        },
                        "no_subtitle_threshold": {
                            "title": "Max time allowed with no subtitle data",
                            "type": "number",
                            "minimum": 0.0,
                            "maximum": 3600.0,
                            "description": "The minimum threshold for which subtitles must be updated.",
                            "default": 10.0
                        },
                        "subtitle_dropout_duration_units": {
                            "title": "Time Units",
                            "$ref": "#/definitions/time_units"
                        },
                        "check_stl": {
                            "title": "STL checks",
                            "type": "boolean",
                            "default": false
                        },
                        "sidecar_stl_present": {
                            "title": "Check that Sidecar STL is present",
                            "type": "boolean",
                            "default": false
                        },
                        "stl_service_group": {
                            "title": "STL Group",
                            "description": "Verify all subtitles are in the same subtitling group",
                            "type": "integer",
                            "default": 0,
                            "minimum": 0,
                            "maximum": 255
                        },
                        "stl_start_timecode": {
                            "title": "STL start timecode check",
                            "description": "Check that the start timecode of the STL matches the container start timecode of the media",
                            "type": "boolean",
                            "default": false
                        },
                        "stl_start_timecode_source": {
                            "title": "Start Timecode source priority",
                            "type": "string",
                            "enum": [
                                "deft",
                                "movt",
                                "pic ",
                                "MDPM",
                                "avc1",
                                "gopt",
                                "mxft",
                                "mxfs",
                                "mxfm",
                                "mxfa",
                                "anc ",
                                "gxft",
                                "gxtt",
                                "gxst",
                                "vbi ",
                                "gxfa",
                                "lxft",
                                "lxfa",
                                "tfot",
                                "dift"
                            ],
                            "titleMap": [
                                {
                                    "value": "deft",
                                    "name": "Default"
                                },
                                {
                                    "value": "movt",
                                    "name": "QuickTime Time Code track"
                                },
                                {
                                    "value": "pic ",
                                    "name": "SEI Picture Timing"
                                },
                                {
                                    "value": "MDPM",
                                    "name": "SEI AVCHD Metadata"
                                },
                                {
                                    "value": "avc1",
                                    "name": "AVC-Intra SEI Message Type-1"
                                },
                                {
                                    "value": "gopt",
                                    "name": "MPEG-2 GOP Time Code"
                                },
                                {
                                    "value": "mxft",
                                    "name": "SMPTE ST377 MXF Time Code Track"
                                },
                                {
                                    "value": "mxfs",
                                    "name": "SMPTE ST377 MXF System Item Time Code"
                                },
                                {
                                    "value": "mxfm",
                                    "name": "SMPTE ST377 MXF Material Package Time Code"
                                },
                                {
                                    "value": "mxfa",
                                    "name": "SMPTE ST436 MXF Ancillary Data"
                                },
                                {
                                    "value": "anc ",
                                    "name": "SMPTE ST291 Ancillary Data"
                                },
                                {
                                    "value": "gxft",
                                    "name": "SMPTE ST360 GXF Time Code"
                                },
                                {
                                    "value": "gxtt",
                                    "name": "SMPTE ST360 GXF Track Time Code"
                                },
                                {
                                    "value": "gxst",
                                    "name": "SMPTE ST360 GXF Striped Time Code"
                                },
                                {
                                    "value": "vbi ",
                                    "name": "Vertical Blanking Interval"
                                },
                                {
                                    "value": "gxfa",
                                    "name": "SMPTE ST360 GXF Ancillary Data"
                                },
                                {
                                    "value": "lxft",
                                    "name": "LXF Time Code"
                                },
                                {
                                    "value": "lxfa",
                                    "name": "LXF Ancillary Data"
                                },
                                {
                                    "value": "dift",
                                    "name": "DV/DVCPRO LTC Time Code"
                                }
                            ],
                            "default": "deft"
                        },
                        "fallback_framerate": {
                            "title": "If no framerate is detected, default to",
                            "type": "number",
                            "minimum": 1,
                            "description": "A fallback framerate for sources with no framerate properties.",
                            "default": 25,
                            "suffix": "fps"
                        }
                    },
                    "allOf": [
                        {
                            "if": {
                                "properties": {
                                    "subtitle_dropout": {
                                        "const": true
                                    }
                                }
                            },
                            "then": {
                                "required": [
                                    "no_subtitle_threshold",
                                    "subtitle_dropout_duration_units"
                                ]
                            }
                        },
                        {
                            "if": {
                                "properties": {
                                    "subtitle_dropout_duration_units": {
                                        "const": 1
                                    }
                                }
                            },
                            "then": {
                                "required": [
                                    "fallback_framerate"
                                ]
                            }
                        },
                        {
                            "if": {
                                "properties": {
                                    "check_stl": {
                                        "const": true
                                    }
                                }
                            },
                            "then": {
                                "required": [
                                    "sidecar_stl_present",
                                    "stl_service_group",
                                    "stl_start_timecode",
                                    "fallback_framerate"
                                ]
                            }
                        },
                        {
                            "if": {
                                "properties": {
                                    "stl_start_timecode": {
                                        "const": true
                                    }
                                }
                            },
                            "then": {
                                "required": [
                                    "stl_start_timecode_source"
                                ]
                            }
                        }
                    ]
                },
                "syntax_checks": {
                    "type": "object",
                    "description": "Enable syntax checking for some codec types",
                    "properties": {
                        "treat_warnings_as": {
                            "$ref": "#/definitions/warnings_as"
                        },
                        "video_codecsyntax_test": {
                            "type": "object",
                            "properties": {
                                "enable": {
                                    "title": "Codec Syntax",
                                    "description": "Run MPEG-2, AVC/H.264/MPEG-4 and Dolby E codec syntax checks",
                                    "type": "boolean",
                                    "default": false
                                }
                            },
                            "required": [
                                "enable"
                            ]
                        }
                    }
                },
                "tek_mos": {
                    "type": "object",
                    "description": "Non-reference based perceptual video quality measurement for natural video content",
                    "properties": {
                        "treat_warnings_as": {
                            "$ref": "#/definitions/warnings_as"
                        },
                        "clip_threshold_score": {
                            "title": "Program Threshold",
                            "type": "number",
                            "default": 3,
                            "minimum": 0,
                            "maximum": 5,
                            "description": "Minimum desired TekMOS score, varies from 0(Poor) to 5(Excellent)"
                        },
                        "clip_threshold_percentage": {
                            "title": "TekMos Clip Threshold Percentage",
                            "type": "number",
                            "default": 5,
                            "minimum": 0,
                            "maximum": 100,
                            "suffix": "%",
                            "description": "% of all frames have TekMOS scores less than the program threshold"
                        },
                        "duration_threshold_score": {
                            "title": "Short-term Threshold",
                            "type": "number",
                            "default": 3,
                            "minimum": 0,
                            "maximum": 5,
                            "description": "Minimum desired TekMOS score, varies from 0(Poor) to 5(Excellent)"
                        },
                        "duration_threshold_score_percentage": {
                            "title": "Error When More Than",
                            "type": "number",
                            "default": 5,
                            "minimum": 0,
                            "maximum": 100,
                            "suffix": "%",
                            "description": "% of frames in the short-term have a TekMOS score less than the short-term threshold"
                        },
                        "duration_averaged_over": {
                            "title": "For A Minimum Duration Of",
                            "type": "integer",
                            "minimum": 1,
                            "default": 10,
                            "suffix": "Seconds"
                        },
                        "frame_sampling_type": {
                            "title": "Frame Sampling",
                            "type": "integer",
                            "enum": [
                                0,
                                1
                            ],
                            "titleMap": [
                                {
                                    "value": 0,
                                    "name": "Measure TekMOS score for every frame"
                                },
                                {
                                    "value": 1,
                                    "name": "Measure TekMOS score at a target frame rate of"
                                }
                            ],
                            "default": 1
                        },
                        "frames_to_be_sampled": {
                            "title": "Frames per Second",
                            "type": "integer",
                            "default": 5
                        },
                        "deinterlace": {
                            "title": "Apply De-interlacing",
                            "type": "boolean"
                        },
                        "region_of_interest": {
                            "title": "Region-of-interest",
                            "type": "integer",
                            "enum": [
                                0,
                                1
                            ],
                            "titleMap": [
                                {
                                    "value": 0,
                                    "name": "Automatic"
                                },
                                {
                                    "value": 1,
                                    "name": "Center Of Frame"
                                }
                            ],
                            "default": 0
                        }
                    },
                    "allOf": [
                        {
                            "if": {
                                "properties": {
                                    "frame_sampling_type": {
                                        "const": 1
                                    }
                                }
                            },
                            "then": {
                                "required": [
                                    "frames_to_be_sampled"
                                ]
                            }
                        },
                        {
                            "required": [
                                "clip_threshold_score",
                                "clip_threshold_percentage",
                                "duration_threshold_score",
                                "duration_threshold_score_percentage",
                                "duration_averaged_over",
                                "deinterlace",
                                "region_of_interest"
                            ]
                        }
                    ]
                },
                "tone": {
                    "type": "object",
                    "description": "Checks for the presence of a sine wave tone (a test tone)",
                    "properties": {
                        "treat_warnings_as": {
                            "$ref": "#/definitions/warnings_as"
                        },
                        "audioconfigs": {
                            "title": "Tone Test Configuration",
                            "type": "array",
                            "items": {
                                "$ref": "#/definitions/tone_test_config"
                            }
                        }
                    }
                },
                "upconversion_detection": {
                    "type": "object",
                    "description": "Detect if the input video stream has been upconverted from a lower resolution",
                    "properties": {
                        "treat_warnings_as": {
                            "$ref": "#/definitions/warnings_as"
                        }
                    }
                },
                "video_metadata": {
                    "type": "object",
                    "properties": {
                        "treat_warnings_as": {
                            "$ref": "#/definitions/warnings_as"
                        },
                        "afd_test": {
                            "type": "object",
                            "required": [
                                "enable"
                            ],
                            "properties": {
                                "enable": {
                                    "title": "Active Format Description",
                                    "description": "Test the value of the Active Format Description (AFD) as sent in the User Data of an MPEG-2 video sequence",
                                    "type": "boolean",
                                    "default": false
                                },
                                "value": {
                                    "title": "AFD must be",
                                    "type": "integer",
                                    "enum": [
                                        -1,
                                        2,
                                        3,
                                        4,
                                        8,
                                        9,
                                        10,
                                        11,
                                        13,
                                        14,
                                        15
                                    ],
                                    "titleMap": [
                                        {
                                            "value": -1,
                                            "name": "not present in stream"
                                        },
                                        {
                                            "value": 2,
                                            "name": "(2) Top-aligned 16:9 image"
                                        },
                                        {
                                            "value": 3,
                                            "name": "(3) Top-aligned 14:9 image"
                                        },
                                        {
                                            "value": 4,
                                            "name": "(4) Letterbox aspect > 16:9"
                                        },
                                        {
                                            "value": 8,
                                            "name": "(8) Full frame"
                                        },
                                        {
                                            "value": 9,
                                            "name": "(9) 4:3 image"
                                        },
                                        {
                                            "value": 10,
                                            "name": "(10) 16:9 image"
                                        },
                                        {
                                            "value": 11,
                                            "name": "(11) 14:9 image"
                                        },
                                        {
                                            "value": 13,
                                            "name": "(13) 4:3 image with alternative 14:9 center"
                                        },
                                        {
                                            "value": 14,
                                            "name": "(14) 16:9 image with alternative 14:9 center"
                                        },
                                        {
                                            "value": 15,
                                            "name": "(15) 16:9 image with alternative 4:3 center"
                                        }
                                    ]
                                },
                                "changes": {
                                    "title": "Report Dynamic AFD Changes",
                                    "type": "boolean",
                                    "default": false
                                }
                            },
                            "if": {
                                "properties": {
                                    "enable": {
                                        "const": true
                                    }
                                }
                            },
                            "then": {
                                "required": [
                                    "value",
                                    "changes"
                                ]
                            }
                        },
                        "video_alphachannelpresence_test": {
                            "type": "object",
                            "required": [
                                "enable"
                            ],
                            "properties": {
                                "enable": {
                                    "title": "Alpha Channel Presence",
                                    "type": "boolean",
                                    "description": "This checks the presence or absence of Alpha (transparency) Component in the color space of the video for the following stream formats: ProRes, FFV1, TIFF, DPX",
                                    "default": false
                                },
                                "value": {
                                    "title": "Alpha channel must be",
                                    "type": "boolean",
                                    "enum": [
                                        false,
                                        true
                                    ],
                                    "default": false,
                                    "titleMap": [
                                        {
                                            "value": false,
                                            "name": "not present"
                                        },
                                        {
                                            "value": true,
                                            "name": "present"
                                        }
                                    ]
                                }
                            },
                            "allOf": [
                                {
                                    "if": {
                                        "properties": {
                                            "enable": {
                                                "const": true
                                            }
                                        }
                                    },
                                    "then": {
                                        "required": [
                                            "value"
                                        ]
                                    }
                                }
                            ]
                        },
                        "video_buffersize_test": {
                            "type": "object",
                            "required": [
                                "enable"
                            ],
                            "properties": {
                                "enable": {
                                    "title": "Video Buffer Size",
                                    "type": "boolean",
                                    "default": false
                                },
                                "mode": {
                                    "title": "Test mode",
                                    "type": "string",
                                    "enum": [
                                        "value",
                                        "range"
                                    ],
                                    "default": "value"
                                },
                                "options": {
                                    "title": "Value(s)",
                                    "type": "string",
                                    "suffix": "KiB"
                                },
                                "minimum": {
                                    "title": "Minimum",
                                    "type": "number",
                                    "minimum": 0,
                                    "suffix": "KiB"
                                },
                                "maximum": {
                                    "title": "Maximum",
                                    "type": "number",
                                    "minimum": 0,
                                    "suffix": "KiB"
                                }
                            },
                            "allOf": [
                                {
                                    "if": {
                                        "properties": {
                                            "enable": {
                                                "const": true
                                            }
                                        }
                                    },
                                    "then": {
                                        "if": {
                                            "properties": {
                                                "mode": {
                                                    "const": "value"
                                                }
                                            }
                                        },
                                        "then": {
                                            "required": [
                                                "options"
                                            ]
                                        }
                                    }
                                },
                                {
                                    "if": {
                                        "properties": {
                                            "enable": {
                                                "const": true
                                            }
                                        }
                                    },
                                    "then": {
                                        "if": {
                                            "properties": {
                                                "mode": {
                                                    "const": "range"
                                                }
                                            }
                                        },
                                        "then": {
                                            "required": [
                                                "minimum",
                                                "maximum"
                                            ]
                                        }
                                    }
                                }
                            ]
                        },
                        "video_bitratemode_test": {
                            "type": "object",
                            "required": [
                                "enable"
                            ],
                            "properties": {
                                "enable": {
                                    "title": "Video Bit Rate Mode",
                                    "description": "Check whether the bit rate mode is variable (VBR) or constant (CBR)",
                                    "type": "boolean",
                                    "default": false
                                },
                                "option": {
                                    "title": "Mode",
                                    "type": "string",
                                    "enum": [
                                        "cbr",
                                        "vbr"
                                    ],
                                    "titleMap": [
                                        {
                                            "value": "cbr",
                                            "name": "CBR"
                                        },
                                        {
                                            "value": "vbr",
                                            "name": "VBR"
                                        }
                                    ]
                                }
                            },
                            "if": {
                                "properties": {
                                    "enable": {
                                        "const": true
                                    }
                                }
                            },
                            "then": {
                                "required": [
                                    "option"
                                ]
                            }
                        },
                        "video_codec_test": {
                            "type": "object",
                            "required": [
                                "enable"
                            ],
                            "properties": {
                                "enable": {
                                    "title": "Codec",
                                    "description": "Test the format of the video elementary stream",
                                    "type": "boolean",
                                    "default": false
                                },
                                "options": {
                                    "title": "All codecs",
                                    "type": "array",
                                    "items": {
                                        "type": "string",
                                        "enum": [
                                            "ap  ",
                                            "AVDJ",
                                            "AVdn",
                                            "AVdh",
                                            "dv  ",
                                            "dvp ",
                                            "dv50",
                                            "dv1 ",
                                            "dvh1",
                                            "avc1",
                                            "hvc1",
                                            "mp2v",
                                            "mp4v",
                                            "mjpg",
                                            "mjp2",
                                            "RGB ",
                                            "YUV ",
                                            "WVC1"
                                        ],
                                        "titleMap": [
                                            {
                                                "value": "ap  ",
                                                "name": "Apple ProRes"
                                            },
                                            {
                                                "value": "AVDJ",
                                                "name": "Avid Meridien"
                                            },
                                            {
                                                "value": "AVdn",
                                                "name": "Avid DNxHD"
                                            },
                                            {
                                                "value": "AVdh",
                                                "name": "Avid DNxHR"
                                            },
                                            {
                                                "value": "dvp ",
                                                "name": "DVCPRO25"
                                            },
                                            {
                                                "value": "dv50",
                                                "name": "DVCPRO50"
                                            },
                                            {
                                                "value": "dv1 ",
                                                "name": "DVCPRO100"
                                            },
                                            {
                                                "value": "dvh1",
                                                "name": "DVCPROHD"
                                            },
                                            {
                                                "value": "dv  ",
                                                "name": "DVC25"
                                            },
                                            {
                                                "value": "avc1",
                                                "name": "H.264/AVC"
                                            },
                                            {
                                                "value": "hvc1",
                                                "name": "H.265/HEVC"
                                            },
                                            {
                                                "value": "mjpg",
                                                "name": "M-JPEG"
                                            },
                                            {
                                                "value": "mjp2",
                                                "name": "JPEG 2000"
                                            },
                                            {
                                                "value": "mp2v",
                                                "name": "MPEG-2"
                                            },
                                            {
                                                "value": "mp4v",
                                                "name": "MPEG-4"
                                            },
                                            {
                                                "value": "RGB ",
                                                "name": "Uncompressed RGB"
                                            },
                                            {
                                                "value": "YUV ",
                                                "name": "Uncompressed YUV"
                                            },
                                            {
                                                "value": "WVC1",
                                                "name": "VC-1"
                                            }
                                        ]
                                    },
                                    "default": []
                                },
                                "video_entropymode_test": {
                                    "type": "object",
                                    "properties": {
                                        "enable": {
                                            "title": "Entropy Coding Mode",
                                            "description": "Test whether an H.264 video stream uses 'CABAC'",
                                            "type": "boolean",
                                            "default": false
                                        },
                                        "options": {
                                            "title": "Mode",
                                            "type": "integer",
                                            "enum": [
                                                0,
                                                1
                                            ],
                                            "titleMap": [
                                                {
                                                    "value": 0,
                                                    "name": "CABAC"
                                                },
                                                {
                                                    "value": 1,
                                                    "name": "CAVLC"
                                                }
                                            ]
                                        }
                                    },
                                    "if": {
                                        "properties": {
                                            "enable": {
                                                "const": true
                                            }
                                        }
                                    },
                                    "then": {
                                        "required": [
                                            "options"
                                        ]
                                    }
                                },
                                "video_codedinterlacemode_test": {
                                    "type": "object",
                                    "properties": {
                                        "enable": {
                                            "title": "Coded Interlace Mode",
                                            "description": "Check the coded interlaced mode (e.g.interlaced or progressive)",
                                            "type": "boolean",
                                            "default": false
                                        },
                                        "options": {
                                            "title": "Mode",
                                            "type": "array",
                                            "items": {
                                                "type": "integer",
                                                "enum": [
                                                    0,
                                                    1,
                                                    2,
                                                    3
                                                ],
                                                "titleMap": [
                                                    {
                                                        "value": 0,
                                                        "name": "FMBS"
                                                    },
                                                    {
                                                        "value": 1,
                                                        "name": "MBAFF"
                                                    },
                                                    {
                                                        "value": 2,
                                                        "name": "PAFF"
                                                    },
                                                    {
                                                        "value": 3,
                                                        "name": "PSF"
                                                    }
                                                ]
                                            }
                                        }
                                    }
                                },
                                "mpeg2_profile": {
                                    "title": "MPEG-2 Profile",
                                    "type": "integer",
                                    "enum": [
                                        0,
                                        1,
                                        2,
                                        3,
                                        4,
                                        5
                                    ],
                                    "titleMap": [
                                        {
                                            "value": 0,
                                            "name": "Any"
                                        },
                                        {
                                            "value": 1,
                                            "name": "High"
                                        },
                                        {
                                            "value": 2,
                                            "name": "Spatially Scalable"
                                        },
                                        {
                                            "value": 3,
                                            "name": "SNR Scalable"
                                        },
                                        {
                                            "value": 4,
                                            "name": "Main"
                                        },
                                        {
                                            "value": 5,
                                            "name": "Simple"
                                        }
                                    ],
                                    "default": 0
                                },
                                "mpeg2_level": {
                                    "title": "MPEG-2 Level",
                                    "type": "integer",
                                    "enum": [
                                        0,
                                        2,
                                        4,
                                        6,
                                        8,
                                        10
                                    ],
                                    "titleMap": [
                                        {
                                            "value": 0,
                                            "name": "Any"
                                        },
                                        {
                                            "value": 2,
                                            "name": "HighP"
                                        },
                                        {
                                            "value": 4,
                                            "name": "High"
                                        },
                                        {
                                            "value": 6,
                                            "name": "High-1440"
                                        },
                                        {
                                            "value": 8,
                                            "name": "Main"
                                        },
                                        {
                                            "value": 10,
                                            "name": "Low"
                                        }
                                    ],
                                    "default": 0
                                },
                                "prores_profile": {
                                    "title": "ProRes Profile",
                                    "type": "integer",
                                    "enum": [
                                        0,
                                        1,
                                        2,
                                        3,
                                        4,
                                        5,
                                        6
                                    ],
                                    "titleMap": [
                                        {
                                            "value": 0,
                                            "name": "Any"
                                        },
                                        {
                                            "value": 1,
                                            "name": "422"
                                        },
                                        {
                                            "value": 2,
                                            "name": "422 (HQ)"
                                        },
                                        {
                                            "value": 3,
                                            "name": "422 (LT)"
                                        },
                                        {
                                            "value": 4,
                                            "name": "422 (Proxy)"
                                        },
                                        {
                                            "value": 5,
                                            "name": "4444"
                                        },
                                        {
                                            "value": 6,
                                            "name": "4444 XQ"
                                        }
                                    ],
                                    "default": 0
                                }
                            },
                            "if": {
                                "properties": {
                                    "enable": {
                                        "const": true
                                    }
                                }
                            },
                            "then": {
                                "required": [
                                    "options"
                                ],
                                "allOf": [
                                    {
                                        "if": {
                                            "properties": {
                                                "options": {
                                                    "contains": {
                                                        "enum": [
                                                            "mp2v"
                                                        ]
                                                    }
                                                }
                                            }
                                        },
                                        "then": {
                                            "required": [
                                                "mpeg2_profile",
                                                "mpeg2_level"
                                            ]
                                        }
                                    },
                                    {
                                        "if": {
                                            "properties": {
                                                "codec": {
                                                    "contains": {
                                                        "enum": [
                                                            "ap  "
                                                        ]
                                                    }
                                                }
                                            }
                                        },
                                        "then": {
                                            "required": [
                                                "prores_profile"
                                            ]
                                        }
                                    }
                                ]
                            }
                        },
                        "video_framerate_test": {
                            "type": "object",
                            "required": [
                                "enable"
                            ],
                            "properties": {
                                "enable": {
                                    "title": "Frame Rate",
                                    "description": "Check the frame rate",
                                    "type": "boolean",
                                    "default": false
                                },
                                "options": {
                                    "title": "Standard frame rates",
                                    "type": "array",
                                    "items": {
                                        "type": "integer",
                                        "enum": [
                                            0,
                                            1,
                                            2,
                                            3,
                                            4,
                                            5,
                                            6,
                                            7,
                                            8
                                        ],
                                        "titleMap": [
                                            {
                                                "value": 0,
                                                "name": "24fps"
                                            },
                                            {
                                                "value": 1,
                                                "name": "24fps (NTSC)"
                                            },
                                            {
                                                "value": 2,
                                                "name": "25fps"
                                            },
                                            {
                                                "value": 3,
                                                "name": "30fps"
                                            },
                                            {
                                                "value": 4,
                                                "name": "30fps (NTSC)"
                                            },
                                            {
                                                "value": 5,
                                                "name": "48fps"
                                            },
                                            {
                                                "value": 6,
                                                "name": "50fps"
                                            },
                                            {
                                                "value": 7,
                                                "name": "60fps"
                                            },
                                            {
                                                "value": 8,
                                                "name": "60fps (NTSC)"
                                            }
                                        ]
                                    },
                                    "default": []
                                },
                                "custom": {
                                    "title": "Custom frame rate(s)",
                                    "type": "string",
                                    "suffix": "fps"
                                }
                            },
                            "if": {
                                "properties": {
                                    "enable": {
                                        "const": true
                                    }
                                }
                            },
                            "then": {
                                "oneOf": [
                                    {
                                        "required": [
                                            "options"
                                        ],
                                        "not": {
                                            "required": [
                                                "custom"
                                            ]
                                        }
                                    },
                                    {
                                        "required": [
                                            "custom"
                                        ],
                                        "not": {
                                            "required": [
                                                "options"
                                            ]
                                        }
                                    }
                                ]
                            }
                        },
                        "video_framesize_test": {
                            "type": "object",
                            "required": [
                                "enable"
                            ],
                            "properties": {
                                "enable": {
                                    "title": "Frame Size",
                                    "description": "Check the frame size",
                                    "type": "boolean",
                                    "default": false
                                },
                                "options": {
                                    "title": "Standard frame sizes",
                                    "type": "array",
                                    "items": {
                                        "type": "string",
                                        "enum": [
                                            "UHD8K",
                                            "UHD4K",
                                            "DCI4K",
                                            "DCI2K",
                                            "QHD",
                                            "FHD",
                                            "HD",
                                            "SDNTSC",
                                            "SDPAL",
                                            "SDNTSCVBI",
                                            "SDPALVBI"
                                        ],
                                        "titleMap": [
                                            {
                                                "value": "UHD8K",
                                                "name": "7680 x 4320 (8K UHD)"
                                            },
                                            {
                                                "value": "UHD4K",
                                                "name": "3840 x 2160 (4K UHD)"
                                            },
                                            {
                                                "value": "DCI4K",
                                                "name": "4096 x 2160 (DCI 4K)"
                                            },
                                            {
                                                "value": "DCI2K",
                                                "name": "2048 x 1080 (DCI 2K)"
                                            },
                                            {
                                                "value": "QHD",
                                                "name": "2560 x 1440"
                                            },
                                            {
                                                "value": "FHD",
                                                "name": "1920 x 1080"
                                            },
                                            {
                                                "value": "HD",
                                                "name": "1280 x 720"
                                            },
                                            {
                                                "value": "SDNTSC",
                                                "name": "720 x 480"
                                            },
                                            {
                                                "value": "SDPAL",
                                                "name": "720 x 576"
                                            },
                                            {
                                                "value": "SDNTSCVBI",
                                                "name": "720 x 512"
                                            },
                                            {
                                                "value": "SDPALVBI",
                                                "name": "720 x 608"
                                            }
                                        ]
                                    },
                                    "default": []
                                },
                                "custom": {
                                    "title": "Custom frame size(s)",
                                    "type": "string",
                                    "suffix": "wxh"
                                }
                            },
                            "if": {
                                "properties": {
                                    "enable": {
                                        "const": true
                                    }
                                }
                            },
                            "then": {
                                "oneOf": [
                                    {
                                        "required": [
                                            "options"
                                        ],
                                        "not": {
                                            "required": [
                                                "custom"
                                            ]
                                        }
                                    },
                                    {
                                        "required": [
                                            "custom"
                                        ],
                                        "not": {
                                            "required": [
                                                "options"
                                            ]
                                        }
                                    }
                                ]
                            }
                        },
                        "video_smpte328trackpresent_test": {
                            "type": "object",
                            "required": [
                                "enable"
                            ],
                            "properties": {
                                "enable": {
                                    "title": "SMPTE 328 Track Present",
                                    "type": "boolean",
                                    "description": "Check for presence of a SMPTE 328 track in all video frames of the file.",
                                    "default": false
                                }
                            }
                        },
                        "video_bitdepth_test": {
                            "type": "object",
                            "required": [
                                "enable"
                            ],
                            "properties": {
                                "enable": {
                                    "title": "Bit Depth",
                                    "description": "Check the number of bits per video sample",
                                    "type": "boolean",
                                    "default": false
                                },
                                "options": {
                                    "type": "string",
                                    "default": "8",
                                    "suffix": "bits per sample"
                                }
                            },
                            "if": {
                                "properties": {
                                    "enable": {
                                        "const": true
                                    }
                                }
                            },
                            "then": {
                                "required": [
                                    "options"
                                ]
                            }
                        },
                        "video_bitrate_test": {
                            "type": "object",
                            "required": [
                                "enable"
                            ],
                            "properties": {
                                "enable": {
                                    "title": "Video Bit Rate",
                                    "description": "Check the bit rate of the video track",
                                    "type": "boolean",
                                    "default": false
                                },
                                "mode": {
                                    "title": "Test mode",
                                    "type": "string",
                                    "enum": [
                                        "value",
                                        "range"
                                    ],
                                    "default": "value"
                                },
                                "options": {
                                    "title": "Value(s)",
                                    "type": "string",
                                    "suffix": "Mbit/s"
                                },
                                "minimum": {
                                    "title": "Minimum (Mbit/s)",
                                    "type": "number",
                                    "minimum": 0,
                                    "suffix": "Mbit/s"
                                },
                                "maximum": {
                                    "title": "Maximum (Mbit/s)",
                                    "type": "number",
                                    "minimum": 0,
                                    "suffix": "Mbit/s"
                                }
                            },
                            "allOf": [
                                {
                                    "if": {
                                        "properties": {
                                            "enable": {
                                                "const": true
                                            }
                                        }
                                    },
                                    "then": {
                                        "if": {
                                            "properties": {
                                                "mode": {
                                                    "const": "value"
                                                }
                                            }
                                        },
                                        "then": {
                                            "required": [
                                                "options"
                                            ]
                                        }
                                    }
                                },
                                {
                                    "if": {
                                        "properties": {
                                            "enable": {
                                                "const": true
                                            }
                                        }
                                    },
                                    "then": {
                                        "if": {
                                            "properties": {
                                                "mode": {
                                                    "const": "range"
                                                }
                                            }
                                        },
                                        "then": {
                                            "required": [
                                                "minimum",
                                                "maximum"
                                            ]
                                        }
                                    }
                                }
                            ]
                        },
                        "video_colourspace_test": {
                            "type": "object",
                            "required": [
                                "enable"
                            ],
                            "properties": {
                                "enable": {
                                    "title": "Color Space Information",
                                    "description": "Check the video has certain color space properties",
                                    "type": "boolean",
                                    "default": false
                                },
                                "color_primaries": {
                                    "title": "Color Primaries",
                                    "type": "integer",
                                    "enum": [
                                        -1,
                                        1,
                                        2,
                                        4,
                                        5,
                                        6,
                                        7,
                                        8,
                                        9,
                                        10,
                                        11,
                                        12,
                                        22,
                                        128,
                                        129,
                                        130,
                                        131
                                    ],
                                    "default": -1,
                                    "titleMap": [
                                        {
                                            "value": -1,
                                            "name": "Any"
                                        },
                                        {
                                            "value": 1,
                                            "name": "ITU-R BT.709"
                                        },
                                        {
                                            "value": 2,
                                            "name": "Unspecified"
                                        },
                                        {
                                            "value": 4,
                                            "name": "ITU-R BT.470-6 System M"
                                        },
                                        {
                                            "value": 5,
                                            "name": "ITU-R BT.601 (625)"
                                        },
                                        {
                                            "value": 6,
                                            "name": "ITU-R BT.601 (525)"
                                        },
                                        {
                                            "value": 7,
                                            "name": "SMPTE 240M"
                                        },
                                        {
                                            "value": 8,
                                            "name": "Generic film"
                                        },
                                        {
                                            "value": 9,
                                            "name": "ITU-R BT.2020"
                                        },
                                        {
                                            "value": 10,
                                            "name": "SMPTE ST 428-1"
                                        },
                                        {
                                            "value": 11,
                                            "name": "SMPTE RP 431-2 (P3-DCI)"
                                        },
                                        {
                                            "value": 12,
                                            "name": "SMPTE EG 432-1 (P3-D65)"
                                        },
                                        {
                                            "value": 22,
                                            "name": "EBU Tech. 3213-E"
                                        },
                                        {
                                            "value": 128,
                                            "name": "S-Gamut3"
                                        },
                                        {
                                            "value": 129,
                                            "name": "S-Gamut3.Cine"
                                        },
                                        {
                                            "value": 130,
                                            "name": "SMPTE ST 2065 (ACES)"
                                        },
                                        {
                                            "value": 131,
                                            "name": "P3-D60 (ACES Cinema)"
                                        }
                                    ]
                                },
                                "transfer_characteristics": {
                                    "title": "Transfer Characteristics",
                                    "type": "integer",
                                    "enum": [
                                        -1,
                                        1,
                                        2,
                                        4,
                                        5,
                                        6,
                                        7,
                                        8,
                                        9,
                                        10,
                                        11,
                                        12,
                                        13,
                                        14,
                                        15,
                                        16,
                                        17,
                                        18,
                                        128,
                                        136,
                                        152,
                                        160
                                    ],
                                    "default": -1,
                                    "titleMap": [
                                        {
                                            "value": -1,
                                            "name": "Any"
                                        },
                                        {
                                            "value": 1,
                                            "name": "ITU-R BT.709-5"
                                        },
                                        {
                                            "value": 2,
                                            "name": "Unspecified"
                                        },
                                        {
                                            "value": 4,
                                            "name": "ITU-R BT.470-6 System M"
                                        },
                                        {
                                            "value": 5,
                                            "name": "ITU-R BT.470-6 System B, G"
                                        },
                                        {
                                            "value": 6,
                                            "name": "ITU-R BT.601-6"
                                        },
                                        {
                                            "value": 7,
                                            "name": "SMPTE 240M"
                                        },
                                        {
                                            "value": 8,
                                            "name": "Linear"
                                        },
                                        {
                                            "value": 9,
                                            "name": "Log 100:1"
                                        },
                                        {
                                            "value": 10,
                                            "name": "Log 316:1"
                                        },
                                        {
                                            "value": 11,
                                            "name": "IEC 61966-2-4"
                                        },
                                        {
                                            "value": 12,
                                            "name": "ITU-R BT.1361"
                                        },
                                        {
                                            "value": 13,
                                            "name": "IEC 61966-2-1"
                                        },
                                        {
                                            "value": 14,
                                            "name": "ITU-R BT.2020 (10bit)"
                                        },
                                        {
                                            "value": 15,
                                            "name": "ITU-R BT.2020 (12bit)"
                                        },
                                        {
                                            "value": 16,
                                            "name": "SMPTE ST 2084"
                                        },
                                        {
                                            "value": 17,
                                            "name": "SMPTE ST 428-1"
                                        },
                                        {
                                            "value": 18,
                                            "name": "STD-B67 HLG"
                                        },
                                        {
                                            "value": 128,
                                            "name": "SONY S-Log"
                                        },
                                        {
                                            "value": 136,
                                            "name": "ARRI LogC"
                                        },
                                        {
                                            "value": 152,
                                            "name": "Canon Log"
                                        },
                                        {
                                            "value": 160,
                                            "name": "Panasonic V-Log"
                                        }
                                    ]
                                },
                                "matrix_coefficients": {
                                    "title": "Matrix Coefficients",
                                    "type": "integer",
                                    "enum": [
                                        -1,
                                        0,
                                        1,
                                        2,
                                        4,
                                        5,
                                        6,
                                        7,
                                        9,
                                        10,
                                        11,
                                        12,
                                        13,
                                        14,
                                        128,
                                        129
                                    ],
                                    "default": -1,
                                    "titleMap": [
                                        {
                                            "value": -1,
                                            "name": "Any"
                                        },
                                        {
                                            "value": 0,
                                            "name": "SMPTE ST 428-1"
                                        },
                                        {
                                            "value": 1,
                                            "name": "ITU-R Rec. BT.709-5"
                                        },
                                        {
                                            "value": 2,
                                            "name": "Unspecified"
                                        },
                                        {
                                            "value": 4,
                                            "name": "FCC"
                                        },
                                        {
                                            "value": 5,
                                            "name": "ITU-R Rec. BT.601-6 (625)"
                                        },
                                        {
                                            "value": 6,
                                            "name": "ITU-R Rec. BT.601-6 (525)"
                                        },
                                        {
                                            "value": 7,
                                            "name": "SMPTE 240M"
                                        },
                                        {
                                            "value": 9,
                                            "name": "ITU-R Rec. BT.2020 (non-constant luminance)"
                                        },
                                        {
                                            "value": 10,
                                            "name": "ITU-R Rec. BT.2020 (constant luminance)"
                                        },
                                        {
                                            "value": 11,
                                            "name": "SMPTE ST 2085"
                                        },
                                        {
                                            "value": 12,
                                            "name": "Chromaticity-derived (non-constant luminance)"
                                        },
                                        {
                                            "value": 13,
                                            "name": "Chromaticity-derived (constant luminance)"
                                        },
                                        {
                                            "value": 14,
                                            "name": "ITU-R BT.2100-0 ICtCp"
                                        },
                                        {
                                            "value": 128,
                                            "name": "S-Gamut3"
                                        },
                                        {
                                            "value": 129,
                                            "name": "S-Gamut3.Cine"
                                        }
                                    ]
                                }
                            },
                            "if": {
                                "properties": {
                                    "enable": {
                                        "const": true
                                    }
                                }
                            },
                            "then": {
                                "required": [
                                    "color_primaries",
                                    "transfer_characteristics",
                                    "matrix_coefficients"
                                ]
                            }
                        },
                        "video_frameaspectratio_test": {
                            "type": "object",
                            "required": [
                                "enable"
                            ],
                            "properties": {
                                "enable": {
                                    "title": "Frame Aspect Ratio",
                                    "description": "Check the aspect ratio of the displayed video frame",
                                    "type": "boolean",
                                    "default": false
                                },
                                "ratios": {
                                    "title": "All",
                                    "type": "array",
                                    "items": {
                                        "type": "integer",
                                        "enum": [
                                            0,
                                            1,
                                            2,
                                            3
                                        ],
                                        "titleMap": [
                                            {
                                                "value": 0,
                                                "name": "1.33 (4:3)"
                                            },
                                            {
                                                "value": 1,
                                                "name": "1.78 (16:9)"
                                            },
                                            {
                                                "value": 2,
                                                "name": "1.85"
                                            },
                                            {
                                                "value": 3,
                                                "name": "2.21"
                                            }
                                        ]
                                    }
                                },
                                "custom": {
                                    "title": "Custom",
                                    "type": "number"
                                }
                            },
                            "if": {
                                "properties": {
                                    "enable": {
                                        "const": true
                                    }
                                }
                            },
                            "then": {
                                "oneOf": [
                                    {
                                        "required": [
                                            "ratios"
                                        ],
                                        "not": {
                                            "required": [
                                                "custom"
                                            ]
                                        }
                                    },
                                    {
                                        "required": [
                                            "custom"
                                        ],
                                        "not": {
                                            "required": [
                                                "ratios"
                                            ]
                                        }
                                    }
                                ]
                            }
                        },
                        "video_pixelaspectratio_test": {
                            "type": "object",
                            "required": [
                                "enable"
                            ],
                            "properties": {
                                "enable": {
                                    "title": "Pixel Aspect Ratio",
                                    "description": "Check the aspect ratio of each luminance sample in the coded stream",
                                    "type": "boolean",
                                    "default": false
                                },
                                "ratios": {
                                    "title": "All",
                                    "type": "array",
                                    "items": {
                                        "type": "integer",
                                        "enum": [
                                            0,
                                            1,
                                            2,
                                            3,
                                            4,
                                            5,
                                            6,
                                            7
                                        ],
                                        "titleMap": [
                                            {
                                                "value": 0,
                                                "name": "0.89 (8:9)"
                                            },
                                            {
                                                "value": 1,
                                                "name": "0.91 (10:11)"
                                            },
                                            {
                                                "value": 2,
                                                "name": "1.00 (1:1)"
                                            },
                                            {
                                                "value": 3,
                                                "name": "1.07 (16:15)"
                                            },
                                            {
                                                "value": 4,
                                                "name": "1.19 (64:54)"
                                            },
                                            {
                                                "value": 5,
                                                "name": "1.21 (40:33)"
                                            },
                                            {
                                                "value": 6,
                                                "name": "1.33 (4:3)"
                                            },
                                            {
                                                "value": 7,
                                                "name": "1.42 (64:45)"
                                            }
                                        ]
                                    },
                                    "default": []
                                },
                                "custom": {
                                    "title": "Custom",
                                    "type": "number"
                                }
                            },
                            "if": {
                                "properties": {
                                    "enable": {
                                        "const": true
                                    }
                                }
                            },
                            "then": {
                                "oneOf": [
                                    {
                                        "required": [
                                            "ratios"
                                        ],
                                        "not": {
                                            "required": [
                                                "custom"
                                            ]
                                        }
                                    },
                                    {
                                        "required": [
                                            "custom"
                                        ],
                                        "not": {
                                            "required": [
                                                "ratios"
                                            ]
                                        }
                                    }
                                ]
                            }
                        },
                        "video_parfarcompare_test": {
                            "type": "object",
                            "required": [
                                "enable"
                            ],
                            "properties": {
                                "enable": {
                                    "title": "Pixel to Frame Aspect Ratio Comparison",
                                    "description": "Check for possible anamorphic video in a 4:3 frame",
                                    "type": "boolean",
                                    "default": false
                                }
                            }
                        },
                        "video_singlesampledescription_test": {
                            "type": "object",
                            "required": [
                                "enable"
                            ],
                            "properties": {
                                "enable": {
                                    "title": "Single Sample Description",
                                    "description": "Check for the presence of multiple Sample Descriptions in the MOV/MP4 track metadata",
                                    "type": "boolean",
                                    "default": false
                                }
                            }
                        },
                        "video_referenceframes_test": {
                            "type": "object",
                            "required": [
                                "enable"
                            ],
                            "properties": {
                                "enable": {
                                    "title": "Video Reference Frames",
                                    "description": "Check for the the maximum number of reference frames in AVC or HEVC video streams",
                                    "type": "boolean",
                                    "default": false
                                },
                                "maximum": {
                                    "title": "Maximum Reference frame count",
                                    "type": "integer",
                                    "default": 1,
                                    "minimum": 1
                                }
                            },
                            "if": {
                                "properties": {
                                    "enable": {
                                        "const": true
                                    }
                                }
                            },
                            "then": {
                                "required": [
                                    "maximum"
                                ]
                            }
                        },
                        "video_subsampling_test": {
                            "type": "object",
                            "required": [
                                "enable"
                            ],
                            "properties": {
                                "enable": {
                                    "title": "Chroma Subsampling Format",
                                    "description": "Check the chroma subsampling format used in the input file. Only applicable for YUV-based video",
                                    "type": "boolean",
                                    "default": false
                                },
                                "subsampling": {
                                    "title": "All",
                                    "type": "array",
                                    "items": {
                                        "type": "integer",
                                        "enum": [
                                            0,
                                            1,
                                            2,
                                            3
                                        ],
                                        "titleMap": [
                                            {
                                                "value": 0,
                                                "name": "4:1:1"
                                            },
                                            {
                                                "value": 1,
                                                "name": "4:2:0"
                                            },
                                            {
                                                "value": 2,
                                                "name": "4:2:2"
                                            },
                                            {
                                                "value": 3,
                                                "name": "4:4:4"
                                            }
                                        ]
                                    }
                                }
                            },
                            "if": {
                                "properties": {
                                    "enable": {
                                        "const": true
                                    }
                                }
                            },
                            "then": {
                                "required": [
                                    "subsampling"
                                ]
                            }
                        },
                        "video_trackid_test": {
                            "type": "object",
                            "required": [
                                "enable"
                            ],
                            "properties": {
                                "enable": {
                                    "title": "Track ID",
                                    "description": "Check the ID of the video track within its container format",
                                    "type": "boolean",
                                    "default": false
                                },
                                "option": {
                                    "title": "Video Track ID",
                                    "type": "integer"
                                }
                            },
                            "allOf": [
                                {
                                    "if": {
                                        "properties": {
                                            "enable": {
                                                "const": true
                                            }
                                        }
                                    },
                                    "then": {
                                        "required": [
                                            "option"
                                        ]
                                    }
                                }
                            ]
                        },
                        "video_tvmpaarating_test": {
                            "type": "object",
                            "required": [
                                "enable"
                            ],
                            "properties": {
                                "enable": {
                                    "title": "TV/MPAA Rating",
                                    "description": "Check the Content Advisory Packet from the caption data packet in the video stream",
                                    "type": "boolean",
                                    "default": false
                                },
                                "mpaa": {
                                    "title": "MPAA",
                                    "type": "array",
                                    "items": {
                                        "type": "integer",
                                        "enum": [
                                            0,
                                            1,
                                            2,
                                            3,
                                            4,
                                            5,
                                            6,
                                            7
                                        ],
                                        "titleMap": [
                                            {
                                                "value": 0,
                                                "name": "N/A"
                                            },
                                            {
                                                "value": 1,
                                                "name": "G"
                                            },
                                            {
                                                "value": 2,
                                                "name": "PG"
                                            },
                                            {
                                                "value": 3,
                                                "name": "PG-13"
                                            },
                                            {
                                                "value": 4,
                                                "name": "R"
                                            },
                                            {
                                                "value": 5,
                                                "name": "NC-17"
                                            },
                                            {
                                                "value": 6,
                                                "name": "X"
                                            },
                                            {
                                                "value": 7,
                                                "name": "Not Rated"
                                            }
                                        ]
                                    }
                                },
                                "ustv": {
                                    "title": "US TV",
                                    "type": "array",
                                    "items": {
                                        "type": "integer",
                                        "enum": [
                                            0,
                                            1,
                                            2,
                                            3,
                                            4,
                                            5,
                                            6
                                        ],
                                        "titleMap": [
                                            {
                                                "value": 0,
                                                "name": "None"
                                            },
                                            {
                                                "value": 1,
                                                "name": "TV-Y"
                                            },
                                            {
                                                "value": 2,
                                                "name": "TV-Y7"
                                            },
                                            {
                                                "value": 3,
                                                "name": "TV-G"
                                            },
                                            {
                                                "value": 4,
                                                "name": "TV-PG"
                                            },
                                            {
                                                "value": 5,
                                                "name": "TV-14"
                                            },
                                            {
                                                "value": 6,
                                                "name": "TV-MA"
                                            }
                                        ]
                                    }
                                },
                                "reserved": {
                                    "title": "Reserved for Non-North American ratings",
                                    "type": "boolean",
                                    "default": false
                                }
                            },
                            "allOf": [
                                {
                                    "if": {
                                        "properties": {
                                            "enable": {
                                                "const": true
                                            }
                                        }
                                    },
                                    "then": {
                                        "required": [
                                            "reserved"
                                        ]
                                    }
                                },
                                {
                                    "if": {
                                        "properties": {
                                            "enable": {
                                                "const": true
                                            }
                                        }
                                    },
                                    "then": {
                                        "anyOf": [
                                            {
                                                "required": [
                                                    "ustv"
                                                ],
                                                "properties": {
                                                    "ustv": {
                                                        "minItems": 1
                                                    }
                                                }
                                            },
                                            {
                                                "required": [
                                                    "mpaa"
                                                ],
                                                "properties": {
                                                    "mpaa": {
                                                        "minItems": 1
                                                    }
                                                }
                                            },
                                            {
                                                "properties": {
                                                    "reserved": {
                                                        "const": true
                                                    }
                                                }
                                            }
                                        ]
                                    }
                                }
                            ]
                        }
                    }
                }
            },
            "additionalProperties": false,
            "type": "object",
            "description": "List of tests to run"
        }
    },
    "additionalProperties": false,
    "required": [
        "name",
        "tests",
        "engine_version"
    ]
}

QC Engine Version 2023.3.2

{
    "$schema": "http://json-schema.org/schema#",
    "title": "Templates Schema",
    "type": "object",
    "description": "Represents a Qualify job template",
    "definitions": {
        "audio_program": {
            "type": "array",
            "items": {
                "type": "integer",
                "enum": [
                    0,
                    1,
                    2,
                    3,
                    4,
                    5,
                    6,
                    7,
                    8,
                    9,
                    10,
                    11,
                    12,
                    13,
                    14,
                    15,
                    16,
                    17,
                    18,
                    19,
                    20,
                    65,
                    66,
                    68,
                    69,
                    70,
                    33,
                    34,
                    35
                ]
            }
        },
        "audio_mapping": {
            "type": "array",
            "items": {
                "$ref": "#/definitions/audio_program"
            }
        },
        "audio_layout": {
            "type": [
                "object",
                "null"
            ],
            "properties": {
                "name": {
                    "type": "string"
                },
                "layout": {
                    "type": "array",
                    "items": {
                        "$ref": "#/definitions/audio_mapping"
                    }
                }
            },
            "required": [
                "name",
                "layout"
            ]
        },
        "package_layout": {
            "type": [
                "object",
                "null"
            ],
            "properties": {
                "name": {
                    "type": "string"
                },
                "video_index": {
                    "description": "Index of video track from ABR manifest file that will be used in checks\n",
                    "type": "integer",
                    "minimum": 1
                },
                "audio_indexes": {
                    "description": "Index of audio track from ABR manifest file that will be  used in checks\n",
                    "type": "array",
                    "items": {
                        "type": "integer",
                        "minimum": 1
                    }
                },
                "subtitle_indexes": {
                    "description": "Index of subtitle track from ABR manifest file that will be used in check\n",
                    "type": "array",
                    "items": {
                        "type": "integer",
                        "minimum": 1
                    }
                }
            },
            "required": [
                "name",
                "video_index",
                "audio_indexes",
                "subtitle_indexes"
            ]
        },
        "audio_description_test_config": {
            "type": "object",
            "required": [
                "audio_track",
                "dolbye_program",
                "description",
                "control"
            ],
            "properties": {
                "audio_track": {
                    "$ref": "#/definitions/audio_track"
                },
                "dolbye_program": {
                    "$ref": "#/definitions/dolbye_program"
                },
                "description": {
                    "title": "Audio Description Channel",
                    "description": "The channel where the Audio Description should be present",
                    "type": "integer",
                    "minimum": 1
                },
                "control": {
                    "title": "Control Channel",
                    "description": "The channel where the Audio Description Control should be present",
                    "type": "integer",
                    "minimum": 1
                },
                "advanced": {
                    "title": "Advanced",
                    "description": "Enable advanced options",
                    "type": "boolean",
                    "default": false
                },
                "ctrl_frequency": {
                    "title": "Control channel Frequency",
                    "description": "The expected frequency of the Control channel",
                    "type": "number",
                    "default": 1280,
                    "suffix": "Hz"
                },
                "ctrl_frequency_tolerance": {
                    "title": "Control channel Frequency Tolerance",
                    "description": "The tolerance of the Control channel frequency",
                    "type": "number",
                    "default": 20,
                    "suffix": "Hz"
                },
                "ctrl_amplitude": {
                    "title": "Control channel Amplitude",
                    "description": "The expected amplitude of the Control channel",
                    "type": "number",
                    "default": -36,
                    "suffix": "dBFS"
                },
                "ctrl_amplitude_tolerance": {
                    "title": "Control channel Amplitude Tolerance",
                    "description": "The tolerance of the Control channel amplitude",
                    "type": "number",
                    "default": 3,
                    "suffix": "dB"
                }
            }
        },
        "blackframe_range": {
            "allOf": [
                {
                    "$ref": "#/definitions/tolerant_range"
                },
                {
                    "properties": {
                        "range_type": {
                            "title": "Must Be",
                            "$ref": "#/definitions/base_range_type",
                            "titleMap": [
                                {
                                    "value": 0,
                                    "name": "Black"
                                },
                                {
                                    "value": 1,
                                    "name": "Not Black"
                                },
                                {
                                    "value": 2,
                                    "name": "Any"
                                }
                            ]
                        }
                    }
                },
                {
                    "allOf": [
                        {
                            "if": {
                                "properties": {
                                    "layout": {
                                        "enum": [
                                            "0"
                                        ]
                                    }
                                }
                            },
                            "then": {
                                "required": [
                                    "start",
                                    "end",
                                    "tolerance",
                                    "units",
                                    "range_type"
                                ]
                            }
                        },
                        {
                            "if": {
                                "properties": {
                                    "layout": {
                                        "enum": [
                                            "1"
                                        ]
                                    }
                                }
                            },
                            "then": {
                                "required": [
                                    "start_from_end",
                                    "duration",
                                    "tolerance",
                                    "units",
                                    "range_type"
                                ]
                            }
                        }
                    ]
                }
            ]
        },
        "channel_position_test_config": {
            "type": "object",
            "required": [
                "audio_track",
                "dolbye_program"
            ],
            "properties": {
                "audio_track": {
                    "$ref": "#/definitions/audio_track"
                },
                "dolbye_program": {
                    "$ref": "#/definitions/dolbye_program"
                },
                "min_center_freq": {
                    "title": "Minimum center channel frequency",
                    "type": "number",
                    "description": "Minimum center frequency",
                    "default": 80,
                    "minimum": 0
                },
                "max_center_freq": {
                    "title": "Maximum center channel frequency",
                    "type": "number",
                    "description": "Maximum center frequency",
                    "default": 6000,
                    "minimum": 0
                },
                "min_lfe_freq": {
                    "title": "Minimum LFE channel frequency",
                    "type": "number",
                    "description": "Minimum LFE frequency",
                    "default": 3,
                    "minimum": 0
                },
                "max_lfe_freq": {
                    "title": "Maximum LFE channel frequency",
                    "type": "number",
                    "description": "Maximum LFE frequency",
                    "default": 120,
                    "minimum": 0
                }
            }
        },
        "clicksandpops_test_config": {
            "type": "object",
            "required": [
                "audio_track",
                "dolbye_program",
                "sensitivity"
            ],
            "properties": {
                "audio_track": {
                    "$ref": "#/definitions/audio_track"
                },
                "dolbye_program": {
                    "$ref": "#/definitions/dolbye_program"
                },
                "channel_mask": {
                    "$ref": "#/definitions/channel_mask"
                },
                "sensitivity": {
                    "$ref": "#/definitions/sensitivity"
                }
            }
        },
        "clipping_test_config": {
            "type": "object",
            "required": [
                "audio_track",
                "dolbye_program",
                "sensitivity",
                "percentage_check"
            ],
            "properties": {
                "audio_track": {
                    "$ref": "#/definitions/audio_track"
                },
                "dolbye_program": {
                    "$ref": "#/definitions/dolbye_program"
                },
                "channel_mask": {
                    "$ref": "#/definitions/channel_mask"
                },
                "min_threshold": {
                    "type": "number",
                    "description": "Specify custom value where samples are suppressed and do not count towards the clipping test",
                    "suffix": "dB",
                    "default": -60.0,
                    "minimum": -100
                },
                "sensitivity": {
                    "$ref": "#/definitions/customizable_sensitivity",
                    "description": "Determines the number of successive samples which must be equal before the sequence is deemed to contain clipping. Choose between High (least number of samples), Medium, and Low (most number of samples)"
                },
                "custom_sensitivity": {
                    "type": "number",
                    "description": "Specify custom value for successive samples which must be equal before the sequence is deemed to contain clipping"
                },
                "units": {
                    "type": "integer",
                    "title": "Custom Sensitivity Units",
                    "enum": [
                        0,
                        1
                    ],
                    "default": 0,
                    "titleMap": [
                        {
                            "value": 0,
                            "name": "Samples"
                        },
                        {
                            "value": 1,
                            "name": "Milliseconds"
                        }
                    ]
                },
                "percentage_check": {
                    "title": "Percentage Check",
                    "type": "boolean",
                    "default": false
                },
                "percentage": {
                    "title": "Percentage",
                    "type": "number",
                    "minimum": 0,
                    "maximum": 100.0,
                    "default": 1,
                    "suffix": "%"
                }
            },
            "allOf": [
                {
                    "if": {
                        "properties": {
                            "sensitivity": {
                                "const": 3
                            }
                        }
                    },
                    "then": {
                        "required": [
                            "custom_sensitivity",
                            "units"
                        ]
                    }
                },
                {
                    "if": {
                        "properties": {
                            "percentage_check": {
                                "const": true
                            }
                        }
                    },
                    "then": {
                        "required": [
                            "percentage"
                        ]
                    }
                },
                {
                    "if": {
                        "properties": {
                            "units": {
                                "const": 0
                            }
                        }
                    },
                    "then": {
                        "properties": {
                            "custom_sensitivity": {
                                "minimum": 2
                            }
                        }
                    }
                },
                {
                    "if": {
                        "properties": {
                            "units": {
                                "const": 1
                            }
                        }
                    },
                    "then": {
                        "properties": {
                            "custom_sensitivity": {
                                "minimum": 0.1
                            }
                        }
                    }
                }
            ]
        },
        "colorbar_range": {
            "allOf": [
                {
                    "$ref": "#/definitions/tolerant_range"
                },
                {
                    "properties": {
                        "range_type": {
                            "title": "Must Be",
                            "$ref": "#/definitions/base_range_type",
                            "titleMap": [
                                {
                                    "value": 0,
                                    "name": "ColorBars"
                                },
                                {
                                    "value": 1,
                                    "name": "Not ColorBars"
                                },
                                {
                                    "value": 2,
                                    "name": "Any"
                                }
                            ]
                        }
                    }
                },
                {
                    "allOf": [
                        {
                            "if": {
                                "properties": {
                                    "layout": {
                                        "enum": [
                                            "0"
                                        ]
                                    }
                                }
                            },
                            "then": {
                                "required": [
                                    "start",
                                    "end",
                                    "tolerance",
                                    "units",
                                    "range_type"
                                ]
                            }
                        },
                        {
                            "if": {
                                "properties": {
                                    "layout": {
                                        "enum": [
                                            "1"
                                        ]
                                    }
                                }
                            },
                            "then": {
                                "required": [
                                    "start_from_end",
                                    "duration",
                                    "tolerance",
                                    "units",
                                    "range_type"
                                ]
                            }
                        }
                    ]
                }
            ]
        },
        "gop_structure": {
            "type": "object",
            "properties": {
                "i_distance": {
                    "title": "I-Frame distance",
                    "type": "string"
                },
                "p_distance": {
                    "title": "P-Frame distance",
                    "type": "string"
                },
                "open_closed": {
                    "title": "Open/Closed",
                    "type": "integer",
                    "enum": [
                        0,
                        1,
                        2
                    ],
                    "default": 0,
                    "titleMap": [
                        {
                            "value": 0,
                            "name": "Either"
                        },
                        {
                            "value": 1,
                            "name": "Open"
                        },
                        {
                            "value": 2,
                            "name": "Closed"
                        }
                    ]
                }
            }
        },
        "timecode": {
            "type": "string",
            "default": "00:00:00:00",
            "pattern": "^[0-9]{2}:[0-9]{2}:[0-9]{2}[;:.][0-9]{2,3}$"
        },
        "bool_false": {
            "type": "boolean",
            "default": false
        },
        "bool_true": {
            "type": "boolean",
            "default": true
        },
        "bool_optional": {
            "type": "integer",
            "enum": [
                0,
                1,
                2
            ],
            "default": 0
        },
        "bool_extended": {
            "type": "integer",
            "enum": [
                0,
                1,
                2,
                3
            ],
            "default": 2
        },
        "allowed_disallowed_required": {
            "$ref": "#/definitions/bool_optional",
            "titleMap": [
                {
                    "value": 0,
                    "name": "Allowed"
                },
                {
                    "value": 1,
                    "name": "Disallowed"
                },
                {
                    "value": 2,
                    "name": "Required"
                }
            ]
        },
        "rational": {
            "type": "object",
            "required": [
                "num",
                "denom"
            ],
            "properties": {
                "num": {
                    "title": "Numerator",
                    "type": "integer",
                    "minimum": 0,
                    "default": 0
                },
                "denom": {
                    "title": "Denominator",
                    "type": "integer",
                    "minimum": 1,
                    "default": 1
                }
            }
        },
        "minmax": {
            "type": "object",
            "properties": {
                "min": {
                    "title": "Minimum",
                    "type": "integer",
                    "minimum": 0,
                    "default": 0
                },
                "max": {
                    "title": "Maximum",
                    "type": "integer",
                    "minimum": 0,
                    "default": 0
                }
            }
        },
        "minmax_bits": {
            "type": "object",
            "properties": {
                "min": {
                    "title": "Minimum",
                    "type": "integer",
                    "minimum": 0,
                    "default": 0,
                    "suffix": "bits per second"
                },
                "max": {
                    "title": "Maximum",
                    "type": "integer",
                    "minimum": 0,
                    "default": 0,
                    "suffix": "bits per second"
                }
            }
        },
        "audio_track": {
            "title": "Mix",
            "type": "integer",
            "description": "Audio mix to test",
            "minimum": 1,
            "default": 1
        },
        "dolbye_program": {
            "title": "DolbyE Program",
            "type": "integer",
            "description": "DolbyE program to test (only for DolbyE mixes)",
            "minimum": 1,
            "default": 1
        },
        "channel_mask": {
            "title": "Channel Selection",
            "type": "string",
            "pattern": "^$|^\\s*\\d+\\s*(,\\s*\\d+\\s*)*$",
            "description": "Select channels using comma separated numbers. Leave empty to select all."
        },
        "time_units": {
            "type": "integer",
            "description": "Test in seconds or frames",
            "enum": [
                0,
                1
            ],
            "default": 0,
            "titleMap": [
                {
                    "value": 0,
                    "name": "Seconds"
                },
                {
                    "value": 1,
                    "name": "Frames"
                }
            ]
        },
        "base_range_type": {
            "type": "integer",
            "enum": [
                0,
                1,
                2
            ],
            "default": 0
        },
        "range_limit": {
            "type": "number",
            "default": 0,
            "minimum": 0
        },
        "base_range": {
            "type": "object",
            "required": [
                "layout"
            ],
            "properties": {
                "layout": {
                    "title": "Layout",
                    "type": "string",
                    "enum": [
                        "0",
                        "1"
                    ],
                    "default": "0",
                    "titleMap": [
                        {
                            "value": "0",
                            "name": "Test Fixed Duration"
                        },
                        {
                            "value": "1",
                            "name": "Test End Of File"
                        }
                    ]
                },
                "start": {
                    "title": "Starts At",
                    "$ref": "#/definitions/range_limit"
                },
                "end": {
                    "title": "Ends At",
                    "$ref": "#/definitions/range_limit"
                },
                "start_from_end": {
                    "title": "Test Last",
                    "$ref": "#/definitions/range_limit"
                },
                "duration": {
                    "title": "With Duration",
                    "$ref": "#/definitions/range_limit"
                },
                "units": {
                    "title": "Time Units",
                    "$ref": "#/definitions/time_units"
                }
            }
        },
        "tolerant_range": {
            "allOf": [
                {
                    "$ref": "#/definitions/base_range"
                },
                {
                    "properties": {
                        "tolerance": {
                            "title": "Tolerance +/-",
                            "type": "number",
                            "default": 0,
                            "minimum": 0
                        }
                    }
                }
            ]
        },
        "video_bit_depth": {
            "type": "integer",
            "enum": [
                8,
                10,
                12,
                14
            ],
            "default": 8
        },
        "level_8_bit": {
            "title": "Black Level",
            "type": "integer",
            "minimum": 0,
            "maximum": 255,
            "default": 16
        },
        "level_10_bit": {
            "title": "Black Level",
            "type": "integer",
            "minimum": 0,
            "maximum": 1023,
            "default": 64
        },
        "level_12_bit": {
            "title": "Black Level",
            "type": "integer",
            "minimum": 0,
            "maximum": 4095,
            "default": 256
        },
        "level_14_bit": {
            "title": "Black Level",
            "type": "integer",
            "minimum": 0,
            "maximum": 16383,
            "default": 1024
        },
        "max_black_level_8_bit": {
            "title": "Max Black Level",
            "type": "integer",
            "minimum": 0,
            "maximum": 255,
            "default": 235
        },
        "max_black_level_10_bit": {
            "title": "Max Black Level",
            "type": "integer",
            "minimum": 0,
            "maximum": 1023,
            "default": 940
        },
        "max_black_level_12_bit": {
            "title": "Max Black Level",
            "type": "integer",
            "minimum": 0,
            "maximum": 4095,
            "default": 3760
        },
        "max_black_level_14_bit": {
            "title": "Max Black Level",
            "type": "integer",
            "minimum": 0,
            "maximum": 16383,
            "default": 15040
        },
        "warnings_as": {
            "title": "Treat Warnings as",
            "type": "integer",
            "enum": [
                0,
                1,
                2
            ],
            "titleMap": [
                {
                    "value": 0,
                    "name": "Info"
                },
                {
                    "value": 1,
                    "name": "Warning"
                },
                {
                    "value": 2,
                    "name": "Error"
                }
            ],
            "default": 1
        },
        "sensitivity": {
            "title": "Sensitivity",
            "type": "integer",
            "description": "A High sensitivity will find more problems but could also find more false positives. A Low sensitivity will only detect more obvious problems",
            "enum": [
                0,
                1,
                2
            ],
            "default": 1,
            "titleMap": [
                {
                    "value": 0,
                    "name": "Low"
                },
                {
                    "value": 1,
                    "name": "Medium"
                },
                {
                    "value": 2,
                    "name": "High"
                }
            ]
        },
        "customizable_sensitivity": {
            "title": "Sensitivity",
            "type": "integer",
            "enum": [
                0,
                1,
                2,
                3
            ],
            "default": 1,
            "titleMap": [
                {
                    "value": 0,
                    "name": "Low"
                },
                {
                    "value": 1,
                    "name": "Medium"
                },
                {
                    "value": 2,
                    "name": "High"
                },
                {
                    "value": 3,
                    "name": "Custom"
                }
            ]
        },
        "dialnorm_test_config": {
            "type": "object",
            "required": [
                "audio_track",
                "dolbye_program",
                "minimum",
                "maximum"
            ],
            "properties": {
                "audio_track": {
                    "$ref": "#/definitions/audio_track"
                },
                "dolbye_program": {
                    "$ref": "#/definitions/dolbye_program"
                },
                "minimum": {
                    "title": "Minimum Dialnorm Value",
                    "description": "Minimum valid dialnorm value is 1",
                    "type": "integer",
                    "minimum": 1,
                    "maximum": 31
                },
                "maximum": {
                    "title": "Maximum Dialnorm Value",
                    "description": "Maximum valid dialnorm value is 31",
                    "type": "integer",
                    "minimum": 1,
                    "maximum": 31
                }
            }
        },
        "dualmono_test_config": {
            "type": "object",
            "required": [
                "audio_track",
                "dolbye_program"
            ],
            "properties": {
                "audio_track": {
                    "$ref": "#/definitions/audio_track"
                },
                "dolbye_program": {
                    "$ref": "#/definitions/dolbye_program"
                },
                "tolerance": {
                    "title": "Tolerance Window",
                    "type": "number",
                    "default": 1,
                    "description": "A dual mono section lasting less than this time window will be ignored."
                }
            }
        },
        "freezeframe_range": {
            "allOf": [
                {
                    "$ref": "#/definitions/tolerant_range"
                },
                {
                    "properties": {
                        "range_type": {
                            "title": "Must Be",
                            "$ref": "#/definitions/base_range_type",
                            "titleMap": [
                                {
                                    "value": 0,
                                    "name": "Freeze"
                                },
                                {
                                    "value": 1,
                                    "name": "Not Freeze"
                                },
                                {
                                    "value": 2,
                                    "name": "Any"
                                }
                            ]
                        }
                    }
                },
                {
                    "allOf": [
                        {
                            "if": {
                                "properties": {
                                    "layout": {
                                        "enum": [
                                            "0"
                                        ]
                                    }
                                }
                            },
                            "then": {
                                "required": [
                                    "start",
                                    "end",
                                    "tolerance",
                                    "units",
                                    "range_type"
                                ]
                            }
                        },
                        {
                            "if": {
                                "properties": {
                                    "layout": {
                                        "enum": [
                                            "1"
                                        ]
                                    }
                                }
                            },
                            "then": {
                                "required": [
                                    "start_from_end",
                                    "duration",
                                    "tolerance",
                                    "units",
                                    "range_type"
                                ]
                            }
                        }
                    ]
                }
            ]
        },
        "integrated_loudness_test_config": {
            "type": "object",
            "required": [
                "audio_track",
                "dolbye_program"
            ],
            "properties": {
                "audio_track": {
                    "$ref": "#/definitions/audio_track"
                },
                "dolbye_program": {
                    "$ref": "#/definitions/dolbye_program"
                },
                "level": {
                    "title": "Loudness Level",
                    "description": "Specify the loudness (and tolerance range) within which loudness must lie",
                    "type": "number",
                    "default": -20.0,
                    "suffix": "dB"
                },
                "tolerance": {
                    "title": "Loudness Tolerance",
                    "description": "Specify the loudness (and tolerance range) within which loudness must lie",
                    "type": "number",
                    "default": 2.0,
                    "minimum": 0.0,
                    "suffix": "dB"
                },
                "mode": {
                    "title": "Loudness Mode",
                    "description": "Select standard to use for measuring integrated loudness",
                    "type": "integer",
                    "enum": [
                        0,
                        1,
                        2,
                        3,
                        4
                    ],
                    "default": 0,
                    "titleMap": [
                        {
                            "value": 0,
                            "name": "ITU 1770-4 / EBU I"
                        },
                        {
                            "value": 1,
                            "name": "ITU 1770-1"
                        },
                        {
                            "value": 3,
                            "name": "ITU 1770-2"
                        },
                        {
                            "value": 4,
                            "name": "ITU 1770-3"
                        },
                        {
                            "value": 2,
                            "name": "ARIB TR-B32"
                        }
                    ]
                },
                "dialog_gating": {
                    "title": "Dialog Gating",
                    "description": "Measure loudness only when dialog is present",
                    "type": "boolean"
                }
            }
        },
        "loudness_range_test_config": {
            "type": "object",
            "required": [
                "audio_track",
                "dolbye_program"
            ],
            "description": "Measure the variation in loudness over the duration of a file. The algorithm is specified in EBU-Tech 3342 and produces an output Loudness Range ('LRA') in terms of Loudness Units ('LU')",
            "properties": {
                "audio_track": {
                    "$ref": "#/definitions/audio_track"
                },
                "dolbye_program": {
                    "$ref": "#/definitions/dolbye_program"
                },
                "check_min": {
                    "title": "Check Minimum",
                    "type": "boolean"
                },
                "min_range": {
                    "title": "Min",
                    "description": "Minimum permitted loudness range",
                    "type": "number",
                    "suffix": "LU"
                },
                "check_max": {
                    "title": "Check Maximum",
                    "type": "boolean"
                },
                "max_range": {
                    "title": "Max",
                    "description": "Maximum permitted loudness range",
                    "type": "number",
                    "suffix": "LU"
                }
            },
            "allOf": [
                {
                    "if": {
                        "properties": {
                            "check_min": {
                                "const": true
                            }
                        }
                    },
                    "then": {
                        "required": [
                            "min_range"
                        ]
                    }
                },
                {
                    "if": {
                        "properties": {
                            "check_max": {
                                "const": true
                            }
                        }
                    },
                    "then": {
                        "required": [
                            "max_range"
                        ]
                    }
                }
            ]
        },
        "minlevel_test_config": {
            "type": "object",
            "required": [
                "audio_track",
                "dolbye_program",
                "minlevel_elsewhere",
                "level",
                "duration",
                "units"
            ],
            "description": "Checks if the RMS level for a given channel drops below the given level for a window longer than the given duration",
            "properties": {
                "audio_track": {
                    "$ref": "#/definitions/audio_track"
                },
                "dolbye_program": {
                    "$ref": "#/definitions/dolbye_program"
                },
                "channel_mask": {
                    "$ref": "#/definitions/channel_mask"
                },
                "minlevel_elsewhere": {
                    "title": "Test whole file",
                    "description": "Evaluate minimum level across the whole file",
                    "type": "boolean",
                    "default": true
                },
                "level": {
                    "title": "Min Level Threshold (dBFS)",
                    "type": "number",
                    "default": -70.0,
                    "description": "The minimum acceptable level over the window duration, in dBFS RMS."
                },
                "duration": {
                    "title": "Window Duration",
                    "$ref": "#/definitions/range_limit"
                },
                "units": {
                    "title": "Time Units",
                    "$ref": "#/definitions/time_units"
                },
                "ranges": {
                    "title": "Range",
                    "type": "array",
                    "default": [],
                    "items": {
                        "$ref": "#/definitions/minlevel_range"
                    }
                }
            }
        },
        "minlevel_range": {
            "allOf": [
                {
                    "$ref": "#/definitions/base_range"
                },
                {
                    "properties": {
                        "range_type": {
                            "title": "Test for minimum level",
                            "type": "integer",
                            "enum": [
                                0,
                                2
                            ],
                            "default": 0,
                            "titleMap": [
                                {
                                    "value": 0,
                                    "name": "Should be below"
                                },
                                {
                                    "value": 2,
                                    "name": "Don't care"
                                }
                            ]
                        }
                    }
                },
                {
                    "allOf": [
                        {
                            "if": {
                                "properties": {
                                    "layout": {
                                        "enum": [
                                            "0"
                                        ]
                                    }
                                }
                            },
                            "then": {
                                "required": [
                                    "start",
                                    "end",
                                    "units",
                                    "range_type"
                                ]
                            }
                        },
                        {
                            "if": {
                                "properties": {
                                    "layout": {
                                        "enum": [
                                            "1"
                                        ]
                                    }
                                }
                            },
                            "then": {
                                "required": [
                                    "start_from_end",
                                    "duration",
                                    "units",
                                    "range_type"
                                ]
                            }
                        }
                    ]
                }
            ]
        },
        "momentary_loudness_test_config": {
            "type": "object",
            "required": [
                "audio_track",
                "dolbye_program"
            ],
            "properties": {
                "audio_track": {
                    "$ref": "#/definitions/audio_track"
                },
                "dolbye_program": {
                    "$ref": "#/definitions/dolbye_program"
                },
                "level": {
                    "title": "Loudness Level",
                    "type": "number",
                    "default": -20.0,
                    "suffix": "dB"
                },
                "violations": {
                    "title": "Report Violations",
                    "description": "Max Violations will report only the worst violation",
                    "type": "integer",
                    "enum": [
                        0,
                        1
                    ],
                    "titleMap": [
                        {
                            "value": 0,
                            "name": "Max Only"
                        },
                        {
                            "value": 1,
                            "name": "All Violations"
                        }
                    ],
                    "default": 0
                }
            }
        },
        "timecode_track_test": {
            "type": "object",
            "required": [
                "continuity"
            ],
            "properties": {
                "continuity": {
                    "title": "Structural Continuity",
                    "type": "boolean",
                    "default": false
                },
                "dropframe": {
                    "title": "Drop Frame",
                    "$ref": "#/definitions/bool_optional",
                    "titleMap": [
                        {
                            "value": 0,
                            "name": "Don't Test"
                        },
                        {
                            "value": 1,
                            "name": "False"
                        },
                        {
                            "value": 2,
                            "name": "True"
                        }
                    ],
                    "default": 0
                }
            }
        },
        "location_test": {
            "type": "object",
            "properties": {
                "header": {
                    "title": "Header Partition",
                    "$ref": "#/definitions/allowed_disallowed_required"
                },
                "body": {
                    "title": "Body Partition(s)",
                    "$ref": "#/definitions/allowed_disallowed_required"
                },
                "exclude_first": {
                    "title": "Exclude First Body Partition",
                    "type": "boolean",
                    "default": false
                },
                "footer": {
                    "title": "Footer Partition",
                    "$ref": "#/definitions/allowed_disallowed_required"
                },
                "is_repeated": {
                    "title": "Repeated footer partition",
                    "type": "boolean",
                    "default": false
                },
                "present": {
                    "title": "Present In At Least One",
                    "type": "boolean",
                    "default": false
                }
            }
        },
        "partition_status_test": {
            "type": "object",
            "properties": {
                "closedcomplete": {
                    "title": "Closed / Complete",
                    "type": "boolean"
                },
                "openincomplete": {
                    "title": "Open / Incomplete",
                    "type": "boolean"
                },
                "closedincomplete": {
                    "title": "Closed / Incomplete",
                    "type": "boolean"
                },
                "opencomplete": {
                    "title": "Open / Complete",
                    "type": "boolean"
                },
                "notpresent": {
                    "title": "Not Present",
                    "type": "boolean"
                }
            }
        },
        "pic_frame_size": {
            "type": "object",
            "properties": {
                "size": {
                    "title": "Frame Size",
                    "type": "string",
                    "pattern": "^\\d+x|X\\d+$",
                    "suffix": "(WxH)  e.g. 1920x544"
                }
            }
        },
        "sid": {
            "type": "string",
            "pattern": "^$|^\\s*\\d+\\s*(,\\s*\\d+\\s*)*$",
            "description": "Leave blank for any"
        },
        "nielsen_test_config": {
            "type": "object",
            "required": [
                "audio_track",
                "dolbye_program"
            ],
            "properties": {
                "audio_track": {
                    "$ref": "#/definitions/audio_track"
                },
                "dolbye_program": {
                    "$ref": "#/definitions/dolbye_program"
                },
                "channel_mask": {
                    "$ref": "#/definitions/channel_mask"
                },
                "naes2": {
                    "title": "NAES 2",
                    "type": "boolean",
                    "default": false,
                    "description": "Detects and reports N2 watermarks"
                },
                "naes2_sids": {
                    "$ref": "#/definitions/sid"
                },
                "naes6": {
                    "title": "NAES 6",
                    "type": "boolean",
                    "default": false,
                    "description": "Detects and reports Nielsen Watermark TAM** Codes (NW) and Nielsen Watermark Commercial Codes (NWCC)"
                },
                "naes6_sids": {
                    "$ref": "#/definitions/sid"
                }
            }
        },
        "peak_test_config": {
            "type": "object",
            "required": [
                "audio_track",
                "dolbye_program"
            ],
            "properties": {
                "audio_track": {
                    "$ref": "#/definitions/audio_track"
                },
                "dolbye_program": {
                    "$ref": "#/definitions/dolbye_program"
                },
                "channel_mask": {
                    "$ref": "#/definitions/channel_mask"
                },
                "min_peak_enable": {
                    "title": "Min Peak Enable",
                    "type": "boolean"
                },
                "min_peak_level": {
                    "title": "Min Peak Level",
                    "description": "Minimum acceptable peak level",
                    "type": "number"
                },
                "max_peak_enable": {
                    "title": "Max Peak Enable",
                    "type": "boolean"
                },
                "max_peak_level": {
                    "title": "Max Peak Level",
                    "description": "Maximum acceptable peak level",
                    "type": "number"
                },
                "peak_type": {
                    "title": "Peak Type",
                    "description": "dbTP (True Peak) as per Annex 2 of ITU-R BS.1770-1 or in dbFS (Full Scale)",
                    "type": "integer",
                    "enum": [
                        0,
                        1
                    ],
                    "titleMap": [
                        {
                            "value": 0,
                            "name": "dBFS"
                        },
                        {
                            "value": 1,
                            "name": "dBTP"
                        }
                    ],
                    "default": 0
                }
            },
            "allOf": [
                {
                    "if": {
                        "properties": {
                            "min_peak_enable": {
                                "const": true
                            }
                        }
                    },
                    "then": {
                        "required": [
                            "min_peak_level"
                        ]
                    }
                },
                {
                    "if": {
                        "properties": {
                            "max_peak_enable": {
                                "const": true
                            }
                        }
                    },
                    "then": {
                        "required": [
                            "max_peak_level"
                        ]
                    }
                }
            ]
        },
        "phase_test_config": {
            "type": "object",
            "required": [
                "audio_track",
                "dolbye_program"
            ],
            "properties": {
                "audio_track": {
                    "$ref": "#/definitions/audio_track"
                },
                "dolbye_program": {
                    "$ref": "#/definitions/dolbye_program"
                },
                "min_instant_phase_enable": {
                    "title": "Min Instant Phase Enable",
                    "type": "boolean"
                },
                "min_instant_phase": {
                    "title": "Min Instant Phase",
                    "description": "Taken over a 10ms window period, the lowest value for the stream is recorded",
                    "type": "number"
                },
                "min_mean_phase_enable": {
                    "title": "Min Mean Phase Enable",
                    "type": "boolean"
                },
                "min_mean_phase": {
                    "title": "Min Mean Phase",
                    "description": "Measured over the whole audio stream",
                    "type": "number"
                },
                "max_mean_phase_enable": {
                    "title": "Max Mean Phase Enable",
                    "type": "boolean"
                },
                "max_mean_phase": {
                    "title": "Max Mean Phase",
                    "description": "Measured over the whole audio stream",
                    "type": "number"
                }
            },
            "allOf": [
                {
                    "if": {
                        "properties": {
                            "min_instant_phase_enable": {
                                "const": true
                            }
                        }
                    },
                    "then": {
                        "required": [
                            "min_instant_phase"
                        ]
                    }
                },
                {
                    "if": {
                        "properties": {
                            "min_mean_phase_enable": {
                                "const": true
                            }
                        }
                    },
                    "then": {
                        "required": [
                            "min_mean_phase"
                        ]
                    }
                },
                {
                    "if": {
                        "properties": {
                            "max_mean_phase_enable": {
                                "const": true
                            }
                        }
                    },
                    "then": {
                        "required": [
                            "max_mean_phase"
                        ]
                    }
                }
            ]
        },
        "ppm_level_test_config": {
            "type": "object",
            "required": [
                "audio_track",
                "dolbye_program"
            ],
            "properties": {
                "audio_track": {
                    "$ref": "#/definitions/audio_track"
                },
                "dolbye_program": {
                    "$ref": "#/definitions/dolbye_program"
                },
                "channel_mask": {
                    "$ref": "#/definitions/channel_mask"
                },
                "min_ppm_enable": {
                    "title": "Min PPM Level Enable",
                    "type": "boolean"
                },
                "min_ppm_level": {
                    "title": "Min PPM Level",
                    "type": "number"
                },
                "max_ppm_enable": {
                    "title": "Max PPM Level Enable",
                    "type": "boolean"
                },
                "max_ppm_level": {
                    "title": "Max PPM Level",
                    "type": "number"
                },
                "ppm_mode": {
                    "title": "PPM Mode",
                    "type": "integer",
                    "enum": [
                        0,
                        1,
                        2
                    ],
                    "titleMap": [
                        {
                            "value": 0,
                            "name": "M3"
                        },
                        {
                            "value": 1,
                            "name": "M6"
                        },
                        {
                            "value": 2,
                            "name": "AB"
                        }
                    ],
                    "default": 0
                }
            },
            "allOf": [
                {
                    "if": {
                        "properties": {
                            "min_ppm_enable": {
                                "const": true
                            }
                        }
                    },
                    "then": {
                        "required": [
                            "min_ppm_level"
                        ]
                    }
                },
                {
                    "if": {
                        "properties": {
                            "max_ppm_enable": {
                                "const": true
                            }
                        }
                    },
                    "then": {
                        "required": [
                            "max_ppm_level"
                        ]
                    }
                }
            ]
        },
        "shortterm_loudness_test_config": {
            "type": "object",
            "required": [
                "audio_track",
                "dolbye_program"
            ],
            "properties": {
                "audio_track": {
                    "$ref": "#/definitions/audio_track"
                },
                "dolbye_program": {
                    "$ref": "#/definitions/dolbye_program"
                },
                "level": {
                    "title": "Loudness Level",
                    "type": "number",
                    "default": -20.0,
                    "suffix": "dB"
                },
                "window": {
                    "title": "Loudness Window",
                    "description": "Default window length of 3 seconds corresponds to EBU-Tech 3341 Short-term mode",
                    "type": "number",
                    "suffix": "seconds",
                    "default": 3.0,
                    "minimum": 0
                },
                "violations": {
                    "title": "Report Violations",
                    "description": "Max Violations will report only the worst violation",
                    "type": "integer",
                    "enum": [
                        0,
                        1
                    ],
                    "titleMap": [
                        {
                            "value": 0,
                            "name": "Max Only"
                        },
                        {
                            "value": 1,
                            "name": "All Violations"
                        }
                    ],
                    "default": 0
                }
            }
        },
        "silence_test_config": {
            "type": "object",
            "required": [
                "audio_track",
                "dolbye_program",
                "silent_elsewhere"
            ],
            "properties": {
                "audio_track": {
                    "$ref": "#/definitions/audio_track"
                },
                "dolbye_program": {
                    "$ref": "#/definitions/dolbye_program"
                },
                "channel_mask": {
                    "$ref": "#/definitions/channel_mask"
                },
                "silent_elsewhere": {
                    "title": "Test whole file",
                    "description": "Test whole file for the presence of silence",
                    "type": "boolean",
                    "default": true
                },
                "silent": {
                    "type": "boolean",
                    "default": true,
                    "titleMap": [
                        {
                            "value": true,
                            "name": "Must Be Silent"
                        },
                        {
                            "value": false,
                            "name": "Must Not Be Silent"
                        }
                    ]
                },
                "digital": {
                    "title": "Digital Silence",
                    "type": "boolean",
                    "description": "The track is checked for the presence or absence of audio samples"
                },
                "threshold": {
                    "title": "Silence Threshold",
                    "type": "number",
                    "default": -70.0,
                    "description": "The threshold below which an audio track is considered silent"
                },
                "ranges": {
                    "title": "Range",
                    "type": "array",
                    "default": [],
                    "items": {
                        "$ref": "#/definitions/silence_range"
                    }
                },
                "quiet": {
                    "type": "boolean",
                    "default": false
                }
            }
        },
        "silence_range": {
            "allOf": [
                {
                    "$ref": "#/definitions/base_range"
                },
                {
                    "properties": {
                        "range_type": {
                            "title": "Must Be",
                            "$ref": "#/definitions/base_range_type",
                            "titleMap": [
                                {
                                    "value": 0,
                                    "name": "Silent"
                                },
                                {
                                    "value": 1,
                                    "name": "Not Silent"
                                },
                                {
                                    "value": 2,
                                    "name": "Any"
                                }
                            ]
                        }
                    }
                },
                {
                    "allOf": [
                        {
                            "if": {
                                "properties": {
                                    "layout": {
                                        "enum": [
                                            "0"
                                        ]
                                    }
                                }
                            },
                            "then": {
                                "required": [
                                    "start",
                                    "end",
                                    "units",
                                    "range_type"
                                ]
                            }
                        },
                        {
                            "if": {
                                "properties": {
                                    "layout": {
                                        "enum": [
                                            "1"
                                        ]
                                    }
                                }
                            },
                            "then": {
                                "required": [
                                    "start_from_end",
                                    "duration",
                                    "units",
                                    "range_type"
                                ]
                            }
                        }
                    ]
                }
            ]
        },
        "singlecolor_range": {
            "allOf": [
                {
                    "$ref": "#/definitions/tolerant_range"
                },
                {
                    "properties": {
                        "range_type": {
                            "title": "Must Be",
                            "$ref": "#/definitions/base_range_type",
                            "titleMap": [
                                {
                                    "value": 0,
                                    "name": "Single Color"
                                },
                                {
                                    "value": 1,
                                    "name": "Not Single Color"
                                },
                                {
                                    "value": 2,
                                    "name": "Any"
                                }
                            ]
                        }
                    }
                },
                {
                    "allOf": [
                        {
                            "if": {
                                "properties": {
                                    "layout": {
                                        "enum": [
                                            "0"
                                        ]
                                    }
                                }
                            },
                            "then": {
                                "required": [
                                    "start",
                                    "end",
                                    "tolerance",
                                    "units",
                                    "range_type"
                                ]
                            }
                        },
                        {
                            "if": {
                                "properties": {
                                    "layout": {
                                        "enum": [
                                            "1"
                                        ]
                                    }
                                }
                            },
                            "then": {
                                "required": [
                                    "start_from_end",
                                    "duration",
                                    "tolerance",
                                    "units",
                                    "range_type"
                                ]
                            }
                        }
                    ]
                }
            ]
        },
        "tone_type": {
            "title": "Tone Type",
            "type": "string",
            "description": "Check for presence of sine wave tone at level given in dBFS peak-to-peak (to convert from RMS add 3dB)",
            "enum": [
                "0",
                "1",
                "2",
                "3",
                "4",
                "5",
                "6"
            ],
            "default": "0",
            "titleMap": [
                {
                    "value": "0",
                    "name": "Continuous"
                },
                {
                    "value": "1",
                    "name": "Ebu1000Hz"
                },
                {
                    "value": "2",
                    "name": "Ebu440Hz"
                },
                {
                    "value": "3",
                    "name": "Glits1000Hz"
                },
                {
                    "value": "4",
                    "name": "Glits2000Hz"
                },
                {
                    "value": "5",
                    "name": "Blits"
                },
                {
                    "value": "6",
                    "name": "EAS (Emergency Alert System)"
                }
            ]
        },
        "tone_test_config": {
            "type": "object",
            "required": [
                "audio_track",
                "dolbye_program",
                "tone_type"
            ],
            "allOf": [
                {
                    "if": {
                        "properties": {
                            "tone_type": {
                                "const": "0"
                            }
                        }
                    },
                    "then": {
                        "required": [
                            "tolerance",
                            "frequency",
                            "power",
                            "tone_elsewhere"
                        ],
                        "allOf": [
                            {
                                "if": {
                                    "properties": {
                                        "tone_elsewhere": {
                                            "const": true
                                        }
                                    }
                                },
                                "then": {
                                    "required": [
                                        "tone"
                                    ]
                                }
                            }
                        ]
                    }
                },
                {
                    "if": {
                        "properties": {
                            "tone_type": {
                                "const": "1"
                            }
                        }
                    },
                    "then": {
                        "required": [
                            "tolerance",
                            "segment"
                        ]
                    }
                },
                {
                    "if": {
                        "properties": {
                            "tone_type": {
                                "const": "2"
                            }
                        }
                    },
                    "then": {
                        "required": [
                            "tolerance",
                            "segment"
                        ]
                    }
                },
                {
                    "if": {
                        "properties": {
                            "tone_type": {
                                "const": "3"
                            }
                        }
                    },
                    "then": {
                        "required": [
                            "tolerance",
                            "segment"
                        ]
                    }
                },
                {
                    "if": {
                        "properties": {
                            "tone_type": {
                                "const": "4"
                            }
                        }
                    },
                    "then": {
                        "required": [
                            "tolerance",
                            "segment"
                        ]
                    }
                },
                {
                    "if": {
                        "properties": {
                            "tone_type": {
                                "const": "5"
                            }
                        }
                    },
                    "then": {
                        "required": [
                            "tolerance",
                            "segment"
                        ]
                    }
                }
            ],
            "properties": {
                "audio_track": {
                    "$ref": "#/definitions/audio_track"
                },
                "dolbye_program": {
                    "$ref": "#/definitions/dolbye_program"
                },
                "channel_mask": {
                    "$ref": "#/definitions/channel_mask"
                },
                "tone_type": {
                    "$ref": "#/definitions/tone_type"
                },
                "tone_elsewhere": {
                    "title": "Test whole file",
                    "description": "Test whole file for the presence of a test tone",
                    "type": "boolean",
                    "default": true
                },
                "tone": {
                    "type": "boolean",
                    "default": false,
                    "titleMap": [
                        {
                            "value": true,
                            "name": "Must Be Present"
                        },
                        {
                            "value": false,
                            "name": "Must Be Absent"
                        }
                    ]
                },
                "frequency": {
                    "title": "Tone frequency",
                    "description": "The expected frequency of the test tone",
                    "type": "number",
                    "default": 1000.0,
                    "suffix": "Hz"
                },
                "power": {
                    "title": "Tone level",
                    "type": "number",
                    "default": -6.0,
                    "suffix": "dBFS"
                },
                "tolerance": {
                    "title": "Level tolerance",
                    "type": "number",
                    "default": 0.5,
                    "suffix": "dB"
                },
                "ranges": {
                    "title": "Range",
                    "type": "array",
                    "default": [],
                    "items": {
                        "$ref": "#/definitions/tone_range"
                    }
                },
                "segment": {
                    "$ref": "#/definitions/tone_segment"
                }
            }
        },
        "tone_range": {
            "allOf": [
                {
                    "$ref": "#/definitions/base_range"
                },
                {
                    "properties": {
                        "range_type": {
                            "title": "Must Be",
                            "$ref": "#/definitions/base_range_type",
                            "titleMap": [
                                {
                                    "value": 0,
                                    "name": "Present"
                                },
                                {
                                    "value": 1,
                                    "name": "Not Present"
                                },
                                {
                                    "value": 2,
                                    "name": "Any"
                                }
                            ]
                        }
                    }
                },
                {
                    "allOf": [
                        {
                            "if": {
                                "properties": {
                                    "layout": {
                                        "enum": [
                                            "0"
                                        ]
                                    }
                                }
                            },
                            "then": {
                                "required": [
                                    "start",
                                    "end",
                                    "units",
                                    "range_type"
                                ]
                            }
                        },
                        {
                            "if": {
                                "properties": {
                                    "layout": {
                                        "enum": [
                                            "1"
                                        ]
                                    }
                                }
                            },
                            "then": {
                                "required": [
                                    "start_from_end",
                                    "duration",
                                    "units",
                                    "range_type"
                                ]
                            }
                        }
                    ]
                }
            ]
        },
        "tone_segment": {
            "type": "object",
            "required": [
                "start",
                "duration",
                "units"
            ],
            "properties": {
                "start": {
                    "title": "Start At",
                    "$ref": "#/definitions/range_limit"
                },
                "duration": {
                    "title": "Duration",
                    "$ref": "#/definitions/range_limit"
                },
                "units": {
                    "title": "Time Units",
                    "$ref": "#/definitions/time_units"
                }
            }
        }
    },
    "properties": {
        "name": {
            "description": "User given name of a template",
            "type": "string",
            "nullable": false
        },
        "id": {
            "description": "Cloud ID",
            "type": [
                "string",
                "null"
            ],
            "nullable": true
        },
        "created_at": {
            "description": "Cloud Created at",
            "type": [
                "string",
                "null"
            ],
            "regex": "^[0-9]{4}-[0-9]{2}-[0-9]{2}T[0-9]{2}:[0-9]{2}:[0-9]{2}Z$",
            "nullable": true
        },
        "updated_at": {
            "description": "Cloud Updated at",
            "type": [
                "string",
                "null"
            ],
            "regex": "^[0-9]{4}-[0-9]{2}-[0-9]{2}T[0-9]{2}:[0-9]{2}:[0-9]{2}Z$",
            "nullable": true
        },
        "aggregate_alerts_limit": {
            "description": "Option to aggregate alerts of the same ID",
            "type": [
                "integer",
                "null"
            ],
            "nullable": true
        },
        "use_starttimecode": {
            "description": "Option to use the video's timecode for alert start & end times",
            "type": [
                "boolean",
                "null"
            ],
            "nullable": true
        },
        "audio_layout": {
            "description": "Audio layout to use",
            "$ref": "#/definitions/audio_layout"
        },
        "audio_layout_id": {
            "description": "Id of audio layout to use",
            "type": [
                "string",
                "null"
            ],
            "nullable": true
        },
        "package_layout": {
            "description": "Package layout to use",
            "$ref": "#/definitions/package_layout"
        },
        "package_layout_id": {
            "description": "Id of package layout to use",
            "type": [
                "string",
                "null"
            ],
            "nullable": true
        },
        "engine_version": {
            "description": "Cloud  engine version",
            "type": [
                "string",
                "null"
            ],
            "nullable": true
        },
        "treat_missing_media_as": {
            "description": "What type of alerts missing media should generate, e.g. Info, Warning, Error",
            "type": "integer",
            "enum": [
                0,
                1,
                2
            ],
            "titleMap": [
                {
                    "value": 0,
                    "name": "Info"
                },
                {
                    "value": 1,
                    "name": "Warning"
                },
                {
                    "value": 2,
                    "name": "Error"
                }
            ],
            "default": 1,
            "nullable": true
        },
        "tests": {
            "properties": {
                "audio_description": {
                    "type": "object",
                    "properties": {
                        "treat_warnings_as": {
                            "$ref": "#/definitions/warnings_as"
                        },
                        "audioconfigs": {
                            "title": "Audio Description Test Configuration",
                            "type": "array",
                            "items": {
                                "$ref": "#/definitions/audio_description_test_config"
                            }
                        }
                    }
                },
                "audio_metadata": {
                    "type": "object",
                    "properties": {
                        "treat_warnings_as": {
                            "$ref": "#/definitions/warnings_as"
                        },
                        "audio_bitdepth_test": {
                            "type": "object",
                            "required": [
                                "enable"
                            ],
                            "properties": {
                                "enable": {
                                    "title": "Bit Depth",
                                    "description": "Check the number of bits per audio sample per channel",
                                    "type": "boolean",
                                    "default": false
                                },
                                "options": {
                                    "type": "string",
                                    "description": "Select multiple by using comma separated values",
                                    "default": "16",
                                    "suffix": "bits per sample"
                                }
                            },
                            "if": {
                                "properties": {
                                    "enable": {
                                        "const": true
                                    }
                                }
                            },
                            "then": {
                                "required": [
                                    "options"
                                ]
                            }
                        },
                        "audio_bitrate_test": {
                            "type": "object",
                            "required": [
                                "enable"
                            ],
                            "properties": {
                                "enable": {
                                    "title": "Bit Rate",
                                    "description": "Check the bit rate of the audio track as it appears in the input file",
                                    "type": "boolean",
                                    "default": false
                                },
                                "mode": {
                                    "title": "Test mode",
                                    "description": "Test specific value(s) or that bit rate lies within given range",
                                    "type": "string",
                                    "enum": [
                                        "value",
                                        "range"
                                    ],
                                    "default": "value"
                                },
                                "options": {
                                    "title": "Value(s)",
                                    "description": "Select multiple by using comma separated values",
                                    "type": "string",
                                    "suffix": "kbps"
                                },
                                "minimum": {
                                    "title": "Minimum",
                                    "description": "The minimum allowed bit rate",
                                    "type": "integer",
                                    "minimum": 0,
                                    "suffix": "kbps"
                                },
                                "maximum": {
                                    "title": "Maximum",
                                    "description": "The maximum allowed bit rate",
                                    "type": "integer",
                                    "minimum": 0,
                                    "suffix": "kbps"
                                }
                            },
                            "allOf": [
                                {
                                    "if": {
                                        "properties": {
                                            "enable": {
                                                "const": true
                                            }
                                        }
                                    },
                                    "then": {
                                        "if": {
                                            "properties": {
                                                "mode": {
                                                    "const": "value"
                                                }
                                            }
                                        },
                                        "then": {
                                            "required": [
                                                "options"
                                            ]
                                        }
                                    }
                                },
                                {
                                    "if": {
                                        "properties": {
                                            "enable": {
                                                "const": true
                                            }
                                        }
                                    },
                                    "then": {
                                        "if": {
                                            "properties": {
                                                "mode": {
                                                    "const": "range"
                                                }
                                            }
                                        },
                                        "then": {
                                            "required": [
                                                "minimum",
                                                "maximum"
                                            ]
                                        }
                                    }
                                }
                            ]
                        },
                        "audio_endianness_test": {
                            "type": "object",
                            "required": [
                                "enable"
                            ],
                            "properties": {
                                "enable": {
                                    "title": "Check endianness of LPCM",
                                    "type": "boolean",
                                    "default": false,
                                    "description": "Check the endianness of the audio LPCM data against the original audio."
                                },
                                "options": {
                                    "title": "Endianess Required",
                                    "type": "integer",
                                    "enum": [
                                        0,
                                        1
                                    ],
                                    "titleMap": [
                                        {
                                            "value": 0,
                                            "name": "Little Endian"
                                        },
                                        {
                                            "value": 1,
                                            "name": "Big Endian"
                                        }
                                    ]
                                }
                            },
                            "allOf": [
                                {
                                    "if": {
                                        "properties": {
                                            "enable": {
                                                "const": true
                                            }
                                        }
                                    },
                                    "then": {
                                        "required": [
                                            "options"
                                        ]
                                    }
                                }
                            ]
                        },
                        "audio_trackcount_test": {
                            "type": "object",
                            "required": [
                                "enable"
                            ],
                            "properties": {
                                "enable": {
                                    "title": "Number of Tracks",
                                    "description": "Check the number of audio tracks in the file",
                                    "type": "boolean",
                                    "default": false
                                },
                                "count": {
                                    "type": "string",
                                    "description": "Select multiple by using comma separated values",
                                    "default": "1"
                                }
                            },
                            "if": {
                                "properties": {
                                    "enable": {
                                        "const": true
                                    }
                                }
                            },
                            "then": {
                                "required": [
                                    "count"
                                ]
                            }
                        },
                        "audio_codec_test": {
                            "type": "object",
                            "required": [
                                "enable"
                            ],
                            "properties": {
                                "enable": {
                                    "title": "Codec",
                                    "description": "Check the format of the audio elementary stream",
                                    "type": "boolean",
                                    "default": false
                                },
                                "codec": {
                                    "title": "All",
                                    "type": "array",
                                    "items": {
                                        "type": "integer",
                                        "enum": [
                                            0,
                                            1,
                                            2,
                                            3,
                                            4,
                                            5,
                                            6,
                                            7
                                        ],
                                        "titleMap": [
                                            {
                                                "value": 0,
                                                "name": "AAC"
                                            },
                                            {
                                                "value": 1,
                                                "name": "Dolby AC-3"
                                            },
                                            {
                                                "value": 2,
                                                "name": "Dolby Digital Plus"
                                            },
                                            {
                                                "value": 3,
                                                "name": "Dolby E"
                                            },
                                            {
                                                "value": 4,
                                                "name": "MPEG-1 / MPEG-2"
                                            },
                                            {
                                                "value": 5,
                                                "name": "PCM"
                                            },
                                            {
                                                "value": 7,
                                                "name": "SMPTE 331M"
                                            },
                                            {
                                                "value": 6,
                                                "name": "WMA"
                                            }
                                        ]
                                    }
                                },
                                "aac_profile": {
                                    "title": "AAC profiles",
                                    "type": "array",
                                    "items": {
                                        "type": "integer",
                                        "enum": [
                                            0,
                                            1,
                                            2,
                                            3,
                                            4,
                                            5
                                        ],
                                        "titleMap": [
                                            {
                                                "value": 0,
                                                "name": "HE-AAC"
                                            },
                                            {
                                                "value": 1,
                                                "name": "HE-AACv2"
                                            },
                                            {
                                                "value": 2,
                                                "name": "LC"
                                            },
                                            {
                                                "value": 3,
                                                "name": "Main"
                                            },
                                            {
                                                "value": 4,
                                                "name": "SSR"
                                            },
                                            {
                                                "value": 5,
                                                "name": "LTP"
                                            }
                                        ]
                                    }
                                },
                                "pcm_type": {
                                    "title": "PCM types",
                                    "type": "array",
                                    "items": {
                                        "type": "integer",
                                        "enum": [
                                            0,
                                            1,
                                            2,
                                            3,
                                            4,
                                            5,
                                            6,
                                            7,
                                            8,
                                            9,
                                            10
                                        ],
                                        "titleMap": [
                                            {
                                                "value": 0,
                                                "name": "Frame (BWF)"
                                            },
                                            {
                                                "value": 1,
                                                "name": "Clip (BWF)"
                                            },
                                            {
                                                "value": 2,
                                                "name": "Frame (AES)"
                                            },
                                            {
                                                "value": 3,
                                                "name": "Clip (AES)"
                                            },
                                            {
                                                "value": 4,
                                                "name": "Custom (BWF)"
                                            },
                                            {
                                                "value": 5,
                                                "name": "Custom (AES)"
                                            },
                                            {
                                                "value": 6,
                                                "name": "Frame"
                                            },
                                            {
                                                "value": 7,
                                                "name": "Clip"
                                            },
                                            {
                                                "value": 8,
                                                "name": "D-10"
                                            },
                                            {
                                                "value": 9,
                                                "name": "Custom"
                                            },
                                            {
                                                "value": 10,
                                                "name": "Custom: Fixed Audio Size"
                                            }
                                        ]
                                    }
                                }
                            },
                            "allOf": [
                                {
                                    "if": {
                                        "properties": {
                                            "enable": {
                                                "const": true
                                            }
                                        }
                                    },
                                    "then": {
                                        "required": [
                                            "codec"
                                        ],
                                        "allOf": [
                                            {
                                                "if": {
                                                    "properties": {
                                                        "codec": {
                                                            "contains": {
                                                                "enum": [
                                                                    0
                                                                ]
                                                            }
                                                        }
                                                    }
                                                },
                                                "then": {
                                                    "required": [
                                                        "aac_profile"
                                                    ]
                                                },
                                                "else": {
                                                    "if": {
                                                        "properties": {
                                                            "codec": {
                                                                "contains": {
                                                                    "enum": [
                                                                        5
                                                                    ]
                                                                }
                                                            }
                                                        }
                                                    },
                                                    "then": {
                                                        "required": [
                                                            "pcm_type"
                                                        ]
                                                    }
                                                }
                                            }
                                        ]
                                    }
                                }
                            ]
                        },
                        "audio_languageid_test": {
                            "type": "object",
                            "required": [
                                "enable"
                            ],
                            "properties": {
                                "enable": {
                                    "title": "Language ID",
                                    "description": "Check the audio language ID in the audio stream",
                                    "type": "boolean",
                                    "default": false
                                },
                                "options": {
                                    "title": "Languages",
                                    "type": "array",
                                    "items": {
                                        "type": "string",
                                        "enum": [
                                            "abk",
                                            "ady",
                                            "aar",
                                            "afr",
                                            "aka",
                                            "sqi",
                                            "amh",
                                            "ara",
                                            "arg",
                                            "arp",
                                            "aae",
                                            "hye",
                                            "rup",
                                            "asm",
                                            "ina",
                                            "ava",
                                            "ave",
                                            "aym",
                                            "aze",
                                            "bam",
                                            "bak",
                                            "eus",
                                            "bar",
                                            "bel",
                                            "ben",
                                            "bih",
                                            "bis",
                                            "bos",
                                            "bre",
                                            "bul",
                                            "mya",
                                            "spa",
                                            "cat",
                                            "cha",
                                            "che",
                                            "zho",
                                            "chv",
                                            "cim",
                                            "cor",
                                            "cos",
                                            "cre",
                                            "crh",
                                            "hrv",
                                            "ces",
                                            "dan",
                                            "div",
                                            "nld",
                                            "dzo",
                                            "eng",
                                            "enm",
                                            "myv",
                                            "epo",
                                            "est",
                                            "ewe",
                                            "fao",
                                            "fij",
                                            "fin",
                                            "fra",
                                            "frm",
                                            "fur",
                                            "frr",
                                            "fry",
                                            "ful",
                                            "gla",
                                            "glg",
                                            "lug",
                                            "kat",
                                            "deu",
                                            "ell",
                                            "grn",
                                            "guj",
                                            "hat",
                                            "hau",
                                            "heb",
                                            "her",
                                            "hin",
                                            "hmo",
                                            "hun",
                                            "isl",
                                            "ido",
                                            "ibo",
                                            "ind",
                                            "inh",
                                            "ile",
                                            "iku",
                                            "ipk",
                                            "gle",
                                            "ita",
                                            "jpn",
                                            "jav",
                                            "lad",
                                            "kbd",
                                            "kal",
                                            "xal",
                                            "kan",
                                            "kau",
                                            "krc",
                                            "krl",
                                            "kas",
                                            "csb",
                                            "kaz",
                                            "khm",
                                            "kik",
                                            "kin",
                                            "kir",
                                            "kom",
                                            "kon",
                                            "kor",
                                            "kua",
                                            "kur",
                                            "lao",
                                            "lat",
                                            "lav",
                                            "ast",
                                            "lim",
                                            "lin",
                                            "lit",
                                            "lub",
                                            "ltz",
                                            "mkd",
                                            "mlg",
                                            "msa",
                                            "mal",
                                            "mlt",
                                            "glv",
                                            "mri",
                                            "mar",
                                            "chm",
                                            "mah",
                                            "mwl",
                                            "mdf",
                                            "ron",
                                            "mon",
                                            "nau",
                                            "nav",
                                            "ndo",
                                            "nap",
                                            "nep",
                                            "nde",
                                            "sme",
                                            "nor",
                                            "nob",
                                            "nno",
                                            "nya",
                                            "oci",
                                            "oji",
                                            "ori",
                                            "orm",
                                            "oss",
                                            "pli",
                                            "pan",
                                            "fas",
                                            "pol",
                                            "por",
                                            "pus",
                                            "que",
                                            "roh",
                                            "rom",
                                            "run",
                                            "rus",
                                            "smo",
                                            "sag",
                                            "san",
                                            "srd",
                                            "sco",
                                            "srp",
                                            "sna",
                                            "scn",
                                            "snd",
                                            "sin",
                                            "slk",
                                            "slv",
                                            "som",
                                            "wen",
                                            "sot",
                                            "nbl",
                                            "sma",
                                            "sun",
                                            "swa",
                                            "ssw",
                                            "swe",
                                            "gsw",
                                            "tgl",
                                            "tah",
                                            "tgk",
                                            "tam",
                                            "tat",
                                            "tel",
                                            "tha",
                                            "bod",
                                            "tir",
                                            "ton",
                                            "tso",
                                            "tsn",
                                            "tur",
                                            "tuk",
                                            "twi",
                                            "udm",
                                            "uig",
                                            "ukr",
                                            "mis",
                                            "urd",
                                            "uzb",
                                            "ven",
                                            "vie",
                                            "vol",
                                            "wln",
                                            "cym",
                                            "wol",
                                            "xho",
                                            "yid",
                                            "yor",
                                            "zha",
                                            "zul",
                                            "none"
                                        ],
                                        "titleMap": [
                                            {
                                                "value": "abk",
                                                "name": "Abkhazian - abk"
                                            },
                                            {
                                                "value": "ady",
                                                "name": "Adygei, Adyghe - ady"
                                            },
                                            {
                                                "value": "aar",
                                                "name": "Afar - aar"
                                            },
                                            {
                                                "value": "afr",
                                                "name": "Afrikaans - afr"
                                            },
                                            {
                                                "value": "aka",
                                                "name": "Akan - aka"
                                            },
                                            {
                                                "value": "sqi",
                                                "name": "Albanian - sqi"
                                            },
                                            {
                                                "value": "amh",
                                                "name": "Amharic - amh"
                                            },
                                            {
                                                "value": "ara",
                                                "name": "Arabic - ara"
                                            },
                                            {
                                                "value": "arg",
                                                "name": "Aragonese - arg"
                                            },
                                            {
                                                "value": "arp",
                                                "name": "Arapaho - arp"
                                            },
                                            {
                                                "value": "aae",
                                                "name": "Arb\u00ebresh\u00eb Albanian - aae"
                                            },
                                            {
                                                "value": "hye",
                                                "name": "Armenian - hye"
                                            },
                                            {
                                                "value": "rup",
                                                "name": "Aromanian, Arumanian, Macedo-Romanian - rup"
                                            },
                                            {
                                                "value": "asm",
                                                "name": "Assamese - asm"
                                            },
                                            {
                                                "value": "ina",
                                                "name": "Auxiliary Language Association - ina"
                                            },
                                            {
                                                "value": "ava",
                                                "name": "Avaric - ava"
                                            },
                                            {
                                                "value": "ave",
                                                "name": "Avestan - ave"
                                            },
                                            {
                                                "value": "aym",
                                                "name": "Aymara - aym"
                                            },
                                            {
                                                "value": "aze",
                                                "name": "Azerbaijani - aze"
                                            },
                                            {
                                                "value": "bam",
                                                "name": "Bambara - bam"
                                            },
                                            {
                                                "value": "bak",
                                                "name": "Bashkir - bak"
                                            },
                                            {
                                                "value": "eus",
                                                "name": "Basque - eus"
                                            },
                                            {
                                                "value": "bar",
                                                "name": "Bavarian - bar"
                                            },
                                            {
                                                "value": "bel",
                                                "name": "Belarusian - bel"
                                            },
                                            {
                                                "value": "ben",
                                                "name": "Bengali - ben"
                                            },
                                            {
                                                "value": "bih",
                                                "name": "Bihari - bih"
                                            },
                                            {
                                                "value": "bis",
                                                "name": "Bislama - bis"
                                            },
                                            {
                                                "value": "bos",
                                                "name": "Bosnian - bos"
                                            },
                                            {
                                                "value": "bre",
                                                "name": "Breton - bre"
                                            },
                                            {
                                                "value": "bul",
                                                "name": "Bulgarian - bul"
                                            },
                                            {
                                                "value": "mya",
                                                "name": "Burmese - mya"
                                            },
                                            {
                                                "value": "spa",
                                                "name": "Castilian, Spanish - spa"
                                            },
                                            {
                                                "value": "cat",
                                                "name": "Catalan, Valencian - cat"
                                            },
                                            {
                                                "value": "cha",
                                                "name": "Chamorro - cha"
                                            },
                                            {
                                                "value": "che",
                                                "name": "Chechen - che"
                                            },
                                            {
                                                "value": "zho",
                                                "name": "Chinese - zho"
                                            },
                                            {
                                                "value": "chv",
                                                "name": "Chuvash - chv"
                                            },
                                            {
                                                "value": "cim",
                                                "name": "Cimbrian - cim"
                                            },
                                            {
                                                "value": "cor",
                                                "name": "Cornish - cor"
                                            },
                                            {
                                                "value": "cos",
                                                "name": "Corsican - cos"
                                            },
                                            {
                                                "value": "cre",
                                                "name": "Cree - cre"
                                            },
                                            {
                                                "value": "crh",
                                                "name": "Crimean Tatar, Crimean Turkish - crh"
                                            },
                                            {
                                                "value": "hrv",
                                                "name": "Croatian - hrv"
                                            },
                                            {
                                                "value": "ces",
                                                "name": "Czech - ces"
                                            },
                                            {
                                                "value": "dan",
                                                "name": "Danish - dan"
                                            },
                                            {
                                                "value": "div",
                                                "name": "Dhivehi, Divehi, Maldivian - div"
                                            },
                                            {
                                                "value": "nld",
                                                "name": "Dutch, Flemish - nld"
                                            },
                                            {
                                                "value": "dzo",
                                                "name": "Dzongkha - dzo"
                                            },
                                            {
                                                "value": "eng",
                                                "name": "English - eng"
                                            },
                                            {
                                                "value": "enm",
                                                "name": "Middle English - enm"
                                            },
                                            {
                                                "value": "myv",
                                                "name": "Erzya - myv"
                                            },
                                            {
                                                "value": "epo",
                                                "name": "Esperanto - epo"
                                            },
                                            {
                                                "value": "est",
                                                "name": "Estonian - est"
                                            },
                                            {
                                                "value": "ewe",
                                                "name": "Ewe - ewe"
                                            },
                                            {
                                                "value": "fao",
                                                "name": "Faroese - fao"
                                            },
                                            {
                                                "value": "fij",
                                                "name": "Fijian - fij"
                                            },
                                            {
                                                "value": "fin",
                                                "name": "Finnish - fin"
                                            },
                                            {
                                                "value": "fra",
                                                "name": "French - fra"
                                            },
                                            {
                                                "value": "frm",
                                                "name": "Middle French - frm"
                                            },
                                            {
                                                "value": "fur",
                                                "name": "Friulian - fur"
                                            },
                                            {
                                                "value": "frr",
                                                "name": "Northern Frisian - frr"
                                            },
                                            {
                                                "value": "fry",
                                                "name": "Western Frisian - fry"
                                            },
                                            {
                                                "value": "ful",
                                                "name": "Fulah - ful"
                                            },
                                            {
                                                "value": "gla",
                                                "name": "Gaelic, Scottish Gaelic - gla"
                                            },
                                            {
                                                "value": "glg",
                                                "name": "Galician - glg"
                                            },
                                            {
                                                "value": "lug",
                                                "name": "Ganda - lug"
                                            },
                                            {
                                                "value": "kat",
                                                "name": "Georgian - kat"
                                            },
                                            {
                                                "value": "deu",
                                                "name": "German - deu"
                                            },
                                            {
                                                "value": "ell",
                                                "name": "Greek - ell"
                                            },
                                            {
                                                "value": "grn",
                                                "name": "Guarani - grn"
                                            },
                                            {
                                                "value": "guj",
                                                "name": "Gujarati - guj"
                                            },
                                            {
                                                "value": "hat",
                                                "name": "Haitian, Haitian Creole - hat"
                                            },
                                            {
                                                "value": "hau",
                                                "name": "Hausa - hau"
                                            },
                                            {
                                                "value": "heb",
                                                "name": "Hebrew - heb"
                                            },
                                            {
                                                "value": "her",
                                                "name": "Herero - her"
                                            },
                                            {
                                                "value": "hin",
                                                "name": "Hindi - hin"
                                            },
                                            {
                                                "value": "hmo",
                                                "name": "Hiri Motu - hmo"
                                            },
                                            {
                                                "value": "hun",
                                                "name": "Hungarian - hun"
                                            },
                                            {
                                                "value": "isl",
                                                "name": "Icelandic - isl"
                                            },
                                            {
                                                "value": "ido",
                                                "name": "Ido - ido"
                                            },
                                            {
                                                "value": "ibo",
                                                "name": "Igbo - ibo"
                                            },
                                            {
                                                "value": "ind",
                                                "name": "Indonesian - ind"
                                            },
                                            {
                                                "value": "inh",
                                                "name": "Ingush - inh"
                                            },
                                            {
                                                "value": "ile",
                                                "name": "Interlingue, Occidental - ile"
                                            },
                                            {
                                                "value": "iku",
                                                "name": "Inuktitut - iku"
                                            },
                                            {
                                                "value": "ipk",
                                                "name": "Inupiaq - ipk"
                                            },
                                            {
                                                "value": "gle",
                                                "name": "Irish - gle"
                                            },
                                            {
                                                "value": "ita",
                                                "name": "Italian - ita"
                                            },
                                            {
                                                "value": "jpn",
                                                "name": "Japanese - jpn"
                                            },
                                            {
                                                "value": "jav",
                                                "name": "Javanese - jav"
                                            },
                                            {
                                                "value": "lad",
                                                "name": "Ladino - lad"
                                            },
                                            {
                                                "value": "kbd",
                                                "name": "Kabardian - kbd"
                                            },
                                            {
                                                "value": "kal",
                                                "name": "Greenlandic, Kalaallisut - kal"
                                            },
                                            {
                                                "value": "xal",
                                                "name": "Kalmyk, Oirat - xal"
                                            },
                                            {
                                                "value": "kan",
                                                "name": "Kannada - kan"
                                            },
                                            {
                                                "value": "kau",
                                                "name": "Kanuri - kau"
                                            },
                                            {
                                                "value": "krc",
                                                "name": "Karachay-Balkar - krc"
                                            },
                                            {
                                                "value": "krl",
                                                "name": "Karelian - krl"
                                            },
                                            {
                                                "value": "kas",
                                                "name": "Kashmiri - kas"
                                            },
                                            {
                                                "value": "csb",
                                                "name": "Kashubian - csb"
                                            },
                                            {
                                                "value": "kaz",
                                                "name": "Kazakh - kaz"
                                            },
                                            {
                                                "value": "khm",
                                                "name": "Central Khmer, Khmer - khm"
                                            },
                                            {
                                                "value": "kik",
                                                "name": "Gikuyu, Kikuyu - kik"
                                            },
                                            {
                                                "value": "kin",
                                                "name": "Kinyarwanda - kin"
                                            },
                                            {
                                                "value": "kir",
                                                "name": "Kirghiz, Kyrgyz - kir"
                                            },
                                            {
                                                "value": "kom",
                                                "name": "Komi - kom"
                                            },
                                            {
                                                "value": "kon",
                                                "name": "Kongo - kon"
                                            },
                                            {
                                                "value": "kor",
                                                "name": "Korean - kor"
                                            },
                                            {
                                                "value": "kua",
                                                "name": "Kuanyama, Kwanyama - kua"
                                            },
                                            {
                                                "value": "kur",
                                                "name": "Kurdish - kur"
                                            },
                                            {
                                                "value": "lao",
                                                "name": "Lao - lao"
                                            },
                                            {
                                                "value": "lat",
                                                "name": "Latin - lat"
                                            },
                                            {
                                                "value": "lav",
                                                "name": "Latvian - lav"
                                            },
                                            {
                                                "value": "ast",
                                                "name": "Leonese, Asturian, Asturleonese, Bable - ast"
                                            },
                                            {
                                                "value": "lim",
                                                "name": "Limburgan, Limburger, Limburgish - lim"
                                            },
                                            {
                                                "value": "lin",
                                                "name": "Lingala - lin"
                                            },
                                            {
                                                "value": "lit",
                                                "name": "Lithuanian - lit"
                                            },
                                            {
                                                "value": "lub",
                                                "name": "Luba-Katanga - lub"
                                            },
                                            {
                                                "value": "ltz",
                                                "name": "Letzeburgesch, Luxembourgish - ltz"
                                            },
                                            {
                                                "value": "mkd",
                                                "name": "Macedonian - mkd"
                                            },
                                            {
                                                "value": "mlg",
                                                "name": "Malagasy - mlg"
                                            },
                                            {
                                                "value": "msa",
                                                "name": "Malay - msa"
                                            },
                                            {
                                                "value": "mal",
                                                "name": "Malayalam - mal"
                                            },
                                            {
                                                "value": "mlt",
                                                "name": "Maltese - mlt"
                                            },
                                            {
                                                "value": "glv",
                                                "name": "Manx - glv"
                                            },
                                            {
                                                "value": "mri",
                                                "name": "Maori - mri"
                                            },
                                            {
                                                "value": "mar",
                                                "name": "Marathi - mar"
                                            },
                                            {
                                                "value": "chm",
                                                "name": "Mari (Russia) - chm"
                                            },
                                            {
                                                "value": "mah",
                                                "name": "Marshallese - mah"
                                            },
                                            {
                                                "value": "mwl",
                                                "name": "Mirandese - mwl"
                                            },
                                            {
                                                "value": "mdf",
                                                "name": "Moksha  - mdf"
                                            },
                                            {
                                                "value": "ron",
                                                "name": "Moldavian, Moldovan, Romanian - ron"
                                            },
                                            {
                                                "value": "mon",
                                                "name": "Mongolian - mon"
                                            },
                                            {
                                                "value": "nau",
                                                "name": "Nauru - nau"
                                            },
                                            {
                                                "value": "nav",
                                                "name": "Navaho, Navajo - nav"
                                            },
                                            {
                                                "value": "ndo",
                                                "name": "Ndonga - ndo"
                                            },
                                            {
                                                "value": "nap",
                                                "name": "Neapolitan - nap"
                                            },
                                            {
                                                "value": "nep",
                                                "name": "Nepali - nep"
                                            },
                                            {
                                                "value": "nde",
                                                "name": "North Ndebele - nde"
                                            },
                                            {
                                                "value": "sme",
                                                "name": "Northern Sami - sme"
                                            },
                                            {
                                                "value": "nor",
                                                "name": "Norwegian - nor"
                                            },
                                            {
                                                "value": "nob",
                                                "name": "Norwegian Bokm\u00e5l - nob"
                                            },
                                            {
                                                "value": "nno",
                                                "name": "Norwegian Nynorsk - nno"
                                            },
                                            {
                                                "value": "nya",
                                                "name": "Nyanja, Chewa, Chichewa - nya"
                                            },
                                            {
                                                "value": "oci",
                                                "name": "Occitan - oci"
                                            },
                                            {
                                                "value": "oji",
                                                "name": "Ojibwa - oji"
                                            },
                                            {
                                                "value": "ori",
                                                "name": "Oriya - ori"
                                            },
                                            {
                                                "value": "orm",
                                                "name": "Oromo - orm"
                                            },
                                            {
                                                "value": "oss",
                                                "name": "Ossetian, Ossetic - oss"
                                            },
                                            {
                                                "value": "pli",
                                                "name": "Pali - pli"
                                            },
                                            {
                                                "value": "pan",
                                                "name": "Panjabi, Punjabi - pan"
                                            },
                                            {
                                                "value": "fas",
                                                "name": "Persian - fas"
                                            },
                                            {
                                                "value": "pol",
                                                "name": "Polish - pol"
                                            },
                                            {
                                                "value": "por",
                                                "name": "Portuguese - por"
                                            },
                                            {
                                                "value": "pus",
                                                "name": "Pashto, Pushto - pus"
                                            },
                                            {
                                                "value": "que",
                                                "name": "Quechua - que"
                                            },
                                            {
                                                "value": "roh",
                                                "name": "Romansh - roh"
                                            },
                                            {
                                                "value": "rom",
                                                "name": "Romany - rom"
                                            },
                                            {
                                                "value": "run",
                                                "name": "Rundi - run"
                                            },
                                            {
                                                "value": "rus",
                                                "name": "Russian - rus"
                                            },
                                            {
                                                "value": "smo",
                                                "name": "Samoan - smo"
                                            },
                                            {
                                                "value": "sag",
                                                "name": "Sango - sag"
                                            },
                                            {
                                                "value": "san",
                                                "name": "Sanskrit - san"
                                            },
                                            {
                                                "value": "srd",
                                                "name": "Sardinian - srd"
                                            },
                                            {
                                                "value": "sco",
                                                "name": "Scots - sco"
                                            },
                                            {
                                                "value": "srp",
                                                "name": "Serbian - srp"
                                            },
                                            {
                                                "value": "sna",
                                                "name": "Shona - sna"
                                            },
                                            {
                                                "value": "scn",
                                                "name": "Sicilian - scn"
                                            },
                                            {
                                                "value": "snd",
                                                "name": "Sindhi - snd"
                                            },
                                            {
                                                "value": "sin",
                                                "name": "Sinhala, Sinhalese - sin"
                                            },
                                            {
                                                "value": "slk",
                                                "name": "Slovak - slk"
                                            },
                                            {
                                                "value": "slv",
                                                "name": "Slovenian - slv"
                                            },
                                            {
                                                "value": "som",
                                                "name": "Somali - som"
                                            },
                                            {
                                                "value": "wen",
                                                "name": "Sorbian languages - wen"
                                            },
                                            {
                                                "value": "sot",
                                                "name": "Southern Sotho - sot"
                                            },
                                            {
                                                "value": "nbl",
                                                "name": "South Ndebele - nbl"
                                            },
                                            {
                                                "value": "sma",
                                                "name": "Southern Sami - sma"
                                            },
                                            {
                                                "value": "sun",
                                                "name": "Sundanese - sun"
                                            },
                                            {
                                                "value": "swa",
                                                "name": "Swahili - swa"
                                            },
                                            {
                                                "value": "ssw",
                                                "name": "Swati - ssw"
                                            },
                                            {
                                                "value": "swe",
                                                "name": "Swedish - swe"
                                            },
                                            {
                                                "value": "gsw",
                                                "name": "Swiss German, Alemannic, Alsatian - gsw"
                                            },
                                            {
                                                "value": "tgl",
                                                "name": "Tagalog - tgl"
                                            },
                                            {
                                                "value": "tah",
                                                "name": "Tahitian - tah"
                                            },
                                            {
                                                "value": "tgk",
                                                "name": "Tajik - tgk"
                                            },
                                            {
                                                "value": "tam",
                                                "name": "Tamil - tam"
                                            },
                                            {
                                                "value": "tat",
                                                "name": "Tatar - tat"
                                            },
                                            {
                                                "value": "tel",
                                                "name": "Telugu - tel"
                                            },
                                            {
                                                "value": "tha",
                                                "name": "Thai - tha"
                                            },
                                            {
                                                "value": "bod",
                                                "name": "Tibetan - bod"
                                            },
                                            {
                                                "value": "tir",
                                                "name": "Tigrinya - tir"
                                            },
                                            {
                                                "value": "ton",
                                                "name": "Tonga - ton"
                                            },
                                            {
                                                "value": "tso",
                                                "name": "Tsonga - tso"
                                            },
                                            {
                                                "value": "tsn",
                                                "name": "Tswana - tsn"
                                            },
                                            {
                                                "value": "tur",
                                                "name": "Turkish - tur"
                                            },
                                            {
                                                "value": "tuk",
                                                "name": "Turkmen - tuk"
                                            },
                                            {
                                                "value": "twi",
                                                "name": "Twi - twi"
                                            },
                                            {
                                                "value": "udm",
                                                "name": "Udmurt - udm"
                                            },
                                            {
                                                "value": "uig",
                                                "name": "Uighur, Uyghur - uig"
                                            },
                                            {
                                                "value": "ukr",
                                                "name": "Ukrainian - ukr"
                                            },
                                            {
                                                "value": "mis",
                                                "name": "Uncoded languages - mis"
                                            },
                                            {
                                                "value": "urd",
                                                "name": "Urdu - urd"
                                            },
                                            {
                                                "value": "uzb",
                                                "name": "Uzbek - uzb"
                                            },
                                            {
                                                "value": "ven",
                                                "name": "Venda - ven"
                                            },
                                            {
                                                "value": "vie",
                                                "name": "Vietnamese - vie"
                                            },
                                            {
                                                "value": "vol",
                                                "name": "Volap\u00fck - vol"
                                            },
                                            {
                                                "value": "wln",
                                                "name": "Walloon - wln"
                                            },
                                            {
                                                "value": "cym",
                                                "name": "Welsh - cym"
                                            },
                                            {
                                                "value": "wol",
                                                "name": "Wolof - wol"
                                            },
                                            {
                                                "value": "xho",
                                                "name": "Xhosa - xho"
                                            },
                                            {
                                                "value": "yid",
                                                "name": "Yiddish - yid"
                                            },
                                            {
                                                "value": "yor",
                                                "name": "Yoruba - yor"
                                            },
                                            {
                                                "value": "zha",
                                                "name": "Zhuang, Chuang - zha"
                                            },
                                            {
                                                "value": "zul",
                                                "name": "Zulu - zul"
                                            },
                                            {
                                                "value": "none",
                                                "name": "None"
                                            }
                                        ]
                                    },
                                    "default": []
                                }
                            },
                            "if": {
                                "properties": {
                                    "enable": {
                                        "const": true
                                    }
                                }
                            },
                            "then": {
                                "required": [
                                    "options"
                                ]
                            }
                        },
                        "audio_numberofchannels_test": {
                            "type": "object",
                            "required": [
                                "enable"
                            ],
                            "properties": {
                                "enable": {
                                    "title": "Number of Channels",
                                    "description": "Check the number of audio channels in the track",
                                    "type": "boolean",
                                    "default": false
                                },
                                "mode": {
                                    "title": "Test mode",
                                    "type": "string",
                                    "description": "Test specific value(s) or that number of channels lie within given range",
                                    "enum": [
                                        "value",
                                        "range"
                                    ],
                                    "default": "value"
                                },
                                "maximum": {
                                    "title": "Maximum",
                                    "description": "The maximum allowed number of channels",
                                    "type": "integer",
                                    "minimum": 0,
                                    "default": 0
                                },
                                "minimum": {
                                    "title": "Minimum",
                                    "description": "The minimum allowed number of channels",
                                    "type": "integer",
                                    "minimum": 0,
                                    "default": 0
                                },
                                "equals": {
                                    "title": "Equal to",
                                    "description": "Test the channel count is equal to given value",
                                    "type": "integer",
                                    "minimum": 0,
                                    "default": 0
                                },
                                "source": {
                                    "title": "Source",
                                    "description": "Test the number of channels per audio stream or across all audio streams",
                                    "type": "integer",
                                    "enum": [
                                        0,
                                        1
                                    ],
                                    "titleMap": [
                                        {
                                            "value": 0,
                                            "name": "channels per audio stream"
                                        },
                                        {
                                            "value": 1,
                                            "name": "channels across all streams"
                                        }
                                    ],
                                    "default": 0
                                }
                            },
                            "allOf": [
                                {
                                    "if": {
                                        "properties": {
                                            "enable": {
                                                "const": true
                                            }
                                        }
                                    },
                                    "then": {
                                        "required": [
                                            "mode",
                                            "source"
                                        ],
                                        "allOf": [
                                            {
                                                "if": {
                                                    "properties": {
                                                        "mode": {
                                                            "const": "value"
                                                        }
                                                    }
                                                },
                                                "then": {
                                                    "required": [
                                                        "equals"
                                                    ]
                                                }
                                            },
                                            {
                                                "if": {
                                                    "properties": {
                                                        "mode": {
                                                            "const": "range"
                                                        }
                                                    }
                                                },
                                                "then": {
                                                    "required": [
                                                        "minimum",
                                                        "maximum"
                                                    ]
                                                }
                                            }
                                        ]
                                    }
                                }
                            ]
                        },
                        "audio_samplerate_test": {
                            "type": "object",
                            "required": [
                                "enable"
                            ],
                            "properties": {
                                "enable": {
                                    "title": "Sample rate",
                                    "description": "Check the number of audio samples per channel per second",
                                    "type": "boolean",
                                    "default": false
                                },
                                "options": {
                                    "type": "string",
                                    "description": "Select multiple by using comma separated values",
                                    "suffix": "kHz"
                                }
                            },
                            "if": {
                                "properties": {
                                    "enable": {
                                        "const": true
                                    }
                                }
                            },
                            "then": {
                                "required": [
                                    "options"
                                ]
                            }
                        }
                    }
                },
                "black_frame": {
                    "type": "object",
                    "properties": {
                        "treat_warnings_as": {
                            "$ref": "#/definitions/warnings_as"
                        },
                        "custom_level": {
                            "title": "Custom Level",
                            "type": "boolean",
                            "description": "Use custom luminance level (Y) for non-active picture area"
                        },
                        "bit_depth": {
                            "title": "Bit Depth",
                            "$ref": "#/definitions/video_bit_depth"
                        },
                        "level_8_bit": {
                            "title": "Black Level",
                            "$ref": "#/definitions/level_8_bit"
                        },
                        "level_10_bit": {
                            "title": "Black Level",
                            "$ref": "#/definitions/level_10_bit"
                        },
                        "level_12_bit": {
                            "title": "Black Level",
                            "$ref": "#/definitions/level_12_bit"
                        },
                        "level_14_bit": {
                            "title": "Black Level",
                            "$ref": "#/definitions/level_14_bit"
                        },
                        "percentage": {
                            "title": "Percentage Of Frame",
                            "type": "integer",
                            "minimum": 0,
                            "maximum": 100,
                            "default": 100,
                            "description": "Percentage of frame required to be black"
                        },
                        "max_allowed_enable": {
                            "title": "Test Whole File",
                            "description": "Test whole file for the presence of black frames",
                            "type": "boolean",
                            "default": true
                        },
                        "max_allowed_duration": {
                            "title": "Max Black Video Allowed",
                            "description": "The maximum black video allowed (frames/seconds)",
                            "$ref": "#/definitions/range_limit"
                        },
                        "max_allowed_units": {
                            "title": "Max Allowed Time Units",
                            "$ref": "#/definitions/time_units"
                        },
                        "silence": {
                            "title": "Must Also Be Digitally Silent",
                            "description": "Test for digital silence in conjunction with black frames",
                            "type": "boolean"
                        },
                        "audio_track": {
                            "$ref": "#/definitions/audio_track"
                        },
                        "dolbye_program": {
                            "$ref": "#/definitions/dolbye_program"
                        },
                        "channel_mask": {
                            "$ref": "#/definitions/channel_mask"
                        },
                        "ranges": {
                            "title": "Range",
                            "type": "array",
                            "default": [],
                            "items": {
                                "$ref": "#/definitions/blackframe_range"
                            }
                        }
                    },
                    "allOf": [
                        {
                            "required": [
                                "silence",
                                "custom_level"
                            ]
                        },
                        {
                            "if": {
                                "properties": {
                                    "silence": {
                                        "const": true
                                    }
                                }
                            },
                            "then": {
                                "required": [
                                    "audio_track",
                                    "dolbye_program"
                                ]
                            }
                        }
                    ]
                },
                "cadence": {
                    "type": "object",
                    "required": [
                        "cadence_must_be",
                        "broken_cadence",
                        "report_all_cadences",
                        "poor_patterns"
                    ],
                    "properties": {
                        "treat_warnings_as": {
                            "$ref": "#/definitions/warnings_as"
                        },
                        "cadence_must_be": {
                            "title": "Cadence must be:",
                            "description": "Cadence expected in the stream",
                            "type": "integer",
                            "enum": [
                                0,
                                1,
                                2,
                                3,
                                4,
                                5,
                                6
                            ],
                            "titleMap": [
                                {
                                    "value": 0,
                                    "name": "Progressive"
                                },
                                {
                                    "value": 1,
                                    "name": "2:2 (TFF)"
                                },
                                {
                                    "value": 2,
                                    "name": "2:2 (BFF)"
                                },
                                {
                                    "value": 3,
                                    "name": "2:3 (TFF)"
                                },
                                {
                                    "value": 4,
                                    "name": "2:3 (BFF)"
                                },
                                {
                                    "value": 5,
                                    "name": "24->25 fps (TFF)"
                                },
                                {
                                    "value": 6,
                                    "name": "24->25 fps (BFF)"
                                }
                            ],
                            "default": 0
                        },
                        "broken_cadence": {
                            "title": "Check for broken 2:3 cadence (compromises Reverse Telecine)",
                            "type": "boolean",
                            "default": false,
                            "description": "Look for breaks in the cadence pattern such as can be caused by editing 2:3 cadence video. An interrupted pattern can cause problems with a Reverse Telecine operation"
                        },
                        "report_all_cadences": {
                            "title": "Report all detected cadences",
                            "type": "boolean",
                            "default": false,
                            "description": "Analyze the video stream and report all cadences found as Info alerts"
                        },
                        "poor_patterns": {
                            "title": "Check for poor patterns",
                            "type": "boolean",
                            "default": false,
                            "description": "Raises an alert if a cadence pattern is found that causes excessive visual 'stutter'. This includes patterns which repeat frames (e.g. 2:2:2:4) and pull-down patterns not best suited for broadcast (e.g. 'Advanced' pull-down 2:3:3:2)"
                        }
                    }
                },
                "caption_subtitle": {
                    "type": "object",
                    "properties": {
                        "treat_warnings_as": {
                            "$ref": "#/definitions/warnings_as"
                        },
                        "caption_present": {
                            "title": "Detect and report the presence of Closed Captions",
                            "type": "boolean",
                            "description": "Will test for and report on the presence of 608 and 708 captions.",
                            "default": false
                        },
                        "608_present": {
                            "title": "Test for the presence of 608 captions",
                            "type": "boolean",
                            "description": "Will test for the presence of 608 captions.",
                            "default": false
                        },
                        "708_present": {
                            "title": "Test for the presence of 708 captions",
                            "type": "boolean",
                            "description": "Will test for the presence of 708 captions.",
                            "default": false
                        },
                        "caption_dropout": {
                            "title": "Detect and report any Closed Caption Dropouts",
                            "type": "boolean",
                            "description": "Will test for the absence of captions in the given interval.",
                            "default": false
                        },
                        "no_caption_threshold": {
                            "title": "Max time allowed with no caption data",
                            "type": "number",
                            "minimum": 0.0,
                            "maximum": 3600.0,
                            "description": "The minimum threshold for which captions must be updated.",
                            "default": 10.0
                        },
                        "caption_dropout_duration_units": {
                            "title": "Units",
                            "type": "integer",
                            "enum": [
                                0,
                                1
                            ],
                            "default": 0,
                            "titleMap": [
                                {
                                    "value": 0,
                                    "name": "Seconds"
                                },
                                {
                                    "value": 1,
                                    "name": "Frames"
                                }
                            ]
                        },
                        "cc1_presence": {
                            "title": "CC1 Presence",
                            "type": "boolean",
                            "description": "Find captions in CC1.",
                            "default": false
                        },
                        "cc2_presence": {
                            "title": "CC2 Presence",
                            "type": "boolean",
                            "description": "Find captions in CC2.",
                            "default": false
                        },
                        "cc3_presence": {
                            "title": "CC3 Presence",
                            "type": "boolean",
                            "description": "Find captions in CC3.",
                            "default": false
                        },
                        "cc4_presence": {
                            "title": "CC4 Presence",
                            "type": "boolean",
                            "description": "Find captions in CC4.",
                            "default": false
                        },
                        "service1_presence": {
                            "title": "Service 1 Presence",
                            "type": "boolean",
                            "description": "Find captions in Service 1.",
                            "default": false
                        },
                        "service2_presence": {
                            "title": "Service 2 Presence",
                            "type": "boolean",
                            "description": "Find captions in Service 2.",
                            "default": false
                        },
                        "service3_presence": {
                            "title": "Service 3 Presence",
                            "type": "boolean",
                            "description": "Find captions in Service 3.",
                            "default": false
                        },
                        "service4_presence": {
                            "title": "Service 4 Presence",
                            "type": "boolean",
                            "description": "Find captions in Service 4.",
                            "default": false
                        },
                        "service5_presence": {
                            "title": "Service 5 Presence",
                            "type": "boolean",
                            "description": "Find captions in Service 5.",
                            "default": false
                        },
                        "service6_presence": {
                            "title": "Service 6 Presence",
                            "type": "boolean",
                            "description": "Find captions in Service 6.",
                            "default": false
                        },
                        "teletext_presence": {
                            "title": "Detect and report the presence of Teletext subtitles",
                            "type": "boolean",
                            "description": "Find Teletext in specified page number.",
                            "default": false
                        },
                        "teletext_page": {
                            "title": "Teletext page",
                            "type": "integer",
                            "description": "The specified page number.",
                            "minimum": 0,
                            "default": 0
                        }
                    }
                },
                "channel_position": {
                    "type": "object",
                    "description": "Test whether 5.1 channels are in the correct place by analyzing base band and checking against what it should be",
                    "properties": {
                        "treat_warnings_as": {
                            "$ref": "#/definitions/warnings_as"
                        },
                        "audioconfigs": {
                            "title": "Channel Position Test Configuration",
                            "type": "array",
                            "items": {
                                "$ref": "#/definitions/channel_position_test_config"
                            }
                        }
                    }
                },
                "clicks_and_pops": {
                    "type": "object",
                    "description": "Detect transients or sudden changes in amplitude, such as those caused by noise on an analog or digital audio line",
                    "properties": {
                        "treat_warnings_as": {
                            "$ref": "#/definitions/warnings_as"
                        },
                        "audioconfigs": {
                            "title": "Clicks and Pops Test Configuration",
                            "type": "array",
                            "items": {
                                "$ref": "#/definitions/clicksandpops_test_config"
                            }
                        }
                    }
                },
                "clipping": {
                    "type": "object",
                    "description": "Detect audio clipping by testing for successive samples of equal value. Quiet samples (those below a fixed small value) are suppressed and do not count towards the clipping test",
                    "properties": {
                        "treat_warnings_as": {
                            "$ref": "#/definitions/warnings_as"
                        },
                        "audioconfigs": {
                            "title": "Clipping Test Configuration",
                            "type": "array",
                            "items": {
                                "$ref": "#/definitions/clipping_test_config"
                            }
                        }
                    }
                },
                "color_bars": {
                    "type": "object",
                    "description": "Detect the presence of color bars in the video to determine that they are of the correct type and/or that they are present when they should be and not present when they should not be",
                    "properties": {
                        "treat_warnings_as": {
                            "$ref": "#/definitions/warnings_as"
                        },
                        "standard": {
                            "title": "Color Bar Standard",
                            "type": "integer",
                            "enum": [
                                0,
                                1,
                                2,
                                3,
                                4,
                                5
                            ],
                            "default": 0,
                            "titleMap": [
                                {
                                    "value": 0,
                                    "name": "Any"
                                },
                                {
                                    "value": 1,
                                    "name": "SMPTE SD"
                                },
                                {
                                    "value": 2,
                                    "name": "SMPTE HD"
                                },
                                {
                                    "value": 3,
                                    "name": "EBU 75"
                                },
                                {
                                    "value": 4,
                                    "name": "EBU 100"
                                },
                                {
                                    "value": 5,
                                    "name": "EBU UHD"
                                }
                            ]
                        },
                        "color_tolerance": {
                            "title": "Color Level Tolerance (%)",
                            "type": "integer",
                            "minimum": 0,
                            "maximum": 100,
                            "default": 3,
                            "description": "Percentage of allowed deviation from colorbar specification colors"
                        },
                        "max_allowed_enable": {
                            "title": "Test Whole File",
                            "description": "Test whole file for the presence of colorbars",
                            "type": "boolean",
                            "default": true
                        },
                        "max_allowed_duration": {
                            "title": "Max ColorBars Allowed",
                            "description": "The maximum number of colorbars allowed",
                            "$ref": "#/definitions/range_limit"
                        },
                        "max_allowed_units": {
                            "title": "Max Allowed Time Units",
                            "$ref": "#/definitions/time_units"
                        },
                        "ranges": {
                            "title": "Range",
                            "type": "array",
                            "default": [],
                            "items": {
                                "$ref": "#/definitions/colorbar_range"
                            }
                        }
                    }
                },
                "comb_artifacts": {
                    "type": "object",
                    "description": "Detect if the input video stream has any interlacing or combing artifacts",
                    "properties": {
                        "treat_warnings_as": {
                            "$ref": "#/definitions/warnings_as"
                        },
                        "consecutive_frame_count": {
                            "title": "Consecutive Error Frames",
                            "type": "integer",
                            "default": 1,
                            "suffix": "frames",
                            "description": "Raise an alert if number of Consecutive Error Frames exceeds this limit."
                        }
                    },
                    "allOf": [
                        {
                            "required": [
                                "consecutive_frame_count"
                            ]
                        }
                    ]
                },
                "corrupt_frame": {
                    "type": "object",
                    "description": "Check for corrupt or unexpected frames",
                    "properties": {
                        "treat_warnings_as": {
                            "$ref": "#/definitions/warnings_as"
                        },
                        "sensitivity": {
                            "title": "Corrupt Frame Detection Sensitivity",
                            "$ref": "#/definitions/sensitivity"
                        }
                    }
                },
                "dialnorm": {
                    "type": "object",
                    "description": "Test the dialnorm value of Dolby AC-3 and Dolby Digital Plus audio tracks. Valid values are from 1 to 31",
                    "properties": {
                        "treat_warnings_as": {
                            "$ref": "#/definitions/warnings_as"
                        },
                        "audioconfigs": {
                            "title": "Dialnorm Test Configuration",
                            "type": "array",
                            "items": {
                                "$ref": "#/definitions/dialnorm_test_config"
                            }
                        }
                    }
                },
                "dual_mono": {
                    "type": "object",
                    "description": "Compares 2 audio streams and reports back if dual mono sections are detected between them",
                    "properties": {
                        "treat_warnings_as": {
                            "$ref": "#/definitions/warnings_as"
                        },
                        "audioconfigs": {
                            "title": "DualMono Test Configuration",
                            "type": "array",
                            "items": {
                                "$ref": "#/definitions/dualmono_test_config"
                            }
                        }
                    }
                },
                "field_order": {
                    "type": "object",
                    "required": [
                        "encoded_flag"
                    ],
                    "properties": {
                        "treat_warnings_as": {
                            "$ref": "#/definitions/warnings_as"
                        },
                        "encoded_flag": {
                            "title": "Encoded Flag",
                            "type": "integer",
                            "description": "Field order that should be flagged in the stream",
                            "enum": [
                                0,
                                1,
                                2,
                                3
                            ],
                            "titleMap": [
                                {
                                    "value": 0,
                                    "name": "Top field first"
                                },
                                {
                                    "value": 1,
                                    "name": "Bottom field first"
                                },
                                {
                                    "value": 2,
                                    "name": "Progressive"
                                },
                                {
                                    "value": 3,
                                    "name": "Any"
                                }
                            ],
                            "default": 0
                        },
                        "check_baseband": {
                            "title": "Analyze Baseband",
                            "type": "boolean",
                            "description": "Analyze baseband against given field order"
                        },
                        "baseband_mode": {
                            "type": "integer",
                            "description": "Check that the video will play without problems or that the video is a specific field order",
                            "enum": [
                                0,
                                1
                            ],
                            "titleMap": [
                                {
                                    "value": 0,
                                    "name": "Will play correctly with this flag"
                                },
                                {
                                    "value": 1,
                                    "name": "Field order must be"
                                }
                            ]
                        },
                        "field_order_must_be": {
                            "title": "Field Order expected",
                            "type": "integer",
                            "enum": [
                                0,
                                1,
                                2,
                                3
                            ],
                            "titleMap": [
                                {
                                    "value": 0,
                                    "name": "Top field first"
                                },
                                {
                                    "value": 1,
                                    "name": "Bottom field first"
                                },
                                {
                                    "value": 2,
                                    "name": "Progressive"
                                },
                                {
                                    "value": 3,
                                    "name": "Same as encoded flag"
                                }
                            ],
                            "default": 0
                        }
                    },
                    "allOf": [
                        {
                            "if": {
                                "properties": {
                                    "check_baseband": {
                                        "const": true
                                    }
                                }
                            },
                            "then": {
                                "if": {
                                    "properties": {
                                        "baseband_mode": {
                                            "const": "Will play correctly with this flag"
                                        }
                                    }
                                },
                                "then": {
                                    "disabled": [
                                        "field_order_must_be"
                                    ]
                                }
                            }
                        },
                        {
                            "if": {
                                "properties": {
                                    "check_baseband": {
                                        "const": true
                                    }
                                }
                            },
                            "then": {
                                "if": {
                                    "properties": {
                                        "baseband_mode": {
                                            "const": "Field order must be"
                                        }
                                    }
                                },
                                "then": {
                                    "enabled": [
                                        "field_order_must_be"
                                    ],
                                    "required": [
                                        "field_order_must_be"
                                    ]
                                }
                            }
                        }
                    ]
                },
                "file_checks": {
                    "type": "object",
                    "properties": {
                        "treat_warnings_as": {
                            "$ref": "#/definitions/warnings_as"
                        },
                        "container_duration_test": {
                            "type": "object",
                            "properties": {
                                "enable": {
                                    "title": "Duration",
                                    "description": "Check the video duration (if a video track is present) falls within the Min/Max parameters",
                                    "type": "boolean",
                                    "default": false
                                },
                                "maximum": {
                                    "title": "Maximum",
                                    "$ref": "#/definitions/timecode"
                                },
                                "minimum": {
                                    "title": "Minimum",
                                    "$ref": "#/definitions/timecode"
                                }
                            },
                            "allOf": [
                                {
                                    "if": {
                                        "enable": {
                                            "const": true
                                        }
                                    },
                                    "then": {
                                        "required": [
                                            "minimum",
                                            "maximum"
                                        ]
                                    }
                                },
                                {
                                    "required": [
                                        "enable"
                                    ]
                                }
                            ]
                        },
                        "container_ebpmarker_test": {
                            "type": "object",
                            "required": [
                                "enable"
                            ],
                            "properties": {
                                "enable": {
                                    "title": "EBP Metadata Checks",
                                    "type": "boolean",
                                    "default": false
                                },
                                "mode": {
                                    "title": "Mode",
                                    "type": "integer",
                                    "enum": [
                                        0,
                                        1
                                    ],
                                    "titleMap": [
                                        {
                                            "value": 0,
                                            "name": "Explicit"
                                        },
                                        {
                                            "value": 1,
                                            "name": "Implicit"
                                        }
                                    ],
                                    "default": 0
                                },
                                "distance": {
                                    "type": "object",
                                    "title": "EBP Marker Distance",
                                    "required": [
                                        "minimum",
                                        "maximum"
                                    ],
                                    "properties": {
                                        "minimum": {
                                            "title": "Minimum",
                                            "type": "integer",
                                            "suffix": "seconds",
                                            "minimum": 0,
                                            "default": 1
                                        },
                                        "maximum": {
                                            "title": "Maximum",
                                            "type": "integer",
                                            "suffix": "seconds",
                                            "minimum": 0,
                                            "default": 10
                                        }
                                    }
                                }
                            },
                            "allOf": [
                                {
                                    "if": {
                                        "enable": {
                                            "const": true
                                        }
                                    },
                                    "then": {
                                        "required": [
                                            "mode",
                                            "distance"
                                        ]
                                    }
                                }
                            ]
                        },
                        "container_filesize_test": {
                            "type": "object",
                            "properties": {
                                "enable": {
                                    "title": "Size",
                                    "description": "Check that the total file size falls within the Min/Max parameters",
                                    "type": "boolean",
                                    "default": false
                                },
                                "maximum": {
                                    "title": "Maximum (bytes)",
                                    "type": "number",
                                    "default": 0
                                },
                                "minimum": {
                                    "title": "Minimum (bytes)",
                                    "type": "number",
                                    "default": 0
                                }
                            },
                            "allOf": [
                                {
                                    "if": {
                                        "enable": {
                                            "const": true
                                        }
                                    },
                                    "then": {
                                        "required": [
                                            "minimum",
                                            "maximum"
                                        ]
                                    }
                                }
                            ]
                        },
                        "container_format_test": {
                            "type": "object",
                            "properties": {
                                "enable": {
                                    "title": "Container Format",
                                    "description": "Check the 'wrapper' or container file used to hold the video and/or audio matches the user defined value",
                                    "type": "boolean",
                                    "default": false
                                },
                                "options": {
                                    "title": "All formats",
                                    "type": "array",
                                    "items": {
                                        "type": "string",
                                        "enum": [
                                            "3gpp",
                                            "asf ",
                                            "avi ",
                                            "avs",
                                            "dcp ",
                                            "dpx ",
                                            "flv ",
                                            "gxf ",
                                            "imf ",
                                            "lxf ",
                                            "m2ps",
                                            "m2ts",
                                            "mkv ",
                                            "mov ",
                                            "mp4 ",
                                            "mxf ",
                                            "oexr"
                                        ],
                                        "titleMap": [
                                            {
                                                "value": "3gpp",
                                                "name": "3GPP"
                                            },
                                            {
                                                "value": "asf ",
                                                "name": "ASF"
                                            },
                                            {
                                                "value": "avi ",
                                                "name": "AVI"
                                            },
                                            {
                                                "value": "avs",
                                                "name": "AVS"
                                            },
                                            {
                                                "value": "dcp ",
                                                "name": "DCP"
                                            },
                                            {
                                                "value": "dpx ",
                                                "name": "DPX"
                                            },
                                            {
                                                "value": "flv ",
                                                "name": "Flash/FLV"
                                            },
                                            {
                                                "value": "gxf ",
                                                "name": "GXF"
                                            },
                                            {
                                                "value": "imf ",
                                                "name": "IMF"
                                            },
                                            {
                                                "value": "lxf ",
                                                "name": "LXF"
                                            },
                                            {
                                                "value": "m2ps",
                                                "name": "Mpeg-2 PS"
                                            },
                                            {
                                                "value": "m2ts",
                                                "name": "Mpeg-2 TS"
                                            },
                                            {
                                                "value": "mkv ",
                                                "name": "MKV"
                                            },
                                            {
                                                "value": "mov ",
                                                "name": "MOV"
                                            },
                                            {
                                                "value": "mp4 ",
                                                "name": "MP4"
                                            },
                                            {
                                                "value": "mxf ",
                                                "name": "MXF"
                                            },
                                            {
                                                "value": "oexr",
                                                "name": "OpenEXR"
                                            }
                                        ]
                                    },
                                    "default": []
                                }
                            },
                            "allOf": [
                                {
                                    "if": {
                                        "properties": {
                                            "enable": {
                                                "const": true
                                            }
                                        }
                                    },
                                    "then": {
                                        "required": [
                                            "options"
                                        ]
                                    }
                                },
                                {
                                    "required": [
                                        "enable"
                                    ]
                                }
                            ]
                        },
                        "container_bitrate_test": {
                            "type": "object",
                            "properties": {
                                "enable": {
                                    "title": "File Bit Rate",
                                    "description": "Check the calculated bit rate of the file",
                                    "type": "boolean",
                                    "default": false
                                },
                                "mode": {
                                    "title": "Test mode",
                                    "description": "Test specific value(s) or that bit rate lies within given range",
                                    "type": "string",
                                    "enum": [
                                        "value",
                                        "range"
                                    ],
                                    "default": "value"
                                },
                                "options": {
                                    "title": "Value(s)",
                                    "description": "Select multiple by using comma separated values",
                                    "type": "string",
                                    "suffix": "Mbit/s"
                                },
                                "minimum": {
                                    "title": "Minimum (Mbit/s)",
                                    "description": "The minimum allowed bit rate",
                                    "type": "number",
                                    "suffix": "Mbit/s",
                                    "default": 0
                                },
                                "maximum": {
                                    "title": "Maximum (Mbit/s)",
                                    "description": "The maximum allowed bit rate",
                                    "type": "number",
                                    "suffix": "Mbit/s",
                                    "default": 0
                                }
                            },
                            "allOf": [
                                {
                                    "if": {
                                        "properties": {
                                            "enable": {
                                                "const": true
                                            }
                                        }
                                    },
                                    "then": {
                                        "if": {
                                            "properties": {
                                                "mode": {
                                                    "const": "value"
                                                }
                                            }
                                        },
                                        "then": {
                                            "required": [
                                                "options"
                                            ]
                                        }
                                    }
                                },
                                {
                                    "if": {
                                        "properties": {
                                            "enable": {
                                                "const": true
                                            }
                                        }
                                    },
                                    "then": {
                                        "if": {
                                            "properties": {
                                                "mode": {
                                                    "const": "range"
                                                }
                                            }
                                        },
                                        "then": {
                                            "required": [
                                                "minimum",
                                                "maximum"
                                            ]
                                        }
                                    }
                                }
                            ]
                        },
                        "comparestreamlengths_test": {
                            "type": "object",
                            "required": [
                                "enable"
                            ],
                            "properties": {
                                "enable": {
                                    "title": "Compare Stream Lengths",
                                    "description": "Check whether the audio track is present throughout the duration of the video",
                                    "type": "boolean",
                                    "default": false
                                }
                            }
                        },
                        "moov_atom": {
                            "type": "object",
                            "properties": {
                                "enable": {
                                    "title": "MOOV Atom",
                                    "type": "boolean",
                                    "default": false,
                                    "description": "Check that there is only 1 MOOV atom in a mov/mp4 file"
                                }
                            }
                        },
                        "container_starttimecode_test": {
                            "type": "object",
                            "properties": {
                                "enable": {
                                    "title": "Container Start Timecode",
                                    "description": "Check the Container Start Timecode",
                                    "type": "boolean",
                                    "default": false
                                },
                                "timecode": {
                                    "title": "Timecode",
                                    "$ref": "#/definitions/timecode"
                                },
                                "tolerance": {
                                    "title": "Tolerance (+/- frames)",
                                    "type": "number",
                                    "default": 0
                                },
                                "drop_