3.5. Templates

A template defines the set of tests against which media files will be validated. The page displays the list of templates that are part of the project. You can create a new template or edit an existing one.

../_images/Templates_en.png

3.5.1. List of Templates

Located at the top is the table of existing templates. Click on a row to highlight it and for the table to position itself for the selected row to be the first one. The lower block displays the selected template’s configuration.
Table of existing templates includes the following columns:
  • Name — to rename the template, click on Pencil;

  • Description — template description. To add or change the description, click on Pencil;

  • Task Count — the number of currently running tasks that use this template. Clicking will open a window with a list of running tasks using this template;

  • Actions — contains the following buttons:

    • DownloadTemplate — clicking will start downloading a ZIP archive with the template in JSON format to your computer,

    • CopyTemplate — clicking will create a copy of the selected template at the end of the list. The copied template will have _copy added at the end of its name,

    • Delete — clicking will open a window to confirm template deletion.

      Note

      The system template (the first one in the list) cannot be deleted; it is provided with the solution by default.
      The system will not allow deleting a template that is currently being used for media file validation. Wait for the task(s) to complete or go to the Dashboard page and stop the task(s).

To create a new template, click CreateTemplate — it is located below the table of existing templates and to the left. After creation, the table will position itself on the new template, ready for configuring.

The system lets you import a template from your computer using the UploadTemplate button. When clicked, a file selection window will open—select a ready-made template in JSON format and confirm. A template added in this way will appear at the end of the table.

Attention

JSON file has to be validated before uploading. If there are no errors, the system will save the template. Otherwise, a log with error descriptions will pop up in the top left corner of the screen. Validation includes:

  • checking the syntax and formatting of the JSON file;

  • checking for threshold values for all enabled tests. An enabled test without a threshold value is considered invalid;

  • cross-checking between the number of video and audio tracks as well as threshold values for test groups for video (General video settings, Specific settings for AVC/H.264, HEVC/H.265) and audio (General audio settings);

  • checking the span of the entered threshold values against the requirements of each test, since different tests can use different units. When manually editing values, refer to the description of specific tests in the Test List section.

3.5.2. Template configuration

To configure a template, go through these steps one by one:

  1. While in the template list, click on the the template you want to configure. The selected template will be highlighted.

  2. Go to the Settings tab below and specify:

    • Number of video tracks (1 by default);

    • Number of audio tracks (1 by default);

    • Thumbnails (how frequently thumbnails will be captured). Probe can automatically capture video stream’s thumbnails and forward them to server. To configure this setting, use the following parameters:

      • Interval — integer value, specifies the interval between thumbnail captures in seconds. Setting the value to 0 disables thumbnail capturing. The default value is 10 seconds;

      • Freeze interval — integer value, specifies the interval between thumbnail captures in seconds during a video freeze. Setting the value to 0 disables thumbnail capturing. The default value is 10 seconds.

      • Thumbnail quality — integer value, specifies thumbnail compression quality within the interval from 30 to 100 %. The default value is 70.

    Important

    The number of tracks determines how many validation condition groups will be available on the Container, Video, and Audio tabs.

    A separate set of conditions is created for each track, where you can enter values that the media file must comply with. For example, if you specify 1 video track, then in the video tests you can only set conditions for 1 track. If the file contains more tracks, they will not be validated. After changing the number of tracks, be sure to save the form. Only after saving will the settings be applied, and the following tabs (Video, Audio) will display fields for entering compliance conditions for each specified track.

  3. Save the settings before proceeding to configuring tests on the Container, Video, and Audio tabs.

    A test template includes a list of tests. A test is a rule which the probe validates a media file in reliance to. Each test is responsible for analyzing a specific parameter or error. For convenience, tests are grouped into 3 tabs: Container, Video, and Audio. Additionally, on each tab, tests are further divided into several subgroups:

    • Container:

      • General (file description) — validation of general media file parameters: size, format, duration, etc.;

      • Container validation — validation of the integrity of a specific media container.

    • Video:

      • General video settings — validation of basic metadata compliance: resolution, chroma subsampling, scan type, frame rate, etc.;

      • Specific settings for AVC/H.264, HEVC/H.265 — validation of metadata specific to these formats;

      • Video quality — validation of visual inconsistencies and artifacts.

    • Audio:

      • General audio settings — validation of basic metadata compliance: number of channels, sample rate, etc.;

      • Audio quality — validation of loudness levels, silence, distortion.

    Note

    Video quality and Audio quality tests are marked with a special HighPerformance icon, indicating increased hardware performance requirements. Enabling tests from this group will increase the duration of media file analysis.

  4. Go through the list of tests and enable the necessary ones. To enable one, tick the checkbox next to its name. Without a ticked checkbox, the test is considered disabled and will not be performed during media file validation.

    For enabled tests, set the severity level: Warning, Error, or Fatal. For each test, default severity levels are defined. If needed, you can change the severity level for any test. If errors occur in a specific test, the result of the media file validation task (Warning or Failed) depends on the test’s severity level.

    • Warning — error is not critical but requires attention;

    • Error — error may lead to incorrect service operation or problems during media file playback;

    • Fatal — error is highly likely to lead to incorrect service operation or inability to play the media file.

    Example

    During media file validation, a single error was detected in the File Extension test. Since the test’s severity level was Warning, the validation result was Warning. But if the test’s severity level had been Error or Fatal, the validation result would have been Failed.

  5. Specify threshold values or compliance values.

    • Each test has a ResetToDefault button located in the top right corner. Clicking it will reset the severity level and values to their defaults for the current test;

    • To reset all settings to their defaults for the entire template, use the ResetAllToDefault button located at the bottom of the page. Clicking it will open a window to confirm the reset of all settings. After applying, the template will go back to the default tests with default severity levels and thresholds; Before configuring the template any further, use the Save button;

    • In the Container Format, Video Format, and Audio Format test settings, you will find a special Toggle toggle switch (disabled by default). Toggling it will stop media file validation if the file does not meet the requirements specified in the tests. This option saves resources by aborting validation of media files that do not meet basic format requirements.

  6. Configure the remaining tests in a similar manner, then use the Save button. Once clicked, the template settings will be saved.

3.5.3. List of Tests

Container

1. File size

Checks that the file size matches the specified threshold values:

  • If only the minimum value is set, then this test ensures that the file size is not below the specified value;

  • If only the maximum value is set, then this test ensures that the file size doesn’t exceed the specified value;

  • When both values are provided, this test ensures that the file size is within the range between the minimum and maximum values inclusively.

Settings

  • Severity level by default: Warning

  • Minimum

  • Maximum

You can use bytes, kilobytes, megabytes, and gigabytes as units of measurement.

2. Container format

Checks that the container format matches formats indicated in the template.

Settings

  • Severity level by default: Fatal

  • Allowed values include: MP4

  • Default value: also MP4

  • Toggle is disabled by default

General info

