“Is it possible to load a monothonic ringtone from 2000’s into a modern phone?”

Well, um, I was asked that question and couldn’t google anything useful. Seduced by the idea of putting retro sound on a modern phone, I set out to write a tool that converts monothonic Nokia-style ringtones into WAV. The ringtones I’m talking about look like this:

8c2 8- 8c2 8a1 8- 8c2 8- 8c2 8- 8b1 8- 8g1 8g2 16- 8g2 16- 8e2 8c2 8- 8c2 8a1 8- 4c2 8c2 8- 8b1 8- 8g1 8f2 16- 8f2 16-

I grabbed a copy of PySynth and started by changing the actual synthesizer bits. For my synthesizer, I started with simple sawtooth waveform, which sounded beepy, but not quite like the speaker in, say, good ol’ Nokia 3310. I was after the authentic sound of course, so I got a recording of the original, and this is how the beep looks in Audacity:

My first attempt to replicate this, with a compound function:

This sounded too sharp, so I threw in some sine waves and got to this, which to my ears was quite close to original:

Here’s the synth code: pysynth_beeper.py.
Parsing ringtones from Nokia Composer format is rather simple at the moment: nokiacomposer2wav.py. Some ringtones sound great, some not so much, so I might not be parsing everything correctly.

So, next up, put this online so everyone can use it, right? Here’s the synthesizer running off AppEngine: ringtonesynth.appspot.com. It’s really basic at the moment, no CSS at all!

While contemplating the visual style of that page, I was sidetracked by drawing Nokia phone in Inkscape, then reading “how to draw” tutorials and sketching anime characters. And now we’ve arrived at the present!


Get every new post delivered to your Inbox.

%d bloggers like this: