[FFmpeg-user] Sound level

John Saturday stozher at gmail.com
Thu Feb 16 15:44:47 CET 2012


Hi jacky,

I have use this command for normalization of sound level at 89 dB.

1. First extract sound from FLV at WAV format:

ffmpeg -i file.flv -f wav -c:a pcm_s16le -ac:a 2 file.wav

(change "-c:a pcm_s16le" with "-acodec  pcm_s16le" and "-ac:a 2" with
"-ac 2" for old version of FFMPEG)

2. Commpress to FLAC and view needed replaygain:

flac --replay-gain file.wav
metaflac --show-tag=REPLAYGAIN_TRACK_GAIN file.flac

Otput from METAFLAC is a like this:

REPLAYGAIN_TRACK_GAIN=+20.91 dB

3. Open calculator in advanced mode and calculate FFMPEG volume:

volume=256*10^(<gain in dB>/20)=256*10^(20.91/20)=2842.76 ~ 2843

(I'm not sure how to write this in English: 2^2=2x2=4, 2^3=2x2x2=8.
Other example with negative gain: volume=256*10^(-2.57/20)=190.4 ~
190.)

4. Reencode only audio stream with FFMPEG:

ffmpeg -i file.flv -f mp4 -c:v copy -c:a libfaac -vol:a 2843 -b:a 128k
output.mp4

(old format: ffmpeg -i file.flv -f mp4 -vcodec copy -acodec libfaac
-vol 2843 -ab 128k output.mp4)

For movies I have use 128k (64k bitrate per channel) for stereo and
320k for 5.1 (LFE channel isn't calculated) and for music
256k for stereo and 640k for 5.1... also a good idea is to archive at
MKV container with AC-3 audio codec:

ffmpeg -i input.flv -f matroska -c:v copy -c:a ac3 -vol:a <volume>
-b:a <bitrate> output.mkv

For Matroska see this: http://matroska.org/technical/whatis/index.html


More information about the ffmpeg-user mailing list