Long Now Chimes.app I

I’ve been working on an OS X application to play the Long Now Chimes. If you’ve visited the previous link, you’ve gotten to hear MIDI versions of the chimes.

The MIDI version’s quite cool, and gives nearly anyone a chance to hear the chimes, but I wanted really chimey chime sounds, and I wanted them to be consistent. I decided that I really couldn’t get what I wanted out of General MIDI – and even if I could, I couldn’t depend on it sounding the same on other people’s machines.

I decided I actually wanted to synthesize the sounds myself, and that ChucK was the right vehicle for my purposes. Turns out that ChucK has a nice TubeBell unit generator courtesy of the Synthesis Toolkit, and this makes a chime sound that works well for my purposes.

I took one of the “autoplaying” ChucK sample programs, altered the signal path to move the reverb to the end of the signal chain (just before the dac unit), removed the main loop, and changed the note-on method to my liking, renaming it bell() and altering it so it takes a Long Now “bell number” (from 1 to 10) and synthesizes the appropriate note.

I then wrote an AppleScript Studio program which uses the peal calculation method from the Long Now Chimes CGI application to calculate the bell numbers (combinatorial math in AppleScript is, um, interesting – and not very fast). It then writes a static header and the necessary calls to bell() into a file, and then runs ChucK to synthesize the peal. I’ve placed a sample peal in the listening section of this site.

The user interface currently leaves a lot to be desired; there’s no control over the synthesis, nor can you easily specify a peal length. Currently you have to type in a year-month-day to get the program to synthesize the peal, and there’s currently no way to stop a peal that’s underway. All these are solvable problems, but also reasons why I’m not releasing the program yet.

Stay tuned; I’ll keep posting progress here, and eventually a link to the program itself.

Leave a Reply

 

 

 

You can use these HTML tags

<a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <strike> <strong>