iTunes supports a feature called Sound Check. Similar to ReplyGain in other players, the goal is make songs playback at a similar volume. This is particularly useful with mixes, songs from various albums do not have jarring transitions. Since this computed on a song-by-song basis, different songs on a single album get different values. In some cases this creates a jarring experience while listening*.

For example: Muse's Absolution has an introduction track that never gets terribly loud, but leads in directly to a normal song. Sound Check did the following:

The ending of the first track is meant to be the same volume as the beginning of the second, but because of Sound Check, this doesn't happen.

I have written album_soundcheck.py which computes the average volume of m4a or mp3 files and replaces the iTunes information with that. This is a permanent change, and cannot easily be reversed. So I provided a testing option (-p), run with -h to see the full option list.

album_soundcheck.py requires:

If you have Oggify installed and working you should have all the needed prerequisites.

Example:

album_soundcheck.py "~/Music/iTunes/iTunes Music/Muse/Absolution/*"

* Many new albums by "popular" artists may not be affected, see Loudness War

Posted: Jan 15, 2009 | Tags: python osx music

Comments are closed.

Tags

42 | django | python | oggify | OSCON | OSCON07 | osx | utosc | mythtv | security | reading | music | gaming | programming | tips | shell | vim | pyobjc | cocoa | iphone | blog | git

Calendar

<< Jan >>
Mo Tu We Th Fr Sa Su
29 30 31 1 2 3 4
5 6 7 8 9 10 11
12 13 14 15 16 17 18
19 20 21 22 23 24 25
26 27 28 29 30 31 1

Search

This space reserved for a search box

A Django site. Hosted on a Slicehost Slice