Man Linux: Main Page and Category List

NAME

       normalize-audio - adjusts volume levels of audio files.

SYNOPSIS

       normalize-audio [ options ] [ -- ] file ...

DESCRIPTION

       normalize-audio  is  used  to adjust the volume of wav audio files to a
       standard volume level.  This is useful for  things  like  creating  mp3
       mixes,  where  different recording levels on different albums can cause
       the volume to vary greatly from song to song.

       normalize-audio operates  in  two  phases.   In  the  first  phase,  it
       analyzes  the  specified  files  as  wav  audio files, and computes the
       volume of each  file.   In  the  second  phase,  it  applies  a  volume
       adjustment  to each file to set each file’s volume to a standard level.

OPTIONS

       -a, --amplitude=AMPLITUDE
              Adjust the RMS volume to the target amplitude AMPLITUDE; must be
              between  0.0 and 1.0.  If a number suffixed by "dB" or "dBFS" is
              specified, the amplitude is assumed to be in decibels from  full
              scale.  The default is -12dBFS.

       -b, --batch
              Enable batch mode: see BATCH MODE, below.

       -c, --compression
              Deprecated.  In previous versions, this enabled the limiter, but
              now the limiter is enabled by default.

       --clipping
              Disable the limiter, and just clip  any  samples  that  are  too
              large.  Same effect as -l 0dBFS.

       --fractions
              Display  all values as decimal fractions instead of in decibels.
              By default, volume adjustments are shown in decibels, and volume
              levels  in  dBFS,  where 0 dBFS is the level of a square wave of
              maximum amplitude.

       -g, --gain=GAIN
              Skip the volume computation  phase:  don’t  compute  the  volume
              adjustment from the current volumes of the files.  Instead, just
              apply the given gain as a volume adjustment to all files.  As  a
              plain  number  this is just a multiplier applied to all samples,
              If a number suffixed by  "dB"  is  specified,  all  volumes  are
              adjusted by that many decibels.

       --id3-compat
              Use  this  option  when  adjusting  MPEG audio files if your MP3
              player  does  not  recognize  ID3v2.4  tags.   See  MPEG   AUDIO
              ADJUSTMENT, below, for details.

       --id3-unsync
              Use  this  option  when  adjusting  MPEG audio files if your MP3
              player does not recognize ID3v2 tags  and  has  trouble  playing
              some  ID3v2 tagged MP3 files.  See MPEG AUDIO ADJUSTMENT, below,
              for details.

       -l, --limiter=LEVEL
              This controls the behavior of  the  limiter.   By  default,  all
              samples above -6dBFS (0.5) are limited, but this option sets the
              limiting level to LEVEL. Setting LEVEL to 1 (or 0dBFS)  does  no
              limiting  (clipping  is  done  instead); setting LEVEL to 0 does
              limiting on all  samples.   The  default  value  is  recommended
              unless you know what you’re doing.

       -m, --mix
              Enable  mix  mode: see MIX MODE, below.  Batch mode and mix mode
              are mutually exclusive.

       -n, --no-adjust
              Compute and output the volume  adjustment  that  would  set  the
              volume  to  the  target,  but don’t apply it to any of the files
              (i.e. skip the second phase).  If  you  use  this  option,  your
              files will not be altered in any way.

       --no-progress
              Don’t  print  any  progress information.  All other messages are
              printed as normal according to the verbosity level.

       --peak Adjust using peak levels instead of RMS levels.  Each file  will
              be  adjusted  so that its maximum sample is at full scale.  This
              just gives a file the maximum volume possible without  clipping;
              no normalization is done.

       -q, --quiet
              Don’t  output  progress  information.   Only  error messages are
              printed.

       -t, --average-threshold=THRESHOLD
              When averaging volume levels for batch mode or mix  mode,  throw
              out  any  volumes that are more than THRESHOLD decibels from the
              average.  A high value here (say, 50) will make  sure  that  the
              volumes of all files are considered in the average.

       -T, --adjust-threshold=THRESHOLD
              If  an adjustment to be made to a file is smaller than THRESHOLD
              decibels, consider the file already normalized and don’t do  the
              adjustment.   This is 0.125 by default, or 0 if the -g option is
              given.

       -v, --verbose
              Increase verbosity.   This  option  can  be  repeated  for  more
              messages.

       -w, --output-bitwidth
              Force  output  files to have samples that are W bits wide.  This
              option is ignored when adjusting MP3 files.

       -h, --help
              Display usage information and exit.

       -V, --version
              Print version information and exit.

       --     Terminate option list.

