I’ve decided to close comments on all of the Minim Manual pages because it just doesn’t feel like a good place to answer questions regarding particular sketches that people are working on. If you have questions about how to accomplish something, particularly if it involves interactivity, please take those questions to the Processing forum. I try to visit every now and again, but there’s a good chance that people who visit more regularly will be able to answer your question much more quickly than I! If you find an honest-to-goodness bug, please create an issue for it at the Processing Google Code page. I will try to get to it as quickly as I can.
Category Archives: Minim
Body Heat for iOS

I’ve been working on an iOS app for a little while called Body Heat. It was designed by Heather Kelley, with art by Amanda Williams. It is essentially a touch controller for audio-driven vibrators like the OhMiBod. However, even if you don’t have the hardware, the visuals for the app are quite pretty and it can be a fun little interactive experience. You can buy Body Heat from the App Store right now! Also worth mentioning is that the audio for the app is generated by a barebones port of Minim to C++, which I hope to eventually complete and release.
Sound Byte: Glitch Generator
I’ve been working on this one for a few days. It follows the same principle as the beat generator from my previous post: whether or not a note is added to the generated sequence at a given step is determined by a probability. However, unlike the beat generator, this one doesn’t sequence distinct sounds. Instead, it is essentially generating timed control changes for effects on two sound files that are continually playing.
The first file is the vocal track from Half Life by Imogen Heap. Its playback rate is adjusted to the chosen tempo and “notes” in the sequence for it are turning on a sample-repeat effect. For each trigger of the effect, the length of the sampled audio is determined randomly based on the settings in the Vox Glitch range.
The second file is a loop from the beginning of Hydra Remix By Koen Groeneveld. The notes in the sequence for that track are setting loop points in a looping FilePlayer, though the resulting sound is the exact same kind of thing going on with the vocals. Once again, the length of the repeated audio is determined based on the settings in the Perc Glitch range. You can also specify whether you want each triggered glitch to fade in over its duration or not, which is kind of a nice effect.
Finally, you can choose to have a steady kick drum play underneath all the glitching to give yourself a good reference point. I’ve had a lot of fun playing with different settings, it’s like endless minimal, glitchy remixes of Imogen Heap. Try it out!
Sound Byte: Beat Generator
Probably the coolest Sound Byte yet, this one will generate drum beats based on probabilities for each sixteenth note in a measure. The sound-set is basic: kick, snare, hat, plus a chime loop that is overlaid for a little melodic flavor. You can tweak the probability of all the steps independently, or just click a button to set them all to new random values. Two “modes” allow you to specify whether you want the kick and snare to ever play at the same time and some simple rules are used to determine the amplitude of each note. I considered putting in panning of some kind, but decided it could go in a later iteration. I may do a bassline generator along the same lines at some point. Check it out!
Sound Byte: Broken Record
I wrote a UGen the other day that allows you to change the tick rate (or sample rate, if you like), of any UGen that you patch to it. After making a mouse-driven example to test it out, I created this example so that the change in the tick rate could be driven by the audio itself. Here, the current loudness (RMS amplitude, to be exact) of the audio being looped directly adjusts the playback speed. Louder parts result in a higher tick rate. What you get sounds like a really broken record player. Not only is it stuck looping the same four bars, but it sounds like the timing belt is having all sorts of issues. Check it out!
Sound Byte: Filtered Tuning
I’ve been meaning to try out some digital Moog filter code. A digital Moog filter is simply a filter that attempts to model the analog filters found on Moog synthesizers. It’s got two knobs: frequency and resonance. I yanked some code from musicdsp.org, a wonderful resource, and wrote a really simple UGen with it. I meant to write more of a song, but there’s never enough time for that in these evening coding forays. So instead, you get this kind of avant-garde slow tuning thing using amplitude modulation and tweaking of the filter values. Have a listen!
BOOMBOX Video
DarknessKight, one of the members of the TIGSource forum, made this video walkthrough of BOOMBOX. It sounds like it’s not playing too nice in the browser, but it should give you the general feel of the game if you haven’t been able to play it:
BOOMBOX
I’ve been working on a music game on and off for the past month for the TIGSource A Game By Its Cover compo. It’s inspired by this fake game cartridge:

You control a character in a 2D side-scrolling world and collect Jams, which you can then play to build up a sweet tune. There are other boombox dudes in the world who will jam with you when you are playing what they want to hear. The goal is to simply collect all the jams in the level and then just jam out with them.
Credits:
Amanda Williams – Environment Art
Damien Di Fede – Music, Design, Programming
Kevin Bennett – Music, SFX
Oscar Garza – Animation
Sean McIntosh – Environment Art, Character Design
Sound Byte: Detuning Envelope Follower
I had the wacky idea of using an envelope follower on a kick drum part to drive the center frequency of an oscillator. So I dug up some envelope following code on the internet and threw that together with some bits from the microtalk tune. Have a listen.
Sound Byte: Microtalk Tune
I recently gave a 5 minute “microtalk” about Minim at an Austin IGDA event and included in it a couple examples using the new UGen framework. In fact, I wrote the presentation in Processing, but I don’t think it is really interesting enough to post the entire application. Instead, I pulled out the song I programmed for it as a standalone sketch. Check it out.






