I want to share some news about the next major Max upgrade, version 6, arriving this fall.
For us, Max 6 is about four things: accessibility, performance, quality, and workflow.
Accessibility
For some of you reading this, getting into Max was no big deal. Maybe you learned it while in school. Maybe it just clicked for you right away. Maybe the purchase was a no-brainer. However, for a lot of people who would love Max, obtaining and learning the software is too much of a challenge, and we’re committed to changing that. Max 6 is the next step in our ongoing effort to increase the accessibility of our software. Let me review a few of the things we’ve already done in this area:
- We offer Max to students for $59 for nine months. Starting this fall, we are extending that to a full 12 months.
- We have an entire team focused entirely on user education and support. I hope you’ve seen some of their recent efforts including tutorials, how-to videos, and the Vizzie modular video toolkit. You’ll see an expansion of user education efforts for Max 6 and beyond.
- Our web site is increasingly devoted to our users, with projects to inspire you and a toolbox of programming resources to help you realize your goals.
- Max for Live, our joint venture with Ableton, has introduced the power of Max to a new audience.
- Last but not least, our Expo ’74 conference, taking place this October in Brooklyn, will be a great way to expand your Max knowledge and be inspired by the work of artists from all over the world. And now you know Max 6 will be a major focus!
But we’re not stopping there.
- Effective immediately, we’re lowering the retail price of Max/MSP/Jitter to $399. We’re also lowering the price of some of our upgrade and academic options. And starting today, if you purchase Max 5, you’ll get an upgrade to Max 6 for free.
- We’re introducing a subscription plan for universities that will make it possible for our academic customers to serve to more students at a lower cost. For more details, click here.
- With Max 6, we’ll be supporting a user-driven, machine-assisted cross-platform translation project for both the software and the documentation, so we can better serve the majority of the world’s population that doesn’t speak English fluently.
Now, I suspect you’re curious as to what will be new in the software. Accessibility is a major theme here too. In Max 6, we’ve focused on improving the experience for both new and accomplished users. When we add a new feature, we think carefully about how you’ll learn about it, even if no one tells you it’s there. You might have seen our series of Did you Know videos. Even though I think these are great, I would love to get to the point where no one needs to make another one, because Max holds no secrets.
Performance
The area of performance is where Max 6 will be truly exciting for a lot of you. The big news is a completely new patching domain, which we refer to as code generation. Code generation technology will be available as an inexpensive add-on to Max 6. It focuses on areas where traditional patching has not been able to deliver the combination of performance and programmability that we wanted, namely DSP and GPU programming. What do we mean by “code generation”? Essentially, we translate the patch you make into text-based source code, and compile it on the spot. With code generation, we can optimize the entire patch, something that’s impossible with existing Max-like approaches.
In the DSP realm, our new gen~ object is a new domain of low-level signal processing operators that let you build recursive filters, delays, spectral processors, and sound generators, all using 64-bit floating-point internal precision. Not only do these things sound great, but the performance gains over equivalent Max patches are simply stunning. Where you could actually implement the same algorithm with MSP objects, a gen~ version will be up to 15 times faster. And in many cases, there is simply no way to implement the same kinds of DSP algorithms with MSP objects, you’d have to write C code. Not only is gen~ cross-platform, unlike C code, but in our tests, gen~ operators are nearly as fast as equivalent MSP objects written in C.
The code generation approach is equally suited to GPU programming for Jitter. For several years, we’ve offered the ability to write your own shader programs in Jitter for high-performance pixel processing, but text-based shader languages are not easy to learn and never felt completely integrated within the Max environment. Now you’ll be able to create high-performance image processing algorithms graphically, and our code generation technology will write the shader program for you. But the power of code generation extends beyond processing images — you can also use it to generate materials for shading interactive 3-D objects. In this application, the code generation technology is automatic — you just specify the parameters of the materials and we generate the shader program.
There’s much more to say about code generation, but at this point all I want to say is this: stay tuned — we’ll be showing you much more in the coming weeks.
Code generation hasn’t been our only performance focus. Another major area has been Javascript, where we’ve integrated the latest Mozilla runtime engine for significant performance gains. We’ve also exposed an efficient new 2D graphics API in Javascript that can be used to port existing HTML5 Canvas code to Max. We now run the audio of every top-level patcher in its own thread for effortless multicore processing. Performance improvements have taken place in many other areas as well.
Quality
Another focus of Max 6 has been quality. We think of quality in two ways: first, the quality of the output and second, the quality of the experience you have while using the software. In the former category, we put a major focus on audio quality in Max 6. The cycle~ object now uses a 16K wavetable for far better signal-to-noise performance. You’ll be able to use any sampling rate you wish, thanks to high-quality resampling filters. And, to eliminate errors with large numbers, long envelopes, and recursive algorithms, MSP processes all audio with 64-bit precision. Older 32-bit third-party objects are still compatible however.
And those resampling filters I mentioned? We used MSP to develop them, using a suite of new filter design and audio analysis tools.
Beyond looking at audio quality, we wanted to help make your time with Max more enjoyable. To do this means paying attention to every detail. I think you’ll generally see more clarity and refinement in the interface. For example, we’ve introduced curved patch cords, which make an unexpectedly dramatic improvement in understanding how a patch works.
One feature I’m particularly fond of improves the experience of editing an audio patch with the audio turned on. Whenever you make a change to your patch, we intelligently crossfade between the old and new versions, so you never hear a gap in the output. And if you have other top-level patchers playing audio, they’re completely unaffected by your edits. This is just one of the benefits of our new audio mixing engine. Another is that every audio patcher has controls in the toolbar for muting or adjusting gain without the need to add any objects.
In the Jitter domain, quality means the ability to achieve visual complexity more easily. One way you can do that is with the new materials system — an advanced toolset for high quality rendering of 3-D objects. Other ways we hope to enrich your Jitter work is though better support for 3-D model and animation files, better support for cameras and lighting, a new physics engine, and hierarchical animation and rendering tools.
Workflow
As part of the Max 6 development process, we’ve observed and interviewed users, from those who’ve never seen the software before to those who’ve been using it for decades. On the basis of these studies, we identified areas for improving patching workflow and usability, and you’ll see the results vividly in Max 6. Just to focus on one area: The act of making a new object has been dramatically enhanced, with access to documentation at every step of the process. It begins with the object box, which now offers you a way to make objects even if you can’t remember their names. Then there’s the message box, which tells you about the messages understood by nearby objects as you begin typing. Arguments and attributes of objects and messages are also displayed as you type.
A new object called attrui integrates attribute monitoring and editing, eliminating the need for a lot of patching. Attrui knows the best way to edit any object attribute. For example, if you want to change a color, attrui lets you edit it as a color, not four numbers.
We’ve also reorganized Max 6 to show the most common information first. Every help file now has a simplified initial presentation of the five or so most basic things you need to know. Advanced features are shown in a tabbed interface grouped by functional area. We’ve done the same with our redesigned inspector and object palette.
A common request from educators and more experienced users was the ability to manage patches that encompassed many files. Max 6 has a new Project feature, where you can see all the patchers, code, and media files you’re using. Projects enable you to maintain multiple versions of files as well as archive and share your work more easily.
The Path to Max 6
Over the next few weeks, we’ll be telling you more about Max 6. I promise, I’ve only scratched the surface of what we’re up to. If you’d like to be notified when we release new information about the software, keep your eye on our website, Facebook, and Twitter.
One of the things that really inspires me is when I get a new piece of software that is both cheaper than what I’ve been using and better in every conceivable way. My co-workers and I are driven to do that with Max. You’ll ultimately be the judge of whether we’ve succeeded with this new version, but now you know what we’re trying to achieve. Our friends in the Max community creating extraordinary work deserve nothing less.
Lots of impressive things here. Let me go out on a limb by saying the thing that struck me most was the promise of support for multiple languages!
Is there any chance this will extend to support for building multi-language patches? Just as Max/MSP is recognizing that about 90% of the world doesn’t speak English, 3rd party external and standalone developers need to take this into account as well.
…and of course all the necessary bug fixes, right? ;)
hooya!
Wow. If I send money *now*, will I be able to get it sooner? ;-) .. .”Ah Cain’t friiiggiiin’ WAAIIT!” as they say down here…
Is it true that there will be no gaps in audio if you are coding live? Also, I didn’t see anything about patching shortcuts, such as connecting multiple outlets to a single inlet with a keyboard shortcut? I’m really excited to see where this goes.
Will code generation be an add-on ? And have fixed a price for it ?
[...] Zicarelli, CEO of Cycling ’74, outlined the company’s motivations, noting: “For a lot of people who would love Max, obtaining and learning the software is too much [...]
jesus, i think i just creamed.
i guess the question on every other max users lips, is how much an upgrade [from max 5] is going to cost?
i did have a plan to buy some hardware, but this seems to have won over. now to get saving and be at the front of the line waiting for my copy.
cheers for this guys.
lewis edwards
——
smokingbunny.co.uk
I’ve still got those disks – and the manual!
yep, and version just before it was on darker (blacknavybue?) disks: I have a few of both, just for kitsch’s sake. Oh, and do you have the old original HUGE black binder of documentation ? I still hoard my old copy…please don’t ask why,
“oh, don’t ask why…for if we don’t find the next music app, i tell you we must die…”
sigh…..Weill is better auf deutscher Sprache.
Thanks for the answer back there, Joshua! :D
Happy to see that that is the case and looking SO MUCH forward to all the good improvements and developments!!!
All the best!
Same as Armadillo & Jentwest, except that I bought it… two weeks ago… Would be really bitter if I have to pay full price for an update.
I hope that this release brings with it a Max for Live runtime, so that any Live user can run our creations, thus creating a nice marketplace for M4L Live addons…
Fauve72… I’m in the same boat as you. I bought MAX days before this was announced and, even after me asking customer services if there were any future products coming out and if MAX 5 was the right product (they didn’t mention MAX 6), I am not entitled to a free upgrade. Apparently the ‘cut off’ date is July 12th. Even if you bought it on the 11th you still have to pay. Disappointed would be an understatement. Thanks Cycling 74 for all your help in fleecing me for more money. I can understand you have to set a date and stick to it for fairness, but deliberately withholding information when asked. Pathetic.
yeah I second Micheal Kedzierski´s opinion :)
in relation to code generation technology, will it be possible for me to use, for an instance, a patch made with standard msp objects, and then adding the gen~ object to them, and compile everything, or is it stricly low level implementation, and you have to do everything from the ground? the same for gpu stuff.
in relation to javscprit, will it be easier to use mozzilla for an instance, to get flv content from an url, than it actually is with standard http maxmsp objects? in relation to 2d graphics api vs html5 canvas code.. will it be easier to do the inverse, in other means, porting maxmsp content to a website.. or even to a flash application, a video game, whatever?
in relation to quality.. have you used dsp stuff from ableton or colab stuff with them.. what can we expect, however
in relation to interface I can expect it to be much easier to use
in relation to experience, will it be something inspired in the standerd approach from ableton in live in terms of composing stuff?
in jitter, you could add the ability of jitter to talk directly to the quartz extreme apple engine, so that jitter could be more enhanced to works parallel with quartz composer.
the workflow enhances are also inpiring
would’t it be interesting to have an high level abstraction system for gen~..
also if I compile c++ gen stuff, will it be possible to time-strech the plugins.. I have the idea of having heard that somewhere am I and someone else dreaming, or is it tru?
and in terms of prototype.. it will be easier right?
also will it be possible to compile about 200 (just for throwing up a random high number) patchers, of existing stuff, in terms of max, msp and jitter existing stuff, and make vizzie abstractions.. I wouldn’t mind about giving away some of my code for that)
What will all this gen~ stuff do with existing max4live tools – and will it be of any advantage when creating new ones? Stupid questions maybe, but since I was tricked by ableton to believe I could use Max 5 as an upgrade to my existing 4.x when purchasing max4live from them, I now do think of rather working with the real Max again, but don’t want to loose compatibility – and I sure want to benefit from Max 6 advantages when using max4live (getting a better sound quality for instance).
Great news on the price. That is more like it! That is a fair price and I am converting from demo to paying user tonight.
Please be nice to those who bought just before the watershed- find some compromise…… I know that Cycling is not a huge company and I hope you guys can strike a balance between business need, a (good) change in pricing strategy and a happy user base. I bet this wasn’t an easy discussion and I hope this works out for you.
I am excited about the ability to work around the DSP module with some efficient coding method – I have been desperately seeking a CODEC to encode and decode the audio into a stream that has a reasonable bandwidth (not a 240 kbps jitter audio bandwidth hog). The video and other stuff is easy to compress thanks to the jit.qt objects. What I want in MAX 6 is a way to stream compressed audio using some CODEC or give me a way to set that up myself (jit.broadcast is great but too much of a lagfest).
BTW MAX is totally addictive!! Can’t wait until VER 6!! Hope it does great things!
Hi Maxers,
Sorry for any frustration regarding the timing of this upgrade. We honestly do our best to make everyone happy, but with the hectic and most often very unpredictable release schedule, there will always be a few people feeling left behind. You can always email me directly at erin@cycling74.com to discuss your situation.
Sincerely,
Erin
Is the student price still the same? I’m hoping to buy Max soon, but as I recall, it was $250 before. Is this not one of the academic options that is getting a new, lower price?
[...] our ongoing effort to increase the accessibility of our software. …twitter @cycling74 Source: cycling74.com, via Jacques [...]
I don’t understand something, so far I have seen some new features, but why this means that we have to go from a version 5.1.x to a 6.x version? The new features are cool, but they don’t look so big regarding the perspective of the basic architecture of the program. I mean, i haven’t seen any news regarding multithreading for example, this is something that would be nice to have news, and is something that changes a lot the basic architecture of the program, something that makes worth to leap from a version 5.1.x to 6.x.
Sorry, a bit disappointed here
Where is the max (alone) price … please do not say that we have now to buy the full package so the price “decrease” will in fact be +$150 !? (I am just a midi users that was waiting to have some time for a project to buy it … Now I have, i connect & I discover that)
BTW: did the users you’ve interviewed for new features tell you about a way to protect the code or project they are working on for weeks or even months ? No protection is bullet proof but at least some compression with inbuild code or whatever to make it not so obvious to just edit the file …. this has been a long debate in the forum, but you have to understand that as you are willing to have your users paying for your work, we are entitle for that also for our own work. (and the community sharing will not be lower for codes or objects or examples)
Will Max 6 see a return of Pluggo or inbuilt VST export capabilities?
Will we be able to run M4L apps in Ableton using the runtime, rather than having to buy the complete Max4Live package?
Will the accuracy of the non-audio math be improved also? I use a lot of cents and equations in my work, and it’s always a little frustrating that the best I can get is a 32-bit approximation of the number I want, even if the difference isn’t all that audible. For example, simply reading numbers into a coll object from a text file starts me off with an approximation before I even get to any math. And if not, will this be something you will improve in the near future? Thanks!
I think having an “add-on” feature like fire-fox to manage third-party externals along with a dedicated server to somewhat replace the functionality of the max object databse would be great. I can’t tell you how long it took me to find and test out externals or code. If I could just read a brief description and have max 6 download and install it directly (and or uninstall it) that would open up a whole world to people who have less time on their hands. Also, there have been many times where I create a patch just to demonstrate functions of an object that are not well documented. I think I am not alone here. So maybe in the same style as the “add-on” approach, have the ability to “update” your help files from the net through max (also the ability to submit new examples or help files to be incorporated into the tabbed system[and of course you will have to have somebody do quality control and sorting and management but if you want people in a community known for sharing to do a better job of it, i guess you have to make it easier and integrated])
A multi-resolution FFT and wavelet toolkit would be nice. It took me a long time to create some fairly intricate cheby, hilberted and downsampled fft poly’s and then sew the different time frames back together through interpolation. Or you could just provide cross-platform support of CNMAT’s matlab bridge.
an easy to use SDIF writing object that takes advantage of the new audio engine would be nice. Right now (due to the vectorization) my sdif files don’t have the time-resolution I want and I am not sure Ircam will update their object anytime soon.
Max Toolbox should be implemented and enhanced (there are a few situations that are not covered)
One other thing is floating windows (max window, inspector, debugger, watchpoints, and file browser )that always stay on top of the patcher and can be hidden easily with a keystroke. I wrote a patch using mxj autobot and wmangle that runs in the background and lets me change my entire window setup at the flick of a few buttons. It has greatly enhanced my enjoyment of using the Inspector window as well as letting me use all my screen real-estate. If you are interested you can have it.
MULTI-TOUCH support with native tuio integration (I know this is probably far off)
I appreciate all the work you guys are doing. And you certainly are doing alot.
Frank
I bought Max For Live at full price, then bought Max/MSP upgrade, then Jitter upgrade… and should pay 199 € to upgrade to v6 ? That’s a high price for those of us who have already paid a lot, and a high price for an upgrade considering the software’s licence price. Not fair at all.
The 64-bit signal, the Gen~ object sounds really exciting as well as the upgrade to cycle~. I always laughed at cycle for it’s 500-something sample wavetable. The biggest problem with digital synthesis is when something along the signal chain (most of the time right at the beginning with the midi protocol) has too small a range of values. I try to build the richest and nicest sounding synthesizers I can and I do it in max. These upgrades will mean a lot in terms of the basic sound quality I’m working with. You guys hit the nail on the head with this upgrade. Seeing what you guys are doing with the program inspires a lot of confidence in the time I’ve been investing in max. Awesome. Can’t wait.
I hope you will improve patching experience as well!!!!
My Problem is: I often work with MultiChannel Audio Stuff.
Connecting a “matrix 64 64″ to a
“dac 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128″
is not funny to do this! (I´am working with 2 cascaded MADI Cards, if you wondering the numbers).
Not fun to create the dac object and not fun to connect inlet 1 with outlet 1 inlet 2 with outlet 2 …..
Hope there will be Options for multichannel users like me!!!!!!
PLEASE!!!!!!!!
@stefan and @nathaniel, you had questions about making connections more easily: check out the Max Toolbox by Nathaniel LeCaude. Both of your specific situations can be done with one keyboard shortcut if you’re using the Toolbox: just select the objects you want to connect and hit the right key. It does take a bit to get used to it, but for certain things (like a matrix 64 64 to dac~) it can be done in one second, literally.
It has a few other nice features too, like distribute objects vertically or horizontally, or send any selected object a message…even if you’ve selected 100 of them.
I still wonder whether some of these elements will get included in Max itself, maybe they would be too problematic. Nathaniel’s workaround uses some very clever javascript.
I would love to be able to create a vstplug with max6!!!
How do I upgrade to Max 6? I have just purchased Max MSP Jitter 5.
Thanks
“an advanced toolset for high quality rendering of 3-D objects” does this refer to jit.gl.mesh, gridshape etc or to .obj imports?
I love JITter, but I am really crossing my fingers and hoping for a rendering quality improvement – right now processing, o.f, cinder, quartz composer, surpass the image quality of jitter, and its image quality exporting capabilities. This would be my #1 wish, for Max 6
DISCUSSION
136 Comments