12 August 2021
over 3 years ago by Encoding.com Product Team #2
Video Quality QC Check
Added a video quality check to the QC suite Metrics Report QC test.
Within the <qc_video_metrics> parameters added to your job' qc_check request, the source asset is used as a reference file to quantitatively compare VQ using 4 industry-standard perceptual quality tools VMAF, PSNR, SSIM, and MS_SSIM for each output format. Custom threshold parameters can be configured to return alerts when the quality scores are higher or lower than the predefined targets.
<?xml version="1.0"?>
<query>
<userid><<id>></userid> <!-- required-->
<userkey><<key>></userkey> <!-- required-->
<action>AddMedia</action>
<source>[SourceFile]</source><!-- required -->
<format>
<output>qc_check</output><!-- required -->
<source_options>
<qc>
<qc_video_metrics>
<original_source>[OriginalSurceFile]</original_source> <!-- required -->
<original_transformations>
<type>scale</type>
<width>[Width]</width>
<height>[Height]</height>
<algo>[ScaleAlgo]</algo>
</original_transformations>
<original_transformations>
<type>pad</type>
<width>[Width]</width>
<height>[Height]</height>
<x>[PadX]</x>
<y>[PadY]</y>
</original_transformations>
<original_transformations>
<!-- original_transformations params -->
</original_transformations>
<metrics>
<metric>vmaf</metric> <!-- required -->
<model>[hdtv|4ktv]</model>
<thresholds>
<severity>[warning|fatal]</severity>
<min>
<lower>[LowerValue]</lower>
<upper>[UpperValue]</upper>
</min>
<max>
<lower>[LowerValue]</lower>
<upper>[UpperValue]</upper>
</max>
<percentile>
<perc>[PercentileValue]</perc>
<lower>[LowerValue]</lower>
<upper>[UpperValue]</upper>
</percentile>
<median>
<lower>[LowerValue]</lower>
<upper>[UpperValue]</upper>
</median>
<mean>
<lower>[LowerValue]</lower>
<upper>[UpperValue]</upper>
</mean>
<harm_mean>
<lower>[LowerValue]</lower>
<upper>[UpperValue]</upper>
</harm_mean>
</thresholds>
<thresholds>
<!-- thresholds params -->
</thresholds>
</metrics>
<metrics>
<metric>ms_ssim</metric> <!-- required -->
<thresholds>
<!-- thresholds params -->
</thresholds>
</metrics>
<metrics>
<metric>ssim</metric> <!-- required -->
<thresholds>
<!-- thresholds params -->
</thresholds>
</metrics>
<metrics>
<metric>psnr</metric> <!-- required -->
<thresholds>
<!-- thresholds params -->
</thresholds>
</metrics>
<metrics>
<metric>bitrate</metric> <!-- required -->
<thresholds>
<!-- thresholds params -->
</thresholds>
</metrics>
</qc_video_metrics>
</qc>
</source_options>
<!-- format params -->
</format>
</query>
{
"query": {
"userid": "<<id>>", // required
"userkey": "<<key>>", // required
"action": "AddMedia", // required
"source": "[SourceFile|SourcePlaylist]", // required
"format": {
"output": "qc_check", // required
"source_options": {
"qc": {
"qc_video_metrics": {
"original_source": "[OriginalSurceFile]", // required
"original_transformations": [
{
"type": "scale",
"width": "[Width]",
"height": "[Height]",
"algo": "[ScaleAlgo]"
},
{
"type": "pad",
"width": "[Width]",
"height": "[Height]",
"x": "[PadX]",
"y": "[PadY]"
},
{
// original_transformations params
}
],
"metrics": [
{
"metric": "vmaf", // required
"model": "[hdtv|4ktv]",
"thresholds": [
{
"severity": "[warning|fatal]",
"min": {
"lower": "[LowerValue]",
"upper": "[UpperValue]"
},
"max": {
"lower": "[LowerValue]",
"upper": "[UpperValue]"
},
"percentile": {
"perc": "[PercentileValue]",
"lower": "[LowerValue]",
"upper": "[UpperValue]"
},
"median": {
"lower": "[LowerValue]",
"upper": "[UpperValue]"
},
"mean": {
"lower": "[LowerValue]",
"upper": "[UpperValue]"
},
"harm_mean": {
"lower": "[LowerValue]",
"upper": "[UpperValue]"
}
},
{
// thresholds params
}
]
},
{
"metric": "ms_ssim", // required
"thresholds": [
{
// thresholds params
}
]
},
{
"metric": "ssim", // required
"thresholds": [
{
// thresholds params
}
]
},
{
"metric": "psnr", // required
"thresholds": [
{
// thresholds params
}
]
},
{
"metric": "bitrate", // required
"thresholds": [
{
// thresholds params
}
]
}
]
}
}
}
// format params
}
}
}
Parameter | Description | Allowed Values | Default Value |
---|---|---|---|
original_source | Original Source File for VMAF metric | Valid URL | none |
original_transformations | Source file transformations for VMAF metric | ||
metrics | Metrics array | ||
Original transformations params | |||
type | Transformation type | scale, pad | none |
width | Width | Positive integer number | none |
height | Height | Positive integer number | none |
algo | Scale algorithm | fast_bilinear, bilinear, bicubic, experimental, neighbor, area, bicublin, gauss, sinc, lanczos, spline | none |
x | Horizontal padding | Positive integer number | none |
y | Vertical padding | Positive integer number | none |
Metrics params | |||
metric | Metric name | vmaf, psnr, ssim, ms_ssim, bitrate | none |
model | VMAF model | hdtv, 4ktv | none |
thresholds | Metric threshold functions array | ||
Thresholds params | |||
severity | Test severity | warning, fatal | warning |
min | Minimum function | ||
max | Maximum function | ||
percentile | Percentile function | ||
median | Median function | ||
mean | Mean function | ||
harm_mean | Harmonic mean function | ||
Threshold function params | |||
lower | Lower value | Positive integer number | none |
upper | Upper value | Positive integer number | none |
perc | Percentile value | Positive integer number | none |
Note
The qc_video_metrics test is available only for mpeg-4, mpeg-ts, and mxf source file formats.