A container is a file format. Containers can comprise video and audio tracks, subtitles, service information, and metadata.
Container examples: MPEG–1 System Stream, MPEG–2 Program Stream, MPEG–2 Transport Stream, MP4, MOV, MKV, WebM, AVI, FLV, IVF, MXF, etc.

3. File extension

Checks that the file extension matches the values in the template.

Settings

  • Severity level by default: Warning

  • Values should be comma-separated

  • The default values are mp4, mov

General info

File name extension is a sequence of characters for file type identification.
Though the extension doesn’t guarantee that the file belongs to a certain container format, a file with a wrong extension in the name may be ignored in the production chain.
To determine the container format precisely, use the corresponding test.

4. Video format

Checks that the video format matches the values in the template.

Settings

  • Severity level by default: Fatal

  • Allowed values include: MPEG-1, MPEG-2, AVC/H.264, HEVC/H.265

  • Default value: AVC/H.264

  • Toggle is disabled by default

5. Audio format

Checks that the audio format matches the values in the template.

Settings

  • Severity level by default: Fatal

  • Allowed values include: MPEG Audio, AAC

  • Default value: AAC

  • Toggle is disabled by default

6. Number of audio and video tracks

Checks that the number of audio and video tracks in the container matches the values in the settings of the template.

Settings

  • Severity level by default: Error

  • Number of video and audio tracks can be set in the Settings tab

7. Audio and video start timestamp

Checks that the start timestamp of audio and video tracks matches the threshold value indicated as hh:mm:ss.ms in the template.

Settings

  • Severity level by default: Warning

  • Start timestamp specified in the hh:mm:ss.ms format

  • Default value: 00:00:00.000

General info

A start timestamp is usually equal to 0. A wrong start timestamp value will lead to a time shift in the file and will possibly lead to difficulties with positioning this file in the player during playback. The Audio and video start timestamp and Audio and video end timestamp tests are used to identify the duration of audio and video tracks in the file via timestamps. Identified in this manner, the duration is also used for cross-testing in the Audio and video duration mismatch test.

8. Audio and video end timestamp

Checks that the end timestamp of audio and video tracks matches the threshold value indicated as hh:mm:ss.ms in the template.

Settings

  • Severity level by default: Error

  • End timestamp specified in the hh:mm:ss.ms format

General info

The Audio and video start timestamp and Audio and video end timestamp tests are used to identify the duration of audio and video tracks in the file via timestamps. Identified in this manner, the duration is also used for cross-testing in the Audio and video duration mismatch test.

9. Audio duration

Checks that the audio duration matches the specified threshold values indicated as hh:mm:ss.ms in the template.

  • If only the minimum value is set, then this test ensures that the audio duration is not below the specified value;

  • If only the maximum value is set, then this test ensures that the audio duration doesn’t exceed the specified value;

  • When both values are provided, this test ensures that the audio duration is within the range between the minimum and maximum values inclusively.

Settings

  • Severity level by default: Error

  • Minimum

  • Maximum

10. Video duration

Checks that the video duration matches the specified threshold values indicated as hh:mm:ss.ms in the template.

  • If only the minimum value is set, then this test ensures that the video duration is not below the specified value;

  • If only the maximum value is set, then this test ensures that the video duration doesn’t exceed the specified value;

  • When both values are provided, this test ensures that the video duration is within the range between the minimum and maximum values inclusively.

Settings

  • Severity level by default: Error

  • Minimum

  • Maximum

11. Audio and video duration mismatch

Compares the duration of all audio and video tracks in the container.

Settings

  • Severity level by default: Error

  • Allowed mismatch threshold in milliseconds

  • Default value: 300

12. Absence of mandatory MP4 boxes

Checks the presence of mandatory box elements in an MP4 container: ftyp, mdat, moov, mvhd.
We strongly recommend you to enable this test in the template when checking MP4 containers.
If an MP4 container misses the mandatory box elements or errors in its structure, it will be impossible to analyze or open the file.

Settings

  • Severity level by default: Fatal

13. Duration of MP4 container

Checks that the value of the duration parameter from the Media Header Box (mdhd) in an MP4 container matches the actual duration of audio and video tracks calculated via timestamps.

Settings

  • Severity level by default: Error

  • Allowed mismatch threshold in milliseconds

  • Default value: 300

General info

Specified duration of an MP4 file may not match the actual one. It is assumed that the actual duration is the one calculated via timestamps.

14. Timescale in mvhd box

Checks the presence of the timescale value in the Movie Header Box (mvhd) of an MP4 container.
It also checks that the value is not equal to 0.
The timescale value is used to calculate the duration of video frames and audio samples in an MP4 container.

Settings

  • Severity level by default: Error

15. Video timestamp discontinuity

Checks the continuity of timestamps in video tracks of an MP4 container. It analyzes the absolute difference between video timestamp values and outputs an error if the threshold value is exceeded.

Settings

  • Severity level by default: Error

  • Threshold value in milliseconds

  • Default value: 100

16. Audio timestamp discontinuity

Checks the continuity of timestamps in audio tracks of an MP4 container. It analyzes the absolute difference between audio timestamp values and outputs an error if the threshold value is exceeded.

Settings

  • Severity level by default: Error

  • Threshold value in milliseconds

  • Default value: 100

17. Container and elementary metadata mismatch

Compares the key headers in the configuration of audio and video tracks at container and elementary stream level. The following headers are checked:

  • For audio tracks: format, sampling rate, profile, number of channels;

  • For video tracks: format, profile, level, resolution, chroma subsampling, bit depth, maximum number of reference frames, scanning type. If present, the aspect ratio, the frame rate, the colorimetric parameters are also checked.

Settings

  • Severity level by default: Error

General info

This metadata is required for the decoder to initialize correctly. Usually, the elementary level data is used, but it all depends on the actual player implementation. That is why it is important to keep metadata identical.

Video

18. Video resolution

Checks that the video resolution indicated in the header of elementary video tracks matches the values in the template.

Settings

  • Severity level by default: Error

  • Values: 7680 × 4320 (8K), 3840 × 2160 (4K), 2560 × 1440 (2K), 1920 × 1080 (Full HD), 1280 × 720 (HD), 960 × 540 (SD), 854 × 480 (SD), 720 × 576 (SD), 640 × 360 (SD), 426 × 240 (SD), custom resolution in the N×M format

  • Default value: 1920×1080 (Full HD)

General info

Video resolution is the number of pixels measured both vertically and horizontally.
The following values are checked:
  • MPEG-1 and MPEG-2 video formats: the horizontal_size_value and vertical_size_value in the Sequence Header;

  • MPEG-4 part 10 AVC/H.264 video format: the pic_width_in_mbs_minus1 and pic_height_in_map_units_minus1 values in the Sequence Parameter Set header;

  • MPEG-H part 2 HEVC/H.265 video format: the pic_width_in_luma_samples and pic_height_in_luma_samples values in the Sequence Parameter Set header.

19. Video resolution changed

