Max 7.1 released

Ben Bracken's icon

We are happy to announce the release of Max 7.1!

Along with over 50+ bug fixes, we have added a number of new features. Max 7.1 introduces the Package Manager, a curated selection of Max add-on content and tools to manage which Packages are currently installed in Max. We have expanded the Snapshots feature, and now support full patcher snapshots, as well as a Snapshot API for use in Javascript and thispatcher. We have also removed buffer~ (and most buffer~ related objects) channel limits. See the list below for a few other new features, as well as the complete fixed bugs list.

As always, you can download the new installers here:
https://cycling74.com/downloads/

This can be installed over your previous Max 7 installation, and will not affect installs of Max 6.x or lower. We hope you enjoy this new version of Max!

-Ben

New Features:
• buffer~: removed channel limits for buffer~, waveform~, index~, poke~, peek~, jit.buffer~, record~, wave~, play~
• comment: 'suppressinlet' attribute
• flonum: very large numbers now use scientific notation
• javascript: added 'readtext' feature that reads a text file into a string
• jit.matrix: support for TIFF image export on both platforms
• Package Manager
• Patcher Snapshots and Snapshots API
• 'relaunchmax': message to Max to restart

Fixed Bugs:
• BEAP: presentation rect is respected
• Debug Window: improved highlight colors
• Doc Browser: improved relevance sorting for doc search
• Encapsulation: encapsulation in new view respects patching/presention mode
• Encapsulation: no longer adds to presentation when in new view
• filterdesign: fixed Live crash when saved in MFL device
• flonum: fixed crash when trying to display large number
• Inspector: fixed standalone window opening issues
• Javascript Documentation: layout improvements
• jit.convolve: fixed crash with long matrices in 64-bit
• jit.gl.shader: fixed crash on shader file replacement and free
• jit.gl.text / jit.textfile: no longer renders errant characters
• jit.gl.text: fixed issues with input from jit.str.fromsymbol
• jit.grab: fixed crash when adding / removing USB capture device (AVF)
• jit.matrix / jit.movie: improved PNG file reading
• jit.movie: 32 QT engine reports correct framecount for stock h264
• jit.movie: animated gif support for QT 32
• jit.movie: asyncread works with AVF engine
• jit.movie: avf engine @adapt 0 @output_texture 1 properly reads files
• jit.movie: avf engine non-adapt asyncread outputs first frame
• jit.movie: clear/dispose messages work with output_texture 1
• jit.movie: fixed avf engine issues when switching from palindrome loop mode
• jit.movie: fixed avf engine memory leak with read message
• jit.phys.ghost: fixed crash when closing patch
• jit.phys.multiple: properly outputs right to left
• jit.phys.picker: fixed touch message
• jit.pwindow: reports correct mouse coords when bound to gl context
• jit.window: disabled OS fullscreen capabilities for all windows ('fullscreen' message still works)
• jit.world: fixed toggle fullscreen crash
• jstask: properly freed from memory
• Keyboard input: fixed crash with 2-set Korean (el capitan only)
• live.gain~/plot~: dsp is properly not restarted when changing the number of inputs
• live.param~: appropriately gets parameter value on device load
• live.param~: fixed invalid object warnings
• Max Database: improve database performance especially in the case of network user accounts
• Max network user accounts: improved database performance
• Max For Live: fixed crash on freeze/unfreeze of device with BEAP module
• Max For Live: fixed crash when starting Max 7 with ARCLite signature
• Mouse: cursor no longer disappears when typing any key
• nslider: removed roundness attribute
• Objects: editing text of box no longer sets fontface attribute to default
• onepole~: frequency response accuracy improvements
• patch cords: improvements to horizontal curve / bend
• patching: fixed crashing when escaping an in-progress patchcord connection
• patching: patch cord connections work as expected when scheduler is stopped (and 'Stop/Resume Scheduler' returns to the Edit menu)
• patching: performance improvements for dragging many boxes and patchlines
• playlist~: fixed 'append' usage without arguments
• Projects: non-explicit files in the project search path are found
• Reference & Documentation: properly uses digest entries instead of label values
• rslider: fixed jittery drawing of low range value
• Snippets: embedded bpatcher snippet is no longer empty when dragged from mini browser in toolbar
• Standalone: fixed mp3 buffer~ inclusion crash
• vst~: fixed crash when unchecking 'show controls in patcher'

endless's icon

yay for TIFF image export!

Iman Fattah's icon

Should Max for Live users update?

