| Format | Extension | Number of Scales | Max Duration (sec) | Max Filesize (bytes) | Special Events |
| Nokia | .ott, .nokia, .noktxt | 4 | unlimited1 | 128 per SMS, up to 255 messages | n/a |
| RTTTL / RTX | .txt, .rtttl, .rtx | 4 | unlimited1 | unlimited2 | n/a |
| IMelody 1.0, 1.2 | .imy | 9 | unlimited1 | 128 per SMS | vibration, backlight, LED |
| EMS | .ems | 9 | unlimited1 | 140 per SMS, up to 256 messages | vibration, backlight, LED |
| eMelody | .emy | 2 (3 for extended EMS) | 30 | 128 | n/a |
| Sagem 1.0 | .sagem.10 | 4 | 30 | 128 | n/a |
| Motorola | .mot, .bin | 3 | 30 | 128 | n/a |
| Format | Format Constant | Applicable Options |
| Nokia | RingtoneConstants.FORMAT_NOKIA | RingtoneConstants.OPTION_SCALE_ALWAYS Set scale explicitly for each note
RingtoneConstants.OPTION_LOOP_COUNT + <loop count> Repeat <loop count> times
RingtoneConstants.FIND_CYCLES Attempt to find loops in the ringtone and fold them compressing the ringtone size
RingtoneConstants.INSERT_UDH Prepend User Data Header (UDH) to the ringtone according to the Nokia Smart Messaging specification
RingtoneConstants.OPTION_CONSTANT_VOLUME Don't change volume in the middle of the ringtone. Often allows to put more notes to the one-sms ringtones
RingtoneConstants.OPTION_FLOATING_SCALE Find the best scale set for the melody
|
| Nokia Binary Text | RingtoneConstants.FORMAT_NOKIATXT | RingtoneConstants.OPTION_SCALE_ALWAYS Set scale explicitly for each note
RingtoneConstants.OPTION_LOOP_COUNT + <loop count> Repeat <loop count> times
RingtoneConstants.FIND_CYCLES Attempt to find loops in the ringtone and fold them compressing the ringtone size
RingtoneConstants.INSERT_UDH Prepend User Data Header (UDH) to the ringtone according to the Nokia Smart Messaging specification
RingtoneConstants.OPTION_CONSTANT_VOLUME Don't change volume in the middle of the ringtone. Often allows to put more notes to the one-sms ringtones
RingtoneConstants.OPTION_FLOATING_SCALE Find the best scale set for the melody
|
| RTTTL/RTX | RingtoneConstants.FORMAT_RTTTL | RingtoneConstants.OPTION_SCALE_ALWAYS Set scale explicitly for each note
RingtoneConstants.FIND_CYCLES Attempt to find loops in the ringtone and fold them compressing the ringtone size
RingtoneConstants.OPTION_FLOATING_SCALE Find the best scale set for the melody
|
| iMelody 1.0, 1.2 | RingtoneConstants.FORMAT_IMELODY | RingtoneConstants.OPTION_SCALE_ALWAYS Set scale explicitly for each note
RingtoneConstants.FIND_CYCLES Attempt to find loops in the ringtone and fold them compressing the ringtone size
RingtoneConstants.OPTION_CONSTANT_VOLUME Don't change volume in the middle of the ringtone. Often allows to put more notes to the one-sms ringtones
RingtoneConstants.OPTION_FLOATING_SCALE Find the best scale set for the melody
RingtoneConstants.OPTION_COMPACT Compact the ringtone skipping unnecessary metadata (song name, composer, etc.)
RingtoneConstants.OPTION_FORBID_SPECIAL_NOTES Don't use vibe, led or back notes
RingtoneConstants.OPTION_NO_CRLF Don't break lines with CR/LF characters
RingtoneConstants.OPTION_NO_HEADERS Produce ringtone without headers
RingtoneConstants.OPTION_NO_BEAT Don't specify ringtone beat (tempo). Use default value.
RingtoneConstants.OPTION_HEXConvert to hexadecimal representation (each byte encoded as a pair of hexadecimal digits)
RingtoneConstants.OPTION_INSERT_VIBRATIONAutomatically insert vibration to the ringtone
RingtoneConstants.OPTION_INSERT_LIGHTAutomatically insert lights (led) to the ringtone
RingtoneConstants.OPTION_SAVE_TRIPLETS Saves triplets in output iMelody file (it is useful because some terminals process ;" correctly and others don't (for example, Motorola V620))
|
| EMS | RingtoneConstants.FORMAT_EMS | RingtoneConstants.OPTION_NO_HEADERS Produce ringtone without headers
RingtoneConstants.OPTION_NO_BEAT Don't specify ringtone beat (tempo). Use default value.
RingtoneConstants.OPTION_NUMBER_OF_MESSAGES + <Number of Messages>Create EMS that consists of <Number of Messages> short messages (each in a separate line)
|
| eMelody | RingtoneConstants.FORMAT_EMELODY | RingtoneConstants.OPTION_COMPACT Compact the ringtone skipping unnecessary metadata and headers
RingtoneConstants.OPTION_HEX Convert to hexadecimal representation (each byte encoded as a pair of hexadecimal digits)
RingtoneConstants.OPTION_DETAILED_HEADERSUse detailed headers
RingtoneConstants.OPTION_EXTENDEDExtended eMelody features (dotted notes support)
RingtoneConstants.OPTION_NO_LIMIT No 128-byte limitation on ringtone size
|
| Sagem | RingtoneConstants.FORMAT_SAGEM | No options available |
| Motorola | RingtoneConstants.FORMAT_MOTOROLA | RingtoneConstants.OPTION_SCALE_ALWAYS Set scale explicitly for each note
|