Detects a change of video resolution in the headers of elementary video tracks.
A change in video resolution may result in the player decoder or transcoder crashing or reinitializing, causing service interruption.

Settings

  • Severity level by default: Error

20. Video profile and level

Checks that the Profile and Level values in the headers of video tracks match the values in the template.

Settings

  • Severity level by default: Error

  • A pair of Profile and Level values per video format

  • Default values:

    • For MPEG–2 — Main, Main;

    • For AVC/H.264 — High (100), 4;

    • For HEVC/H.265 — Main (1), 4.1.

General info

Profile is a parameter responsible for the subset of the available encoder and decoder syntax. In other words, profile indicates the set of methods available for encoding and required for decoding. For example, the Baseline Profile in the AVC/H.264 video format doesn’t let you use CABAC entropy encoding or encode B-frames and video with bit depth equal to 10 bits.
Level is a set of limitations imposed on the values of syntax elements, these can include the size of frames and blocks, the size of the video buffer, etc. The Level value is set depending on the video resolution. The lower the value, the more limitations are applied.

Checked values

  • For the MPEG-2 video format, the profile_and_level_indication value (Table 8-2, Table 8-3) in the Sequence Extension header is checked.

  • For the AVC/H.264 video format, the profile_idc and level_idc values in the Sequence Parameter Set header are checked.
    To identify the profile accurately, the constraint_set[N]_flag value is also used.
    Common level values for AVC/H.264:
    • 1–2 are applicable to resolutions reaching as far as 352×288 pixels,

    • 2–3 are applicable to resolutions reaching as far as 720×576 pixels,

    • 3–4 are applicable to resolutions reaching as far as 2048×1024 pixels,

    • 4–5 are applicable to resolutions reaching as far as 3680×1536 pixels,

    • 5–5.2 are applicable to resolutions reaching as far as 8192×4320 pixels.

  • For the HEVC/H.265 video format, general_profile_idc and general_level_idc values in Sequence Parameter Set header are checked.

21. Video profile and level changed

Detects changes of Profile and Level values in the headers of elementary video tracks.
Changes in Profile and Level values result in changes of video syntax and can lead to the player decoder or transcoder crashing or reinitializing, causing service interruption.

Settings

  • Severity level by default: Error

22. Chroma subsampling

Checks that the chroma subsampling value in the headers of video tracks matches the value in the template.

Settings

  • Severity level by default: Error

  • Values: 4:4:4, 4:2:2, 4:2:0, custom value in the x:y:z format

  • Default value: 4:2:0

General info

Digital images are made of pixels. In digital television, the color of each pixel is formed according to the YUV model, where Y is a luminance component, and Cr and Cb are two chrominance components. The chroma subsampling technology is additionally used, implying that the Y component data is saved for each pixel, while Cr and Cb color data is saved for groups of pixels. This means that Cr and Сb components are transmitted with reduced resolution. This has to do with the human eye being less perceptive to changes in color than luminance. Listed below are the existing subsampling formats:

  • 4:4:4 — Cb and Cr components are transmitted with full resolution;

  • 4:2:2 — Cb and Cr components have the same resolution with Y luminance component vertically and only half of the Y resolution horizontally; This format is often used in studios for video editing or can be found in master files. It’s pretty much never used in content delivery to end users;

  • 4:2:0 — Cb and Cr components have half of Y resolution both vertically and horizontally. This is the most common format in digital television. End users receive content in this exact format.

Checked values

  • MPEG-2 video format: chroma_format value in Sequence Extension header;

  • AVC/H.264 and HEVC/H.265 video formats: chroma_format_idc value in Sequence Parameter Set header.

23. Chroma subsampling changed

Detects changes of chroma subsampling values in the headers of elementary video tracks.
A change in chroma subsampling leads to a change in video and may result in the player decoder or transcoder crashing or reinitializing, causing service interruption.

Settings

  • Severity level by default: Error

24. Scan type

Checks that the scan type in the headers of video tracks matches the template value.

Settings

  • Severity level by default: Error

  • Values: Interlaced, Progressive

  • Default value: Progressive

General info

Two scan types are used in television:

  • Interlaced scan is a technology developed for analog television: Each frame is split into two fields made of lines. The first field comprises odd-numbered lines, the second one—even-numbered lines. The industry is gradually moving from the interlaced to progressive video;

  • Progressive scan is a technology that displays all lines sequentially.

Interlaced scan pretty much isn’t used in streaming services and OTT platforms.
UHD 4K television doesn’t rely on interlaced scan at all.

Checked values

  • MPEG-2 video format:

    • progressive_sequence value in Sequence Extension header,

    • progressive_frame value in Picture Coding Extension header.

  • AVC/H.264 video format:

    • frame_mbs_only_flag and pic_struct_present_flag values in Sequence Parameter Set header,

    • field_pic_flag value in Slice Header header,

    • pic_struct value in SEI pic.timing header.

  • HEVC/H.265 video format:

    • general_progressive_source_flag, general_interlaced_source_flag, and field_seq_flag values in Sequence Parameter Set header,

    • pic_struct and source_scan_type values in SEI pic.timing header.

25. Scan type changed

Detects changes of the video scan type in the headers of elementary tracks.
A change in the scan type leads to a change in video and may result in the player decoder or transcoder crashing or reinitializing, causing service interruption.

Settings

  • Severity level by default: Error

26. Scan order

Checks that the order of fields in the headers of video tracks with the interlaced scan type matches the template value.

Settings

  • Severity level by default: Error

  • Values: Top field first (TFF), Bottom field first (BFF)

  • Default value: Top field first (TFF)

General info

Two scan types are used in television:

  • Interlaced scan is a technology developed for analog television: Each frame is split into two fields made of lines. The first field comprises odd-numbered lines, the second one—even-numbered lines. The industry is gradually moving from the interlaced to progressive video;

  • Progressive scan is a technology that displays all lines sequentially.

Interlaced scan pretty much isn’t used in online movie theaters and OTT platforms.
UHD 4K television doesn’t rely on interlaced scan at all.
The field order determines which of the fields is the first one:
  • TFF (Top field first) means the upper field is the first; contains a sequence of odd-numbered lines;

  • BFF (Bottom field first) means the lower field is the first; contains a sequence of even-numbered lines.

Checked values

  • MPEG-2 video format:

    • progressive_sequence value in Sequence Extension header,

    • progressive_frame value in Picture Coding Extension header.

  • AVC/H.264 video format:

    • frame_mbs_only_flag and pic_struct_present_flag values in Sequence Parameter Set header,

    • field_pic_flag value in Slice Header header,

    • pic_struct value in SEI pic.timing header.

  • HEVC/H.265 video format:

    • general_progressive_source_flag, general_interlaced_source_flag, and field_seq_flag values in Sequence Parameter Set header,

    • pic_struct and source_scan_type values in SEI pic.timing header.

27. Scan order changed

