Tech —

Hands on with Imitone: if you can hum, you can make music with it

Kickstarted app aims to help folks capture the songs they hear in their heads.

Developer Evan Balster wants to make "software for a sense of wonder," and as I whistled into my microphone and watched my whistle displayed as MIDI notes, I was definitely feeling the wonder. Balster hooked me up with an alpha version of Imitone, an application currently going through a crowdfunding phase on Kickstarter, and it's just a really, really neat program.

"Have you ever awoken from a dream with a melody in your head?" asks the Kickstarter page. That question captures Imitone's purpose: it's an application into which you can hum or whistle a melody then have that melody transcribed into musical notes. The multiplatform app (Windows, Linux, or OS X) functions as a MIDI controller and can be used in conjunction with music sequencers like FL Studio or Ableton Live—or even Garage Band, which I was using.

The interface is a friendly Yellow Submarine-esque mixture of moving elements and playful buttons that invite touching (seriously, look at the black keys on that keyboard!). Even without poking at the controls, the application works immediately upon startup: hum into a mic, and you'll see the display light up with your note's pitch and octave. Hum a tune, and the display will track your notes. The large dial at the top can help you dial in whether your pitches are sharp or flat, and the application has a pitch averaging function that can help smooth things out for the less-tonally-sensitive.

Imitone's interface, dealing with me humming my way through something. I am, as Randy would say, "a little pitchy, dawg."
Imitone's interface, dealing with me humming my way through something. I am, as Randy would say, "a little pitchy, dawg."

Imitone is quite functional for an alpha, and it worked well enough to recognize the pitches I was humming or whistling. However, that recognition would occasionally fluctuate—sometimes wildly. Different voices affect the app in different ways. According to Balster, folks with "bright" voices can have trouble getting their humming to register. I found I had better luck getting Imitone to recognize both pitches and note starts and stops by shaping "doo-doo-doo" sounds instead of simply humming; whistling also worked well.

Things that are simple to do for us normal human beings—like recognizing a tune—can be incredibly complex to actualize in program form. At the very least, there's a ludicrous amount of math involved, and Balster has cooked up his own special algorithm sauce to tackle the problem of turning a live fluctuating human voice (with all its tonal complexities and harmonics) and quantizing it into distilled MIDI form.

"There's a traditional technique called a Fast Fourier Transform that's generally prescribed as the end-all, be-all solution to analyzing pitches and sound. But it has these weird quirks that always discomfited me, and so I resolved early on to not use it at all." After trying a few alternate techniques, Balster went in a new direction altogether. "This is a new technique, and I call it the 'self-attuning resonator cell,'" he explained. Balster described his pitch identification as working in somewhat the same way as the phenomenon of resonance in common objects—like humming at a wineglass at just the right pitch and having that wineglass begin to vibrate (or even shatter). In developing Imitone, Balster iterated on this concept until arriving at a point where the application's "resonator" code can attune itself precisely to the core pitch in a voice and then follow that pitch through changes, including vibrato (the artistic "waver" or fluctuation in the pitch of a long-held note).

It's a testament to how well the program hangs together, even at the alpha stage, that it makes you forget the complexity of what's going on under the hood. I found that if I went slowly and used the pitch needle as a guide, I could bang out a reasonable framework of a melody within just a few minutes. The resulting track would need a lot of clean-up to remove extraneous notes (since sometimes Imitone would either hear me incorrectly or I'd slide through a pitch incorrectly), but it was still a pretty remarkable experience to hum through a song in my head and watch it be transcribed. It doesn't really seem to matter if you know a single thing about keys, time signatures, whole notes, half notes, or any other kind of notes at all—merely being able produce some kind of tuneful sounds with your mouth is enough.

That's what the app is for, after all—to let you get the elusive, sometimes half-formed melody you might be hearing in your head down before it vanishes. I've woken up on a lazy Sunday morning with an epic musical phrase fully formed in my mind, only to have it erased by clumsy attempts at transcribing with a keyboard. Balster says that overcoming this barrier is exactly why he's creating Imitone. "You'll make a couple of attempts to express it," he said of the elusive morning melody, "and then you end up with this imperfect copy of the melody actually playing at you, and that sort of covers up your memory of the idea you had."

Sliding through notes. You can see some vibrato in my voice (the gray line threading through the note's waterfall column).
Sliding through notes. You can see some vibrato in my voice (the gray line threading through the note's waterfall column).

Because the program is still in early development, there are lots of things about it that don't work right or are outright missing. As mentioned, the note detection is still often spotty, and it's also limited to picking up one note at a time. There are plans to enhance this and give the program the ability to hear and identify harmony and chords, though. "I've got another version announced via my Kickstarter called 'Imitone Prime,' which will offer an experimental polyphonic mode," explained Balster. "It'll also have multichannel control mode, which will let you have multiple microphones going into the program on multiple channels."

Imitone has a little under two weeks left on its Kickstarter run, and it's already passed its $20,000 funding goal—the remaining questions are how many stretch goals will be implemented. High on the list is automated key detection, where Imitone would make a guess at figuring out the musical key in which you're humming and disable notes that aren't in that key. You can already manually enable and disable pitches with the on-screen keyboard, but auto-key detection would go a long way toward improving Imitone's accuracy and eliminating "wrong" notes.

Balster ultimately sees Imitone as one step on a path to a much larger development future. "In the long run, I'll be interested in licensing the technology to other software," he said, referring to Imitone's resonator cell pitch detection technique. "It's my hope to self-fund an ambitious game project with Imitone in the long run," he said near the end of our interview. "To lay the groundwork for my company, which will produce 'software for a sense of wonder.'"

Channel Ars Technica