<?xml version="1.0" encoding="UTF-8"?><rss version="2.0" xmlns:content="http://purl.org/rss/1.0/modules/content/" xmlns:atom="http://www.w3.org/2005/Atom"><channel><title>HANK THE MASON — projects</title><description>Projects by Hank Mason.</description><link>https://hankthemason.com/</link><atom:link href="https://hankthemason.com/projects/rss.xml" rel="self" type="application/rss+xml"/><item><title>Fugue For My Drum Machine</title><link>https://hankthemason.com/projects/fugue-for-my-drum-machine/</link><guid isPermaLink="true">https://hankthemason.com/projects/fugue-for-my-drum-machine/</guid><description>Baroque counterpoint rendered on a Korg Electribe ER-1 drum machine using a python script.</description><pubDate>Sat, 01 Nov 2025 00:00:00 GMT</pubDate><content:encoded>&lt;p&gt;In my &lt;a href=&quot;https://github.com/hankthemason/ER1-controller&quot;&gt;experiments&lt;/a&gt; with the ER-1, I always thought that its 4 VCOs would lend themselves well to rendering a fugue, and in a brief moment of joblessness I composed one (plus an accompanying prelude later on). The difficulty in having the ER-1 play it is that, being a drum machine, it was never intended to play pitched tones in any conventional way. Each VCO is fixed to a single MIDI note, and pitch can only be modulated via its 0-127 pitch parameter. In order to realize any kind of score on the ER-1, I needed to painstakingly map frequencies (corresponding to &lt;a href=&quot;https://en.wikipedia.org/wiki/12_equal_temperament&quot;&gt;12TET&lt;/a&gt; pitches) to combinations of the ER-1&apos;s &apos;pitch&apos;, &apos;modulation speed&apos;, and &apos;modulation depth&apos; parameters. With that mapping in place, I wrote a python script that can parse &lt;code&gt;.musicxml&lt;/code&gt; files and translate them to the ER-1. The resulting pitches are never squarely &quot;correct&quot; in 12TET, an effect that I like given the tuning practices in place at the time when Bach was writing the Well-Tempered Clavier.&lt;/p&gt;
&lt;p&gt;I had the pleasure of performing this piece live with the &lt;a href=&quot;https://mdbq.org/&quot;&gt;MDBQ&lt;/a&gt; in our last show, November 2025.&lt;/p&gt;
</content:encoded></item><item><title>Ancient Grains</title><link>https://hankthemason.com/projects/ancient-grains/</link><guid isPermaLink="true">https://hankthemason.com/projects/ancient-grains/</guid><description>A live-performance software environment built in Max/MSP — granular synthesizer, playback buffers, effects, matrix mixer, and sequencer.</description><pubDate>Sun, 01 May 2022 00:00:00 GMT</pubDate><content:encoded>&lt;p&gt;Ancient Grains is a software environment for live music performance consisting of several different modules (granular synthesizer, 3 audio playback buffers, effects, matrix mixer, sequencer). My initial goal was to build a granular synthesizer capable of capturing live audio and granulating it on the fly. Heavily inspired by Keith Fullerton Whitman&apos;s &lt;a href=&quot;https://keithfullertonwhitman.com/playthroughs&quot;&gt;Playthroughs&lt;/a&gt; framework, I continued expanding the system to include other modules that would allow me a richer experience playing it live, eventually allowing for full performances using just this system (and the instruments played into it). Eventually I integrated it with a Monome Grid (used as a sequencer for external synthesizers) and an iPad, which I developed a UI for and use as the main control surface (see pictures).&lt;/p&gt;
&lt;p&gt;Ancient Grains is one way I&apos;ve attempted to answer the questions: &quot;How do I want to perform live electronic music? What kind of systems and frameworks can I build that allow for a spontaneous, embodied live electronic music performance? How do I create the potential for surprise and mystery in a system governed by logic and rigor?&quot;&lt;/p&gt;
&lt;p&gt;Ancient Grains was created in Max/MSP, making heavy use of its gen~ environment, as well as Max&apos;s compatibility with JavaScript. A lot of the DSP and UI features wouldn&apos;t have been possible using Max/MSP alone. The system is tailored very specifically to my set of needs and interests.&lt;/p&gt;
</content:encoded></item></channel></rss>