Skip to content
This repository has been archived by the owner on Aug 17, 2023. It is now read-only.


Repository files navigation


Fast audio loudness scanner & tagger

This project is no longer maintained.

When I first wrote it, there was simply no solution to analyze audio loudness and tag files accordingly on Linux from the ReplayGain v2 or Opus R128 conventions.

Now there are several better maintained alternatives, and I recommend using rsgain instead.

PyPI version AUR version Tests status Coverage Supported Python versions License

r128gain is a multi platform command line tool to scan your audio files and tag them with loudness metadata (ReplayGain v2 or Opus R128 gain format), to allow playback of several tracks or albums at a similar loudness level. r128gain can also be used as a Python module from other Python projects to scan and/or tag audio files.

This is beta software, please test and report bugs.


  • Supports all common audio file formats (MP3, AAC, Vorbis, Opus, FLAC, WavPack...) and tag formats (ID3, Vorbis comments, MP4, APEv2...)
  • Writes tags compatible with music players reading track/album gain metadata
  • Supports new R128_XXX_GAIN tag format for Opus files (very few scanners write this tag, although it is defined in the Opus standard)
  • Supports writing gain to the Opus output gain header (experimental)
  • Uses threading to optimally use processor cores resulting in very fast processing


r128gain requires Python >= 3.6 and FFmpeg >= 2.8.

Standalone Windows executable

Windows users can download a standalone binary which does not require Python, and bundles FFmpeg.

Arch Linux

Arch Linux users can install the r128gain AUR package.

From PyPI (with PIP)

Install r128gain using pip: pip3 install r128gain

From source

  1. If you don't already have it, install setuptools for Python 3
  2. Clone this repository: git clone
  3. Install r128gain: python3 install

Command line usage

Run r128gain -h to get full command line reference.


  • Scan a single file and display its loudness information: r128gain -d an_audio_file.mp3
  • Scan & tag a single file: r128gain an_audio_file.mp3
  • Scan & tag all audio files in music_directory and all its subdirectories: r128gain -r music_directory
  • Scan & tag all audio files in music_directory and all its subdirectories, and add album gain tags (files contained in each directory are considered as part of the same album): r128gain -r -a music_directory