Yamaha SMAF

Yamaha Synthetic Music mobile Application Format, abbreviated as SMAF, is a file format featured on phones and other portable devices using Yamaha's SMAF sound chips. Its file extension is .mmf.

SMAF was first introduced in 1999 alongside the MA-1 sound chip, which had four 2-op FM channels. This chip was succeeded by the MA-2 the following year, which added more FM channels and one ADPCM channel. Subsequent chips added even more FM and ADPCM channels; the MA-7, released in 2005 as the last SMAF chip, introduced digital sound processor effects such as reverb and chorus.

The format and the sound chips were successful, being featured in hundreds of phones throughout the 2000s, primarily to play ringtones as well as game audio, MMS greetings and other content. It was the last time FM-based sound chips were used on a large scale; prior to this, FM synths were commonly found in game consoles, PC sound cards and music keyboards.

Data structure
All MMF files have an eight byte header of  in hex or "MMMD" in ASCII. The following data chunks are present in these files:

File Chunk
This represents the entire file. A two byte cyclic redundancy check (CRC) is present after the body of the File Chunk; this is used to check if the File Chunk has been altered.

Contents Info Chunk
This stores info about the contents of the file: Contents Class (may include parameters such as vendor ID), Contents Type (its intended usage, such as ringtones or karaoke), Contents Code Type (character set), Copy Status (save and copy permissions), and Copy Counts.

Optional Data Chunk
This stores info such as the genre, song title, artist and composer of the file.

Score Track Chunk
This stores sequence data to be played by the sound chip. Properties include:

PCM Audio Track Chunk
This stores the PCM data used within the file, if present. Properties include:

Graphics Track Chunk
This chunk is used for storing graphics that may be displayed. The structure include a Header, Set-up Data Chunk, Sequence Data Chunk, Font Data Chunk and Image Data Chunk; the latter two are optional. The header includes the following properties: The Set-Up Data Chunk includes a Display Parameter Definition Chunk, which is used to define parameters of display Event types, as well as a Color Palette Definition Chunk which defines the color palette.

Master Track Chunk
The Master Track represents both music information and the sequences themselves. It consists of a header and a Sequence Data Chunk. The header includes: The Sequence Data Chunk is comprised of Duration, Event and EOS (End of Sequence) properties. Music information events include the following properties:

Tools
This section is incomplete. Yamaha released a number of tools used for SMAF authoring. These include


 * SMAF Authoring Tool: A tool used to create SMAF files from imported MIDIs.
 * ATS-MA2-SMAF
 * ATS-MA3-SMAF
 * ATS-MA5-SMAF
 * ATS-MA7-SMAF
 * SMAF/Phrase Authoring Tool
 * ATS-SMAFPhraseL1
 * ATS-SMAFPhraseL2
 * SMAF Multimedia Tools
 * SCAS-MA2-SMAF
 * SCAS-MA3-SMAF
 * SCAS-MA5-SMAF
 * SCAS-MA7-SMAF
 * SMAF Sound Decorator (SSD)
 * SMF to SMAF Converter (SSC-MA1)
 * Wave to SMAF Converter (WSC-MA2-SMAF)
 * Wave Sound Decorator (WSD)
 * Master Volume Converter (MVC)
 * SMAF Time Controller (STC)
 * SMF Format Converter (FC10)

Voice libraries
In addition to tools, Yamaha also released voice libraries that could be used in SMAF files. These include:
 * PCM voice library (VLP-MA5)
 * AL voice library (VLA-MA5)
 * FM voice library (VLF-MA3)
 * PCM voice library (VLP-MA3)
 * Voice Library of Decorator (VLD-MA3)
 * Ethnic instrument sound library (VLW-MA3)
 * FM voice library (VLF-MA2)
 * Voice Library of Decorator (VLD-MA2)
 * Stream voice library (SVL-MA2)
 * FM voice phrase library (PLF-L1)

Synchronous Contents Authoring System (SCAS)
Synchronous Contents Authoring System (abbreviated as SCAS) is a specification within SMAF that allows animated sprites and text to be shown with music in SMAF ringtones. It was intended to be used as a format for "animated" ringtones as well as for MMS and email greetings.

Currently, the only phones known to have SCAS content are various Anycall and LG Cyon phones, such as the Samsung SGH-X808. Phones that do not support SCAS will play back only the music content from MMF files with SCAS content.