Left Half :
Sound Sample : kfw.hmod3x
This is my master Hrvatski live patch (aka the "Happy Smile Machine"), which has been steadily gaining in complexity since v1.0 in 2001 (pictured above: v3.0 ca. summer 2003). It's a great catch-all patch that performs a wide range of what Max-MSP offers in munging digital audio signals, and does it at a surprisingly high level of efficiency (I've been running it on a G4 Powerbook 400 with CPU cycles left to spare). Listen to the sound sample and try to pick out how many discrete elements/sounds/samples are all firing at once in different ways... stultifying.
The four colored modules to the top left are all for buffer-based "groove~" recording and playback. The stereo input can be mapped to any one of these four modules from the gang of "record~" objects in the middle left of the patch, or they can be populated with an audio file of up to around 3 minutes in length. From the "record~" bank you can also tell Max to switch which buffer(s) are currently record-enabled every, say, 16 seconds (the length of each buffer at patch launch) so that you can begin manipulating the contents of each buffer while as audio is recording into the next (even while the current buffer is recording!).
At the top of each module are four checkboxes for routing the audio currently active to any of the four eVSTorator modules at the top right of the patch (below right, in what I call "rainbow city"). The three checkboxes after that do some very special things... The first divides the contents of the buffer into an evenly spaced number of segments according the value in the number box in the top right of the waveform object, then begins playing them back at the correct speed only in random order (this sounds especially good when the buffer is populated with an even bar-length rhythm or part). The second checkbox activates a very gritty and un-interpolated (read: computationally cheap) granular synthesis mode, of which the period length, sweep speed/direction, and density are controlled by the three number boxes and up/down buttons at the bottom right of the waveform. These values can also be controlled by MIDI. The third checkbox begins playing the selected audio bidirectionally, allowing for some nice hovering tones (even percussive sounds such as cymbal hits can be turned into drones).
At the left of the waveform object there's a toolbar that allows you to select a range of buffered sound graphically, another to extend the range points in and out, another to zoom in and out on the buffer, and one to actually draw audio data (!). The various buttons at the bottom have two functions: the majority of the ones to the left correspond to preset playback pitches/speeds, which can be scanned through via MIDI. The four buttons all the way to the right trigger portamento settings, which, when clicked on followed by a speed box will travel linearly from the current speed to the one selected over one of four lengths of time (100ms, 1 second, 5 seconds, 3o seconds). One of my favorite sounds has always been starting a very dense mix of music from absolute zero and slowly raising the playback speed until it reaches normal 30 seconds later. Once you hear I think you will agree...
Moving on, the four skinnier colored modules at the top right above are for disk-based playback... one of the best ways to optimize the number of samples/sounds that your computer can handle at any given time is to split them up between ones that play back from memory and ones that are read directly from disk. On the aforementioned G4 Powerbook with 512MB of RAM, Max will scrape by producing 4 stereo sounds (given they're less than 3 minutes each) from buffers and four from disk (these can be longer). Again, the output of any one of these can be routed to any of of the VST effects via the checkboxes at the top, or even back to one of the buffer-based modules for further processing. The solid color bar shows the filename of the currently active soundfile, the one below it shows the current position in the soundfile being played. The next row has a checkbox for starting/stopping the audio file, a number box that reflects the speed (this can be clicked on and manipulated via the mouse), a checkbox that copies both channels of a mono audio file to both outputs, a button for centering the pan, a slider for panning the sound, and a number box with the length of the soundfile in seconds. Much like the buffer/waveform modules, there's also an array of preset playback speeds that can be cycled through via MIDI, plus I've programmed a button on my UC-33 to simultaneously start any pair, another to start all four at once at the normal speed. This comes in handy when populating each module with various, synchronized elements of a piece of music... for example I can load 4 stereo audio files of the same length into all four of these disk-based modules... say one containing the drum parts of a song, one containing the bassline, one containing the noises and one containing the melodic information. I can then manipulate the playback speed, panning, and effects of each part individually...
At the bottom left of the patch is the "mixer"... 14 stereo input channels controlled by 14 single faders. Each channel has a series of buttons on top that change the output volume to prest values (unity, -3db, -6db, -12db, -24db, off) and a series of buttons that, much like the buffer and disk modules, fade between volumes at present speeds (5 seconds, 15 seconds, and one minute). These are especially useful for long fade-ins/outs of particular elements. The giant box in the middle bottom lets Max-MSP take over the entire screen (the finder title bar disappears) for a little extra real-estate. The giant bars at the bottom above and below are the master level meters, visible from quite a distance away... Some say even from space (much like the Garden State Parkway)
Right Half :
At the top of the right half of the patch (above) are four eVSTorator modules (see below for a deeper rundown of their features). Screen real estate is always an issue, so i went ahead and broke up the VST plugins I like to use into groups based on the number of parameters (less than 6, between 6 and 12, between 12 and 18, between 18 and 24). Below them are the two "selekta" bpatchers containing a variety of popup menus that are auto-populated on patch startup with the contents of every directory on my Powerbook with playable audio and a "title". These are broken up between longer audio files suitable for disk-based playback (the smaller, orange-background module on the right) and shorter audio filed for populating buffers (grey-backed module to the left), including varying lengths of silence. The colored buttons to the left of each module correspond to the colors on the buffer and disk playback modules. All I need to do to load any sound into any location is press the relevant button, then select the file from one of the menus. Max-MSP will then find the file on the PowerBook and queue it up.
Finally, there's an input section at the very bottom right of the patch that allows for control over the signal coming in to the computer to the buffer and eVSTorator modules. This also has buttons for present volumes. Above and below it are the standard Max-MSP graphic ADC and DAC objects (I still use them, I like the way they look).
MIDI Control - Volume of all 4 buffer and disk-based playback modules on 8 Faders, Knobs 1-3 control pitch, selection/fragment, and sweep speed in the buffer modules, pitch, pand and direction in the disk-based modules. The last fade controls the input level.