RTX and RTTTL
specifications

Connection Software Ltd

Connection Software

RTX and RTTTL specifications

The Ringing Tones text transfer language" (RTTTL) was conceived by John Mostelo. It is more useful now to use the RTX specification which is shown below the RTTTL specification. Here is a copy of the original RTTTL specification. NB that the note "H" is the same as note "B"

 
RTTTL specification
;
; Ringing Tones text transfer language (RTTTL)
;
; Version 1.0 / 29-July-1998
; - First version by John Mostelo
;
; http://members.tripod.com/~ringtones/note_syntax.txt
;

<ringing-tones-text-transfer-language> :=
<name> <sep> [<defaults>] <sep> <note-command>+

<name> := <char>+ ; maximum name length 10 characters

<sep> := ":"

<defaults> :=
<def-note-duration> |
<def-note-scale> |
<def-beats>

<def-note-duration> := "d=" <duration>

<def-note-scale> := "o=" <scale>

<def-beats> := "b=" <beats-per-minute>

<beats-per-minute> := 25,28,...,900 ; decimal value

; If not specified, defaults are
;
; 4 = duration
; 6 = scale
; 63 = beats-per-minute


<note-command> :=
[<duration>] <note> [<scale>] [<special-duration>] <delimiter>


<duration> :=
"1" | ; Full 1/1 note
"2" | ; 1/2 note
"4" | ; 1/4 note
"8" | ; 1/8 note
"16" | ; 1/16 note
"32" | ; 1/32 note

<note> :=
"P" | ; pause
"C" |
"C#" |
"D" |
"D#" |
"E" |
"F" |
"F#" |
"G" |
"G#" |
"A" |
"A#" |
"H"

<scale> :=
"5" | ; Note A is 440Hz
"6" | ; Note A is 880Hz
"7" | ; Note A is 1.76 kHz
"8" ; Note A is 3.52 kHz

<special-duration> :=
"." ; Dotted note

<delimiter> := ","

; End of specification

 

An RTX file is a text file, containing the ringtone name, a control section and a section containing a comma separated sequence of ring tone commands. The RTX ringtone description format is designed to be backward compatible with RTTTL, but offers extensions in line with the Nokia Smart Messaging standard. White space must be ignored by any reader application. NB that the note "H" is the same as note "B"

 

Sample RTX file
AxelF:d=4,o=5,b=125:32p,8g,8p,16a#.,8p,16g,16p,16g,8c6, 8g,8f,8g,8p,16d.6,8p,16g,16p,16g,8d#6,8d6,8a#,8g,8d6,8g6, 16g,16f,16p,16f,8d,8a#,2g,p,SS,16f6,8d6,8c6,8a#,g,8a#.,16g, 16p,16g,8c6,8g,8f,g,8d.6,16g,16p,16g,8d#6,8d6,8a#,8g,8d6, 8g6,16g,16f,16p,16f,8d,8a#,2g

This file describes a ringtone whose name is 'AxelF'. The control section sets the beats per second at 125, the default note length at 4, and the default scale on Octave 5.

 
RTX specification

<RTX file> := <name> ":" [<control section>] ":" <tone-commands>

<name> := <char>+ ; maximum name length 10 characters

<control-section> := <control-pair> ["," <control-section>]

<control-pair> := <control-name> ["="] <control-value>

<control-name> := "o" | "d" | "b" | "s" | "l"
; Valid in control section: o=default scale, d=default duration, b=default beats per minute, s=style, l=looping (0=none, 1-14=repeat, 15=infinite)
; Valid in tone section: o, b, s

<control-value> := <char>+ ; dependent on control-name

; if not specified, defaults are 4=duration, 6=scale, 63=beats-per-minute
; styles are S=Staccato, N=Natural, C=Continuous
; any unknown control-names must be ignored

<tone-commands> := <tone-command> ["," <tone-commands>]

<tone-command> :=<note> | <control-pair>

<note> := [<duration>] <note> [<scale>] [<special-duration>] <delimiter>

<duration> := "1" | "2" | "4" | "8" | "16" | "32" ; duration is divider of full note duration, e.g. 4 represents a quarter note

<note> := "P" | "C" | "C#" | "D" | "D#" | "E" | "F" | "F#" | "G" | "G#" | "A" | "A#" | "H"

<scale> :="4" | "5" | "6" | "7"

; Note that octave 4: A=440Hz, 5: A=880Hz, 6: A=1.76 kHz, 7: A=3.52 kHz
; The lowest note on the Nokia 61xx is A4, the highest is B7

<special-duration> := "." ; Dotted not

   
SMS This page was last modified at 10:52 UTC on Tuesday June 09, 2009