If you've been reading the last few posts hereabouts, you'll know that I've recently updated most of my audio-processing scripts. The AbsolutelyBaching Universal Audio Converter (AUAC) in particular received a significant new piece of functionality: when extracting high-res audio from an SACD ISO, it will now boost the resulting FLAC files' audio volume by 6dB (6 decibels).
This was done because I had noticed that SACD extractions usually had much quieter audio than the same music mastered onto ordinary CD -and, asking around, I discovered that for assorted, obscure technical reasons, the music industry records SACDs at -6dB, to prevent distortion. So the quietness is built in. The recent AUAC update therefore built it back out again, by increasing the volume by the same amount the industry reduces it to prevent audio artefacts getting encoded into the signal. This is a safe thing to do, since we're no longer mastering and recording the audio, and thus at risk of creating artefacts. We're just, essentially, turning up the volume knob after all the processing and mastering has long since been completed.
But... and it's a big 'but'! The reduction in volume by 6dB at the time of recording and mastering is only a recommendation, not a cast-iron rule. Some recording engineers like to take a more aggressive approach to their SACD mastering and therefore do not reduce the input volume by precisely 6dB. Any attempt to boost the end-volume by precisely 6dB therefore risks over-amplifying a signal that isn't as quiet as was expected. That will result in 'clipping' -or, basically, the sound you get when your loudspeakers are complaining they can't take any more signal. Indeed, as (bad) luck would have it, one of the first SACD ISOs I processed with AUAC the day after it's recent update happened to be one that, on volume-boosting, sounded distorted.
So: instead of a fixed 6dB boost to volume, the new version (1.11) of AUAC will now scan all the FLACs extracted from an ISO and determine their maximum volume level: in theory, if the engineers were doing their job properly in an ideal world, the maximum peak volume would be zero (bizarrely, in audio, loudness is worked backwards, so 0dB is as loud as you can get, whilst -50dB would be barely audible). At 0dB, the sound signal is theoretically as loud as it can be without distorting.
So AUAC checks each file extracted to FLAC from an SACD ISO. For the two loud outer movements of a symphony, it might find their respective peak volumes to be (say) -4.4dB and -5.2dB. The inner symphony movement, very calm and quiet, might be found to have a peak volume of -15.6dB. We therefore pick the smallest of these numbers as the volume boost (turning them positive to counteract their negativeness). Thus, if we add 4.4dB to all the tracks, their volumes would become 0, -0.8 and -11.2. Their relative loudness (i.e., how loud track 2 sounds compared to track 1, or track 1 compared to track 3) will not vary: they've all been boosted by an equal amount. But the loudest of them will now be as loud as it's possible to get, without any -6dB reduction thanks to the caution of SACD engineers.
(Technically, and out of an abundance of caution, so as not to introduce distortion, AUAC aims to make the maximum volume -0.5 dB, not 0. Just a little bit of extra headroom there, but it's close enough to count as 'maximising volume').
So, if you are extracting an SACD ISO to a FLAC, AUAC will still output the 'unboosted' files (named (2ch)...<something> -the 'something' being determined by the inner metadata settings of the source ISO, over which AUAC has no control). It will then scan those unboosted files to determine if a volume boost can be meaningfully applied (unless you've said -v=n or --volume=n). Having analysed the complete set of extracted files, it will then apply whatever the smallest volume boost is required to get the loudest file to have a peak volume of -0.5dB. Relative volumes won't be disturbed across the entire album, but absolute volumes will be boosted.
Upgrading to the new release (version 1.11) is done by simply downloading it to your Downloads folder and then issuing these two commands:
sudo mv $HOME/Downloads/auac.sh /usr/bin sudo chmod +x /usr/bin/auac.sh
Alternatively, download the new script and open it in a text editor; then open the original script in a text editor, and paste the new version’s text over that of the original and save the original file once more.