Bandwagon will do that for free and sell them - though how much you get out of it I don't know.
They say
ringtones... use midi or MP3. realtones should be 20-30 seconds long with a fixed bitrate of 80kbps and a sample-rate of 44100hz
Their "how to"
Windows and
Mac/Linux