lostless- I think he's looking for normalization not dynamic range compression as he states he has music from different sources that are of different base volumes.
Does not the "Sound check" feature if iTunes do exactly what you want? It analyzes each track and normalizes each such that they should play with the same loudness for each track.
iVolume is a little more sophisticated iteration of the concept, using the popular ReplayGain algorithm developed to analyze tracks and compensate for loudness. iVolume (and iTunes' sound check) does not alter the audio content of the music files, nor would you want it to. That would be altering and likely destroying data which should be avoided (kind of like saving a JPEG over and over, or re-compressing an already compressed MP3 file).
What it does do, is modify a tag in the header (similar to the title, artist, etc. information embedded in the header) telling the player how loudly or softly to adjust the playback by for that track. A smart burning program, I suppose, would respect this normalization value in the burn process as well.
The nice thing about iVolume thatI believe iTunes does not do, is that it can normalize songs an album at a time. Meaning it will normalize the audio level of all albums to be the same, but keep the relative differences between tracks within an album the same. This preserves the artist's intent that maybe some songs should have been louder than others on an album. iTunes sound check just normalizes all tracks irrespective of album.
Ruahrc