Configuration ============= .. _configuration_schema: The configuration file will be used in all scripts of this repository. .. note:: The following top-level properties are **required**: ``aliases``, ``lightfields``, ``raw_paths``, ``codecs``, ``rd_plots``, ``quality_heatmaps``, ``logs``. Properties ---------- .. _configuration_schema_aliases: [Required] ``aliases`` ~~~~~~~~~~~~~~~~~~~~~~ *Path:* ``Configuration > aliases`` .. list-table:: :widths: 30 70 :header-rows: 0 * - **Type** - ``object`` * - **Required** - Yes A dictionary of variable names to their values. Variables can be referenced elsewhere in the configuration using ${variable-name} syntax. .. _configuration_schema_aliases_ce_path: [Required] ``ce-path`` ^^^^^^^^^^^^^^^^^^^^^^ *Path:* ``Configuration > aliases > ce-path`` .. list-table:: :widths: 30 70 :header-rows: 0 * - **Type** - ``string`` * - **Required** - Yes Base path for the Common Experiment (CE) working directory. **Example(s):** .. code-block:: json "/home/user/jpeg-pleno/ceXX" .. _configuration_schema_aliases_raw_path: [Required] ``raw-path`` ^^^^^^^^^^^^^^^^^^^^^^^ *Path:* ``Configuration > aliases > raw-path`` .. list-table:: :widths: 30 70 :header-rows: 0 * - **Type** - ``string`` * - **Required** - Yes Base path to the raw light field data directory. **Example(s):** .. code-block:: json "/home/user/RAW/lightfields" .. _configuration_schema_lightfields: [Required] ``lightfields`` ~~~~~~~~~~~~~~~~~~~~~~~~~~ *Path:* ``Configuration > lightfields`` .. list-table:: :widths: 30 70 :header-rows: 0 * - **Type** - ``object`` * - **Required** - Yes Lists of light fields to process. .. _configuration_schema_lightfields_ctc: [Required] ``ctc`` ^^^^^^^^^^^^^^^^^^ *Path:* ``Configuration > lightfields > ctc`` .. list-table:: :widths: 30 70 :header-rows: 0 * - **Type** - ``array of string`` * - **Required** - Yes List of light field names belonging to the CTC (Common Test Conditions) set. **Example(s):** .. code-block:: json [ "Bikes", "Danger_de_Mort", "Fountain_Vincent2" ] .. _configuration_schema_lightfields_other: [Required] ``other`` ^^^^^^^^^^^^^^^^^^^^ *Path:* ``Configuration > lightfields > other`` .. list-table:: :widths: 30 70 :header-rows: 0 * - **Type** - ``array of string`` * - **Required** - Yes * - **Default** - ``[]`` List of additional light field names outside the CTC set. .. _configuration_schema_other_lightfield_configuration_files: [Optional] ``other-lightfield-configuration-files`` ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ *Path:* ``Configuration > other-lightfield-configuration-files`` .. list-table:: :widths: 30 70 :header-rows: 0 * - **Type** - ``array of string`` * - **Required** - No * - **Default** - ``[]`` List of paths to additional JSON files containing per-lightfield configuration (e.g., URLs, original formats). Use '/dev/null' to skip. **Example(s):** .. code-block:: json [ "/dev/null" ] .. code-block:: json [ "${base-path}/../my-lf-configs.json" ] .. _configuration_schema_other_quality_metrics_configuration_files: [Optional] ``other-quality-metrics-configuration-files`` ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ *Path:* ``Configuration > other-quality-metrics-configuration-files`` .. list-table:: :widths: 30 70 :header-rows: 0 * - **Type** - ``array of string`` * - **Required** - No * - **Default** - ``[]`` List of paths to additional JSON files defining custom quality metrics. **Example(s):** .. code-block:: json [ "${base-path}/../examples/custom-metrics-compare.json" ] .. _configuration_schema_raw_paths: [Required] ``raw_paths`` ~~~~~~~~~~~~~~~~~~~~~~~~ *Path:* ``Configuration > raw_paths`` .. list-table:: :widths: 30 70 :header-rows: 0 * - **Type** - ``object`` * - **Required** - Yes Filesystem paths used for raw light field data at various stages of the pipeline. .. _configuration_schema_raw_paths_ppm_download: [Required] ``ppm-download`` ^^^^^^^^^^^^^^^^^^^^^^^^^^^ *Path:* ``Configuration > raw_paths > ppm-download`` .. list-table:: :widths: 30 70 :header-rows: 0 * - **Type** - ``string`` * - **Required** - Yes Directory where original PPM ZIP files are downloaded to. .. _configuration_schema_raw_paths_ppm: [Required] ``ppm`` ^^^^^^^^^^^^^^^^^^ *Path:* ``Configuration > raw_paths > ppm`` .. list-table:: :widths: 30 70 :header-rows: 0 * - **Type** - ``string`` * - **Required** - Yes Directory containing the preprocessed PPM files (e.g., cropped to 11x11 views) used as source for YUV/PGX conversion. .. _configuration_schema_raw_paths_yuv: [Required] ``yuv`` ^^^^^^^^^^^^^^^^^^ *Path:* ``Configuration > raw_paths > yuv`` .. list-table:: :widths: 30 70 :header-rows: 0 * - **Type** - ``string`` * - **Required** - Yes Directory where the converted YUV files are stored. Used as input for x265 encoding and as reference for quality metrics. .. _configuration_schema_raw_paths_yuv_check: [Required] ``yuv_check`` ^^^^^^^^^^^^^^^^^^^^^^^^ *Path:* ``Configuration > raw_paths > yuv_check`` .. list-table:: :widths: 30 70 :header-rows: 0 * - **Type** - ``string`` * - **Required** - Yes Temporary directory for YUV files reconstructed from PGX, used to validate the YUV->PGX->YUV round-trip. .. _configuration_schema_raw_paths_pgx: [Required] ``pgx`` ^^^^^^^^^^^^^^^^^^ *Path:* ``Configuration > raw_paths > pgx`` .. list-table:: :widths: 30 70 :header-rows: 0 * - **Type** - ``string`` * - **Required** - Yes Directory where the converted PGX files are stored. Used as input for JPLM encoding. .. _configuration_schema_force_conversions: [Optional] ``force_conversions`` ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ *Path:* ``Configuration > force_conversions`` .. list-table:: :widths: 30 70 :header-rows: 0 * - **Type** - ``boolean`` * - **Required** - No * - **Default** - ``true`` If true, PPM preprocessing and YUV/PGX conversions are always re-run even if output files already exist. Set to false to skip conversions when outputs are already present. .. _configuration_schema_remove_yuv_from_pgx_after_check: [Optional] ``remove_yuv_from_pgx_after_check`` ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ *Path:* ``Configuration > remove_yuv_from_pgx_after_check`` .. list-table:: :widths: 30 70 :header-rows: 0 * - **Type** - ``boolean`` * - **Required** - No * - **Default** - ``true`` If true, the temporary YUV files generated from PGX (for round-trip validation) are deleted after the MD5 check. Set to false to keep them for debugging. .. _configuration_schema_codecs: [Required] ``codecs`` ~~~~~~~~~~~~~~~~~~~~~ *Path:* ``Configuration > codecs`` .. list-table:: :widths: 30 70 :header-rows: 0 * - **Type** - ``object`` * - **Required** - Yes Configuration for all codecs used in the experiment. .. _configuration_schema_codecs_custom_filenames: [Optional] ``custom-filenames`` ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ *Path:* ``Configuration > codecs > custom-filenames`` .. list-table:: :widths: 30 70 :header-rows: 0 * - **Type** - ``array of string`` * - **Required** - No * - **Default** - ``[]`` List of paths to JSON files defining custom (non-example) codec configurations. .. _configuration_schema_codecs_example_filenames: [Optional] ``example-filenames`` ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ *Path:* ``Configuration > codecs > example-filenames`` .. list-table:: :widths: 30 70 :header-rows: 0 * - **Type** - ``array of string`` * - **Required** - No * - **Default** - ``[]`` List of paths to JSON files defining example/sample codec configurations (used for testing without full encoding). .. _configuration_schema_codecs_examples: [Optional] ``examples`` ^^^^^^^^^^^^^^^^^^^^^^^ *Path:* ``Configuration > codecs > examples`` .. list-table:: :widths: 30 70 :header-rows: 0 * - **Type** - ``array of string`` * - **Required** - No * - **Default** - ``[]`` List of example codec names (from example-filenames) to run. When only example codecs are listed here and 'run' is empty, YUV/PGX conversion is skipped. **Example(s):** .. code-block:: json [ "jplm-ctc-example", "x265-ctc-example" ] .. _configuration_schema_codecs_run: [Required] ``run`` ^^^^^^^^^^^^^^^^^^ *Path:* ``Configuration > codecs > run`` .. list-table:: :widths: 30 70 :header-rows: 0 * - **Type** - ``array of string`` * - **Required** - Yes List of codec names (from 'configuration') to run in the experiment. Takes precedence over 'examples' for determining whether conversion is needed. **Example(s):** .. code-block:: json [ "jplm", "x265" ] .. _configuration_schema_codecs_use_docker_for_build: [Optional] ``use-docker-for-build`` ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ *Path:* ``Configuration > codecs > use-docker-for-build`` .. list-table:: :widths: 30 70 :header-rows: 0 * - **Type** - ``boolean`` * - **Required** - No * - **Default** - ``true`` Whether to use Docker for building codec binaries. .. _configuration_schema_codecs_configuration: [Required] ``configuration`` ^^^^^^^^^^^^^^^^^^^^^^^^^^^^ *Path:* ``Configuration > codecs > configuration`` .. list-table:: :widths: 30 70 :header-rows: 0 * - **Type** - ``object`` * - **Required** - Yes Per-codec configuration objects. Keys are codec names; values follow the codecProperties definition. Each entry in this object follows the structure below. .. _configuration_schema_codecs_configuration_entry_wrapper_file: [Optional] ``wrapper_file`` ''''''''''''''''''''''''''' *Path:* ``Configuration > codecs > configuration > wrapper_file`` .. list-table:: :widths: 30 70 :header-rows: 0 * - **Type** - ``string`` * - **Required** - No Name of the wrapper_file used for the codec. **Example(s):** .. code-block:: json "jplm_wrapper" .. code-block:: json "x265_wrapper" .. _configuration_schema_codecs_configuration_entry_wrapper_name: [Optional] ``wrapper_name`` ''''''''''''''''''''''''''' *Path:* ``Configuration > codecs > configuration > wrapper_name`` .. list-table:: :widths: 30 70 :header-rows: 0 * - **Type** - ``string`` * - **Required** - No Name of the wrapper used. **Example(s):** .. code-block:: json "JPLMWrapper" .. code-block:: json "x265Wrapper" .. _configuration_schema_codecs_configuration_entry_repository: [Optional] ``repository`` ''''''''''''''''''''''''' *Path:* ``Configuration > codecs > configuration > repository`` .. list-table:: :widths: 30 70 :header-rows: 0 * - **Type** - ``string`` * - **Required** - No * - **Default** - ``""`` URI for the git repository if automatic download should be used. **Example(s):** .. code-block:: json "git@gitlab.com:wg1/jpeg-plm.git" .. _configuration_schema_codecs_configuration_entry_tag: [Optional] ``tag`` '''''''''''''''''' *Path:* ``Configuration > codecs > configuration > tag`` .. list-table:: :widths: 30 70 :header-rows: 0 * - **Type** - ``string`` * - **Required** - No * - **Default** - ``"master"`` The name of a git tag or branch to checkout after cloning the repository. .. _configuration_schema_codecs_configuration_entry_path: [Optional] ``path`` ''''''''''''''''''' *Path:* ``Configuration > codecs > configuration > path`` .. list-table:: :widths: 30 70 :header-rows: 0 * - **Type** - ``string`` * - **Required** - No The path in which the codec files will be saved. .. _configuration_schema_codecs_configuration_entry_inherit: [Optional] ``inherit`` '''''''''''''''''''''' *Path:* ``Configuration > codecs > configuration > inherit`` .. list-table:: :widths: 30 70 :header-rows: 0 * - **Type** - ``string`` * - **Required** - No Name of another codec configuration from which to inherit properties. The inherited codec must be declared before this one. **Example(s):** .. code-block:: json "jplm" .. code-block:: json "parallel-jplm-1thread" .. _configuration_schema_codecs_configuration_entry_build_options: [Optional] ``build_options`` '''''''''''''''''''''''''''' *Path:* ``Configuration > codecs > configuration > build_options`` .. list-table:: :widths: 30 70 :header-rows: 0 * - **Type** - ``array of string`` * - **Required** - No * - **Default** - ``[]`` Flags to pass to cmake for configuring the build. **Example(s):** .. code-block:: json [ "-DCMAKE_BUILD_TYPE=Release" ] .. _configuration_schema_codecs_configuration_entry_cmake_path: [Optional] ``cmake_path`` ''''''''''''''''''''''''' *Path:* ``Configuration > codecs > configuration > cmake_path`` .. list-table:: :widths: 30 70 :header-rows: 0 * - **Type** - ``string`` * - **Required** - No Path to inform cmake where to find the CMakeLists.txt file. Relative to the path property. **Example(s):** .. code-block:: json ".." .. _configuration_schema_codecs_configuration_entry_results: [Optional] ``results`` '''''''''''''''''''''' *Path:* ``Configuration > codecs > configuration > results`` .. list-table:: :widths: 30 70 :header-rows: 0 * - **Type** - ``string`` * - **Required** - No Path in which the results will be saved. It includes the encoded and decoded files. **Example(s):** .. code-block:: json "${ce-path}/results/jplm_results" .. _configuration_schema_codecs_configuration_entry_log: [Optional] ``log`` '''''''''''''''''' *Path:* ``Configuration > codecs > configuration > log`` .. list-table:: :widths: 30 70 :header-rows: 0 * - **Type** - ``string`` * - **Required** - No * - **Default** - ``"log.json"`` Name of a log file (JSON format) generated after codec execution for all LFs and bitrates. Saved in the 'results' path. **Example(s):** .. code-block:: json "execution_log_jplm.json" .. _configuration_schema_codecs_configuration_entry_encoded_extension: [Optional] ``encoded_extension`` '''''''''''''''''''''''''''''''' *Path:* ``Configuration > codecs > configuration > encoded_extension`` .. list-table:: :widths: 30 70 :header-rows: 0 * - **Type** - ``string`` * - **Required** - No File extension used in the codec output for the compressed file. **Example(s):** .. code-block:: json "jpl" .. code-block:: json "h265" .. _configuration_schema_codecs_configuration_entry_raw_type: [Optional] ``raw_type`` ''''''''''''''''''''''' *Path:* ``Configuration > codecs > configuration > raw_type`` .. list-table:: :widths: 30 70 :header-rows: 0 * - **Type** - ``string`` * - **Required** - No Raw format used as input/output for encoding and decoding. **Example(s):** .. code-block:: json "pgx" .. code-block:: json "yuv" .. _configuration_schema_codecs_configuration_entry_force_encoding: [Optional] ``force_encoding`` ''''''''''''''''''''''''''''' *Path:* ``Configuration > codecs > configuration > force_encoding`` .. list-table:: :widths: 30 70 :header-rows: 0 * - **Type** - ``boolean`` * - **Required** - No * - **Default** - ``false`` If true, forces re-encoding even if encoded files already exist. .. _configuration_schema_codecs_configuration_entry_force_building: [Optional] ``force_building`` ''''''''''''''''''''''''''''' *Path:* ``Configuration > codecs > configuration > force_building`` .. list-table:: :widths: 30 70 :header-rows: 0 * - **Type** - ``boolean`` * - **Required** - No * - **Default** - ``false`` If true, forces rebuilding the codec even if the binary already exists. .. _configuration_schema_codecs_configuration_entry_decoded_conversions: [Optional] ``decoded_conversions`` '''''''''''''''''''''''''''''''''' *Path:* ``Configuration > codecs > configuration > decoded_conversions`` .. list-table:: :widths: 30 70 :header-rows: 0 * - **Type** - ``array of string`` * - **Required** - No * - **Default** - ``[]`` List of formats to convert the decoded output to (e.g., 'ppm', 'pgx', 'yuv'). **Example(s):** .. code-block:: json [ "ppm", "pgx" ] .. code-block:: json [ "yuv", "pgx" ] .. _configuration_schema_codecs_configuration_entry_keep_decoded: [Optional] ``keep_decoded`` ''''''''''''''''''''''''''' *Path:* ``Configuration > codecs > configuration > keep_decoded`` .. list-table:: :widths: 30 70 :header-rows: 0 * - **Type** - ``array of string`` * - **Required** - No List of decoded formats to keep after conversion. Others may be removed. **Example(s):** .. code-block:: json [ "pgx" ] .. code-block:: json [ "yuv" ] .. code-block:: json [ "ppm" ] .. _configuration_schema_codecs_configuration_entry_clear_log: [Optional] ``clear_log`` '''''''''''''''''''''''' *Path:* ``Configuration > codecs > configuration > clear_log`` .. list-table:: :widths: 30 70 :header-rows: 0 * - **Type** - ``boolean`` * - **Required** - No * - **Default** - ``false`` If true, clears the codec log file before running. .. _configuration_schema_codecs_configuration_entry_repetitions: [Optional] ``repetitions`` '''''''''''''''''''''''''' *Path:* ``Configuration > codecs > configuration > repetitions`` .. list-table:: :widths: 30 70 :header-rows: 0 * - **Type** - ``integer`` * - **Required** - No * - **Default** - ``1`` Number of times encoding and decoding should be repeated for each LF/bitrate combination. .. _configuration_schema_codecs_configuration_entry_kwargs: [Optional] ``kwargs`` ''''''''''''''''''''' *Path:* ``Configuration > codecs > configuration > kwargs`` .. list-table:: :widths: 30 70 :header-rows: 0 * - **Type** - ``object`` * - **Required** - No Additional keyword arguments passed to the codec wrapper. .. _configuration_schema_codecs_configuration_entry_kwargs_json_configuration_path: [Optional] ``json_configuration_path`` `````````````````````````````````````` *Path:* ``Configuration > codecs > configuration > kwargs > json_configuration_path`` .. list-table:: :widths: 30 70 :header-rows: 0 * - **Type** - ``string`` * - **Required** - No Path to a directory containing JSON configuration files for the codec. .. _configuration_schema_codecs_configuration_entry_kwargs_number_of_threads: [Optional] ``number_of_threads`` ```````````````````````````````` *Path:* ``Configuration > codecs > configuration > kwargs > number_of_threads`` .. list-table:: :widths: 30 70 :header-rows: 0 * - **Type** - ``integer`` * - **Required** - No Number of threads to use for encoding/decoding. **Example(s):** .. code-block:: json 1 .. code-block:: json 2 .. code-block:: json 8 .. _configuration_schema_codecs_configuration_entry_kwargs_extra_params: [Optional] ``extra_params`` ``````````````````````````` *Path:* ``Configuration > codecs > configuration > kwargs > extra_params`` .. list-table:: :widths: 30 70 :header-rows: 0 * - **Type** - ``string`` * - **Required** - No Extra command-line parameters to pass to the codec. **Example(s):** .. code-block:: json "-pnt" .. _configuration_schema_codecs_configuration_entry_rd_preferences: [Optional] ``rd_preferences`` ''''''''''''''''''''''''''''' *Path:* ``Configuration > codecs > configuration > rd_preferences`` .. list-table:: :widths: 30 70 :header-rows: 0 * - **Type** - ``object`` * - **Required** - No Visual preferences for this codec in RD plots. .. _configuration_schema_codecs_configuration_entry_rd_preferences_title: [Required] ``title`` ```````````````````` *Path:* ``Configuration > codecs > configuration > rd_preferences > title`` .. list-table:: :widths: 30 70 :header-rows: 0 * - **Type** - ``string`` * - **Required** - Yes Label for this codec in RD plots. **Example(s):** .. code-block:: json "JPLM (ce_16)" .. _configuration_schema_codecs_configuration_entry_rd_preferences_color: [Optional] ``color`` ```````````````````` *Path:* ``Configuration > codecs > configuration > rd_preferences > color`` .. list-table:: :widths: 30 70 :header-rows: 0 * - **Type** - ``string`` * - **Required** - No Color for this codec in RD plots. **Example(s):** .. code-block:: json "blue" .. code-block:: json "tab:orange" .. _configuration_schema_codecs_configuration_entry_rd_preferences_marker: [Optional] ``marker`` ````````````````````` *Path:* ``Configuration > codecs > configuration > rd_preferences > marker`` .. list-table:: :widths: 30 70 :header-rows: 0 * - **Type** - ``string`` * - **Required** - No Marker style for this codec in RD plots. **Example(s):** .. code-block:: json "o" .. code-block:: json "x" .. code-block:: json "+" .. _configuration_schema_logs: [Required] ``logs`` ~~~~~~~~~~~~~~~~~~~ *Path:* ``Configuration > logs`` .. list-table:: :widths: 30 70 :header-rows: 0 * - **Type** - ``object`` * - **Required** - Yes Paths for log files generated by the various pipeline scripts. .. _configuration_schema_logs_yuv_and_pgx_from_ppm: [Required] ``yuv_and_pgx_from_ppm`` ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ *Path:* ``Configuration > logs > yuv_and_pgx_from_ppm`` .. list-table:: :widths: 30 70 :header-rows: 0 * - **Type** - ``string`` * - **Required** - Yes Path (including filename) for the JSON log produced by the YUV and PGX conversion script. **Example(s):** .. code-block:: json "${ce-path}/execution_yuv_and_pgx_from_ppm.json" .. _configuration_schema_logs_rd_results_path: [Required] ``rd_results_path`` ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ *Path:* ``Configuration > logs > rd_results_path`` .. list-table:: :widths: 30 70 :header-rows: 0 * - **Type** - ``string`` * - **Required** - Yes Directory path where RD report JSON files are saved. **Example(s):** .. code-block:: json "${ce-path}/results/rd_reports" .. _configuration_schema_rd_plots: [Required] ``rd_plots`` ~~~~~~~~~~~~~~~~~~~~~~~ *Path:* ``Configuration > rd_plots`` .. list-table:: :widths: 30 70 :header-rows: 0 * - **Type** - ``array`` * - **Required** - Yes List of RD plot configurations. Each entry defines one set of output plots with its own path, metrics, and visual settings. Items of ``rd_plots`` ~~~~~~~~~~~~~~~~~~~~~ .. _configuration_schema_rd_plots_items_path: [Required] ``path`` ^^^^^^^^^^^^^^^^^^^ *Path:* ``Configuration > rd_plots > items > path`` .. list-table:: :widths: 30 70 :header-rows: 0 * - **Type** - ``string`` * - **Required** - Yes Directory path where the RD plots will be saved. **Example(s):** .. code-block:: json "${ce-path}/results/rd_plots/akima_interpolation" .. _configuration_schema_rd_plots_items_format: [Optional] ``format`` ^^^^^^^^^^^^^^^^^^^^^ *Path:* ``Configuration > rd_plots > items > format`` .. list-table:: :widths: 30 70 :header-rows: 0 * - **Type** - ``string`` * - **Required** - No * - **Default** - ``"pdf"`` File format for the generated RD plots. **Allowed values:** * ``"pdf"`` * ``"png"`` .. _configuration_schema_rd_plots_items_anchor: [Optional] ``anchor`` ^^^^^^^^^^^^^^^^^^^^^ *Path:* ``Configuration > rd_plots > items > anchor`` .. list-table:: :widths: 30 70 :header-rows: 0 * - **Type** - ``string`` * - **Required** - No Codec name to use as anchor/reference in BD-rate calculations for this plot. **Example(s):** .. code-block:: json "x265" .. code-block:: json "jplm" .. _configuration_schema_rd_plots_items_generate_json: [Optional] ``generate_json`` ^^^^^^^^^^^^^^^^^^^^^^^^^^^^ *Path:* ``Configuration > rd_plots > items > generate_json`` .. list-table:: :widths: 30 70 :header-rows: 0 * - **Type** - ``boolean`` * - **Required** - No * - **Default** - ``true`` Whether to also generate a JSON file with the pooled metrics. .. _configuration_schema_rd_plots_items_metrics: [Required] ``metrics`` ^^^^^^^^^^^^^^^^^^^^^^ *Path:* ``Configuration > rd_plots > items > metrics`` .. list-table:: :widths: 30 70 :header-rows: 0 * - **Type** - ``array of string`` * - **Required** - Yes * - **Defined in** - ``metricsList`` List of metrics to generate RD plots for. **Example(s):** .. code-block:: json [ "psnr_y", "psnr_yuv_weighted", "float_ssim_db", "vmaf_db" ] .. _configuration_schema_rd_plots_items_bpp_logscale: [Optional] ``bpp_logscale`` ^^^^^^^^^^^^^^^^^^^^^^^^^^^ *Path:* ``Configuration > rd_plots > items > bpp_logscale`` .. list-table:: :widths: 30 70 :header-rows: 0 * - **Type** - ``boolean`` * - **Required** - No * - **Default** - ``true`` Whether to use log scale on the rate (bpp) axis. .. _configuration_schema_rd_plots_items_interpolation: [Optional] ``interpolation`` ^^^^^^^^^^^^^^^^^^^^^^^^^^^^ *Path:* ``Configuration > rd_plots > items > interpolation`` .. list-table:: :widths: 30 70 :header-rows: 0 * - **Type** - ``integer`` * - **Required** - No * - **Default** - ``100`` Number of interpolation points for smooth RD curves. Omit or set to 0 to disable interpolation. .. _configuration_schema_rd_plots_items_figure_size: [Optional] ``figure_size`` ^^^^^^^^^^^^^^^^^^^^^^^^^^ *Path:* ``Configuration > rd_plots > items > figure_size`` .. list-table:: :widths: 30 70 :header-rows: 0 * - **Type** - ``array of number`` * - **Required** - No Figure size [width, height] in inches. **Example(s):** .. code-block:: json [ 8, 4 ] .. code-block:: json [ 5, 3 ] **Array restrictions:** * Min items: ``2`` * Max items: ``2`` .. _configuration_schema_quality_heatmaps: [Required] ``quality_heatmaps`` ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ *Path:* ``Configuration > quality_heatmaps`` .. list-table:: :widths: 30 70 :header-rows: 0 * - **Type** - ``object`` * - **Required** - Yes Configuration for per-lightfield quality heatmap generation. .. _configuration_schema_quality_heatmaps_path: [Required] ``path`` ^^^^^^^^^^^^^^^^^^^ *Path:* ``Configuration > quality_heatmaps > path`` .. list-table:: :widths: 30 70 :header-rows: 0 * - **Type** - ``string`` * - **Required** - Yes Directory where heatmap files will be saved. **Example(s):** .. code-block:: json "${ce-path}/results/heatmaps" .. _configuration_schema_quality_heatmaps_format: [Optional] ``format`` ^^^^^^^^^^^^^^^^^^^^^ *Path:* ``Configuration > quality_heatmaps > format`` .. list-table:: :widths: 30 70 :header-rows: 0 * - **Type** - ``string`` * - **Required** - No * - **Default** - ``"pdf"`` File format for the generated heatmaps. **Allowed values:** * ``"pdf"`` * ``"png"`` .. _configuration_schema_quality_heatmaps_show_values: [Optional] ``show_values`` ^^^^^^^^^^^^^^^^^^^^^^^^^^ *Path:* ``Configuration > quality_heatmaps > show_values`` .. list-table:: :widths: 30 70 :header-rows: 0 * - **Type** - ``boolean`` * - **Required** - No * - **Default** - ``false`` Whether to overlay numeric metric values on the heatmap cells. .. _configuration_schema_quality_heatmaps_metrics: [Required] ``metrics`` ^^^^^^^^^^^^^^^^^^^^^^ *Path:* ``Configuration > quality_heatmaps > metrics`` .. list-table:: :widths: 30 70 :header-rows: 0 * - **Type** - ``array of string`` * - **Required** - Yes * - **Defined in** - ``metricsList`` List of metrics to generate heatmaps for. **Example(s):** .. code-block:: json [ "psnr_y", "psnr_yuv_weighted", "float_ssim_db", "vmaf_db" ] .. _configuration_schema_bd_reports: [Optional] ``bd_reports`` ~~~~~~~~~~~~~~~~~~~~~~~~~ *Path:* ``Configuration > bd_reports`` .. list-table:: :widths: 30 70 :header-rows: 0 * - **Type** - ``object`` * - **Required** - No Configuration for Bjøntegaard Delta (BD) rate/distortion report generation. .. _configuration_schema_bd_reports_bd_results_path: [Required] ``bd_results_path`` ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ *Path:* ``Configuration > bd_reports > bd_results_path`` .. list-table:: :widths: 30 70 :header-rows: 0 * - **Type** - ``string`` * - **Required** - Yes Directory where BD report files will be saved. **Example(s):** .. code-block:: json "${ce-path}/results/bd_reports" .. _configuration_schema_bd_reports_table_formats: [Required] ``table_formats`` ^^^^^^^^^^^^^^^^^^^^^^^^^^^^ *Path:* ``Configuration > bd_reports > table_formats`` .. list-table:: :widths: 30 70 :header-rows: 0 * - **Type** - ``array of string`` * - **Required** - Yes Output formats for the BD tables. **Example(s):** .. code-block:: json [ "text", "html", "csv", "latex" ] .. _configuration_schema_bd_reports_print_text: [Optional] ``print_text`` ^^^^^^^^^^^^^^^^^^^^^^^^^ *Path:* ``Configuration > bd_reports > print_text`` .. list-table:: :widths: 30 70 :header-rows: 0 * - **Type** - ``boolean`` * - **Required** - No * - **Default** - ``true`` Whether to print the text-format BD table to the terminal. .. _configuration_schema_bundled_bitstream_path: [Optional] ``bundled_bitstream_path`` ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ *Path:* ``Configuration > bundled_bitstream_path`` .. list-table:: :widths: 30 70 :header-rows: 0 * - **Type** - ``string`` * - **Required** - No Directory containing bundled bitstream files (one sub-folder per codec) used for BD/RD analysis without re-encoding. **Example(s):** .. code-block:: json "${ce-path}/bundled_bitstreams" .. _configuration_schema_rd_plots_from_bundle: [Optional] ``rd_plots_from_bundle`` ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ *Path:* ``Configuration > rd_plots_from_bundle`` .. list-table:: :widths: 30 70 :header-rows: 0 * - **Type** - ``object`` * - **Required** - No Configuration for generating RD plots directly from pre-existing bundled bitstreams, without running the full encoding pipeline. .. _configuration_schema_rd_plots_from_bundle_codecs: [Required] ``codecs`` ^^^^^^^^^^^^^^^^^^^^^ *Path:* ``Configuration > rd_plots_from_bundle > codecs`` .. list-table:: :widths: 30 70 :header-rows: 0 * - **Type** - ``array of string`` * - **Required** - Yes List of codec names whose bundled results should be plotted. **Example(s):** .. code-block:: json [ "jplm", "x265" ] .. _configuration_schema_rd_plots_from_bundle_compute_metrics_from_encoded: [Optional] ``compute_metrics_from_encoded`` ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ *Path:* ``Configuration > rd_plots_from_bundle > compute_metrics_from_encoded`` .. list-table:: :widths: 30 70 :header-rows: 0 * - **Type** - ``boolean`` * - **Required** - No * - **Default** - ``false`` If true, recomputes quality metrics from the encoded bitstreams in the bundle. If false, uses pre-computed metrics. .. _configuration_schema_rd_plots_from_bundle_encoded_files_dir: [Required] ``encoded_files_dir`` ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ *Path:* ``Configuration > rd_plots_from_bundle > encoded_files_dir`` .. list-table:: :widths: 30 70 :header-rows: 0 * - **Type** - ``string`` * - **Required** - Yes Directory containing the bundled encoded files. **Example(s):** .. code-block:: json "${ce-path}/bundled/" .. _configuration_schema_rd_plots_from_bundle_rd_reports_dir: [Required] ``rd_reports_dir`` ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ *Path:* ``Configuration > rd_plots_from_bundle > rd_reports_dir`` .. list-table:: :widths: 30 70 :header-rows: 0 * - **Type** - ``string`` * - **Required** - Yes Directory where RD report JSONs generated from the bundle will be saved. **Example(s):** .. code-block:: json "${ce-path}/bundled_rd_reports" .. _configuration_schema_rd_plots_from_bundle_results_path: [Required] ``results_path`` ^^^^^^^^^^^^^^^^^^^^^^^^^^^ *Path:* ``Configuration > rd_plots_from_bundle > results_path`` .. list-table:: :widths: 30 70 :header-rows: 0 * - **Type** - ``string`` * - **Required** - Yes Directory where RD plots generated from the bundle will be saved. **Example(s):** .. code-block:: json "${ce-path}/bundle/rd_plots" .. _configuration_schema_rd_plots_from_bundle_extra_rd_curves: [Optional] ``extra_rd_curves`` ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ *Path:* ``Configuration > rd_plots_from_bundle > extra_rd_curves`` .. list-table:: :widths: 30 70 :header-rows: 0 * - **Type** - ``array of object`` * - **Required** - No Additional RD curves to overlay on the bundle plots, loaded from existing RD report JSON files. Items of ``extra_rd_curves`` ^^^^^^^^^^^^^^^^^^^^^^^^^^^^ .. _configuration_schema_rd_plots_from_bundle_extra_rd_curves_items_filename: [Required] ``filename`` ''''''''''''''''''''''' *Path:* ``Configuration > rd_plots_from_bundle > extra_rd_curves > items > filename`` .. list-table:: :widths: 30 70 :header-rows: 0 * - **Type** - ``string`` * - **Required** - Yes Output filename (without extension) for this multi-curve plot. .. _configuration_schema_rd_plots_from_bundle_extra_rd_curves_items_title: [Required] ``title`` '''''''''''''''''''' *Path:* ``Configuration > rd_plots_from_bundle > extra_rd_curves > items > title`` .. list-table:: :widths: 30 70 :header-rows: 0 * - **Type** - ``string`` * - **Required** - Yes Title of the light field or plot. .. _configuration_schema_rd_plots_from_bundle_extra_rd_curves_items_anchor: [Optional] ``anchor`` ''''''''''''''''''''' *Path:* ``Configuration > rd_plots_from_bundle > extra_rd_curves > items > anchor`` .. list-table:: :widths: 30 70 :header-rows: 0 * - **Type** - ``string`` * - **Required** - No ID of the curve to use as BD-rate anchor. **Example(s):** .. code-block:: json "complete" .. code-block:: json "jplm" .. _configuration_schema_rd_plots_from_bundle_extra_rd_curves_items_rd_files: [Required] ``rd_files`` ''''''''''''''''''''''' *Path:* ``Configuration > rd_plots_from_bundle > extra_rd_curves > items > rd_files`` .. list-table:: :widths: 30 70 :header-rows: 0 * - **Type** - ``array of object`` * - **Required** - Yes List of RD report files to overlay. Items of ``rd_files`` ''''''''''''''''''''' .. _configuration_schema_rd_plots_from_bundle_extra_rd_curves_items_rd_files_items_id: [Required] ``id`` ````````````````` *Path:* ``Configuration > rd_plots_from_bundle > extra_rd_curves > items > rd_files > items > id`` .. list-table:: :widths: 30 70 :header-rows: 0 * - **Type** - ``string`` * - **Required** - Yes Unique identifier for this curve within the plot. .. _configuration_schema_rd_plots_from_bundle_extra_rd_curves_items_rd_files_items_filename: [Required] ``filename`` ``````````````````````` *Path:* ``Configuration > rd_plots_from_bundle > extra_rd_curves > items > rd_files > items > filename`` .. list-table:: :widths: 30 70 :header-rows: 0 * - **Type** - ``string`` * - **Required** - Yes Absolute path to the RD report JSON file. .. _configuration_schema_rd_plots_from_bundle_extra_rd_curves_items_rd_files_items_rd_preferences: [Optional] ``rd_preferences`` ````````````````````````````` *Path:* ``Configuration > rd_plots_from_bundle > extra_rd_curves > items > rd_files > items > rd_preferences`` .. list-table:: :widths: 30 70 :header-rows: 0 * - **Type** - ``object`` * - **Required** - No * - **Defined in** - ``codecProperties/properties/rd_preferences`` Visual preferences for this codec in RD plots. .. _configuration_schema_rd_plots_from_bundle_extra_rd_curves_items_rd_files_items_rd_preferences_title: [Required] ``title`` ```````````````````` *Path:* ``Configuration > rd_plots_from_bundle > extra_rd_curves > items > rd_files > items > rd_preferences > title`` .. list-table:: :widths: 30 70 :header-rows: 0 * - **Type** - ``string`` * - **Required** - Yes Label for this codec in RD plots. **Example(s):** .. code-block:: json "JPLM (ce_16)" .. _configuration_schema_rd_plots_from_bundle_extra_rd_curves_items_rd_files_items_rd_preferences_color: [Optional] ``color`` ```````````````````` *Path:* ``Configuration > rd_plots_from_bundle > extra_rd_curves > items > rd_files > items > rd_preferences > color`` .. list-table:: :widths: 30 70 :header-rows: 0 * - **Type** - ``string`` * - **Required** - No Color for this codec in RD plots. **Example(s):** .. code-block:: json "blue" .. code-block:: json "tab:orange" .. _configuration_schema_rd_plots_from_bundle_extra_rd_curves_items_rd_files_items_rd_preferences_marker: [Optional] ``marker`` ````````````````````` *Path:* ``Configuration > rd_plots_from_bundle > extra_rd_curves > items > rd_files > items > rd_preferences > marker`` .. list-table:: :widths: 30 70 :header-rows: 0 * - **Type** - ``string`` * - **Required** - No Marker style for this codec in RD plots. **Example(s):** .. code-block:: json "o" .. code-block:: json "x" .. code-block:: json "+" .. _configuration_schema_equivalence_check: [Optional] ``equivalence_check`` ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ *Path:* ``Configuration > equivalence_check`` .. list-table:: :widths: 30 70 :header-rows: 0 * - **Type** - ``object`` * - **Required** - No Configuration for checking equivalence (bitwise or decoded output) between two or more codecs. .. _configuration_schema_equivalence_check_equivalence_results: [Required] ``equivalence_results`` ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ *Path:* ``Configuration > equivalence_check > equivalence_results`` .. list-table:: :widths: 30 70 :header-rows: 0 * - **Type** - ``string`` * - **Required** - Yes Directory where equivalence check result tables will be saved. **Example(s):** .. code-block:: json "${ce-path}/results/equivalence_check" .. _configuration_schema_equivalence_check_table_formats: [Optional] ``table_formats`` ^^^^^^^^^^^^^^^^^^^^^^^^^^^^ *Path:* ``Configuration > equivalence_check > table_formats`` .. list-table:: :widths: 30 70 :header-rows: 0 * - **Type** - ``array of string`` * - **Required** - No Output formats for the equivalence tables. **Example(s):** .. code-block:: json [ "latex", "text", "html" ] .. _configuration_schema_equivalence_check_rules: [Required] ``rules`` ^^^^^^^^^^^^^^^^^^^^ *Path:* ``Configuration > equivalence_check > rules`` .. list-table:: :widths: 30 70 :header-rows: 0 * - **Type** - ``array of object`` * - **Required** - Yes List of equivalence rules to evaluate. Items of ``rules`` ^^^^^^^^^^^^^^^^^^ .. _configuration_schema_equivalence_check_rules_items_name: [Optional] ``name`` ''''''''''''''''''' *Path:* ``Configuration > equivalence_check > rules > items > name`` .. list-table:: :widths: 30 70 :header-rows: 0 * - **Type** - ``string`` * - **Required** - No Unique name for this rule, used for output folder naming. .. _configuration_schema_equivalence_check_rules_items_equivalence: [Required] ``equivalence`` '''''''''''''''''''''''''' *Path:* ``Configuration > equivalence_check > rules > items > equivalence`` .. list-table:: :widths: 30 70 :header-rows: 0 * - **Type** - ``array of enum (of string)`` * - **Required** - Yes Which output stage(s) to compare: 'encoded' for bitstreams, 'decoded' for reconstructed files. **Example(s):** .. code-block:: json [ "decoded" ] .. code-block:: json [ "encoded", "decoded" ] .. _configuration_schema_equivalence_check_rules_items_codecs: [Required] ``codecs`` ''''''''''''''''''''' *Path:* ``Configuration > equivalence_check > rules > items > codecs`` .. list-table:: :widths: 30 70 :header-rows: 0 * - **Type** - ``array of string`` * - **Required** - Yes List of codec names to compare. **Example(s):** .. code-block:: json [ "jplm", "x265" ] .. _configuration_schema_equivalence_check_rules_items_formats: [Optional] ``formats`` '''''''''''''''''''''' *Path:* ``Configuration > equivalence_check > rules > items > formats`` .. list-table:: :widths: 30 70 :header-rows: 0 * - **Type** - ``array of string`` * - **Required** - No Output table formats for this specific rule, overriding the global table_formats. .. _configuration_schema_performance: [Optional] ``performance`` ~~~~~~~~~~~~~~~~~~~~~~~~~~ *Path:* ``Configuration > performance`` .. list-table:: :widths: 30 70 :header-rows: 0 * - **Type** - ``array of object`` * - **Required** - No List of performance analysis configurations (time, memory, speedup). Items of ``performance`` ~~~~~~~~~~~~~~~~~~~~~~~~ .. _configuration_schema_performance_items_codecs: [Required] ``codecs`` ^^^^^^^^^^^^^^^^^^^^^ *Path:* ``Configuration > performance > items > codecs`` .. list-table:: :widths: 30 70 :header-rows: 0 * - **Type** - ``object`` * - **Required** - Yes Codecs to include in the performance analysis. .. _configuration_schema_performance_items_codecs_analyse: [Required] ``analyse`` '''''''''''''''''''''' *Path:* ``Configuration > performance > items > codecs > analyse`` .. list-table:: :widths: 30 70 :header-rows: 0 * - **Type** - ``array of string`` * - **Required** - Yes List of codec names to include in the analysis. **Example(s):** .. code-block:: json [ "jplm", "parallel-jplm-8threads" ] .. _configuration_schema_performance_items_codecs_baseline: [Required] ``baseline`` ''''''''''''''''''''''' *Path:* ``Configuration > performance > items > codecs > baseline`` .. list-table:: :widths: 30 70 :header-rows: 0 * - **Type** - ``string`` * - **Required** - Yes Codec name to use as baseline for speedup calculations. **Example(s):** .. code-block:: json "jplm" .. _configuration_schema_performance_items_averaging: [Optional] ``averaging`` ^^^^^^^^^^^^^^^^^^^^^^^^ *Path:* ``Configuration > performance > items > averaging`` .. list-table:: :widths: 30 70 :header-rows: 0 * - **Type** - ``object`` * - **Required** - No How to aggregate performance metrics across light fields. .. _configuration_schema_performance_items_averaging_metric: [Required] ``metric`` ''''''''''''''''''''' *Path:* ``Configuration > performance > items > averaging > metric`` .. list-table:: :widths: 30 70 :header-rows: 0 * - **Type** - ``string`` * - **Required** - Yes * - **Default** - ``"median"`` Aggregation function to use across lightfields. **Example(s):** .. code-block:: json "median" .. code-block:: json "mean" .. _configuration_schema_performance_items_averaging_grouping: [Required] ``grouping`` ''''''''''''''''''''''' *Path:* ``Configuration > performance > items > averaging > grouping`` .. list-table:: :widths: 30 70 :header-rows: 0 * - **Type** - ``array of object`` * - **Required** - Yes Named groups of lightfields for grouped average plots. Items of ``grouping`` ''''''''''''''''''''' .. _configuration_schema_performance_items_averaging_grouping_items_name: [Required] ``name`` ``````````````````` *Path:* ``Configuration > performance > items > averaging > grouping > items > name`` .. list-table:: :widths: 30 70 :header-rows: 0 * - **Type** - ``string`` * - **Required** - Yes Label for this group in plots and tables. **Example(s):** .. code-block:: json "lenslets" .. code-block:: json "synthetics" .. code-block:: json "hdca" .. _configuration_schema_performance_items_averaging_grouping_items_lightfields: [Required] ``lightfields`` `````````````````````````` *Path:* ``Configuration > performance > items > averaging > grouping > items > lightfields`` .. list-table:: :widths: 30 70 :header-rows: 0 * - **Type** - ``array of string`` * - **Required** - Yes Light field names belonging to this group. .. _configuration_schema_performance_items_time: [Optional] ``time`` ^^^^^^^^^^^^^^^^^^^ *Path:* ``Configuration > performance > items > time`` .. list-table:: :widths: 30 70 :header-rows: 0 * - **Type** - ``object`` * - **Required** - No Configuration for encoding/decoding time analysis. .. _configuration_schema_performance_items_time_results_path: [Optional] ``results_path`` ''''''''''''''''''''''''''' *Path:* ``Configuration > performance > items > time > results_path`` .. list-table:: :widths: 30 70 :header-rows: 0 * - **Type** - ``string`` * - **Required** - No Directory for time analysis outputs. **Example(s):** .. code-block:: json "${ce-path}/results/performance/time" .. _configuration_schema_performance_items_time_generate_individual_plot: [Optional] ``generate_individual_plot`` ''''''''''''''''''''''''''''''''''''''' *Path:* ``Configuration > performance > items > time > generate_individual_plot`` .. list-table:: :widths: 30 70 :header-rows: 0 * - **Type** - ``boolean`` * - **Required** - No * - **Default** - ``false`` Whether to generate one plot per codec in addition to the combined plot. .. _configuration_schema_performance_items_time_averaging_metric: [Optional] ``averaging_metric`` ''''''''''''''''''''''''''''''' *Path:* ``Configuration > performance > items > time > averaging_metric`` .. list-table:: :widths: 30 70 :header-rows: 0 * - **Type** - ``string`` * - **Required** - No * - **Default** - ``"median"`` Aggregation metric for time values. .. _configuration_schema_performance_items_time_tables: [Optional] ``tables`` ''''''''''''''''''''' *Path:* ``Configuration > performance > items > time > tables`` .. list-table:: :widths: 30 70 :header-rows: 0 * - **Type** - ``object`` * - **Required** - No .. _configuration_schema_performance_items_time_tables_verbose: [Optional] ``verbose`` `````````````````````` *Path:* ``Configuration > performance > items > time > tables > verbose`` .. list-table:: :widths: 30 70 :header-rows: 0 * - **Type** - ``boolean`` * - **Required** - No * - **Default** - ``true`` .. _configuration_schema_performance_items_time_tables_formats: [Optional] ``formats`` `````````````````````` *Path:* ``Configuration > performance > items > time > tables > formats`` .. list-table:: :widths: 30 70 :header-rows: 0 * - **Type** - ``array of enum (of string)`` * - **Required** - No .. _configuration_schema_performance_items_time_plots: [Optional] ``plots`` '''''''''''''''''''' *Path:* ``Configuration > performance > items > time > plots`` .. list-table:: :widths: 30 70 :header-rows: 0 * - **Type** - ``any`` * - **Required** - No * - **Defined in** - ``performancePlotConfig`` .. _configuration_schema_performance_items_memory: [Optional] ``memory`` ^^^^^^^^^^^^^^^^^^^^^ *Path:* ``Configuration > performance > items > memory`` .. list-table:: :widths: 30 70 :header-rows: 0 * - **Type** - ``object`` * - **Required** - No Configuration for memory usage analysis. .. _configuration_schema_performance_items_memory_results_path: [Optional] ``results_path`` ''''''''''''''''''''''''''' *Path:* ``Configuration > performance > items > memory > results_path`` .. list-table:: :widths: 30 70 :header-rows: 0 * - **Type** - ``string`` * - **Required** - No Directory for memory analysis outputs. **Example(s):** .. code-block:: json "${ce-path}/results/performance/memory" .. _configuration_schema_performance_items_memory_verbose: [Optional] ``verbose`` '''''''''''''''''''''' *Path:* ``Configuration > performance > items > memory > verbose`` .. list-table:: :widths: 30 70 :header-rows: 0 * - **Type** - ``boolean`` * - **Required** - No * - **Default** - ``true`` .. _configuration_schema_performance_items_memory_generate_individual_plot: [Optional] ``generate_individual_plot`` ''''''''''''''''''''''''''''''''''''''' *Path:* ``Configuration > performance > items > memory > generate_individual_plot`` .. list-table:: :widths: 30 70 :header-rows: 0 * - **Type** - ``boolean`` * - **Required** - No * - **Default** - ``false`` .. _configuration_schema_performance_items_memory_averaging_metric: [Optional] ``averaging_metric`` ''''''''''''''''''''''''''''''' *Path:* ``Configuration > performance > items > memory > averaging_metric`` .. list-table:: :widths: 30 70 :header-rows: 0 * - **Type** - ``string`` * - **Required** - No * - **Default** - ``"median"`` .. _configuration_schema_performance_items_memory_calculate_overhead: [Optional] ``calculate_overhead`` ''''''''''''''''''''''''''''''''' *Path:* ``Configuration > performance > items > memory > calculate_overhead`` .. list-table:: :widths: 30 70 :header-rows: 0 * - **Type** - ``boolean`` * - **Required** - No * - **Default** - ``true`` Whether to calculate memory overhead relative to the baseline codec. .. _configuration_schema_performance_items_memory_plots: [Optional] ``plots`` '''''''''''''''''''' *Path:* ``Configuration > performance > items > memory > plots`` .. list-table:: :widths: 30 70 :header-rows: 0 * - **Type** - ``any`` * - **Required** - No * - **Defined in** - ``performancePlotConfig`` .. _configuration_schema_performance_items_speedup: [Optional] ``speedup`` ^^^^^^^^^^^^^^^^^^^^^^ *Path:* ``Configuration > performance > items > speedup`` .. list-table:: :widths: 30 70 :header-rows: 0 * - **Type** - ``object`` * - **Required** - No Configuration for speedup analysis relative to the baseline codec. .. _configuration_schema_performance_items_speedup_results_path: [Optional] ``results_path`` ''''''''''''''''''''''''''' *Path:* ``Configuration > performance > items > speedup > results_path`` .. list-table:: :widths: 30 70 :header-rows: 0 * - **Type** - ``string`` * - **Required** - No Directory for speedup analysis outputs. **Example(s):** .. code-block:: json "${ce-path}/results/performance/speedup" .. _configuration_schema_performance_items_speedup_generate_boxplots: [Optional] ``generate_boxplots`` '''''''''''''''''''''''''''''''' *Path:* ``Configuration > performance > items > speedup > generate_boxplots`` .. list-table:: :widths: 30 70 :header-rows: 0 * - **Type** - ``boolean`` * - **Required** - No * - **Default** - ``true`` Whether to generate boxplots for speedup distribution. .. _configuration_schema_performance_items_speedup_tables: [Optional] ``tables`` ''''''''''''''''''''' *Path:* ``Configuration > performance > items > speedup > tables`` .. list-table:: :widths: 30 70 :header-rows: 0 * - **Type** - ``object`` * - **Required** - No .. _configuration_schema_performance_items_speedup_tables_formats: [Optional] ``formats`` `````````````````````` *Path:* ``Configuration > performance > items > speedup > tables > formats`` .. list-table:: :widths: 30 70 :header-rows: 0 * - **Type** - ``array of enum (of string)`` * - **Required** - No .. _configuration_schema_performance_items_speedup_plots: [Optional] ``plots`` '''''''''''''''''''' *Path:* ``Configuration > performance > items > speedup > plots`` .. list-table:: :widths: 30 70 :header-rows: 0 * - **Type** - ``any`` * - **Required** - No * - **Defined in** - ``performancePlotConfig`` .. _configuration_schema_vmaf_executable_path: [Optional] ``vmaf_executable_path`` ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ *Path:* ``Configuration > vmaf_executable_path`` .. list-table:: :widths: 30 70 :header-rows: 0 * - **Type** - ``string`` * - **Required** - No Path to the VMAF tool executable. **Example(s):** .. code-block:: json "${ce-path}/vmaf_tool" .. _configuration_schema_x265_target_kbps_file: [Optional] ``x265_target_kbps_file`` ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ *Path:* ``Configuration > x265_target_kbps_file`` .. list-table:: :widths: 30 70 :header-rows: 0 * - **Type** - ``string`` * - **Required** - No * - **Default** - ``"../data/x265_target_kbps.json"`` Path to a JSON file mapping each LF/bitrate combination to the required x265 target bitrate in Kbps.