Breaking Beethoven

Last night, at the suggestion of a friend, I took a midi performance of the first movement of Beethoven’s Op. 2, No. 1 (a piano sonata in F minor) and squashed it all into the one octave. It’s a sort of pitch-class version of the movement, where each pitch-class is represented by a real pitch, bounded to a given octave of the piano. But there are twelve different ways to do this, since the “destination” octave could be bounded by twelve different pitch-classes. This is the offset parameter referred to in the playlist. Different offsets lend each flattening a slightly different character, due to the fact that different pitch classes will end up with different registers in each iteration. The code for this experiment is forthcoming. It was made possible with pretty-midi and pyfluidsynth.