thanks for the replay’s.
a few more questions:
1) does FMOD supports ReplayGain?
2) I want to make the calculation in real time, meaning, the user will load the first song to the player and all the other songs will adjust the same volume level, can I do it with replay gain? how do I calculate the gain of the first song? does the ReplayGain algorithm have a method for that?
3) maybe there is some other way to make what I want on the fly in real time .
replay gain takes time to calcuate, and once you have calculated it, you have 2 pieces of information:
album gain level
song gain level
if you use programs like the mp3 normalizer above, it screws with your music data by changing the volume of the song.
a better way (imo) to do it is to tag your file (no matter what the format is, tag it some way) with the replaygain information.
then when playing it with fmod, use the gain dsp to adjust the gain of the playing file by the appropriate amount (album or song, depending on how you want it)
note that replaygain calc is not cheap to do, and must pass over the full song for the song gain level, and the entire album for the album gain level.
the flac library has a piece inside it you can rip out to do replaygain calculations.
3, you can do automatic gain control on the fly, but it wont sound as good.
- nirva answered 12 years ago
does ReplayGain gives me one value for all the song or per sample, buffer etc..
if it gives me one value for all the song it will go into distortion with some , and amplify quiet par6ts of the song.
What is the baseline ReplayGain uses, can it be compared for another song or I have to determine the db level i Want?
maybe I am wrong , I think I will get into it, maybe I can use it to make some dynamic ReplayGain.
it does, but it works only on small segments and uses maximum peaks for calculations, this is not very good for songs.
I want a to play songs continuesly (each song in my application is played on a different system object) without need to change the volume between them, do you think fmod can do this? maybe you know some other library, code, sample that does it. it is a very difficult issue, maintaing the same volume level(as the human hears) without effecting the quality of sound (ie distortio etc..) is not easy. if I cannot find one I will write my self( I intend to do that anyhow but for now I wanted to begin with somthing and save time).
Please login first to submit.