Detects changes of the order of fields in the headers of interlaced elementary video tracks.
A change in the order of fields leads to disrupted stream decoding and player decoder or transcoder crashing or reinitializing, causing service interruption.

Settings

  • Severity level by default: Error

28. Colorimetric parameters

Checks that colorimetric parameters in the headers of video tracks match the template values.

Settings

  • Severity level by default: Error

  • Values: Colour primaries, Transfer characteristics, Matrix coeffs

  • Default value sets:

    • Unspecified: 2, 2, 2;

    • SDR (Standard Dynamic Range), recommended by ITU-R BT.709-6: 1, 1, 1;

    • HDR (High Dynamic Range), recommended by ITU-R BT.2020-2 and Rec. ITU-R BT.2100-2: 9, 16, 9 (for HDR10, HDR10 plus, Dolby Vision), 9, 18, 9 (for HLG, Dolby Vision).

General info

Colour primaries value indicates the coordinates of main chrominance components according to the CIE 1931 (ISO 11664-1) system.
Transfer characteristics value indicates reference electrooptical transfer characteristics of the source image.
Matrix coeffs — value describes matrix coefficients used when getting luminance and chrominance signals from the green, blue, and red primaries, or key Y, Z, and X primaries.

Checked values

  • In the MPEG-2 video format, colour_primaries, transfer_characteristics, and matrix_coefficients values in the Sequence display extension header are checked;

  • In the AVC/H.264 and HEVC/H.265 video formats, colour_primaries, transfer_characteristics, and matrix_coeffs values in the Sequence Parameter Set header are checked. The parameters are used by displays for correct color rendition.

29. Colorimetric parameters changed

Detects changes of colorimetric parameter values in the headers of elementary video tracks.
A change in values will lead to a change in color rendition on the output device, and the viewer will most likely notice it.

Settings

  • Severity level by default: Error.

30. Display aspect ratio

Checks that the value of display aspect ratio (DAR) in the headers of video tracks matches the values in the template.

Settings

  • Severity level by default: Error

  • Values: 16:9, 5:4, 4:3, custom comma-separated value in the x:y or x.z:1 format

  • Default value: 16:9

General info

DAR = PAR × SAR, where:
  • DAR (display aspect ratio) is the ratio of frame sides, which determines the way the player outputs the frame on the screen;

  • PAR (picture aspect ratio) is the video resolution in pixels such as 1920×1080, 1280×720, etc.;

  • SAR (sample aspect ratio) is the pixel aspect ratio, such as 1×1 (square).

Checked values

  • MPEG-1 and MPEG-2 video formats: aspect_ratio_information (Table 6-3, ITU-T Rec. H.262 (2000 E)) value in the Sequence header header. If aspect_ratio_idc is missing, it is assumed that the entire frame will be checked against the entire active display area;

  • AVC/H.264 and HEVC/H.265 video formats: aspect_ratio_idc, sar_width, and sar_height (Table E.1, Rec. ITU-T H.265 v8 (08/2021) и Rec. ITU-T H.264 (08/2021)) values in the Sequence Parameter Set header. If aspect_ratio_idc is missing, its value will be considered to be 0 (unspecified).

31. Display aspect ratio changed

Detects changes of the display aspect ratio (DAR) values in the headers of elementary video tracks.
A change in values will lead to a change in aspect ratio on the output device, and the viewer will most likely notice this.

Settings

  • Severity level by default: Error

32. Sample aspect ratio

Checks that the value of sample aspect ratio (SAR) in the headers of video tracks matches the template values.

Settings

  • Severity level by default: Error

  • Values: 1:1, custom comma-separated value in the x:y or x.z:1 format

  • Default value: 1:1

General info

SAR = DAR / PAR, где:
  • DAR (display aspect ratio) is the ratio of frame sides, which determines the way the player outputs the frame on the screen;

  • PAR (picture aspect ratio) is the video resolution in pixels such as 1920×1080, 1280×720, etc.;

  • SAR (sample aspect ratio) is the pixel aspect ratio, such as 1×1 (square).

SAR values are used to calculate DAR, and that is why it is often enough to check DAR — Display aspect ratio.

Checked values

  • MPEG-1 and MPEG-2 video formats: aspect_ratio_information (Table 6-3, ITU-T Rec. H.262 (2000 E)) value in the Sequence header header. If aspect_ratio_idc is missing, it is assumed that the entire frame will be checked against the entire active display area;

  • AVC/H.264 and HEVC/H.265 video formats: aspect_ratio_idc, sar_width, and sar_height (Table E.1, Rec. ITU-T H.265 v8 (08/2021) и Rec. ITU-T H.264 (08/2021)) values in the Sequence Parameter Set header. If aspect_ratio_idc is missing, its value will be considered to be 0 (unspecified).

33. Sample aspect ratio changed

Detects changes of sample aspect ratio values in the headers of elementary video tracks.
A change in values will lead to a change in aspect ratio on the output device, and the viewer will most likely notice this.

Settings

  • Severity level by default: Error

34. AFD codes

Checks that the value of AFD codes in the headers of video tracks matches the template value.

Settings

  • Severity level by default: Error

  • Values: 0, 2, 3, 4, 8, 9, 10, 11, 13, 14, 15

General info

Active Format Description (AFD) is a set of values passed in the headers of elementary video tracks. These values contain information about the aspect ratio and specifics of an image.
AFD (ETSI TS 101 154 Annex B, ATSC A/53 Part 4 and SMPTE 2016-1-2007) is used for TVs that support 4:3 and 16:9 aspect ratios to optimally display the picture in any format.
Value interpretation:
  • 0: ETSI: reserved; ATSC: undefined;

  • 1 — reserved;

  • 2 — ETSI: 16:9 active picture (top aligned); ATSC: “not recommended”;

  • 3 — ETSI: 14:9 active picture (top aligned); ATSC: “not recommended”;

  • 4 — ETSI: box > 16:9 (center): wider than 16:9 active picture. The aspect ratio of the source area is not given, and the size of the top/bottom bars is not indicated. ATSC: bar data (indicating the extent of top, bottom, left, and right bars) should be transmitted when using this code;

  • 5–7 — reserved;

  • 8 — Full Frame image, same as the frame (4:3 or 16:9);

  • 9 — 4:3 Image: Full Frame in 4:3 frame, Pillarbox in 16:9 frame;

  • 10 — 16:9 Image: Letterbox in 4:3 frame, Full Frame in 16:9 frame;

  • 11 — 14:9 Pillarbox/Letterbox image;

  • 12 — unused;

  • 13 — 4:3 with shoot and protect 14:9 center;

  • 14 — 16:9 with shoot and protect 14:9 center;

  • 15 — 16:9 with shoot and protect 4:3 center.

Checked values:

  • MPEG-2 video format: afd_data value in the user_data header;

  • AVC/H.264 and HEVC/H.265 video formats: active_format_flag value in the SEI user data registered itu t t35 header.

35. AFD codes changed

