Skip to main content

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 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.

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).

ebur128 - performs a EBU R.128 loudness determination on the audio track.

levels - performs a deep analysis of the audio track, including DC offset, RMS peak, level etc.

volume - this provides simple volume measurement. This is less precise than using levels analysis, but has higher performance.

Silence Detection

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 the US Emergency Alert System (EAS) tones in the audio track. This can be useful since it is illegal to broadcast these tones in a non-emergency situation.

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
},
"ebur128": {
"enabled": true,
"scale_meter": 18,
"target_reference": {
"integrated_lufs": -16.45,
"true_peak_dbfs": -3.5
}
},
"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": "{{source}}",
"contents": [
{
"kind": "audio",
"format": "atmos_mezzanine" <---- important to set
}
]
}
}
},

An example that will analyze the loudness of a Dolby Atmos mezzanine file is provided at the end of this tutorial.

Examples