Polymeter is a free, open source MIDI sequencer for music that's in multiple prime meters (1, 2, 3, 5, 7, 11, etc.) simultaneously. Each track has its own loop length, and when the lengths differ, the tracks "slip" (or shift phase) relative to each other. I post development notes about it here.
Thursday, April 27, 2023
Odd time and polymeter influences
Friday, March 31, 2023
PotterDraw synesthesia: LCM
This video visualizes polymeter music using an object that periodically changes shape in multiple ways at once. The music features six percussion instruments, each in a different time signature, with each instrument mapped to a different type of shape modulation. The mappings in order of appearance are: Bass Drum in 2/4 to Radius, Clave in 3/4 to Scallop Depth, Conga in 7/4 to Bend Depth, Snare in 11/4 to Helix Amplitude, Closed Hat in 5/4 to Twist, and Clap in 6/4 to Polygon Roundness. The music is an excerpt of "LCM" from my "More Than Four" album, available on Chapelle XIV. The shape morphing was done in PotterDraw, a software I created for designing virtual pottery and hyperobjects. The object's color is proportional to its radius. I have previously visualized polymeter using phase diagrams in which the different loop lengths are mapped to orbiting planets, but shape-morphing is closer to how I imagine dancing in polymeter would look. PotterDraw is limited to cylindical solids, so I expect better results could be obtained using a general-purpose 3D animation software. I had to hack at PotterDraw a bit to make it read the Polymeter track data, and one useful thing I learned is that Polymeter PLM files are very easy to work with, because they're text in INI format. This is good news for anyone seeking to replicate my results.
Wednesday, March 22, 2023
Method Ringing changed my life!
In the 21st century, method ringing isn’t just for bells anymore. By virtualizing the bells, we avoid tempo limits that physical bells would otherwise impose, and more importantly, we’re no longer obliged to use a fixed palette of notes. “Ring in the Odd” uses the seven tones of the harmonic minor scale, with method ringing determining the order in which they're played. However the range of scale tones used is periodically varied by transposing notes up or down an octave. Specifically the notes are clamped to a movable one-octave range, the position of which is controlled by a set of polymeter loops (in 5 and 70). This is accomplished using a feature of the Polymeter MIDI Sequencer called Range Modulation.
The ringing method used here is an ancient one named Plain Bob, and it yields 84 permutations before returning to rounds. A full extent for seven bells would entail 5040 permutations (seven factorial), but the shorter course provides an identifiable repeating structure, around which the modal and bass changes are organized. Method ringing produces stimulating reversals of melodic direction, similar to turnarounds in jazz. The subtleties of the turnarounds become increasingly apparent during the dramatic ritardando towards the end of this composition.
"Ring in the Odd" is from my album “Indirect Methods,” which was released on Kevorkian Records in December 2022. The visual was generated using a visualizer called Piano VFX.
Here are the courses of Plain Bob for seven bells.
And the album “Indirect Methods” is HERE.
And here is Piano VFX.
Sunday, March 19, 2023
Polymeter instructional video: Forgive Yourself
For years it's been on my "to do" list to make instructional videos for the Polymeter MIDI Sequencer, and after some prodding from Yoyaku, I finally made one. This video shows me setting up a bass line, using note modulation and position modulation. It's short, so there are countless things it doesn't cover, but it's a start. The track in question is "Forgive Yourself" which I made in collaboration with André Baum. I will try to find time to make more videos, and better demo files too. Meanwhile there's a slide show that may be helpful, the sequencer is HERE, and the track is HERE.
Monday, December 26, 2022
Version 1.0.12 of Polymeter lets you specify step durations as fractions
Version 1.0.12 of Polymeter is released today. One big change is that in the track view, the step duration (AKA Quant) can now be entered as a fraction, instead of in ticks. An option was also added to display quants as fractions, and show a drop-down list of common quants during editing. Please download the new version HERE. The quant fractions are visible in this screenshot.
If the new "Show Quant as Fraction" option is true, quants are shown as fractions of a whole note; otherwise, quants are shown in ticks. For example using the default timebase of 120, a quant of 120 is shown as 1/4 (a quarter note), 60 is shown as 1/8, and so on. If you're using common quants, fractions are easier to work with than ticks, because the numbers are smaller and the application does the tick arithmetic for you. You can always enter a quant as a fraction, regardless of this option; this option only controls how quants are shown.
Some quants may still be shown in ticks even when this option is enabled. If a quant can be converted to a fraction having a denominator that's either a power of two, or three times a power of two, and the denominator is reasonably small, the quant is shown as a fraction, otherwise it's shown in ticks. For example you may enter the fraction 1/5, but it will be shown in ticks, because the denominator is non-conforming.
If this option is enabled when you edit a quant in the track grid, a dropdown list containing common quant fractions is displayed next to the edit box. To select a fraction from the list, either left-click it, or use the up and down arrow keys to scroll to the desired fraction, and then end the edit. If the desired fraction isn't in the list, type the fraction in the edit box, as two integers separated by a slash. You can alternatively type a single integer, in which case it's interpreted as a value in ticks. Fractions are reduced automatically, for example if you type 6/8 it will be shown as 3/4. If a given fraction can't be exactly converted to ticks, the closest value is substituted.
Friday, September 16, 2022
Heptatonic alterations
Back in February I posted about granular modulation. Since then I have developed a more general method for enumerating the possible alterations of common heptatonic scales. The results are presented in a series of tables. The first table gives the options for altering a single scale tone, the second table gives the options for altering two scale tones, and so on, up to the limit of six alterations. Only four scales are considered (major, melodic minor, harmonic major, harmonic minor) for reasons that are explained in the original article. The tables are HERE.
Sunday, July 31, 2022
Polymeter MIDI Sequencer / Command Line
I've created a command line fork of the Polymeter MIDI Sequencer, with all user interface code removed. This Visual Studio 2012 project builds a Windows command line application which opens and plays a Polymeter (.plm) document. The application can also export the document to a standard MIDI file. Removing the user interface greatly reduces the number of lines of code, which could facilitate porting the sequencer to other platforms. Be advised that this project still depends on MFC, and on the Windows API, and particularly on the MIDI streams API. The MFC dependencies include CArray, CMap, CString, CFile, and CStdioFile, and while these could in theory be replaced with standard library classes, this is a task best suited to a standard library expert, which I'm surely not. The repository is HERE.
Piano roll view
This complicated idea consists of two separate proposals: a live note viewer, and a precalculated sequence viewer. They appear superficial...

-
My first vivid memory of NCP [No Commercial Potential, a radio program at WZBC 90.3 in Boston] is of hearing the soundtrack and dialogue of ...
-
Here's a list of songs that use odd time signatures or polymeter and have influenced my composing. I created it for a class I taught re...
-
Scores are now FREELY available for many of my compositions! Please read the foreword . The scores were created using LilyPond, with a home...