Detects changes of AFD code values in the headers of elementary video tracks.
A change in values will lead to a change in aspect ratio on the output device, and the viewer will most likely notice this.

Settings

  • Severity level by default: Error

36. Frame rate

Checks that the frame rate value in the headers of video tracks matches the template value.

Settings

  • Severity level by default: Error

  • Values: 23.976, 24, 25, 29.97, 30, 48, 50, 59.94, 60, custom values

  • Default value: 25

General info

Frame rate reflects the number of frames shown per unit of time:

  • 24 frames per second is the worldwide movie industry standard;

  • 23.976 and 59.94 are used in the American NTSC standard;

  • 25 and 50 are used in the European PAL standard.

Checked values

  • MPEG-1 and MPEG-2 video formats: frame_rate_code (Table 6-4, ITU-T Rec. H.262 (2000 E)) value in the Sequence header header;

  • AVC/H.264 video format: time_scale and num_units_in_tick values in the Sequence Parameter Set header;

  • HEVC/H.265 video format:

    • vui_num_units_in_tick and vui_time_scale values in the Sequence Parameter Set header,

    • vps_num_units_in_tick and vps_time_scale values in the Video Parameter Set header.

37. Frame rate changed

Detects changes of the frame rate in the headers of elementary video tracks.
A change in values will lead to a change in video and may result in the player decoder or transcoder reinitializing, causing service interruption.

Settings

  • Severity level by default: Error

38. Active frame rate

Determines the active frame rate using timestamps and compares it with the frame rate value from the headers of elementary video tracks. User can set the mismatch threshold in frames.

Settings

  • Severity level by default: Error

  • Allowed mismatch threshold

General info

Mismatch between the active frame rate and the one declared in headers can happen in the following cases:

  • Variable frame rate is indicated in headers for AVC/H.264 and HEVC/H.265;

  • Precise positioning of timestamps depends on the multiplexer and the encapsulated elementary video track.

Mismatch in frame rate values leads to differences in duration and bitrate. The precise frame rate used in a player or transcoder is case-specific.

39. Average bitrate

Determines the average bitrate of an elementary video track and checks that it matches the scenario in the template:

  • If only the minimum value is set, then this test ensures that bitrate is not below the specified value;

  • If only the maximum value is set, then this test ensures that bitrate doesn’t exceed the specified value;

  • When both values are provided, this test ensures that bitrate is within the range between the minimum and maximum values inclusively—otherwise the test will be failed.

Settings

  • Severity level by default: Error

  • Minimum value

  • Maximum value

40. CBR/VBR bitrate

Determines the bitrate type used for video tracks and checks that it matches the template value.

Settings

  • Severity level by default: Error

  • Values: CBR, VBR

  • Default value: VBR

General info

There are two types of bitrate depending on the video encoding method:

  • CBR (Constant bitrate) — bitrate stays the same throughout the entire file;

  • VBR (Variable bitrate) — bitrate values can change throughout the entire file depending on scene complexity.

CBR is used in IPTV and DVB/ATSC streams. VoD media files usually rely on VBR since it lets you achieve better quality due to more optimal use of bitrate by the encoder.

Checked values

  • In the AVC/H.264 and HEVC/H.265 video formats, the declared CBR/VBR method can be determined by checking the cbr_flag value in the Sequence Parameter Set header;

  • The actual method can be identified by checking the size of all frames in a one-second range.

41. GOP length

Determines the GOP length value in elementary video tracks and checks that it matches the template value:

  • If only the minimum value is set, then this test ensures that GOP length is not below the specified value;

  • If only the maximum value is set, then this test ensures that GOP length doesn’t exceed the specified value;

  • When both values are provided, this test ensures that GOP length is within the range between the minimum and maximum values inclusively.

Settings

  • Severity level by default: Error

  • Minimum value

  • Maximum value

General info

GOP (group of pictures) is a sequence of frames in an elementary video track. The sequence comprises I-, P- and B-frames.
GOP length is the distance between 2 key I-frames.
In IPTV/DVB/ATSC streams, GOP length doesn’t exceed 1–2 seconds. For frame rate = 25, the length is 25–50 frames, respectively. This is due to the insertion of PSI/SI service tables as well as the speed, at which stream playback starts (stream playback starts with a reference frame, and the longer the GOP, the higher the delay when switching to another channel).
In OTT, it is acceptable to have one reference frame per segment, and the segment length may vary significantly.
For VoD media files, GOP length values tend to be relatively large.

42. GOP structure

Determines the GOP structure in video tracks and checks that it matches the template value.

Settings

  • Severity level by default: Error

  • M is the distance between two P-frames;

  • N is the distance between two I-frames.

General info

A GOP structure shows the distance between I-, P- and B-frames. It is set using M and N values.
For example, the M = 4, N = 25 structure means that each 25th frame is an I-frame, each fourth frame is a P-frame, and there are 3 B-frames between them. The result is the following GOP structure: IPBBBPBBBPBBBPBBBPBBBPBBBI.

43. Closed GOP

Checks that the GOP structure in video tracks matches the template value.

Settings

  • Severity level by default: Error

  • Values: closed GOP, open GOP

General info

GOP structures can be closed or open:

  • In a closed GOP, all P- and B-frames reference the frames of the same GOP;

  • An open GOP may contain P- and B-frames that reference the frames of another GOP.

Checked values

The checker determines the GOP type using the syntax of the key frames.
  • MPEG-1 and MPEG-2 video formats: closed_gop value in the Group of Picture Header header;

  • AVC/H.264 video format: slice_type and nal_unit_type values in the Slice Header header as well as syntax of reference frames for P- and B-frames. The probe explicitly pinpoints a closed GOP by checking if the IDR flag is present in an I-frame;

  • HEVC/H.265 video format: nal_unit_type value in the Slice Header header as well as syntax of reference frames for P- and B-frames.

44. Video bit depth

Checks that the bit depth value in the headers of video tracks matches the template value.

Settings

  • Severity level by default: Error

  • Values: 8 bits, 10 bits, 12 bits, 16 bits

  • Custom luminance value

  • Custom chrominance value

  • Default value: 8 bits

General info

Bit depth is the number of bits used to describe the luminance (Y) and chrominance components (Cb, Cr) of a single pixel.
Common bit depth values are:
  • 8 bits — the most common digital broadcasting format supported by the MPEG-1 and MPEG-2 video formats;

  • 10 bits — usually used in the combination of HEVC/H.265 video format, 4K resolution and HDR;

  • Chroma and luma values may differ, but this happens rarely and generally the difference is not applied to broadcasting.

Allowed values include:

  • 8 bits — supported by the MPEG-1 and MPEG-2 video formats, meaning that putting them through this test isn’t necessary;

  • 8–12 bits — supported by the AVC/H.264 video format depending on the Profile value;

  • 8–16 bits — supported by the HEVC/H.265 video format depending on the Profile value.

