This is part of MSU Video Quality Measurement tool Online Help for MSU VQMT 13.1

MSU Video Quality Measurement Tool (MSU VQMT) project:

Online help for MSU VQMT 13.1 contents:

Content

The configuration is a JSON file that fully specifies VQMT computation settings. It specifies the set of files, the set of metrics, and calculation settings. You can use the configuration file instead of a classical CLI configuration (for any computational purpose, excluding getting help, specification and activation). Using the configuration file is possible in command via the specifying -config option. Also, it is possible to read the configuration JSON from STDIN using -config-stdin. The configuration is available only in the CLI interface in PRO/Premium edition.

  • version - This configuration file version (optional)

    Syntax: [integer,integer]

    First integer for major version, second one for minor. Supported versions:

    • 12.1
    • 13.0
    • 13.1

    Default: [13,1]

  • files - List of all input files. The first will be treated as the original one for reference metrics

    Syntax: [A, ...]. A possible values: One of:

    • string
    • [“string”, {object}]

    The string is always file name. Possible keys for the object:

    • mode - (string) - explicit mode for reading a file. Default: “auto”
    • index - (string) - index mode
    • index_file - (string) - index file. For some index modes will be skipped
    • props - (object) - additional properties, specific for mode and file
    • range - (array) - specify array of one element - [N] to skip N frames. Specify array of two elements [N, M] to select frames from N to M inclusive
    • stdin - (bool) - specify true, if the file should be read from stdin
    • offset_type - (string) - if range specified, the way for seeking target frame
  • metrics - List of metrics to perform

    Syntax: [A, ...]. A possible values: {object}

    • metric - Metric to perform

      Syntax:

      One of:

      • string
      • {“name”:”string”, “device”:”string”}
      • {“name”:”string”, “variation”:”string”}

      Run VQMT with -list json metrics arguments to see the list of all available metrics. Each metric can be uniquely identified by it’s name and variation

    • color - The color component to perform metric. You can specify only one component per element.

      Syntax:string

      Run VQMT with -list json metrics arguments to see the list of all available metrics with supported color components

    • config - Metric configuration (optional)

      Syntax: {object}

      Run VQMT with -list json metrics arguments to see the list of all available metrics with available configuration settings

      Default: {}

    • vis-gamma - Gamma correction value for visualization (optional)

      Syntax: null or A, where A possible values: float

      Default: null

    • vis-colormap - Colormap for visualization (optional)

      Syntax: null or A, where A possible values: “string

      Default: null

  • output - Settings for writing JSON ans CSV files

    Syntax: {object}

    • enabled - Turn on/off saving output

      Syntax:

      One of:

      • true
      • false

      Default: true

    • output_directory - Output directory for saving CSV and JSON (supports VQMT environment variables)

      Syntax:string

      Default: “?(InputOriginalDir)”

    • name_generation_type - Scheme for default naming of output files (CSV, JSON)

      Syntax:

      One of:

      • “prefix”
      • “postfix”
      • “custom”

      Default: “postfix”

    • custom_name - Custom name for output files (supports VQMT environment variables). Only considered if the scheme is CUSTOM

      Syntax:string

      Default: “”

    • csv_separator - Separator for starting new cell in the output CSV file

      Syntax:

      One of:

      • ”;”
      • ”,”

      Default: “,”

    • fp_separator - Separator for starting fractional part in floating point numbers for the output CSV file

      Syntax:

      One of:

      • ”.”
      • ”,”

      Default: “.”

    • save_csv - Turning on/off sabing CSV

      Syntax:

      One of:

      • true
      • false

      Default: false

    • save_json - Turning on/off saving JSON

      Syntax:

      One of:

      • true
      • false

      Default: false

    • json_legacy - Switching to JSON format of older VQMT releases. Currently supported: 11

      Syntax: integer

      Default: 13

    • json_file - Explicit name of the JSON file (supports VQMT environment variables). If set and not empty, has a priority over other specifications. It will override custom_name if set

      Syntax:string

      Default: “”

    • csv_file - Explicit name of the CSV file (supports VQMT environment variables). If set and not empty, has a priority over other specifications. It will override custom_name if set

      Syntax:string

      Default: “”

    • json_stdout - Enabling/disabling saving JSON to STDOUT instead of a file. Do not use with json_file

      Syntax:

      One of:

      • true
      • false

      Default: false

  • vis - Settings for writing visualization

    Syntax: {object}

    • enabled - Turn on/off saving visualization for all metrics

      Syntax:

      One of:

      • true
      • false

      Default: false

    • output_directory - Output directory for saving visualization (supports VQMT environment variables)

      Syntax:string

      Default: “?(InputOriginalDir)”

    • name_generation_type - Scheme for default naming of visualization files

      Syntax:

      One of:

      • “prefix”
      • “postfix”
      • “custom”

      Default: “postfix”

    • compressor - Compressor name for visualization files. See also the list of all compressors

      Syntax:string

      Default: “h264”

    • preset - Preset for setting compressor mode

      Syntax:string

      Default: “mq”

    • caption_position - Place for printing caption over the visualization (if some data are printed)

      Syntax:

      One of:

      • “left-top”
      • “left-bottom”
      • “right-top”
      • “right-bottom”

      Default: “left-top”

    • write_value - Turning on/off printing metric value on each visualization frame

      Syntax:

      One of:

      • true
      • false

      Default: true

    • write_frame - Turning on/off printing frame number on each visualization frame

      Syntax:

      One of:

      • true
      • false

      Default: true

    • gamma - The default gamma correction value for visualization. Can be overwritten by each metric individually by specifying the metric setting

      Syntax: float

      Default: 1.0000000000000000

    • colormap - The default color table for visualization. Can be overwritten by each metric individually by specifying the metric setting

      Syntax:string

      Default: “”

  • conversion - Settings for interpreting samples of input files

    Syntax: {object}

    • standard_name - Color standard that will be used to find exact colorspace for files, where metadata not sufficient to specify exact colorspace

      Syntax:string

      Default: “BT.709”

    • full_range - Is quantization range PC (full range, 0..255 in case of 8-bit samples). Quantization range will be used to find exact colorspace representation for files, where metadata not sufficient to specify coded data quantization range

      Syntax:

      One of:

      • true
      • false

      Default: false

    • display_lum - Display luminance for some HDR colorspaces and metrics. This will be treated as the luminance of a maximum white pixel of an input file. This value will be also used in some metrics as maximum. Value is integer in the range 1..10000

      Syntax: float

      Default: 10000.000000000000

    • sample_conv - The way an integer sample will be converted to continuous

      Syntax:

      One of:

      • “shift” - 0xFF means 0.996 (255/256)
      • “repeat” - 0xFF means 1.0

      Default: “repeat”

    • legacy_mode - Emulation of an old VQMT mode. It affects some metrics and conversion algorithm. Do not use with other settings of this section

      Syntax: integer

      Default: 0

    • disable_UV_upscale - Disabling upscaling of chroma components (U, V for YUV pixtures types) to Y size for subsampled formats (YUV420, YUV422, etc.)

      Syntax:

      One of:

      • true
      • false

      Default: false

  • bad_frames - Settings for bad frames

    Syntax: {object}

    • enabled - Turn on/off saving visualization for all metrics

      Syntax:

      One of:

      • true
      • false

      Default: false

    • dir - Directory for saving bad frames (suports VQMT environment variables)

      Syntax:string

      Default: “?(InputOriginalDir)”

    • count - Total (maximum) number of bad frames to be saved

      Syntax: integer

      Default: 10

    • distance - The minimum distance that bad frames can be (frames)

      Syntax: integer

      Default: 0

    • type - The criterion for the selection of bad frames

      Syntax:

      One of:

      • “origproc”
      • “procproc”
      • “firstbetter”
      • “secondbetter”

      Default: “origproc”

    • format - Image format for saving bad frames

      Syntax:

      One of:

      • “BMP”
      • “TIFF”

      Default: “TIFF”

    • high_threshold_enabled - Is high threshold enabled

      Syntax:

      One of:

      • true
      • false

      Default: false

    • low_threshold_enabled - Is low threshold enabled

      Syntax:

      One of:

      • true
      • false

      Default: false

    • high_threshold - High threshold. A frame with a metric value equal to or better than this will never be considered bad

      Syntax: float

      Default: 0.00000000000000000

    • low_threshold - High threshold. A frame with a metric value equal to or worse than this will never be considered bad

      Syntax: float

      Default: 0.00000000000000000

    • naming_type - Scheme for default naming of bad frames image files

      Syntax:

      One of:

      • “frame”
      • “file”
      • “custom”

      Default: “frame”

    • custom_name - Custom name for bad frames image files (supports VQMT environment variables). Only considered if the scheme is CUSTOM

      Syntax:string

      Default: “”

  • geometry - Settings for geometry correction

    Syntax: {object}

    • enabled - Turn on/off geometry correction. If off, all files mush have the same resolution. Also, geometry correstion can be used to downscale inputs for increasing performance

      Syntax:

      One of:

      • true
      • false

      Default: false

    • size - Target size for resizing or cropping input images

      Syntax:

      One of:

      • “orig”
      • “1/2 orig”
      • “1/4 orig”
      • “min”
      • “max”
      • “custom”

      Default: “orig”

    • width - Target width if size is custom

      Syntax: integer

      Default: 1920

    • height - Target height if size is custom

      Syntax: integer

      Default: 1080

    • strategy - Strategy, that specifies resampling, cropping and ratio preserving

      Syntax:

      One of:

      • “scale”
      • “scale+crop”
      • “crop”

      Default: “scale”

    • algorithm - Image resampling algorithm

      Syntax:

      One of:

      • “nearest”
      • “bilinear”
      • “bicubic”
      • “lanczos”

      Default: “bicubic”

    • antialiasing - Is antialiasing while resampling enabled

      Syntax:

      One of:

      • true
      • false

      Default: false

    • prefer_ffmpeg - Use FFmpeg scaling algorithm if available. If false, Intel algorithm will be always used

      Syntax:

      One of:

      • true
      • false

      Default: true

  • mask - Mask specification for indication of the most important areas of the image

    Syntax: {object}

    • mask_type - Type of mask to be aplied

      Syntax: [“string”, “string”]

      Possible types:

      • bin black - binary mask, black for ignored areas
      • bin white - binary mask, white for ignored areas
      • 8bit black - 8-bit mask, black for ignored areas
      • 8bit white - 8-bit mask, white for ignored areas
      • incl-rect <rect spec>, excl-rect <rect spec> - mask consists of rectangle (included or excluded). <rect spec> is ;-separated list of measurements in the order: top, right, bottom, left. Each measurement can be pixel value or percent value (floating point) if followed by ‘%’ sign. A negative value can be used to measure from the opposite side.

      Default: [“no”,”mask”]

    • mask_file - A mask file if maskType considers a file. Could be static image or video file

      Syntax: One of:

      • string
      • [“string”, {object}]

      The string is always file name. Possible keys for the object:

      • mode - (string) - explicit mode for reading a file. Default: “auto”
      • index - (string) - index mode
      • index_file - (string) - index file. For some index modes will be skipped
      • props - (object) - additional properties, specific for mode and file
      • range - (array) - specify array of one element - [N] to skip N frames. Specify array of two elements [N, M] to select frames from N to M inclusive
      • stdin - (bool) - specify true, if the file should be read from stdin
      • offset_type - (string) - if range specified, the way for seeking target frame

      Default: “”

  • subsampling - Skipping frames for increasing performance

    Syntax: {object}

    • enabled - Is subsampling enabled. Subsampling could be used for some metrics to skip frames for increasing performance

      Syntax:

      One of:

      • true
      • false

      Default: true

    • do_target_fps - Whether subsampling takes into account target_fps setting. If false, value for every_nth_frame will be taken for subsampling

      Syntax:

      One of:

      • true
      • false

      Default: false

    • every_nth_frame - Number of frames that will be skipped after each processed frame plus one. This value will be taken into account only if do_target_fps is False. Value 1 means no subsampling (each 1st frame is processed)

      Syntax: integer

      Default: 1

    • target_fps - Processing FPS, that VQMT will try to achieve skipping frames

      Syntax: float

      Default: 25.000000000000000

    • enable_seek - Allow VQMT seek in the input files. If false, VQMT will read all intermediate frames

      Syntax:

      One of:

      • true
      • false

      Default: false

  • performance - Performance tuning and information

    Syntax: {object}

    • threads_number - Number of threads for performing VQMT tasks. VQMT can spawn additional threads

      Syntax: integer

      Default: 0

    • slots_number - Number of slots that be allocated for each metric to process files simultaneously. `0` - default value. Increasing this value will slightly increase memory consumption, but can improve concurrency

      Syntax: integer

      Default: 0

    • metric_parralelism - How many instances of a single metric can work simultaneously. `0` - default value. Set small values to reduce memory consumption. High metric parallelism is quite useless if you computing many metrics simultaneously

      Syntax: integer

      Default: 0

    • show_performance - Whether information about VQMT performance will be displayed instead of results

      Syntax:

      One of:

      • true
      • false

      Default: false

    • forced_length - The expected number of frames (0 to disable). This parameter affects only progress bar

      Syntax: integer

      Default: 0

  • verbosity - Verbocity level. Affects on amount of messages, generated by VQMT

    Syntax:

    One of:

    • “silent”
    • “default”
    • “all”

    Default: “default”

This page is automatically generated by 13.1 r12718 on 2021-05-17. In case of any question or suggestion, please mail us: video-measure@compression.ru

17 May 2021
See Also