comparison doc/Buzzer-melodies @ 890:76cc910c508e

document fc-imy2pwt
author Mychaela Falconia <falcon@freecalypso.org>
date Sun, 03 Apr 2022 05:29:17 +0000
parents 834b5645a123
children cb0f61535166
comparison
equal deleted inserted replaced
889:834b5645a123 890:76cc910c508e
167 as required by the RTOS environment without current directories) of the melody 167 as required by the RTOS environment without current directories) of the melody
168 file and the name of the melody for the selection menu in the phone UI. Melody 168 file and the name of the melody for the selection menu in the phone UI. Melody
169 lists are compiled from line-based ASCII source into this binary format by our 169 lists are compiled from line-based ASCII source into this binary format by our
170 fc-ringlist-comp utility. 170 fc-ringlist-comp utility.
171 171
172 Support for iMelody ringtones
173 =============================
174
175 Back in the olden days when dumbphones with monophonic buzzer-type ringers were
176 the norm in society, there was a community of phone users who composed and
177 exchanged their own ringtone melodies; the community standard format for those
178 interchanges was EMS iMelody. Searching around the Internet in 2022, I (Mother
179 Mychaela) couldn't find any iMelody ringtones that sound any good - the only
180 ones I could find sound like crap, nowhere near professional-quality melodies
181 which we've lifted out of Motorola's firmware. However, as a matter of due
182 diligence, I felt that it would improper for FreeCalypso not to support iMelody
183 ringtones, hence I wrote a program that groks iMelody files and converts those
184 melodies to our native PWT format - this program is fc-imy2pwt.
185
186 Right now fc-imy2pwt implements a subset of the iMelody spec; the missing
187 features are:
188
189 * All volume change commands in the melody are ignored: fc-imy2pwt does not
190 support per-note volume changes within the melody, and all PWT notes are
191 emitted at the maximum per-note volume of 64/64.
192
193 * The STYLE setting in IMY files is ignored, and all melodies are converted as
194 if the style was S1, i.e., continuous, without automatically inserted rest
195 between notes.
196
197 * All vibrator/LED/backlight control commands are ignored: in FreeCalypso
198 architecture there is no synchronization between ringtone melodies and
199 vibration cadence, instead the user selects between silent mode, ring only,
200 vibrate only or ring+vibrate alerting as needed, without interference from
201 overly-creative vanity melody composers. Likewise, we do not support
202 melody-driven manipulation of any lights.
203
204 The policies of keeping the ringer and the vibrator separate and of leaving our
205 LCD and keypad backlights alone are absolute, whereas support for volume changes
206 within the melody and for non-S1 styles (automatically inserted rest periods)
207 can be implemented *if* someone in our community has a real use case for such
208 functionality.
209
172 Standalone buzzer exercising (outside of FC firmware) 210 Standalone buzzer exercising (outside of FC firmware)
173 ===================================================== 211 =====================================================
174 212
175 We have a target utility (running on Calypso devices out of RAM) called 213 We have a target utility (running on Calypso devices out of RAM) called
176 buzplayer, and a front end host program called fc-buzplay. If you load and run 214 buzplayer, and a front end host program called fc-buzplay. If you load and run