Ringtone file formats

Legacy mobile phones typically support a range of file formats to use as ringtones. This article will cover those formats, basics on their structures, and how they can be extracted from binary data.

Sequenced ringtone formats
Sequenced ringtones formats were widely used because of their small size. There are many different formats that were used for this, which this section will cover.

AU-PMD
The PMD ringtone format was used in some earlier Qualcomm phones for ringtones. Along with storing data in a MIDI-like fashion, it also supports loading custom samples and playing animations.

eMelody
The eMelody ringtone format was exclisive to Ericsson phones. It is similar to the more ubiquitous iMelody format, but is fairly more limited.

Feelsound DXM
The Feelsound ringtone format was used in many LG phones that had an OKI synthesizer. It is very similar to MIDI, but it has some extra data independent to that format.

iMelody
The iMelody ringtone format was the most popular format for downloadable monophonic ringtones. It is a text-based file format and could be sent over SMS messages.

MFM
MFM is an elusive proprietary ringtone format. Currently, no known tools exist to convert or play the format.

MLD
The MLD ringtone format is near identical in structure to PMD and was used on many older Japanese phones.

MIDI
MIDI is the most ubiquitous ringtone format of them all. It was used on nearly every phone on the mid-2000s, and many programs support the format.

SMAF
The SMAF ringtone format was used in phones that had a Yamaha MA-series synthesizer. It is different to MIDI in many ways but is a very extensive and capable format.

XMF
The XMF format was mainly used in later Series 40 Nokia phones. It contains a bundled MIDI and DLS file to play a polyphonic ringtone with custom samples.

Streamed ringtone formats
Todo