For AVC/H.264 and HEVC/H.265 video formats, the bit_depth_luma_minus8 and bit_depth_chroma_minus8 values in the Sequence Parameter Set header are checked.
Value interpretation:
  • 0 8 bits;

  • 2 10 bits;

  • 4 12 bits;

  • 6 16 bits.

45. Video bit depth changed

Detects changes of the bit depth values in the headers of elementary tracks.
A change in bit depth leads to changes in video and may result in the player decoder or transcoder crashing or reinitializing, causing service interruption.

Settings

  • Severity level by default: Error

46. Type of entropy coding

Checks that the type of entropy coding in the headers of AVC/H.264 video tracks matches the template value.

Settings

  • Severity level by default: Error

  • Values: CAVLC, CABAC

  • Default value: CABAC

General info

This test targets AVC/H.264 video tracks only:

  • MPEG-1 and MPEG-2 video formats use VLC (Variable-Length Coding), making this test irrelevant for them;

  • HEVC/H.265 video format uses CABAC, making this test irrelevant for it as well;

  • AVC/H.264 relies on 2 coding algorithms:

    • CAVLC — context-adaptive variable-length coding,

    • CABAC — context-adaptive binary arithmetic coding. Available for several Profile values such as Main and High. It achieves a 10–15% bitrate reduction compared to CAVLC at the same quality, but increases computational complexity.

Checked values

For the AVC/H.264 video format, the entropy_coding_mode_flag value in the Picture Parameter Set header is checked.

47. Type of entropy coding changed

Detects changes of the entropy coding type in the Picture Parameter Set header for AVC/H.264 video tracks.
A change in the entropy coding type results in the video syntax change and may result in the player decoder or transcoder crashing or reinitializing, causing service interruption.

Settings

  • Severity level by default: Error

48. Reference frame number

Checks that the maximum number of reference frames in the headers of video tracks matches the template value. This test targets AVC/H.264 and HEVC/H.265 video formats.

Settings

  • Severity level by default: Error

  • Number of reference frames

  • Default value: 3

General info

Reference frames are used by the encoder to predict frames in the process of compression. They are then used by the decoder to restore frames.
This applies to AVC/H.264 and HEVC/H.265 video formats:
  • MPEG-1 and MPEG-2 have one reference frame for P-frames and two reference frames for B-frames (MPEG-2), i.e. one preceding and one following frame, making this test irrelevant;

  • AVC/H.264 and HEVC/H.265 can have up to 16 reference frames.

The optimal option is 3 to 6 frames. A larger number of frames usually takes up buffer space and is not actually used.

Checked values

  • AVC/H.264 video format: max_num_ref_frames value in the Sequence Parameter Set header;

  • HEVC/H.265 video format: sps_max_dec_pic_buffering_minus1 value in the Sequence Parameter Set header.

49. Reference frame number changed

Detects changes in the maximum number of reference frames in the headers of elementary video tracks.
A change in the maximum number of reference frames may result in the player decoder or transcoder crashing or reinitializing, causing service interruption.

Settings

  • Severity level by default: Error

50. HDR format

Checks that the HDR format in the headers of video tracks matches the template value.
This test targets AVC/H.264 and HEVC/H.265.

Settings

  • Severity level by default: Error

  • Values: HDR10, HLG, HDR10 +, Dolby Vision

General info

HDR content usually uses the HEVC/H.265 video format with the bit depth value equal to 10 bits and 4K video resolution. AVC/H.264 can be used, but this is rare in practice. Bit depth that equals 8 bits is almost not used for HDR content.

There are 4 key HDR standards:

  • HDR10 is a widely used open standard with a set of static metadata;

  • HLG is a widely used open standard without metadata;

  • HDR10 plus is a proprietary standard made by Samsung that includes a set of dynamic metadata and has backward compatibility with HDR10;

  • Dolby Vision is a proprietary standard made by Dolby Laboratories that includes a set of dynamic metadata. Some Dolby Vision profiles have backward compatibility with HDR10 and HLG.

For AVC/H.264 and HEVC/H.265 video formats, the following values are checked: Sequence Parameter Set, значения colour_primaries, transfer_characteristics и matrix_coeffs, SEI: Mastering display colour volume, Content light level information, Alternative transfer characteristics, user_data_registered_itu_t_t35.

51. HDR10 metadata

Checks that HDR10 metadata in the headers of elementary video tracks matches the template values.

Settings

  • Severity level by default: Error

  • Display primaries [0]

  • Display primaries [1]

  • Display primaries [3]

  • White Point

  • Max display mastering luminance

  • Min display mastering luminance

  • Maximum Content Light Level (MaxCLL)

  • Maximum Frame-Average Light Level (MaxFALL)

Default values:

  • Display primaries [0] — 0.170; 0.797;

  • Display primaries [1] — 0.131; 0.046;

  • Display primaries [2] — 0.708; 0.292;

  • White Point — 0.3127; 0.329;

  • Max display mastering luminance — 1000;

  • Min display mastering luminance — 0.005;

  • Maximum Content Light Level (MaxCLL) — 1000;

  • Maximum Frame-Average Light Level (MaxFALL) — 400.

General info

HDR10 metadata includes Mastering display color volume and Content light level information values.
Mastering display color volume represents reference display parameters used to create video content. During video content playback, the display will be readjusted according to the reference. It includes:
  • Display primaries — Х and Y coordinates of the three primary chrominance components;

  • White Point — X and Y coordinates of the white point;

  • Max display mastering luminance — the nominally maximum luminance of the mastering display in cd/m2. In accordance with SMPTE ST 2086:2018, this parameter can receive integer values in the 5–10000 cd/m2 range, where 1 cd/m2 equals 1 nit (nt);

  • Min display mastering luminance — the nominally minimum luminance of the mastering display in cd/m2. In accordance with SMPTE ST 2086:2018, this parameter can receive integer or fractional values in the 0.0001–5.0000 cd/m2 range, where 1 cd/m2 equals 1 nit (nt).

Content light level information is the value of the upper boundary of the nominal target luminance level of the images. It includes:
  • Maximum Content Light Level (MaxCLL) — the parameter that indicates the upper boundary of the maximum pixel luminance level in cd/m2. 1 cd/m2 equals 1 nit (nt);

  • Maximum Frame-Average Light Level (MaxFALL) — the parameter that indicates the upper boundary of the maximum average luminance level of the whole frame in cd/m2. 1 cd/m2 equals 1 nit (nt).

52. HDR10 metadata changed

Detects changes of HDR10 metadata values in the headers of elementary video tracks.
A change in values of HDR10 metadata will lead to a change in color rendering on the output device. The viewer will most likely notice this.
Color rendering also depends on colorimetric parameters. Their change is detected in the Colorimetric parameters changed test.

Settings

  • Severity level by default: Error

53. Video freeze HighPerformance

Detects video freezes within a given period of time. Error state occurs if a static image persists during the given interval (in milliseconds).
Special time slots let you specify time periods at the start and/or the end of the file, which will be skipped during test.

