Analyze Audio - Deep Properties
Deep properties can be used to determine content-related properties, such as volume or silence in an audio track. The measurements and values collected in the analyze task can be used in QC tasks to provide warnings when values are beyond predefined ranges, or in downstream transcode task filters, where the values are referenced to determine the filter’s settings. An example of this would be audio loudness normalization.
track_selector (optional)
Since an asset can contain more than one audio track, Hybrik provides a method to direct the audio track of interest to the deep_properties
analysis at hand. The track_selector
object allows you to set which tracks of source audio will be analyzed. If your source has only one audio track, this option is not required. If more than one audio track is present in the source, and this option is not included, Hybrik will use the first audio track for the analysis.
{
"uid": "analyze_task",
"kind": "analyze",
"payload": {
"general_properties": {
"enabled": true
},
"deep_properties": {
"audio": [
{
"track_selector": {
"index": 0
},
"volume": {
"enabled": true
}
}
]
}
}
}
Audio Analysis
An example job that includes the following analyze types are provided at the end of this tutorial.
NOTE: In Hybrik version 1.217, we introduced a change to the structure of the analyzer results that have timed events. The new result version can be activated by setting "response_version": 2
in your analyzer's options. The default version will become version 2 in a future release.
{
"uid": "analyze_task",
"kind": "analyze",
"payload": {
"options": {
"response_version": 2
},
...
}
Loudness Analysis
Hybrik offers two methods for audio loudness measurement; Dolby Professional Loudness and EBU R.128. The data collected from both of these analysis types would likely be referenced in downstream transcode tasks in which an audio normalization filter exists.
dolby_professional_loudness
Performs Dolby loudness analysis on the audio track(s).
(see API documentation)
ebur128
Performs a EBU R.128 loudness determination on the audio track.
(see API documentation)
Levels
Performs a deep analysis of the audio track, including DC offset, RMS peak, level etc.
(see API documentation)
Volume
Uses simple volume measurement. This is less precise than using levels analysis, but of higher performance.
(see API documentation)
Silence
Detects silent zones in the audio track.
- duration_sec (number)
silence must exceed this duration for triggering detection.
(minimum: 1, maximum: 3600, default: 10) - noise_db (number)
The audio level must be above this value for being detected as a true audio signal.
(minimum: 1, maximum: 3600, default: 10)
For more details about the silence analysis, please see the Analyze Audio Silence tutorial
Emergency Alert
Detect emergency alert signals in the audio track.
requires payload object options::pipeline::analyzer_version
{
"uid": "analyze_task",
"kind": "analyze",
"payload": {
"options": {
"response_version": 2,
"pipeline": {
"analyzer_version": "hybrik_4.2"
}
},
"general_properties": {
"enabled": true
},
"deep_properties": {
"audio": [
{
"track_selector": {
"index": 0
},
"dplc": {
"enabled": true,
"loudness_target": -24,
"regulation_type": "manual",
"limit_mode": "true_peak",
"correction_mode": "pcm_normalization",
"metering_mode": "1770-3",
"peak_limit_db": -2.5
},
"ebur128": {
"enabled": true,
"scale_meter": 18,
"target_reference": {
"integrated_lufs": -16.45,
"true_peak_dbfs": -3.5
}
},
"levels": {
"enabled": true
},
"volume": {
"enabled": true
},
"silence": {
"enabled": true,
"noise_db": -60,
"duration_sec": 1
},
"emergency_alert": {
"enabled": true
}
}
]
}
}
}
PSNR
Determine the PSNR value between two files, usually comparing an output file and the source from which it was derived. For more details please see the Analyze Audio PSNR tutorial
Dolby Atmos Mezzanine Loudness Analysis
Hybrik can measure the loudness of a Dolby Atmos mezzanine file with Dolby Professional Loudness or EBU R.128. Inside Hybrik, the Atmos source file will be rendered to a 5.1 mix for loudness measurement. When measuring the loudness of a Dolby Atmos mezzanine file, it is important to remember to set "format": "atmos_mezzanine"
in the source file’s contents array as follows:
{
"uid": "source_file",
"kind": "source",
"payload": {
"kind": "asset_url",
"payload": {
"storage_provider": "s3",
"url": "",
"contents": [
{
"kind": "audio",
"format": "atmos_mezzanine" <---- important to set
}
]
}
}
},
A full example job that will analyze the loudness of a Dolby Atmos mezzanine file is provided at the end of this tutorial.