metamax's icon

Thank you!

Just one thing... I don't like complaining.. I really don't... but I was disappointed to see that the reproducible [codebox] bug that crashes Max has not been fixed. I posted a thread about the problem and submitted a bug report but never got a reply. I mean, this isn't just about something not working or outputting incorrect values.. it's crashing the application, causing irreversible data loss. That seems like the sort of thing that should get some attention, no?

Bug: Command/click on the border of [codebox] in an unlocked gen patcher and Max instantly crashes.
Macbook Pro Retina 2012 - Yosemite 10.10.5

Above all, I am grateful for the work you folks are doing. It's easy to forget that Cycling74 only has a small team of developers because the work you do looks like a big team production...

Max Patch
Copy patch and select New From Clipboard in Max.

Ben Bracken's icon

Hi Metamax,

I don't believe Support ever saw an email from you about this, but I can reproduce here and will look into it.

-Ben

hz37's icon

I just want to say: wow, fantastic! I love Max and this update is just another reason for it. Thanks for making a great product even better!

yaniki's icon

Wow! Tons of improvements and the Package Manager... as a... christmas gift ;-)

Ben Bracken's icon

This update is recommended for Max For Live users who are running Live 9.5+.

-Ben

unfunfionn's icon

What a great release. Fantastic work again!

I notice that fullscreen on the Mac is gone again though. Is that a permanent change? As a 13 inch MacBook user, I absolutely always used fullscreen. Even the very small additional space it created went a long way.

vichug's icon

Hey, there is a bug when i update. I encountered this previously and had an exchange with the support about it.
The bug is happening when i have custom content in Users/Shared/Max 7/Examples. In my case, it's a csound~ folder, which contains examples for the csound~ max external, and which was installed there by the csound~ installer. Because (probably because) i had this csound~ folder, every existing Max built-in example folder was removed from this location, and nothing was added by max afterwards, so after that i can't access any of the built-in examples content. After removing temporarily csound~, and then reinstalling Max, it's all good.

MJ's icon

el capitan ?

Jeremy's icon

@vichug OSX permissions in /Users/Shared are surprisingly broken, as some Stack Overflow research can confirm. As far as I'm concerned, the authors of the csound package are at fault here, using our folder for their content. In any case, we are aware of the issue, but don't currently have a timeline for a fix, if a fix is even possible, given the OS behavior.

vichug's icon

@Jeremy thanks for clarifying this. I used to think previously that those folders were purposely accessible to users, i will act accordingly now... I take it they should rather distribute their whole thing as a Max package ?

Jeremy's icon

That would be great, they might want to submit their package for C74 distribution as well! :-)

We wanted those folders to be user-accessible so that it's easier to browse the contents, but any changes will be blown away on the next Max update (unless something like csound~ screws up the folder permissions), so it's not really intended to be a user-writable space.

Lars Graugaard's icon

Is max7.1 fully compatible with El Capitan?

Ben Bracken's icon

@Lars, yes, Max 7.1 should work fine with El Capitan/10.11, we are not aware of any problems.

-Ben

aceslowman's icon

Already been said, but yeah, being able to make the patcher fullscreen was important for me, although it was definitely broken before. Hopefully it comes back.

piearesquared's icon

Is there an option to make it work within 64 bit Ableton? I downloaded 7.1 and installed it (Mac Mountain Lion) and it doesn't seem to open within Ableton, gives me an error about Mac being 32 bit and I can't seem to find a download for a 64 bit version

Ben Bracken's icon

Hi Mohammed,

If Max is not running, it should start up in the same architecture that Live is running when you click on the 'edit' button.

You can also set the architecture of Max by going to the Finder and choosing "Get Info" on the Max.app. Uncheck the "Open in 32-bit mode" option.

-Ben

Chris's icon

@austin, @unfunfionn, I’m not 100% sure what you mean by fullscreen, but you can toggle a patcher window to be fullscreen using javascript. Save the below (e.g. as fullscreen.js) somewhere in Max’s search path and then load it in Max: [js fullscreen]. Attach a toggle to the inlet to turn fullscreen on and off. (You could also install the 264 Tools package, which includes a similar implementation with UI as a bpatcher.)

