Parsing example.
Converting example.
Decoding example.
Sample input and output for -parse:
$ java -jar dist/rott.jar -parse knightrider.txt
Reading RTTTL file...
Duration: 4
Scale: 5
Beats per minute: 125
Note: e, Duration: 16, Scale: 5, Tempo: 125
Note: p, Duration: 16, Scale: 5, Tempo: 125
Note: f, Duration: 16, Scale: 5, Tempo: 125
Note: e, Duration: 16, Scale: 5, Tempo: 125
Note: e, Duration: 16, Scale: 5, Tempo: 125
Note: p, Duration: 16, Scale: 5, Tempo: 125
Note: e, Duration: 16, Scale: 5, Tempo: 125
Note: e, Duration: 16, Scale: 5, Tempo: 125
Note: f, Duration: 16, Scale: 5, Tempo: 125
Note: e, Duration: 16, Scale: 5, Tempo: 125
Note: e, Duration: 16, Scale: 5, Tempo: 125
Note: e, Duration: 16, Scale: 5, Tempo: 125
Note: d#, Duration: 16, Scale: 5, Tempo: 125
Note: e, Duration: 16, Scale: 5, Tempo: 125
Note: e, Duration: 16, Scale: 5, Tempo: 125
Note: e, Duration: 16, Scale: 5, Tempo: 125
Note: e, Duration: 16, Scale: 5, Tempo: 125
Note: p, Duration: 16, Scale: 5, Tempo: 125
Note: f, Duration: 16, Scale: 5, Tempo: 125
Note: e, Duration: 16, Scale: 5, Tempo: 125
Note: e, Duration: 16, Scale: 5, Tempo: 125
Note: p, Duration: 16, Scale: 5, Tempo: 125
Note: f, Duration: 16, Scale: 5, Tempo: 125
Note: e, Duration: 16, Scale: 5, Tempo: 125
Note: f, Duration: 16, Scale: 5, Tempo: 125
Note: e, Duration: 16, Scale: 5, Tempo: 125
Note: e, Duration: 16, Scale: 5, Tempo: 125
Note: e, Duration: 16, Scale: 5, Tempo: 125
Note: d#, Duration: 16, Scale: 5, Tempo: 125
Note: e, Duration: 16, Scale: 5, Tempo: 125
Note: e, Duration: 16, Scale: 5, Tempo: 125
Note: e, Duration: 16, Scale: 5, Tempo: 125
Note: d, Duration: 16, Scale: 5, Tempo: 125
Note: p, Duration: 16, Scale: 5, Tempo: 125
Note: e, Duration: 16, Scale: 5, Tempo: 125
Note: d, Duration: 16, Scale: 5, Tempo: 125
Note: d, Duration: 16, Scale: 5, Tempo: 125
Note: p, Duration: 16, Scale: 5, Tempo: 125
Note: e, Duration: 16, Scale: 5, Tempo: 125
Note: d, Duration: 16, Scale: 5, Tempo: 125
Note: e, Duration: 16, Scale: 5, Tempo: 125
Note: d, Duration: 16, Scale: 5, Tempo: 125
Note: d, Duration: 16, Scale: 5, Tempo: 125
Note: d, Duration: 16, Scale: 5, Tempo: 125
Note: c, Duration: 16, Scale: 5, Tempo: 125
Note: d, Duration: 16, Scale: 5, Tempo: 125
Note: d, Duration: 16, Scale: 5, Tempo: 125
Note: d, Duration: 16, Scale: 5, Tempo: 125
Note: d, Duration: 16, Scale: 5, Tempo: 125
Note: p, Duration: 16, Scale: 5, Tempo: 125
Note: e, Duration: 16, Scale: 5, Tempo: 125
Note: d, Duration: 16, Scale: 5, Tempo: 125
Note: d, Duration: 16, Scale: 5, Tempo: 125
Note: p, Duration: 16, Scale: 5, Tempo: 125
Note: e, Duration: 16, Scale: 5, Tempo: 125
Note: d, Duration: 16, Scale: 5, Tempo: 125
Note: e, Duration: 16, Scale: 5, Tempo: 125
Note: d, Duration: 16, Scale: 5, Tempo: 125
Note: d, Duration: 16, Scale: 5, Tempo: 125
Note: d, Duration: 16, Scale: 5, Tempo: 125
Note: c, Duration: 16, Scale: 5, Tempo: 125
Note: d, Duration: 16, Scale: 5, Tempo: 125
Note: d, Duration: 16, Scale: 5, Tempo: 125
Note: d, Duration: 16, Scale: 5, Tempo: 125
Sample input and output for -convert:
$ java -jar dist/rott.jar -convert knightrider.txt knightrider.ott
Reading RTTTL file...
knightrider.ott written.
Sample input and output for -decode:
$ java -jar dist/rott.jar -decode knightrider.ott
Reading OTT file...
Command-length: 2
Ringing tone programming.
Sound
Basic song type
Title length: 10
Title: KnightRide
Song sequence length: 1
Pattern header ID
[1] Pattern Header: A-part
Loop value: 0
Pattern length: 130
[2] Tempo instruction: 125
[3] Scale instruction: Scale-2 (A=880Hz)
[4] Note: e, duration: 1/16 note, special: None
[5] Scale instruction: Scale-2 (A=880Hz)
[6] Note: p, duration: 1/16 note, special: None
[7] Scale instruction: Scale-2 (A=880Hz)
[8] Note: f, duration: 1/16 note, special: None
[9] Scale instruction: Scale-2 (A=880Hz)
[10] Note: e, duration: 1/16 note, special: None
[11] Scale instruction: Scale-2 (A=880Hz)
[12] Note: e, duration: 1/16 note, special: None
[13] Scale instruction: Scale-2 (A=880Hz)
[14] Note: p, duration: 1/16 note, special: None
[15] Scale instruction: Scale-2 (A=880Hz)
[16] Note: e, duration: 1/16 note, special: None
[17] Scale instruction: Scale-2 (A=880Hz)
[18] Note: e, duration: 1/16 note, special: None
[19] Scale instruction: Scale-2 (A=880Hz)
[20] Note: f, duration: 1/16 note, special: None
[21] Scale instruction: Scale-2 (A=880Hz)
[22] Note: e, duration: 1/16 note, special: None
[23] Scale instruction: Scale-2 (A=880Hz)
[24] Note: e, duration: 1/16 note, special: None
[25] Scale instruction: Scale-2 (A=880Hz)
[26] Note: e, duration: 1/16 note, special: None
[27] Scale instruction: Scale-2 (A=880Hz)
[28] Note: d#, duration: 1/16 note, special: None
[29] Scale instruction: Scale-2 (A=880Hz)
[30] Note: e, duration: 1/16 note, special: None
[31] Scale instruction: Scale-2 (A=880Hz)
[32] Note: e, duration: 1/16 note, special: None
[33] Scale instruction: Scale-2 (A=880Hz)
[34] Note: e, duration: 1/16 note, special: None
[35] Scale instruction: Scale-2 (A=880Hz)
[36] Note: e, duration: 1/16 note, special: None
[37] Scale instruction: Scale-2 (A=880Hz)
[38] Note: p, duration: 1/16 note, special: None
[39] Scale instruction: Scale-2 (A=880Hz)
[40] Note: f, duration: 1/16 note, special: None
[41] Scale instruction: Scale-2 (A=880Hz)
[42] Note: e, duration: 1/16 note, special: None
[43] Scale instruction: Scale-2 (A=880Hz)
[44] Note: e, duration: 1/16 note, special: None
[45] Scale instruction: Scale-2 (A=880Hz)
[46] Note: p, duration: 1/16 note, special: None
[47] Scale instruction: Scale-2 (A=880Hz)
[48] Note: f, duration: 1/16 note, special: None
[49] Scale instruction: Scale-2 (A=880Hz)
[50] Note: e, duration: 1/16 note, special: None
[51] Scale instruction: Scale-2 (A=880Hz)
[52] Note: f, duration: 1/16 note, special: None
[53] Scale instruction: Scale-2 (A=880Hz)
[54] Note: e, duration: 1/16 note, special: None
[55] Scale instruction: Scale-2 (A=880Hz)
[56] Note: e, duration: 1/16 note, special: None
[57] Scale instruction: Scale-2 (A=880Hz)
[58] Note: e, duration: 1/16 note, special: None
[59] Scale instruction: Scale-2 (A=880Hz)
[60] Note: d#, duration: 1/16 note, special: None
[61] Scale instruction: Scale-2 (A=880Hz)
[62] Note: e, duration: 1/16 note, special: None
[63] Scale instruction: Scale-2 (A=880Hz)
[64] Note: e, duration: 1/16 note, special: None
[65] Scale instruction: Scale-2 (A=880Hz)
[66] Note: e, duration: 1/16 note, special: None
[67] Scale instruction: Scale-2 (A=880Hz)
[68] Note: d, duration: 1/16 note, special: None
[69] Scale instruction: Scale-2 (A=880Hz)
[70] Note: p, duration: 1/16 note, special: None
[71] Scale instruction: Scale-2 (A=880Hz)
[72] Note: e, duration: 1/16 note, special: None
[73] Scale instruction: Scale-2 (A=880Hz)
[74] Note: d, duration: 1/16 note, special: None
[75] Scale instruction: Scale-2 (A=880Hz)
[76] Note: d, duration: 1/16 note, special: None
[77] Scale instruction: Scale-2 (A=880Hz)
[78] Note: p, duration: 1/16 note, special: None
[79] Scale instruction: Scale-2 (A=880Hz)
[80] Note: e, duration: 1/16 note, special: None
[81] Scale instruction: Scale-2 (A=880Hz)
[82] Note: d, duration: 1/16 note, special: None
[83] Scale instruction: Scale-2 (A=880Hz)
[84] Note: e, duration: 1/16 note, special: None
[85] Scale instruction: Scale-2 (A=880Hz)
[86] Note: d, duration: 1/16 note, special: None
[87] Scale instruction: Scale-2 (A=880Hz)
[88] Note: d, duration: 1/16 note, special: None
[89] Scale instruction: Scale-2 (A=880Hz)
[90] Note: d, duration: 1/16 note, special: None
[91] Scale instruction: Scale-2 (A=880Hz)
[92] Note: c, duration: 1/16 note, special: None
[93] Scale instruction: Scale-2 (A=880Hz)
[94] Note: d, duration: 1/16 note, special: None
[95] Scale instruction: Scale-2 (A=880Hz)
[96] Note: d, duration: 1/16 note, special: None
[97] Scale instruction: Scale-2 (A=880Hz)
[98] Note: d, duration: 1/16 note, special: None
[99] Scale instruction: Scale-2 (A=880Hz)
[100] Note: d, duration: 1/16 note, special: None
[101] Scale instruction: Scale-2 (A=880Hz)
[102] Note: p, duration: 1/16 note, special: None
[103] Scale instruction: Scale-2 (A=880Hz)
[104] Note: e, duration: 1/16 note, special: None
[105] Scale instruction: Scale-2 (A=880Hz)
[106] Note: d, duration: 1/16 note, special: None
[107] Scale instruction: Scale-2 (A=880Hz)
[108] Note: d, duration: 1/16 note, special: None
[109] Scale instruction: Scale-2 (A=880Hz)
[110] Note: p, duration: 1/16 note, special: None
[111] Scale instruction: Scale-2 (A=880Hz)
[112] Note: e, duration: 1/16 note, special: None
[113] Scale instruction: Scale-2 (A=880Hz)
[114] Note: d, duration: 1/16 note, special: None
[115] Scale instruction: Scale-2 (A=880Hz)
[116] Note: e, duration: 1/16 note, special: None
[117] Scale instruction: Scale-2 (A=880Hz)
[118] Note: d, duration: 1/16 note, special: None
[119] Scale instruction: Scale-2 (A=880Hz)
[120] Note: d, duration: 1/16 note, special: None
[121] Scale instruction: Scale-2 (A=880Hz)
[122] Note: d, duration: 1/16 note, special: None
[123] Scale instruction: Scale-2 (A=880Hz)
[124] Note: c, duration: 1/16 note, special: None
[125] Scale instruction: Scale-2 (A=880Hz)
[126] Note: d, duration: 1/16 note, special: None
[127] Scale instruction: Scale-2 (A=880Hz)
[128] Note: d, duration: 1/16 note, special: None
[129] Scale instruction: Scale-2 (A=880Hz)
[130] Note: d, duration: 1/16 note, special: None
Padding to close: 0
Command end