ReplayGain is a proposed technical standard published by David Robinson in 2001 to measure and normalize the perceived loudness of audio in computer audio formats such as MP3 and Ogg Vorbis. It allows media players to normalize loudness for individual tracks or albums. This avoids the common problem of having to manually adjust volume levels between tracks when playing audio files from albums that have been mastered at different loudness levels.
Although this de facto standard is now formally known as ReplayGain, [1] it was originally known as Replay Gain and is sometimes abbreviated RG.
ReplayGain is supported in a large number of media software and portable devices.
ReplayGain works by first performing a psychoacoustic analysis of an entire audio track or album to measure peak level and perceived loudness. Equal-loudness contours are used to compensate for frequency effects and statistical analysis is used to accommodate for effects related to time. The difference between the measured perceived loudness and the desired target loudness is calculated; this is considered the ideal replay gain value. Typically, the replay gain and peak level values are then stored as metadata in the audio file. ReplayGain-capable audio players use the replay gain metadata to automatically attenuate or amplify the signal on a per-track or per-album basis such that tracks or albums play at a similar loudness level. The peak level metadata can be used to prevent gain adjustments from inducing clipping in the playback device. [2]
The original ReplayGain proposal specified an 8-byte field in the header of any file. Most implementations now use tags for ReplayGain information. FLAC and Ogg Vorbis use the REPLAYGAIN_*
Vorbis comment fields. MP3 files usually use ID3v2. Other formats such as AAC and WMA use their native tag formats with a specially formatted tag entry listing the track's replay gain and peak loudness.
ReplayGain utilities usually add metadata to the audio files without altering the original audio data. Alternatively, a tool can amplify or attenuate the data itself and save the result to another, gain-adjusted audio file; this is not perfectly reversible in most cases. Some lossy audio formats, such as MP3, are structured in a way that they encode the volume of each compressed frame in a stream, and tools such as MP3Gain take advantage of this for directly applying the gain adjustment to MP3 files, adding undo information so that the process is reversible.
The target loudness is specified as the loudness of a stereo pink noise signal played back at 89 dB sound pressure level or −14 dB relative to full scale. [3] This is based on SMPTE recommendation RP 200:2002, which specifies a similar method for calibrating playback levels in movie theaters using a reference level 6 dB lower (83 dB SPL, −20 dBFS). [note 1]
ReplayGain analysis can be performed on individual tracks so that all tracks will be of equal volume on playback. Analysis can also be performed on a per-album basis. In album-gain analysis an additional peak-value and gain-value, which will be shared by the whole album, is calculated. Using the album-gain values during playback will preserve the volume differences among tracks on an album.
On playback, listeners may decide if they want all tracks to sound equally loud or if they want all albums to sound equally loud with different tracks having different loudness. In album-gain mode, when album-gain data is missing, players should use track-gain data instead.
Name | Platforms | Can write | Ref. |
---|---|---|---|
AIMP |
| Yes | [lower-alpha 5] |
Amarok |
| Yes | [lower-alpha 6] |
Amberol | Linux | No | [lower-alpha 7] |
Audacious |
| No | |
Banshee |
| Yes | [lower-alpha 8] |
beaTunes |
| Yes | [lower-alpha 9] |
BTR Amp |
| No | [lower-alpha 10] |
Clementine |
| No | |
cmus | Unix-like | Yes | |
DeaDBeeF |
| Yes | [lower-alpha 11] |
Exaile |
| No | |
Ex Falso/Quod Libet |
| Yes | [lower-alpha 12] |
foobar2000 |
| Yes | [lower-alpha 1] |
JRiver Media Center |
| Yes | [lower-alpha 13] |
JavaTunes |
| No | |
Kodi (software) |
| No | |
Lightweight Music Server | Yes | [lower-alpha 14] | |
Lyrion Music Server |
| Yes | |
Loudgain |
| Yes | [lower-alpha 2] |
MAD/madplay |
| Yes | |
MediaMonkey |
| Yes | |
Mixxx [note 2] |
| Yes | [lower-alpha 15] |
mp3gain |
| Yes | [lower-alpha 16] |
mpg123 |
| No | |
MPD |
| Yes | |
mpv |
| No | |
Muine |
| No | [lower-alpha 17] |
MusicBee |
| Yes | [lower-alpha 18] |
Nightingale |
| No | [lower-alpha 19] |
PowerAMP |
| No | |
ProppFrexx ONAIR |
| Yes | [lower-alpha 20] |
RadioBOSS |
| Yes | |
Rockbox | Yes | ||
SoX |
| Yes | |
Vanilla Music |
| No | |
Vinyl Music Player |
| No | |
VLC media player | No | ||
Winamp |
| Yes | |
XMPlay |
| Yes | |
Zortam Mp3 Media Studio |
| Maybe [note 3] |
Vorbis is a free and open-source software project headed by the Xiph.Org Foundation. The project produces an audio coding format and software reference encoder/decoder (codec) for lossy audio compression, libvorbis. Vorbis is most commonly used in conjunction with the Ogg container format and it is therefore often referred to as Ogg Vorbis.
FLAC is an audio coding format for lossless compression of digital audio, developed by the Xiph.Org Foundation, and is also the name of the free software project producing the FLAC tools, the reference software package that includes a codec implementation. Digital audio compressed by FLAC's algorithm can typically be reduced to between 50 and 70 percent of its original size and decompresses to an identical copy of the original audio data.
foobar2000 is a freeware audio player for Microsoft Windows, iOS, Android, macOS, and formerly Windows Phone, developed by Peter Pawłowski. It has a modular design, which provides user flexibility in configuration and customization. Standard "skin" elements can be individually augmented or replaced with different dials and buttons, as well as visualizers such as waveform, oscilloscope, spectrum, spectrogram (waterfall), peak and smoothed VU meters, which all of them are analysis-oriented, at least for built-in visualizations. foobar2000 offers third-party user interface modifications through a software development kit (SDK).
ID3 is a metadata container most often used in conjunction with the MP3 audio file format. It allows information such as the title, artist, album, track number, and other information about the file to be stored in the file itself.
APE tags comprise one extant convention used to store information (metadata) about a given digital audio file. Each APE tag constitutes a discrete element that describes a single attribute of the file's contents. Each consists of a key/value pair; the key is simply a label that names the attribute, such as Year, Title, Artist, or Track Number, etc.), and associated with it is a corresponding value, namely, some information descriptive of this file, in terms of the attribute in question. APE tags can be used with .ape-formatted recordings, as well as with sound files of other audio file formats.
Muine is a discontinued audio player for the GNOME desktop environment which runs on Linux, Solaris, BSD and other UNIX-like systems. Muine is written in C# using Mono and Gtk#. The default backend is GStreamer framework but Muine can also use xine libraries.
Audio normalization is the application of a constant amount of gain to an audio recording to bring the amplitude to a target level. Because the same amount of gain is applied across the entire recording, the signal-to-noise ratio and relative dynamics are unchanged. Normalization is one of the functions commonly provided by a digital audio workstation.
Gapless playback is the uninterrupted playback of consecutive audio tracks, such that relative time distances in the original audio source are preserved over track boundaries on playback. For this to be useful, other artifacts at track boundaries should not be severed either. Gapless playback is common with compact discs, gramophone records, or tapes, but is not always available with other formats that employ compressed digital audio. The absence of gapless playback is a source of annoyance to listeners of music where tracks are meant to segue into each other, such as some classical music, progressive rock, concept albums, electronic music, and live recordings with audience noise between tracks.
Music Player Daemon (MPD) is a free and open source music player server. It plays audio files, organizes playlists and maintains a music database. In order to interact with it, a client program is needed. The MPD distribution includes mpc, a simple command line client.
Dialnorm is the metadata parameter that controls playback gain within the Dolby Laboratories Dolby Digital (AC-3) audio compression system. Dialnorm stands for dialog normalization. Dialnorm is an integer value with range 1 to 31 corresponding to a playback gain of -30 to 0 dB (unity) respectively. Higher values afford more headroom and are appropriate for dynamic material such as an action film.
MP3Gain is an audio normalization software tool. The tool is available on multiple platforms and is free software. It analyzes the MP3 and reversibly changes its volume. The volume can be adjusted for single files or as album where all files would have the same perceived loudness. It is an implementation of ReplayGain. In 2015 Debian and Ubuntu removed it from their repositories due to a lack of an active maintainer.
mp3DirectCut is a lossless editor for MP3 audio files, able to provide cuts and crops, copy and paste, gain and fades to audio files without having to decode or re-encode the audio. By modifying the global gain field of each frame of MPEG audio, the volume of that frame can be modified without altering the audio data itself. This allows for rapid, lossless MP3 audio editing that does not degrade the data from re-encoding. mp3DirectCut provides audio normalization and pause (silence) detection, and can split long recordings into separate files based on cue points in the audio, such as those provided by pause detection. mp3DirectCut can also record audio directly to MP3 from the computer's sound card input.
The following comparison of audio players compares general and technical information for a number of software media player programs. For the purpose of this comparison, "audio players" are defined as any media player explicitly designed to play audio files, with limited or no support for video playback. Multi-media players designed for video playback, which can also play music, are included under comparison of video player software.
MusicBee is a freeware media player for playback and organization of audio files on Microsoft Windows, built using the BASS audio library.
Nightingale is a discontinued free, open source audio player based on the Songbird media player source code. As such, Nightingale's engine is based on the Mozilla XULRunner with libraries such as the GStreamer media framework and libtag providing media tagging and playback support, amongst others.
Quod Libet is a cross-platform free and open-source audio player, tag editor and library organizer. The main design philosophy is that the user knows how they want to organize their music best; the software is therefore built to be fully customizable and extensible using regular expressions and boolean logic. Quod Libet is based on GTK and written in Python, and uses the Mutagen tagging library.
AIMP is a freeware audio player for Windows and Android, originally developed by Russian developer Artem Izmaylov. It supports a variety of audio codecs, and includes tools to convert audio files and edit their metadata. It also has the capability of installing user-made skins and plugins. After its release, it has been well received by different parties.
Puddletag is a graphical audio file metadata editor ("tagger") for Unix-like operating systems.
Qmmp is a free and open-source cross-platform audio player that is similar to Winamp. It is written in C++ using the Qt widget toolkit for the user interface. It officially supports the operating systems Linux, FreeBSD and Microsoft Windows. In most Linux distributions, it is available through the standard package repositories. Until Audacious switched to Qt in version 4.0, qmmp was the only audio player to use Qt and not feature a database.
beaTunes allows you to perform the ReplayGain analysis and adjust the standardized, track-specific id3 tags
Mixxx reads existing ReplayGain tags and analyzes songs that don't have them.
MP3Gain analyzes and adjusts mp3 files so that they have the same volume.
there is no reference of it being loaded or written to the file
ReplayGain scanner