This repository contains two scripts - audioqc and makespectrum. Both are intended to aid with collection level quality control of digitized audio files.
-
audioqc: This script can target both directories and single audio files, and will generate audio quality control reports in CSV to the desktop. It can scan for peak/average audio levels, files with 'hot' portions exceeding a user set limit, audio phase, bext metadata conformance, mediaconch policy conformance, and a VERY experimental mode for detecting dropouts.
-
makespectrum: This script will compile a document of audio spectrums for all inputs. It applies a high-pass filter to inputs to attempt to make visually identifying audio errors and drop-outs simpler.
Requires CLI installations of: ffprobe, MediaConch, MediaInfo, BWF MetaEdit, Ruby
- All dependencies and audioqc scripts can be installed via the Homebrew package manager
- Once Homebrew is installed, run the commands
brew tap amiaopensource/amiaos
followed bybrew install audioqc
to complete the install process.
- Ruby will need to be installed if it isn't present already.
- All dependencies will have to be added to the 'Path' and should be the command line version (CLI) of their respective tools
- MediaConch, MediaInfo and BWF MetaEdit can be downloaded from the MediaArea website
- ffprobe can be downloaded as part of the FFmpeg package
- Most dependencies should be installable through the standard package manager.
- For the most up to date versions of MediaArea dependencies it is recommended to activate the MediaArea repository
Usage: audioqc [options] TARGET
Target can be either individual files, or a directory. This will result in a CSV output to your desktop.
Available options are:
-a, --all
-b, --bext-scan
-c, --checksum
-d, --dropout-scan
-e, --Extension=val
-m, --meta-scan
-o, --options
-p, --Policy=val
-s, --signal-scan
A standard profile of settings and options is stored in the configuration file. If audioqc is run with no options, these stored options will be used as a default profile. To change default settings run audioqc -o
or audioqc --options
to edit the values contained in the associated file audioqc.config
. Desired defaults can be added to the line default_options
and separated with commas. Choices are: meta, bext, signal, md5
and by default all of these modes are enabled.
Examples:
audioqc -h
This will display all available optionsaudioqc 'My-File.wav'
(This will run with options saved in config file)audioqc -m 'My-File.wav'
(This will run only a metadata scan)audioqc -p 'my-mediaconch-policy.xml' -e flac 'My-Flac-Folder'
(This will target files with a .flac extension and use a custom mediaconch policy.)
NOTE: If running the QC scan with output for signal information enabled, the scan can take quite a while to run on long or large numbers of files. This is expected and is because the script needs to generate information for every individual audio frame.
Usage: makespectrums TARGET
This tool will create a compiled PDF of audio spectrums (high pass filter applied). Input can be individual files or a directory. Audio errors and drops can sometimes be identified by vertical lines that reach all the way to the top of the spectrum. (See example below which contains two dropouts)
Andrew Weaver (@privatezero)
Susie Cummings (@susiecummings)