 |
 |
Technical question about sound manipulation
|
 |
|
 |
|
Dedicated MacNNer
Join Date: Dec 2000
Location: sj ca
Status:
Offline
|
|
I have been bugged for a long time by the problem of mismatched sound levels in my MP3 collection. Some are significantly louder than others (usually from the original source), so that when I put a set together in a playlist or on a CD, it can sound really bad. I looked at a bunch of 3rd party apps, as suggested in anohter forum, but none really seemed to work. Thus I decided to take matters into my own hands.
After some serious tweaking, I got the perl MP3 libraries working on OSX. I am now able to decode and encode mp3s, change bitrates, change encoding types, etc, all from within perl. Most importantly, I have access to the raw audio information, so I can actually change the volume of a song.
But normalizing volumes is pretty tricky, and here's the part where I need some expert advice. I can sample the song and find its average volume, but that doesn't always convey the true "loudness" of a song. Obviously, deathmetal will have a higher average volume than a soft ballad, even if they have the same "loudness" (so I wouldn't want to adjust either one, despite data that might suggest the ballad is too quiet).
So what analysis techniques should I use to figure out how loud a song is? Remember than I can apply pretty much any algorithm or transform to the data...
|
|
|
| |
|
|
|
 |
|
 |
|
Mac Elite
Join Date: Oct 2001
Location: Internet
Status:
Offline
|
|
Originally posted by qyn:
I have been bugged for a long time by the problem of mismatched sound levels in my MP3 collection. Some are significantly louder than others (usually from the original source), so that when I put a set together in a playlist or on a CD, it can sound really bad. I looked at a bunch of 3rd party apps, as suggested in anohter forum, but none really seemed to work. Thus I decided to take matters into my own hands.
After some serious tweaking, I got the perl MP3 libraries working on OSX. I am now able to decode and encode mp3s, change bitrates, change encoding types, etc, all from within perl. Most importantly, I have access to the raw audio information, so I can actually change the volume of a song.
But normalizing volumes is pretty tricky, and here's the part where I need some expert advice. I can sample the song and find its average volume, but that doesn't always convey the true "loudness" of a song. Obviously, deathmetal will have a higher average volume than a soft ballad, even if they have the same "loudness" (so I wouldn't want to adjust either one, despite data that might suggest the ballad is too quiet).
So what analysis techniques should I use to figure out how loud a song is? Remember than I can apply pretty much any algorithm or transform to the data...
Why don't you just use "sound check" in iTunes?
|

MacBook Air 11" 1.6Ghz 4GB 128GB Backlit Keyboard, 4S, iPad 2
|
| |
|
|
|
 |
|
 |
|
Dedicated MacNNer
Join Date: Dec 2000
Location: sj ca
Status:
Offline
|
|
Originally posted by hadocon:
Why don't you just use "sound check" in iTunes?
Because it doesn't make the changes permanent, it just adjusts them in iTunes (plays them louder). But I use other things besides iTunes.
|
|
|
| |
|
|
|
 |
|
 |
|
Posting Junkie
Join Date: Jun 2001
Location: Chicago, Bang! Bang!
Status:
Offline
|
|
I'm not an expert (on either audio or sound analysis) but I think what you want to do is too subjective to let a computer decide, at least without some fairly impressive technological hocus-pocus behind it.
The deathmetal/soft ballad conundrum is exactly why sound check on iTunes blows. It just don't know the difference.
If you can figure out how to do this better, Apple will buy (or reverse engineer) it from you.
At the very least I think you need to analyze the Album the song came from as well as the individual songs. This gives you another data point.
That idea is about as far as I came along in the "sound check MK II" project, which started 10 seconds after I learned how bad sound check worked, and ended 20 seconds later when I remembered how I don't know how to program.
|
|
|
| |
|
|
|
 |
|
 |
|
Fresh-Faced Recruit
Join Date: Jan 2003
Location: Pittsboro, NC
Status:
Offline
|
|
Originally posted by qyn:
I have been bugged for a long time by the problem of mismatched sound levels in my MP3 collection. Some are significantly louder than others (usually from the original source), so that when I put a set together in a playlist or on a CD, it can sound really bad. I looked at a bunch of 3rd party apps, as suggested in anohter forum, but none really seemed to work. Thus I decided to take matters into my own hands.
After some serious tweaking, I got the perl MP3 libraries working on OSX. I am now able to decode and encode mp3s, change bitrates, change encoding types, etc, all from within perl. Most importantly, I have access to the raw audio information, so I can actually change the volume of a song.
But normalizing volumes is pretty tricky, and here's the part where I need some expert advice. I can sample the song and find its average volume, but that doesn't always convey the true "loudness" of a song. Obviously, deathmetal will have a higher average volume than a soft ballad, even if they have the same "loudness" (so I wouldn't want to adjust either one, despite data that might suggest the ballad is too quiet).
So what analysis techniques should I use to figure out how loud a song is? Remember than I can apply pretty much any algorithm or transform to the data...
|
|
Never say die!
|
| |
|
|
|
 |
|
 |
|
Fresh-Faced Recruit
Join Date: Jan 2003
Location: Pittsboro, NC
Status:
Offline
|
|
Originally posted by hadocon:
Why don't you just use "sound check" in iTunes?
"Sound Check" from iTunes seems to work fine. Another option would be to preset the Equalizer in order to get exactly what you want. Just another thought...
|
|
Never say die!
|
| |
|
|
|
 |
 |
|
 |
| |
|
|
|

|
|
 |
Forum Rules
|
 |
 |
|
You may not post new threads
You may not post replies
You may not post attachments
You may not edit your posts
|
HTML code is Off
|
|
|
|
|
|
 |
 |
 |
 |
|
 |
|