Settings

  • Severity level by default: Error

  • Video freeze detecting interval. Default value: 1000 milliseconds

  • Video freeze sensitivity (PSNR threshold). Default value: 42 dB

  • Special time slots:

    • Time from the start of the file. Default value: 0 seconds

    • Time from the end of the file. Default value: 0 seconds

General info

The sensitivity of the freeze detector is set with the threshold value of the frame similarity degree based on the PSNR (peak signal-to-noise ratio) metric in decibels. The detector calculates the PSNR between two consecutive frames. If PSNR exceeds the threshold, the frames are considered identical. If all frames are identical during the interval when a freeze is detected, the state of error occurs. The higher the threshold, the stricter the condition for similarity of adjacent frames. FYI:

  • PSNR 20 — the frames are similar, but there is still some significant difference;

  • PSNR 35 — the frames are similar, but there are some visual differences;

  • PSNR 42 — the upper limit of error perception by the human eye;

  • PSNR 60—100 — the frames are almost identical.

54. Black Frames HighPerformance

Detects black frames in the video track. The algorithm analyzes frames based on specified threshold values: black luminance level and black pixel ratio in frame. If frames remain black longer than the specified black frames interval, the test is considered failed.
Special time slots let you specify time periods at the start and/or the end of the file, which will be skipped during test.

Settings

  • Severity level by default: Error

  • Black luminance level. Default value: 16

  • Black pixel ratio in frame. Default value: 95 %

  • Black frames interval. Default value: 1000 ms.

  • Special time slots:

    • Time from the start of the file. Default value: 0 seconds

    • Time from the end of the file. Default value: 0 seconds

General info

Black luminance level — the luminance component threshold that determines which pixels are considered black.
Black pixel ratio in a frame — the threshold percentage of black pixels in a frame. If exceeded, the frame is considered black. Adjust this threshold to detect black frames with logos or other minor details.
Black frames interval — the minimum duration in milliseconds during which frames remain black.

55. Constant-Color Frames HighPerformance

Detects frames in a video track where all pixels are mostly the same color. The algorithm analyzes frames and compares the percentage of constant-color pixels to the threshold. If frames remain constant-colored longer than the specified interval, the test is considered failed.
Special time slots let you specify time periods at the start and/or the end of the file, which will be skipped during test.

Settings

  • Severity level by default: Error

  • Constant-color pixel ratio in a frame. Default value: 90 %.

  • Constant-color frames interval. Default value: 1000 ms.

  • Special time slots:

    • Time from the start of the file. Default value: 0 seconds

    • Time from the end of the file. Default value: 0 seconds

General info

Constant-color pixel ratio in a frame — The threshold percentage of the same color pixels in a frame. If exceeded, the frame is considered constant-color. Adjust this parameter to detect frames with logos or minor color fluctuations.
Constant-color frames interval — the minimum duration in milliseconds during which frames remain constant-color.

56. Color bars test pattern HighPerformance

Detects frames in the video track containing a color bars test pattern (EBU and SMPTE Color Bars). The algorithm analyzes frames using two coefficients. If frames contain color bar test pattern for longer than the specified interval, the test is considered failed.
Special time slots let you specify time periods at the start and/or the end of the file, which will be skipped during test.

Settings

  • Severity level by default: Error

  • Absolute color bar detection coefficient. Default value: 40 %

  • Relative color bar detection coefficient. Default value: 10 %

  • Сolor bar frames interval. Default value: 1000 ms.

  • Special time slots:

    • Time from the start of the file. Default value: 0 seconds

    • Time from the end of the file. Default value: 0 seconds

General info

Сolor bar frames interval — the minimum duration in milliseconds during which frames contain color bars test pattern.

57. Video decodability error HighPerformance

Determines if the video track can be decoded. The system reports an error when the number of correctly decoded frames is below the given threshold in relation to the frame rate.

Settings

  • Severity level by default: Error

  • Metric mode. Default value: Full

  • Correctly decoded frames threshold. Default value: 100

General info

This metric lets you estimate how possible it is to decode the given video stream. The number of correctly decoded frames is compared to the specified frame rate.
The metric is implemented in two modes:
  • Lite involves a semantic analysis of the elementary stream without further decoding; average precision and resource consumption. This level is enough to estimate the possibility of decoding the stream, but it doesn’t take the potential issues inside the frame into account;

  • Full involves full decoding; high precision and resource consumption. On this level, a frame is decoded only if it’s fully intact.

Audio

58. Audio sample rate

Checks that the value of audio sample rate in the headers of audio tracks matches the template value.

Settings

  • Severity level by default: Error

  • Values: 24000, 44100, 48000, 96000, custom value

  • Default value: 48000 Гц

General info

Sample rate — the number of samples played per second. Measured in hertz (Hz).
44100 Hz — the standard used mainly in music streaming platforms;
48000 Hz — the most wide-spread standard, covers up to 90% of needs in digital television and streaming services.
96000 Hz — used for in-studio works. Also used for high-quality Blu-ray audio tracks.

59. Audio bit depth HighPerformance

Checks that the audio bit depth value in the headers of audio tracks matches the template value.

Settings

  • Severity level by default: Error

  • Values: 16, 20, 24, 32, custom value

  • Default value: 16

General info

The most wide-spread are:

  • 16 bits — professional standard for TV, streaming services and music streaming platforms;

  • 24 bits — mainly used for in-studio records and Hi-Res, lossless audio.

60. Number of audio channels

Checks that the number of audio channels in the headers of audio tracks matches the template value.

Settings

  • Severity level by default: Error

  • Values: 1, 2, 4, 6, 8, custom value

  • Default value: 2

General info

The following values are mainly applied:

  • 1 — Mono — 0: М: mono;

  • 2 — Stereo — 0: L: left, 1: R: right;

  • 4 — Quadro — 0: L: left, 1: R: right, 3: SL: surround left, 4: SR: surround right;

  • 6 — 5.1 — 0: L: left, 1: R: right, 2: C: central, 3: LFE: subwoofer, 4: SL: surround left, 5: SR: surround right;

  • 8 — 7.1 — 0: L: left, 1: R: right, 2: C: central, 3: LFE: subwoofer, 4: SL: surround left, 5: SR: surround right, 6: BL: back left, 7: BR: back right.

61. AAC audio profile

Checks that the audio profile value in the headers of audio tracks matches the value in the template.
This test targets the AAC audio format.

Settings

  • Severity level by default: Error

  • Values: Main, LC, SSR, LTP, HE-AAC, HE-AAC v2

  • Default value: LC

62. Audio language tag

Checks that the values of language descriptors in the container file match the template values.
The values of language descriptors are defined in the ISO 639-2 standard.

Settings

  • Severity level by default: Error

  • Languages listed in the alphabetic order

63. MPEG audio layer

Checks that the values of Layer for MPEG audio match the template values.
This test targets the MPEG audio format.

Settings

  • Severity level by default: Error

  • Values: 1, 2, 3

