Alternative Sequencers: Elysium Generative Mac App and the Joy of Hex

Switching tools isn’t a panacea, but it can inspire new ideas, by changing the way you structure your music. Elysium is a powerful new sequencer in development for the Mac the creates generative patterns on a beehive-shaped hexagonal grid. For the hardcore, you can even extend the tool with Ruby and JavaScript.

Elysium is a MIDI sequencer only: it has no sound generation facility of its own. But that makes it an ideal complement to your existing tools and favorite synths; the creator shows it off with Apple Logic Studio (Sculpture physical modeling, anyone?) and Native Instruments Kore.

Elysium [Mac-only public beta, PPC/Intel; 10.5 required]

Most sequencers work like a variation on a score: you compose events in time and it renders those events in precisely the same order each time. Elysium is generative: instead of creating a score, you create a system, and events are determined by the rules of the system. That means the exact deployment of events in time is variable, and things may not sound the same way – or over the same span of time – twice.

To do this, Elysium employs layers, cells, tokens, and callbacks. Huh?

  • Layers are roughly equivalent to a track in a traditional sequencer; it’s a single grid of cells, each containing a note, transmitted on one MIDI channel. That means, most likely, you’ll use a different layer for each sound you want to generate in your synth or host.
  • Cells are arrayed in a 17×12 honeycomb (a hexagonal grid), each transmitting one MIDI note. They’re organized in a harmonic table – the three adjacent hexagons around a single vertex, for instance, form a triad.
  • Tokens are the things that actually do stuff – they’re what make Elysium generative and interactive. Functions currently include Start/Stop, Note (plays an actual note), Rebound (changes direction), Absorb, Split, and Spin (impact movement). Arrange these on the grid, and instead of playing left-to-right as a traditional sequencer would, playback will navigate the spaces on the grid – potentially in unusual and interesting ways. To edit tokens, Elysium uses floating inspector palettes for setting parameters.
  • Callbacks give you the power to define your own musical behaviors by scripting them, making your musical world more variable. Elysium uses the same JavaScript interpreter as the Safari/WebKit browser, so you can code in JavaScript. Ruby lovers can even work in MacRuby. These code snippets don’t have to be complex: on the contrary, they’re quite simple and friendly to non-programmers, tantamount to saying “Hey, sequencer, I command you to do THIS!”

read more

Lily: Browser Beatboxes and the Rebirth of Max-Like Patching

Visual programming or “patching”, producing custom software by connecting on-screen objects with patch cords, until recently had only niche appeal. The domain largely of academic computer musicians, patching was scoffed at by computer science departments and unknown to everyone else. Lately, though, something very strange has been happening: this technique, popularized by experimental music synthesists, is being reborn in the Web age.

Patching for the Web

Patching software goes back to the 1980s, best known in its incarnation in Max (later Max/MSP, later Max/MSP/Jitter and Pure Data), software for making music and multimedia. Max is well known in these parts, not so well among the general public. But its basic patching metaphor, itself inspired by early hardware synthesizers like the Moog and Buchla, has filtered into other software.

First, Apple quietly acquired the developer of a little-known live visual/VJ app called Pixelshox, transformed it into a new app called Quartz Composer, made it part of the Mac OS X developer tools, and made it central to their UI efforts. One day, a tiny VJ app with a cult following, the next, central to Cupertino’s OS strategy? Interesting.

Yahoo Pipes

Patching cords together mimics the flow of Web data: Yes, the patching interface is intuitive, even for Web development beginners. The source: music software, and before that, vintage hardware synthesizers. Who would have imagined Moogs and Buchlas would some day spawn Web apps? Here: Yahoo Pipes.

Quartz Composer didn’t exactly take the world by storm, but it did update Max’s taking on patching with a pretty, zoomable patching interface. Someone must have noticed, because more recently mighty Yahoo unveiled Yahoo Pipes, an online tool for creating Web remixes, with an almost pixel-perfect, color-exact clone of the QC interface. (Imitation is the sincerest form of Web 2.0, apparently.) Microsoft’s Popfly tool is a bit different, but even it uses an object and patch-cord metaphor.

Lily, JavaScript Patching

Lily JavaScript development environment, Beat box

The Lily interface is unlikely to replace Max/MSP any time soon, but the inspiration is very clear — and the fact that a simple Max clone with Web functionality could be produced with JavaScript says a lot about the future of even Max.

Enter Lily: Lily is a JavaScript-powered patching environment. Lily-created software can run standalone, as a Firefox plug-in, or even in a browser. Much of the functionality is Web-focused, as you’d expect: modules for mashing-up data from Amazon, Flickr, Wikipedia, Yahoo, and the like, widget support for popular JavaScript library elements, SQLite database storage and file system access — all good stuff, but primarily Web-based.

Lily

Where things get especially interesting is that Lily has some multimedia support:

  • Graphics: SVG, canvas elements.
  • Multimedia: Audio and video file support.
  • Connectivity: OpenSoundControl support, which in turn could be used to connect to tools like Max/MSP, Flash, Processing, Reaktor, Traktor DJ, and others.
  • Custom modules: Code your own modules in JavaScript.

There’s even a demo of Lily being used as a Beatbox.

read more