Quality Control Jobs Tutorial
Quality Control (QC) jobs provide a way to make a pass/fail decision based on the results of an analysis task. This can be useful when you need to be sure that the source format is correct or that the proper number of audio channels exist before encoding for 5.1 surround. This can also be used to test for things like loudness and letterboxing before encoding, or limiting how many seconds of black can exist at the beginning or end of your content. The limits you use in the QC job will determine whether or not the task fails, and the details of each test may be saved in a separate report.
QC tasks can be part of any job with an analyzer task, but we’re going to use the Quality Control tab to get started faster and to illustrate how the analyze and QC tasks interact.
Summary
QC Jobs created in the Quality Control tab are the same as any other job with a QC task in it with two exceptions.
- Jobs created here will appear in the
QC Jobs
section of the Quality Control tab - Jobs created here will automatically create the analyze task needed for the QC task.
Jobs created using the Quality Control tab may be downloaded and the JSON inspected to see how the QC task relies on the Analyze task.
This tutorial will walk through the creation of a job in the Quality Control tab and explore the results in the report
Initial Configuration
Jobs created here require at least one computing group that will accept jobs. To view the completed report in the Hybrik interface, CORS must be set up properly.
Starting a QC Job
- Navigate to the Quality Control tab in your Hybrik account and click on “QC Jobs”.
- Click on the
Add
button.
- In the File Selection section, use the
Browse
button to find a video file. The “credentials” field will auto-fill based on your selection. - Click
Add Test
and select “General Properties: Video” from the drop down. Pick a few parameters you want to check on your file.
- Note - if you include a Deep Properties: Video or a Deep Properties: Audio test type in your job, one or more of the checkbox items must be checked “on” with its corresponding value set in order for the QC job to be complete.
- Check the
Create QC Report
box and select a location for the report. The “credentials” field will auto-fill based on your selection. - (optional) add tags to select your desired computing group.
- Submit the job!
Viewing Results
- In the
QC Jobs
part of theQuality Control
tab, click on a job with completed or failed status. - In the job details section, select the QC Report tab.
The report will contain results for each of your tests, the pass/fail for each QC condition, and thumbnails where appropriate. The same report is available as a pdf file in the location chosen during step 5 of job setup.
Next Steps
Export the Job
and Job Summary
JSON files using the More Actions menu. In the job JSON you’ll see which analyzers were added in order to for the QC task to work. It may look something like this:
{
"uid": "analyze_task",
"kind": "analyze",
"task": {
"retry_method": "fail"
},
"payload": {
"options": {
"response_version": 2
},
"general_properties": {
"enabled": true
},
"deep_properties": {}
}
}
The QC task refers to the results of that analyze task, and you can see the JSON that was built for your job here. It may look something like this:
{
"uid": "qc_task",
"kind": "qc",
"payload": {
"tests": [
{
"conditions": [
{
"condition": "equalText(general_properties.video.codec,'prores')"
},
{
"condition": "general_properties.video.width >= 1920"
}
]
}
],
"report": {
"create_condition": "always",
"file_pattern": "report_name.pdf",
"location": {
"access": {
"credentials_key": "your-credentials-key"
},
"storage_provider": "s3",
"path": "s3://your-s3/path/to/file"
},
"temp_location": {
"storage_provider": "s3",
"path": "s3://your-s3/path/to/file/temp"
},
"options": {
"report_version": "v3.0"
}
}
}
}
In the Job Summary
file you’ll find the results of the analyzers. From here you can connect the JSON Path of the conditions in the QC task to the actual result of the analyze task. Any parameter in the analyze result may be used in a QC task condition.
The relationship between QC tasks and their analyzers can be explored in this way, then incorporated into your workflow as source analyze our output validation in a variety of ways. For more deatils about how a QC job can be integrated into your workflows, see the Quality Control task tutorial.