Clock of the Long Now

TorgoX on 2004-11-05T23:23:25

Dear Log,

So I ran a little program to generate MIDI files for the daily chimes for all ten thousand years of the Clock of the Long Now. I made one file for each year.

Oboy! It added up to about 270MB, and it takes a full year and nine months to listen to it all.

Though I'm particularly fond of January 07003 (which is on the Eno CD), I'm sure there's other sweet spots in those ten thousand years.


Very Cool

pudge on 2004-11-09T22:21:06

I think I might make a little cronjob to download each "day" and play it back. I think http://interglacial.com/d/clock?format=midi&daycount=1 is correct, no? Although I could just use your Perl module too ...

Re:Very Cool

pudge on 2004-11-09T23:06:02

Here's my cronjob:
perl LongNowChimes.pm `date +%F` 1 /tmp/`date +%F`.mid; open /tmp/`date +%F`.mid
Also, I am using MIDI patch 11 (vibraphone in QT synth) and I lowered everything on octave.

Eh, hang it, it's evolved into a Perl script, as everything does.
#!/usr/local/bin/perl
use strict;
use warnings;
 
use LongNowChimes;
use File::Spec::Functions;
use Mac::Files;
use Mac::Glue;
 
my $player = new Mac::Glue 'QuickTime Player';
 
my($y, $m, $d) = ((localtime)[5, 4, 3]);
$y += 1900;
$m++;
 
my $dirname  = FindFolder(kUserDomain, kTemporaryFolderType);
my $filename = catfile($dirname, sprintf("%04d-%02d-%02d.mid", $y, $m, $d));
 
my $chimes = ChimesForDays($y, $m, $d, 1);
my $midi = LongNowChimes::DaysToMIDI($chimes);
$midi->write_to_file($filename);
 
my $track = $player->obj(file => $filename)->open;
$track->play;