// fullscreen.js
// make a patcher window fill the screen
//
// S E T U P
inlets = 1;
outlets = 1;
setinletassist(0, 'toggle fullscreen on/off (1/0)');
setoutletassist(0, 'fullscreen status (1/0)');
var p = this.patcher;
// F U L L S C R E E N   F U N C T I O N
// msg_int -- evaluates any integer input and uses non-zero
// to toggle fullscreen on in a parent patcher, and zero to
// toggle fullscreen off in a parent patcher
function msg_int(val) {
    p = this.patcher;
    if(p) {
        if(val === 0) {
            p.fullscreen(0);
            outlet(0, 0);
        } else {
            p.fullscreen(1);
            outlet(0, 1);
        }
    }
}
jonah's icon

thanks!

what i found useful about osx level fullscreen in 11.1 was locking it to a desktop space and especially multiple windows snapping together in one full screen view - although it would be more useful to me if you could have windows run length of window horizontally rather than vertically.

is there example of "javascript: added ‘readtext’ feature that reads a text file into a string"? couldn't find it in reference.

Chris's icon

Here’s an example of the readtext() method. As above, save (for example as readtext.js) in your Max search path. Once loaded in a js object, send a message readtext [path to your file as a symbol] to trigger the text-reading function in the first inlet. (As normal, just the filename should also work instead of a full path if Max’s search path contains a file of that name.) First outlet will return a text string, second outlet a 1 or 0 depending on whether the file was found.

// S E T U P
inlets = 1;
outlets = 2;
setinletassist(0, 'readtext [file path]');
setoutletassist(0, 'string read from file');
setoutletassist(1, 'file read success flag (0 = failure; 1 = success)');
// R E A D   T E X T
function readtext(path)
{
    var file = new File(path);
    var text;
    
    if (file.isopen) {
        text = file.readtext();
        outlet(0, text);
        outlet(1, 1);
        file.close();
    } else {
        post("could not open file: " + path + "\n");
        outlet(1, 0);
    }
}
piearesquared's icon

Thanks Ben, it works perfectly now :)

Zachary Daulton's icon

Where can I download other versions of Max 7.0.X? Are the latest updates the only ones available? I was cleaning out my C:\Windows\Installer folder and I guess I deleted the stored install package for Max 7.0.6. When installing Max 7.1, it runs the package to uninstall 7.0.6. Well there is no package anymore and I get this error (attached to post). The simplest solution would be to re-download 7.0.6 and direct the source uninstaller. For compatibility reasons and testing patches, I assumed all the released 7.0.X versions would be available for download. https://cycling74.com/downloads/older/ only has 2 versions of Max 6. To cleanly uninstall 7.0.6, I need the msi package.

uhoh.png
png
Ben Bracken's icon

We've added the Max 7.0.6 installers to the 'older downloads' page:
https://cycling74.com/downloads/older/

Drop a note to Support if you are still having problems uninstalling.

-Ben

Zachary Daulton's icon

This worked perfectly! Thank you so much!

Jonas Bülow's icon

Hi,

Will the java requirement on OSX go away in the near future?

/Jonas

andrew williams's icon

Hi,

Great tutorials on the 'lessons' and I'm enjoying starting off in Max!

I'm a newbie, so apologies if in the wrong area to place this, although I couldn't find a feedback topic for lessons and tutorials...

Lesson 4 'Play a Max for Live synth with colors' Step 10 'Add a Max for Live instrument' I cannot find the 'Example M4L Instrument' that should be in: Plug-ins>Live Devices 'Example M4L Instrument', but it's not there in Max 7.1. Is there anywhere I can download this and if so, where do I then place it?

Feel free in moving this to the relevant topic, as this is my first post and I'm finding my way around!

Great work! :-)

Thanks

Will

Rob Ramirez's icon

hi will, welcome to Max!

thanks for pointing that out, i also am unable to locate the device. we'll try and track it down.

DominikK's icon

Has the feature to drag a color from the inspector to the patcher and create a messagebox with message and RGB values entirely removed?
If yes, is there a new thing which is as convenient?
I used it a lot to create color changing GUI objects and the attrui object which is created now seems completely useless for these kind of things...

There are a few nice new features in Max 7 but the ridiculously complicated licensing system (if you are a studio and have a lot of licenses/dongles) and the fact that the GUI behaves like the fat clumsy brother of Max 6.1 keep me from being too enthusiastic.

zarpud's icon

I think the same as DOMINIKK for me max7 is a regression in term of presentation, the attrui object is not convenient at all.
And it doesn't work in "multi number" for "bgfillcolor" for the Umenu.
On top why the margin text of all the boxes are so big, the boxes are bigger than in Max6 and we have to change all our presentation.