MIX MODE

       This mode is made especially for making mixed CD’s and the  like.   You
       want every song on the mix to be the same volume, but it doesn’t matter
       if they are the same volume as the songs on some  other  mix  you  made
       last  week.   In  mix mode, average level of all the files is computed,
       and each file is separately normalized to this average volume.

BATCH MODE

       When operating on a group of unrelated files, you usually want  all  of
       them  at  the same level, and this is the default behavior.  However, a
       group of music files all from the same album is generally meant  to  be
       listened  to  at  the relative volumes they were recorded at.  In batch
       mode, all the specified files are considered to be  part  of  a  single
       album  and  their  relative  volumes  are  preserved.   This is done by
       averaging the volumes of all the files, computing a  single  adjustment
       from  that,  and  applying  the same adjustment to all the files.  Some
       analysis is also done so that files with  volumes  that  appear  to  be
       statistical  aberrations  are  not  considered in the average.  This is
       useful if you have albums (like many of the author’s) in which there is
       one "quiet song" that throws off the average.

MPEG AUDIO ADJUSTMENT

       MP3  files are "adjusted" by setting a relative volume adjustment frame
       in their ID3 tags.  There is a frame for this, called "RVA2", that does
       exactly what we want, and is a native frame in ID3v2.4.  Unfortunately,
       many MP3 players do not support v2.4 tags, and  the  RVA2  tag  is  not
       native  in  previous  ID3 versions.  In fact, adding an RVA2 frame to a
       v2.3 tag confuses some MP3 players.  Therefore, we are  left  with  two
       choices when trying to add volume adjustment information to an ID3 tag:

       1. Go ahead and upgrade the tag to version  2.4,  and  use  RVA2  tags.
          This  is  the  default  behavior,  in  the  hope that eventually MP3
          players will support v2.4 tags and this won’t be a problem  anymore.

       2. Upgrade the tag to only version 2.3.  Instead of RVA2, use an "XRVA"
          tag with the same format as an RVA2 tag.  This isn’t a native frame,
          but  since  it  starts with an "X", it’s considered experimental and
          therefore legal, according to the ID3 spec.  The --id3-compat option
          turns  on  this  behavior.   The disadvantage of the first method is
          that your MP3 player may no longer read the ID3 tags on your  files.
          Bug  the author of your favorite MP3 player to support ID3v2.4 tags!

       The disadvantage of the second method is that the XRVA  frame  is  only
       recognized  by the xmms-rva plugin that is packaged with normalize.  On
       the other hand, I don’t know of any MP3 players that recognize the RVA2
       frame, either, so it may not make any difference.

       The  other  option related to ID3 tags, --id3-unsync, is only necessary
       for compatibility with old MP3 players that don’t recognize ID3v2  tags
       at all.  If your MP3 player complains of garbage at the start of tagged
       files, or is unable to play the files at  all,  turn  this  option  on.
       This option should never hurt, but if your MP3 player knows about ID3v2
       tags, you don’t need it.

CAVEATS

       Note that your version of normalize-audio must  be  compiled  with  MAD
       library support to analyze MP3 file volume levels.

AUTHOR

       Chris Vaill <chrisvaill@gmail.com>

SEE ALSO

       sox(1)

                               14 September 2005