Git Product home page Git Product logo

loudness-scanner's Introduction

loudness-scanner

loudness-scanner is a tool that scans your music files according to the EBU R128 standard for loudness normalisation. It optionally adds ReplayGain compatible tags to the files.

All source code is licensed under the MIT license. See LICENSE file for details.

Features

  • Supports all libebur128 features:
    • Portable ANSI C code
    • Implements M, S and I modes
    • Implements loudness range measurement (EBU - TECH 3342)
    • True peak scanning
    • Supports all samplerates by recalculation of the filter coefficients
  • ReplayGain compatible tagging support for MP3, OGG, Musepack, FLAC and more

Requirements

The scanner needs Glib, GTK and taglib. There is input support for gstreamer, libsndfile, libmpg123, FFmpeg and libmpcdec.

Installation

In the root folder, type:

mkdir build
cd build
cmake ..
make

If you want the git version, run:

git clone git://github.com/jiixyj/loudness-scanner.git
cd loudness-scanner
git submodule init
git submodule update

Usage

Run "loudness scan" with the files you want to scan as arguments. The scanner will automatically choose the best input plugin for each file. You can force an input plugin with the command line option "--force-plugin=PLUGIN", where PLUGIN is one of gstreamer, sndfile, mpg123, musepack or ffmpeg.

The scanner also support ReplayGain tagging. Run it like this:

loudness tag <files>     # scan files as album

or:

loudness tag -t <files>  # scan files as single tracks

Use the option "-r" to search recursively for music files and tag them as one album per subfolder.

The reference volume is -18 LUFS (5 dB louder than the EBU R 128 reference level of -23 LUFS).

Use the option "-p" to print information about peak values. Use "-p sample" for sample peaks, "-p true" for true peaks, "-p dbtp" for true peaks in dBTP and "-p all" to print all values.

The scanner supports loudness range measurement with the command line option "-l".

In "dump" mode, use the options "-s", "-m" or "-i" to print short-term (last 3s), momentary (last 0.4s) or integrated loudness information to stdout. For example:

loudness dump -m 0.1 foo.wav

to print the momentary loudness of foo.wav to stdout every 0.1s.

loudness-scanner's People

Contributors

andrewrk avatar audionuma avatar dsedivec avatar jiixyj avatar nu774 avatar

Watchers

 avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.