General info

Layer I and Layer II are still used in the classic digital television (DVB).
Layer III (mp3) is widely spread in music streaming platforms, though it did take second place to the AAC audio format.

64. Audio decodability error HighPerformance

Determines the possibility of decoding an audio track. The system reports an error when the ratio between the bitrate of the decoded audio stream and the specified bitrate (channels * sample_rate * sample_size(bit)) is below the threshold.

Settings

  • Severity level by default: Error

  • Threshold values of successfully decoded audio samples

  • Default value: 100 %

65. Audio silence HighPerformance

Detects silence in an audio track. The audio track is present, but its short-term loudness is below the threshold.
Special time slots let you specify time periods at the start and/or the end of the file, which will be skipped during test.

Settings

  • Severity level by default: Error

  • Threshold value of loudness level, LUFS

  • Default value: -70 LUFS

  • Special time slots:

    • Time from the start of the file. Default value: 0 seconds

    • Time from the end of the file. Default value: 0 seconds

General info

-70 LUFS is the de facto standard for detecting silence. In their recommendations, EBU R128 and ATSC A/85 rely on this value.

66. Momentary loudness HighPerformance

Checks that the momentary loudness value matches the specified threshold values.

Settings

  • Severity level by default: Error

  • Target loudness level, default value: −23 LUFS

  • Allowable deviation, default value: +/− 1 LU

General info

Momentary loudness is a value of loudness measured using the sliding window with integration time equal to 400 ms, according to EBU Tech Doc 3341. The measurement unit is LUFS.
Momentary loudness and short-term loudness are used along programme loudness to control the current program dynamics.
LUFS (Loudness Unit Full Scale), according to EBU R 128, is the logarithmic sound level unit relative to the full-scale value (LUFS is similar to LKFS, which is used in ITU-R BS 1770).
LU is a loudness unit: according to EBU R 128, 1 LU equals 1 dB.
Recommended values—in accordance with EBU R128—are −23 LUFS, +/− 1 LU

Note

The value of absolute silence is −∞.
In Boro VoD, values below −120 LUFS are treated as −120 LUFS for easier data visualization on graphs.
This threshold enables detection of both silence (−70 LUFS) and the presence of data with lower loudness levels.

67. Short-Term loudness HighPerformance

Checks that the short-term loudness value matches the specified threshold values.

Settings

  • Severity level by default: Error

  • Target loudness level, default value: −23 LUFS

  • Allowable deviation, default value: +/− 1 LU

General info

Short-term loudness is the value of loudness measured using the sliding window with integration time equal to 3000 ms, without using relative gating according to the EBU Tech Doc 3341 standard.
Momentary loudness and short-term loudness are used along programme loudness to control the current program dynamics.
LUFS (Loudness Unit Full Scale), according to EBU R 128, is the logarithmic sound level unit relative to the full-scale value (LUFS is similar to LKFS, which is used in ITU-R BS 1770).
LU is a loudness unit: according to EBU R 128, 1 LU equals 1 dB.

Note

The value of absolute silence is −∞.
In Boro VoD, values below −120 LUFS are treated as −120 LUFS for easier data visualization on graphs.
This threshold enables detection of both silence (−70 LUFS) and the presence of data with lower loudness levels.

Recommended values:

  • According to EBU R128 — −23 LUFS, +/− 1 LU;

  • According to ATSC A/85 (USA) — −24 LUFS, +/− 1 LU;

  • According to Free TV Australia OP-59 (Australia) и ATSC A/85 (USA) — −24 LUFS, +/− 1 LU;

  • According to ARIB TR-B32 (Japan) — −23 LUFS, +/− 1 LU.

68. Programme Loudness HighPerformance

Checks that the value of program loudness matches the specified threshold values.

Settings

  • Severity level by default: Error

  • Target loudness level, default value: −23 LUFS

  • Allowable deviation, default value: ± 1 LU

General info

Program loudness is an average (integral) loudness throughout the entire program’s duration; the loudness level is the value of program loudness in LUFS.
LUFS (Loudness Unit Full Scale), according to EBU R 128, is the logarithmic sound level unit relative to the full-scale value (LUFS is similar to LKFS, which is used in ITU-R BS 1770).
LU is a loudness unit: according to EBU R 128, 1 LU equals 1 dB.

Note

In Boro VoD, in accordance with ITU-R BS 1770 the 10 LU gating is used for loudness calculation.

Recommended values:

  • According to EBU R128 — −23 LUFS, +/− 1 LU;

  • According to ATSC A/85 (USA) — −24 LUFS, +/− 1 LU;

  • According to Free TV Australia OP-59 (Australia) и ATSC A/85 (USA) — −24 LUFS, +/− 1 LU;

  • According to ARIB TR-B32 (Japan) — −23 LUFS, +/− 1 LU.

69. Loudness Range HighPerformance

Checks that the loudness values match the specified threshold values.

Settings

  • Severity level by default: Error

  • Minimum, LU

  • Maximum, LU

  • Default value: 0−6 LU

General info

Loudness range is the parameter determining the dynamic audio range calculated via the statistical technique according to the EBU Tech Doc 3342 and ITU-R BS.1770-3.
LU is a loudness unit: according to EBU R 128, 1 LU equals 1 dB.
The short-term loudness values are basically the data source for measuring the loudness range.
According to the ITU-R BS.1770 standard referenced by EBU R128 (Europe), ATSC A/85 (USA), Free TV Australia OP-59 (Australia), and ARIB TR-B32 (Japan), the specific value may vary depending on the use context, but the most common range is 0–6 LU.

70. Maximum Permitted True Peak Level HighPerformance

Checks that peak values of a digital audio signal match the specified threshold value.

Settings

  • Severity level by default: Error

  • Maximum Permitted True Peak Level, dBTP

  • Default value: −1 dBTP

General info

Maximum Permitted True Peak Level is the maximum permitted level of true peak values in a digital audio signal calculated using the True Peak algorithm according to the ITU-R BS.1770 recommendation. The unit of measurement is dBTP.
Exceeding the threshold value will lead to distortion and clipping.

Recommended values:

  • According to EBU R128 — −1 dBTP. It is recommended for true peak level to be no larger than -3 dBTP;

  • According to ATSC A/85 (USA) — −2 dBTP; Maximum Permitted True Peak Level is legally mandated by the Federal Communications Commission (FCC) requirements under the CALM (The Commercial Advertisement Loudness Mitigation) Act;

  • According to Free TV Australia OP-59 (Australia) — −2 dBTP;

  • According to ARIB TR-B32 (Japan) — −1 dBTP.

3.5.4. Comparison of EBU Codes and Boro Vod Tests

The European Broadcasting Union (EBU) has issued a set of recommendations for evaluating media file quality. A large chunk of recommendations is incorporated into Boro VoD tests—both audio and video track as well as media container ones. Below is the table comparing Boro VoD tests and unified EBU check codes.

TBD