The loudness correction performed within FFAStrans is - by default - performed in two passes: the first one measures and the second one applies the correction. Although performing this conversion in two passes is better (a bit like when you encode a video in two passes with the first one analyzing the scenes and the second one using the analysis to perform the encode), there's a way to do the entire operation in one single step by making the loudnorm filter "look ahead" a few samples (a bit like single pass encoding in video which performs the lookahead of 240 frames etc).
When it comes to the loudness, although for broadcast it's pretty common to see -24 and -23 LUFS, for CD those are generally at -14 and -13 LUFS, so it's not a surprise that they asked you to provide a sample at -12 LUFS.
For broadcast, I generally use an LRA of 12 which roughly means +6 -6 in terms of oscillations while the integrated loudness is the one you specify. In your case I'd say that we can try to do the same thing, so integrated loudness of 12, an LRA of also 12 which gives +6 -6 which is plenty for a dynamic to be preserved given that it's gonna be music and a true peak of -2 which is pretty standard.
Code: Select all
ffmpeg.exe -hide_banner -i "Source.wav" -c:a pcm_s24le -ar 44100 -af loudnorm=I=-12:LRA=12:tp=-2 -rf64 always -f wav -y "Output.wav"
in FFAStrans you can do the same thing using the Command Line executor node and
Code: Select all
%s_ffmpegx64% -hide_banner -i "%s_source%" -c:a pcm_s24le -ar 44100 -af loudnorm=I=-12:LRA=12:tp=-2 -rf64 always -f wav -y "%s_job_work%\output_lc.wav"
and setting the %s_source% variable in output of that node to be populated by "%s_job_work%\output_lc.wav" so that it can then be delivered by a normal delivery node or indeed be re-encoded by an audio node if they need a lossy version of that instead.
Try it out and send it over to them. If they reject it you can try tightening up the LRA to reduce the possible oscillations. Let me know how it goes.
p.s you can use spek which is a spectrum analyzer which is free and open source to check what happened to the audio after the conversion as well. It uses the Fourier Transform with a 2048 window and I've been using it for years now.
