The new (beta) Code Export feature of Gen has only been around for about a month, and is still sparsely documented, but that didn’t stop Varun Nair at the Designing Sound blog from digging in and trying it out. The tutorial goes through the process of creating and exporting a tremolo effect with Gen and then building the code into an Audio Unit plugin. It’s great to see such a clear and well-written tutorial.
Varun also gives a nice and simple overview of getting started with the Gen environment in Max. We look forward to seeing more experiments in this area, and are really excited about what people will do with Code Export. Have any experiences to share? Let us know in the comments.
Next week, a special event will be happening in Brooklyn at Roulette. Toni Dove’s “Lucid Possession” premieres April 25, 26, and 27th. Those lucky enough to be in the vicinity will have the opportunity to experience this unique stage production — a “contemporary ghost story” featuring robotics, gorgeous costumes, and stunning voices and music. There are many talented Max users involved, including Todd Reynolds, Luke DuBois, and Elliott Sharp. They, Toni and all the other artists and crew will make it a memorable experience. Don’t miss it!
At the Code Control Festival in Leicester England this past weekend we gave attendees an advance peek at some of our mobile projects. Sam Tarakajian, our principal mobile developer, showed a new iPad app, the Mira controller for Max, that makes it possible, with as close to zero configuration as possible, to make your patch “touchable.” Mira presents a large set of Max user interface elements on the iPad exactly as they appear in your patch. It also provides access to multitouch and accelerometer data. We’ll be revealing more of this powerful addition to the Max universe as we prepare it for release in the app store later this spring.
As a possible companion to Mira, I revealed a new “hardware” project dubbed the MiraBox — in reality, nothing more than an 8 x 10 wooden picture frame stuffed with foam — that helps capture accelerometer and gyro data from the iPad. The software component of the project was prototyped entirely with Mira and Max 6. Like many others we’re interested in extracting higher-level gestures from accelerometer sensors, but in particular, we’re interested in tracking data when you touch your patch.
Matthew Davidson, the developer of the new Mono Sequencer device, gives us a quickstart primer on using this creative MIDI effect. Watch for new videos over the coming weeks!
Today we’re excited to release Max 6.1.
You can download Max 6.1 now to check out these new features:64bit Application
- Use more than 4GB RAM
- Use high precision 64bit numbers in Max messages
- Load 64bit Audio Unit and VST plugins
Live 9 Support
- New devices
- New Live API features
- Performance and stability improvements
New Gen Features
- Integrated operator reference
- New operators and expression features
- (Beta) Export Gen code to C++ (gen~) or GLSL (jit.gl.pix)
- Faster application launch
- Faster patcher load time
- General optimizations
Complete Max 6.1.0 release notes are available here, and more discussion about what these features represent follows.
64bit application support is a big deal, and given how long Max has been under development in a 32bit world, it was no easy feat. Thank you all for your patience as we’ve worked to make this happen. 64bit applications allow users to take advantage of a much larger memory space and hence more than the ~4GB of RAM we are limited to under 32bit. We’ve also been able to make infrastructural changes to support 64bit numbers when passed via Max messages for higher precision calculations. These two things are features you have been requesting in Max for years, and finally those features are here.
However, we’d like to balance expectations here. Since this is our first 64bit release, we will not have all of the features of the 32bit version, especially regarding Jitter and QuickTime support. QuickTime is simply not available on Windows under 64bit, where we will rely on DirectShow for movie playback (to playback QuickTime files you will need a third party plugin for DirectShow). Apple’s QTKit API on Macintosh 64bit has fewer features than the 32bit version of QuickTime, and requires a dramatic rewrite of our code base. We’ve only implemented the most basic of functionality for movie playback at this time on both platforms. We will be continuing to work on Jitter video playback and other QT features in the 64bit version, but many features are not present and may not make it to the 64bit version ever.
Max and MSP should have nearly all the same features, except where it relies on QuickTime (e.g. PICT files are not currently supported under 64bit and instead we recommend converting to PNG or JPG). However, 3rd party developers will need to port their objects to 64bit for them to be able to run inside the 64bit version of Max. There is no loading of 32bit externals in 64bit version of Max.
We will be providing an SDK for 3rd party developers in the coming days, but it will likely take some time before any particular 3rd party external will be available to use. We would recommend that if you do want to use the 64bit version and you have 3rd party dependencies that you see if you can remove these dependencies by using core objects or abstractions to replace these dependencies, until your favorite 3rd party object is available.
On Macintosh, the application comes as a single FAT bundle, by default set to run in 32bit mode. To run in 64bit mode, select the application and “Get Info” from the finder. In the “General” tab there should be a check box which says “Open in 32-bit mode”. You can turn this off to run in 64bit. If you want to keep separate 32bit and 64bit versions, you can duplicate your max folder, select one of the applications and set it to run in 64bit as described. Externals are also FAT bundles–i.e. contain both 32 and 64bit code.
On Windows, there are separate 32bit and 64bit installers and applications, and externals are in separate .mxe (32bit) and .mxe64 files.
Live 9 Support
Max for Live users will need to use Live 9 in conjunction with Max 6.1. Live 9 will be released on March 5th, and as you may have heard, Max for Live is now included in Live 9 Suite. The factory content will look a little different than in previous versions and you will need to download and install the appropriate live packs for the content which previously was installed by default. In addition to the exciting features of Live 9, there are some great new devices in Max for Live, especially the drum synths and convolution reverb, but I will recommend you go to the Ableton.com website for more information regarding Live 9 and Max for Live.
New Gen Features
Gen has some significant additions and improvements in this release. Gen now has an integrated operator reference in the side bar to make learning and discovery easier than in previous releases. The operator set has grown, and the GenExpr language now supports recursive functions (for CPU, not GPU targets), calling gen patchers as functions, and defining functions with named parameters. But most exciting in this release is that we have a beta version of code export. This means that you can take your gen~ patchers and export them to C++ code and your jit.gl.pix objects and export them to GLSL code. This feature only has limited support in our initial Max 6.1 release, but over the coming months, we will be working to improve the generated code, template examples, and documentation to make this feature useful for those of you who have been waiting for this capability. Note that the code export feature will assume that you are familiar with C++ and working with a development IDE like XCode or Visual Studio. We will be adding more code export examples and documentation in the WIKI.
Thank you for continuing inspire us with your creativity.
If you follow on the Max Gen forum, you might be forgiven sometimes for thinking that the only people using gen~ are command-line-codeophiles busy downloading stuff from DSP archives and dropping them into a codebox object. While that’s awesome, I have a particular “burden on my heart” – as we say in the part of the U.S. my family hails from – for those who love them some graphic patching. The ever-delightful Johan van Kreij may have excited you at some near-future point by showing you the process whereby he uses connect-the-box programming to make something amazing. The only way to tell whether or not you’ll be excited and grateful is to have a look at it for yourself, of course.
Max-enthusiast and Expo ’74 presenter, Jeremy Bailey, has a message for people who contribute to Kickstarter campaigns (for his own campaign).
You’re the best, Jeremy!
Code Control Festival is Europe’s biggest Max meetup. Phoenix Cinema and Arts Centre in Leicester will be hosting its 3rd international conference for artists, musicians, students and teachers to explore Cycling ’74′s Max software, a toolbox for developing unique sounds, stunning visuals and engaging interactive media.
This year Phoenix, in association with Cycling ’74, invites applications to its Code Catalyst Award fund. The Catalyst Award represents an excellent opportunity for artists and practitioners to design and create new work or get free tickets to the events. The deadline for submissions is Friday 8th February.
Guest speakers will include Cycling ’74 CEO and founder David Zicarelli, Cycling ’74 developers Sam Tarakajian and Jeremy Bernstein, and Eric Lyon with more to be announced.
Festival dates: 22nd – 24th March 2013
I got to spend a day at NAMM, and it was a great chance to spend some time with our friends. Here’s a little picture of the folks at the Livid booth, showing great excitement over their new Base product. This is a really nice controller – no moving parts, realtime positional feedback and just the right size for backpacking. They were also spotlighting the Alias 8 controller, which seems purpose-built for making live sing.
Spending time with Livid also reminded me how much I love the OhmRGB Slim, which seems to be the perfect combination of over-the-top features with grab-it-and-go size. This was a great opportunity to talk smart, have fun and feed the GAS (Gear Acquisition Syndrome)!
Contrary to what you may have heard, the 2013 NAMM show wasn’t entirely about the rise of beautifully dirtied analog in the form of the Moog Sub Phatty,Dave Smith’s marvelous Prophet 12 (which you should imagine as a hybrid cross of parts of the Tempest, the Poly Evolver, and the redesigned Prophet), the shrinking (in terms of size and price) of the Korg MS-20, or the return of the Buchla Music Easel (yes, really).
I’m a Max guy, so I prowled the trade floor looking for controllers I could repurpose and come to love. This year, it was sufficiently rewarding to actually lure me away from hardware synthesis fun, gawking at analog video modular systems and nifty modestly sized modeling amps. I have escaped from the Trade Show Floor to tell thee, if somewhat idiosyncratically.
In particular, the Controller Pilgrimage means that I did several things in no particular order: I nerded out about matters such as the ability to fluidly play two-finger trills and mordents on the Ableton Push grid pads – which feel really, really good. I enjoyed the near-perfect size and feel of the Livid Instruments Base. And I think that the QuNexus from Keith McMillen Instruments may offer the first good solution to something I’ve messed with for years in my Indonesian-influenced work – the ability to have a physical interface allow for different playing techniques related to metallophones (alternating striking and damping, grabbing the bottom of a saron key to “silence” it, etc.).
There was one “outside of the box” encounter I wanted to mention, since it might not get quite as much mention as the above – I guess that it really was an “outside of the box” encounter quite literally, since I ran across the object in the laser and LED-stuffed Arena area of the Convention center (Yes, I went to walk on the video floor, too). There, amid the fog and laser-drawn vector graphic squiggles, I met the Alphasphere.
We all love it that the internets bring us images of things we might desire, but there’s no substitute for the real experience of the real thing. Okay, maybe there is a sort of substitute: here’s a great video our pals at Sound on Sound shot at the last Musik Messe that ought to give you a sense of it.
While a quick walk-by on the way to see the video floor struck my inattentive eye as something like a scaled-down ball sensor with hard transducer pads, the real item was far more compelling. The biggest surprise was the surface of the circles that cover the sphere – rather than being some kind of dark hard surface as I might have expected – was a lovely and soft stretched membrane that felt as much like a slightly loosened drumhead as anything else. The sense of feel and control when this surface was stroked or hit or pressed upon was a great experience.
In addition to layout of the circle/drumheads as series of 8 differently sized pads wrapped horizontally around the spherical surface (meditate on that as a topology rather than a grid for a few moments and see if you don’t get some interesting ideas), I found myself using the feel of the “spaces” between the pads as a way to traverse the surface.
While the triggering demos they had in the booth to demonstrate the software that comes with the unit was a lot of fun, I was struck with the notion that the configuration of controllers on the unit – stripped of the intention of its creators and laid open as collections of MIDI-producing outputs – have some really compelling physical and tactile features that I’ve never encountered elsewhere (Oh yeah – the hardware design includes internal LEDS that you can control and turn on and off for visual feedback).
If you’re one of those people who worries that the dominance of the iPad in the control surface world de-emphasizes the aspect of real touch sensitivity as a part of instrument or controller design, I think you’ll be really intrigued.
P.S. You’ll never guess what software was used during the prototyping phase of their design….
One of my favorite places at NAMM is the arena. In the arena, you will find all kinds of lasers, smoke machines, light-up microphone stands, and other visual products to make a musician’s stage act more fun and maybe memorable. This year, I was drawn to a booth where you could walk over a sheet of thousands of tiny LEDs. It felt like walking on hard bubble wrap, making the walk through fire well worth it.
Congratulations to Andrea and Daniele on the release of Bach beta 0.7, which is a massive update with tons of new features and performance improvements.
For those of you who have not heard of the Bach project, it is a huge and fully featured traditional music notation system for MaxMSP.
Last year, Peter Burr approached me with an intriguing Kickstarter campaign he was starting for a travelling show, and wanted to know if I would contribute a video. The concept was that a group of video artists would each make 30 second videos about “the Zone” from Tarkovsky’s film Stalker, and/or the book it was based on Roadside Picnic.
I immediately jumped in and started reading the old Russian science fiction novel. Before I even sat down to watch Stalker, I had a clear view of the visual style and process I’d use, and in fact never bothered to watch the movie (highly recommend it) until after my video was finished. I’m excited to be included in a really fantastic group of artists and what promises to be a pretty great show. For my part, I created a 3D animation with Maya that was exported as a Collada file and then brought into Jitter’s jit.gl.model object. In Max, I created particle effects, applied generative and animated textures, and created a number of other special effects using OpenGL geometry.
This Friday, the touring Max-driven live cinema show will be making it’s first US stop at the Museum of Moving Images in New York. For some more info, check out this interview with Peter Burr at the Creators Project.
The guys at Lanbox have announced some new hardware.
The LanBox LCXi is a rackmount update of the LCX DMX controller. There’s also a remote interface for it, the LanBox interface.Both look really nice.
Eric from Lanbox also told me about a large Max 6 based DMX showcase for them.
“Yutaka (from Japan) made a large setup for Sony last december in Tokyo. He used 44x LanBox-LCX and MAX6 to create a light fountain with *a lot* of lights, controlled the LanBoxes and the MAX patch!”
The long-awaited Arduino Due is now available. This device, featuring an Atmel SAM3X8E ARM Cortex-M3 CPU, is a huge generational leap for the Arduino platform. Using the same footprint as the Arduino Mega, the Due is faster, has more memory and more I/O than any previous Arduino, and puts it on a par with the Maple, Netduino and other similar platforms.
You can check out the details here.
I was able to recently purchase one through the Maker’s Shed, although supplies seem to be somewhat limited. This board, combined with the new Arduino 1.51 beta, led to my first Due-based Blinkie Lights sketch today!
Need a timeline that automates your Max patchers, but also can connect to other things? Do you want it to use Open Sound Control to communicate? What if you could have two way communication for the standalone Open Sound Control sequencer to query the state of the Max patcher?
Francisco Colasanto — an Expo ’74 exhibitor and skilled Max user, teacher, and technical coordinator at CMMAS — has released the second volume of his “Programming Guide for Artists” books. His first volume was the first Spanish-language book devoted to Max. The second volume is an eBook and takes advantage of video and sound available for the medium. Available in English and Spanish, the second volume focuses on the Max 6 interface. Both volumes appeal to people who want to learn about Max, and are also resources for people who want to teach Max.
While strolling through the internet, you sometimes stumble upon stuff which you like, and sometimes stuff which you really like. This video, brought to my attention by one of my colleagues, is something which I really, really like.
Even before I got it translated by a Japanese-speaking friend, the radiant smiles of the children and the cool setup were fascinating. OK, it seems to be sponsored by a big car company, but the initiators of this project appear to not only be asking what the car of the future will look like. They want to provoke the children’s creativity and to show them that it is their ideas that can transform anything into anything. And i think they demonstrate this nicely by transforming a car into an instrument, using self-recorded sounds and the help of Max, Ableton Live and some sensors – and it seems to have been a lot of fun too :)
Now these children are telling us that in the future, cars might be their friends or climb trees, or many other things – there are no limits to your imagination. I think that this is a great message to teach.
I am constantly surprised by the work that Max programmers accomplish. Whether creating video projection effects, sensor-based installations, generative compositions or immersive 3-D worlds, the breadth of work produced is amazing. But there is more to the Max community than that – it is also a group of people that are anxious to share the things they learn.
As a company, we’ve worked hard to create the documentation necessary to take advantage of new technologies and new features. But there are limits to the amount of content we can develop, and difficulties in meeting the diverse needs of our users’ interests. As a result, we’ve decided to open up a new avenue for information to be created and disseminated by our employees – and also by our users.
The mechanism that we are using is a Wiki system (MediaWiki, to be precise). This is the backbone behind the Wikipedia online encyclopedia, and represents a flexible and robust way to store information. Everything about a Wiki is flexible; you can modify the organization, contents and presentation of a Wiki without going through any sort of vetting procedures. Thus, a Wiki is perfect for a community that wants to share and is willing to have the content management process be open and transparent.
What makes sense to place within a Wiki? We think it is a great place for all sorts of information: extended reference material, tutorials, discussions of technique and methods for working with hardware. We’ve started the system with a few top-level categories:
- All About Max: This is the location for information about Max itself. It is a great place for tutorials and curriculum on Max training, but it is also where we’ve placed the extended reference material. Right now, most of these reference pages are placeholders; if you have information about how you use a particular object, this is a great place to share your notes.
- Max Interfaces: This is where we talk about technologies that exist outside of Max. Hardware information lives here (and we have some placeholders for the Kinect, Lemur and Monome), but this is also a good place for virtual technology interfaces such as DMX and OSC.
- Topics and Techniques: Have you been using Max long enough to remember the old Topic and Tutorials manual? This was a useful repository for discussion of special features and functions used in Max programming, and also is a good location for Max-wide discoveries. If you want to talk (or read) about concepts larger than a single object, or to talk about operating the Max application, this is your home!
- People and Places: Are you interested in Max workshops, schools that teach Max or people that can do consulting? Or do you give workshops or teach classes? Look here for information, and feel free to add your own information in this area.
It is the final section that is probably the most important part of the Max Wiki. Labeled “Do you want to write an article?”, this section provides the information you need to edit articles, include web and media links into your article, and interface with the existing categories of the current site format. Entering information into a Wiki is pretty straightforward, but you may want to look in here to make sure you get the best formatting available for your content.
The Wiki couldn’t have come to life without the work of a lot of people. Gregory Taylor, the Wiki Gardener, did a lot of research before selecting the MediaWiki tool, and has led the charge to make it happen. The entire Cycling ’74 web team helped integrate the Wiki into the rest of the site (have you noticed the Wiki tab now available in searches?), and is helping provide support and maintenance for the future.
But more of all, we want to thank you, the users of Max, for your willingness to share. It is this openness that has created an incredible community of media artists and developers.
Note: In order to help get the Max Wiki started – and to celebrate the sharing – we are offering a bonus for the first 50 major content contributors – a “Give Max to a Friend” coupon, which provides a free 12-month Max license to anyone that has not previously owned Max. Once you’ve updated the Wiki with something that you feel is “significant” content, drop me (ddg @ cycling74 . com) an email and I will provide you with a serial number to provide to someone you may know.
Holland Hopson’s Post and Beam was released last year, but I stupidly didn’t fall in love with it until recently. I guarantee you’ve never heard anything like it — beautifully performed original and traditional folk songs set against an electronic dreamworld. I can’t think of a recording that provides a more powerful study in contrasts — heartfelt and alienating most of all. Check it out and see if you don’t think the Maxified banjo is not the up-and-coming instrument of the decade!
Moritz Simon Geist has built a (giant) robotic version of the classic Roland 808 drum machine using Max for Live, Arduino, and a heap of solenoids.
From his website: “I see hacking – in this case music hacking – as a form of anti-passiveness, through which I think the individual can have an impact on his or her environment, status and state of mind…Within the last five years the rise of Arduino, Ableton Live and Max/MSP has made this much easier.”
Deep in Cycling 74′s backyard, Eric Maundu is doing wonderful things with an Arduino controlled hydroponic plant growing system. The possibilities for our tools are endless!
More info here.
I recently encountered an interesting group of people doing what they call “sketching in hardware”. Look at last year’s conference to get an idea of the diversity of this concept. Underlying all this diversity is a breadboarding approach that feels very much like Max: connecting modules as a form of experimentation, trying to simplify the transition from idea to hardware.
In this kind of environment, it’s tempting to start tinkering right away. Sometimes that works, but it’s easy to get sidetracked. So I resist the temptation and instead try to spend a lot of time exploring ideas beforehand. I go to art museums and performances, explore the Cycling ’74 projects page, and talk with friends.
Once I have a clear idea of the project I want to try, I create a new patcher
and then leave the computer at home and go for a long walk. There are so many ways to realize an idea, and implementing an idea awkwardly takes just as much time as doing it right, so I take time to sort it out and focus on the essentials.
Then it’s time for pencil and paper. Start by writing down the key organization and/or esthetic requirements for the patch. What would Version 1 look like? How will I know when I’m finished? Staying with pencil and paper, I sketch out the overall plan for the project, decide which modules I need and what they need to do, and imagine what it will be like to play with the system. Finally, I put together a little to-do list, and head back to the computer.
As I build the patch, I try to keep it in a functioning state: “always up and running”. That reminds me of one of my favorite orchestral conductors, who would begin each rehearsal with a run-through. If the patch is always ready to go, then making the final version reliable is easy!
As the functional aspects of the patch come together, it might be a good point to look at ways of refining the overall idea. This would be a great time to step away from the computer once again and pick up a good book. Gregory Taylor turned me on to this gem, Universal Principles of Design:
Looking through this book and thinking about my project, I sometimes get insights into how to refine my project to achieve a kind of elegance. Just because my patch works, doesn’t mean its function is optimized. It’s satisfying to finish with a Presentation Mode full of grace and functionality.
Keeping the Big Picture clear from the beginning through the end results in a Max project that is fun to use, works well, and opens up options for the future.