vorbisgain - calculate the replay gain for Ogg Vorbis files
vorbisgain [ -acCdfhqrsv ] [ -g album gain ] input_files ...
vorbisgain calculates the ReplayGain values for the named Ogg Vorbis input files and writes back the result in the form of tags (comments) in the file. These values can be used by a playback program to maintain a uniform sound level during play. (See http://www.replaygain.org/ for more information.) vorbisgain uses a default target level of 89 dB, rather than the 83 dB recommended by the ReplayGain standard, when calculating the gain to apply. (Some players include a pre-amplification setting with which the target level can be changed.)
vorbisgain input files must be Ogg Vorbis I files with 1 or 2 channels and a sample rate of 48 kHz, 44.1 kHz, 32 kHz, 24 kHz, 22050 Hz, 16 kHz, 12 kHz, 11025 Hz or 8 kHz. If an input file contains multiple streams (i.e., it is chained), the streams must all have the same format, in terms of sampling frequency and number of channels.
All streams in a chained file are processed, but the ReplayGain tags are only written to (or removed from) the first stream.
- -h, --help
- Show command help.
- -a, --album
- Activates album mode, in which the album gain (sometimes called the audiophile gain) is calculated in addition to the track gain (sometimes called the radio gain).
- -g n, --album-gain=n
- Sets the album gain value to use. Default is to calculate it, if -a is specified. Implies -a in the sense that the album gain tag is written. This is a relative value, in dB, specifying the change in volume that should be applied.
- -c, --clean
- Remove any ReplayGain tags from the specified files. If a file does not contain any ReplayGain tags, the file is not modified.
- -C, --convert
- Convert old format ReplayGain tags to a new format (see section TAG FORMAT below for details). If a file does not contain all ReplayGain tags that are needed for a conversion, the file is not modified. The album peak tag is only created if -a is specified, and the album gain value is then checked for consistency. Otherwise any album gain is converted without any checks.
- -d, --display-only
- Display the result only; do not write anything to disk. This applies to all options.
- -f, --fast
- Only calculate the gain for files that do not contain all replay gain tags needed (the album gain and peak tags are only considered if -a has been specified).
- -n, --no-progress
- Only display results, but don't show progress in percentages and times. This can be useful if the output is piped into other programs.
- -p, --preserve-mtime
- Do not trample upon the timestamps of any files being worked on. This obeys the expected data-vs-metadata behaviour, but can confuse some naive archivers.
- -q, --quiet
- Do not display any output while processing. Only error and warning messages will be printed.
- -r, --recursive
- Enter directories (recursively) and search for files, if directories or file patterns are specified. Note: Only available if vorbisgain was configured with --enable-recursive.
- -s, --skip
- Silently skip any non-Vorbis files found. Vorbis files that can't be processed for some reason are skipped as well, though not silently. Default is to stop when such files are encountered.
- -v, --version
- Display the version of the program.
Simplest version. Calculate the track gain and peak only.
Note that the following examples are only possible if vorbisgain was configured with --enable-recursive.
Calculate the album gain and peak, in addition to the track gain and peak, for all .ogg files in the directory "music" (and all subdirectories). All files in one directory are treated as belonging to the same album. Files that already have ReplayGain tags are not re-calculated. Note the quotes, as they cause the shell to not do any filename globbing:
Calculate the album gain. The files specified before the directory "album" are treated as one album, the files in the directory "album" as another album and the remaining files as a third album:
Remove all replaygain tags from a collection of oggs:
vorbisgain creates tags like these (when in -a mode):
Gain specifies how much the volume should be changed before playback, in dB. Peak is the maximum sample value of the file before any gain has been applied, where 1.0 means "full sample value" (32,767 when decoding to signed 16 bit samples).
Earlier versions of vorbisgain (before 0.30) created the following tags:
When -c is used, RG_RADIO is converted to REPLAYGAIN_TRACK_GAIN, RG_PEAK to REPLAYGAIN_TRACK_PEAK, RG_AUDIOPHILE to REPLAYGAIN_ALBUM_GAIN and REPLAYGAIN_ALBUM_PEAK is calculated as the maximum of all RG_PEAK tags in the album.
- Home page for VorbisGain. The latest version, and a Windows executable, can be found here.
- Contains detailed information about ReplayGain and how it is calculated.
- Discussion forum for audio compression and related issues, including Ogg Vorbis and VorbisGain.
The version of vorbisgain packaged for Debian differs in two ways from the upstream version. First, it does not retain the modification time of the input file by default: if tags are changed in a file, the mtime will change; you can specify "-p" to get the normal behaviour. Second, it does not try to process wildcards in filenames. This makes it impossible to say "process all foo*.ogg in all subdirectories", but also avoids problems with filenames that actually contain wildcards. Without this change, "vorbisgain *.ogg" in a directory with a file that contains a question mark would result in that file being treated as being in a different album.
|2004 Jan 3|