< Back to IRCAM Forum

Modalys 3.6.0.b11


I have just issued a new beta version - b11 - since b10 broke the modalys~ object (Modalys for Max).

Also, releases are now accessible from this modalys beta project page, rather that from the googledrive :wink:
(Don’t hesitate to contact me if you have any problem getting access to the beta project page.)


3.6 beta cumulative release notes
- Modalys for Max: modalys~ object was broken in b10
- macOS Catalina support with fully notarized installer
- recompiled, correctly codesigned Modalisp and Medit
- updated Matlab objects (64bit)
- mlys.lua :
* moved from luajit to moonjit lib
* new function modalys.view_mesh(--mesh ref--): to invoke Medit
* new object modalys.inlet_observer to monitor inlet updates. With "modalys.inlet_observer.callback = my_callback" you shall assign a callback of your own receiving 2 parameters: inlet# and current float value.

Modalys for Max
- mlys.lua:
* "mlys" alias namespace created. So instead of "modalys.freq_to_midi", you may write the more compliant "mlys.freq_to_midi"
* aliases added to functions, to match legacy namings: modalys <-> mlys, make_object <-> create_object,
make_connection <-> create_connection, make_mesh <-> create_mesh, make_point_output <-> create_point_output, extend_mesh <-> create_mesh

Modalys for Max
- a long-standing request: modifying an attribute in mlys.expression (and now mlys.lua) doesn't erase the script content anymore!
- mlys.lua:
* improved stability.
* modalys.release now accepts any series of item references. For instance modalys.release(mystring,mymesh,ctrl1)
* new function modalys.compute_modes(--object reference--)
* new function get_pitched_finite_element_object(--parameters--). Parameters are: "mesh", "name", "block" (a mesh that describes the fixed nodes), "midinote" or "frequency", "modes" (amount), "thickness" (for 2D mesh), "density", "young", "poisson", "constloss", "freqloss".
* new function modalys.freeze_object(--object reference--) For now, it is only for actual objects (strings, tubes etc.) but the plan is to extend it to access and controllers.
* new function modalys.get_mesh(--object reference--) to get the mesh reference of a given 3D-based object.
* new objects implemented in create_object (more to come...)
* new connections implemented in create_connection (more to come...)

Modalys for Max
- mlys.lua
* new function modalys.midi_to_freq(--midi note--)
* new function modalys.freq_to_midi(--freq--)
* new function normalised_random()
* new function modalys.create_access(--parameters--). Parameters are: "kind" (normal, trans0 etc.), "where" (object ref), "name", "location"/"position" (can 1- or 2-dimensional, or a node etc.)
* new function modalys.create_point_output(--parameters--)
* new function modalys.create_object(--parameters--)
* new function modalys.create_connection(--parameters--)
* new function modalys.create_mesh(--parameters--)
* new function modalys.extend_mesh(--parameters--)
* new function modalys.transform_mesh(--parameters--)
* new function modalys.save_mesh(--parameters--). Parameters are: "mesh", and "path" (can be relative).
* new function modalys.create_connection(--parameters--)
1 Like

Amazing, thanks Robert!


Hey Robert,

Looking forward to see the developments in 3.6.0.

Currently I am having an error when loading the lua examples that reads:

modalys~: sample rate switched from [6.95313e-310] to [-1.14948e-308]. Please reload your modalys script.


Hi Emiddio,

Thanks for your report. Hmm… these sample rate values don’t make sense! :grimacing:
Which specific lua example are you loading? Your version is 3.6.0.b11, right?
Also, which OS are you running?


1 Like

It was the latest one, as I downloaded it yesterday so it must have been 3.6.0.b10. Will try 3.6.0.b11 now!

I am on:

MacOS Mojave 10.14.6
Max 8.1.8 64-bit

As it affected most of my recent modalys work I panicked and went back to 3.5 version.

Yesterday I had various sample rate values changes with 3.6.0.b11, not just in lua examples but in other ones as well.

I will try to recreate errors if this helps but I also hope it’s not something on my side.
So far I only saw the lua code, other than that I did not get any of the lua examples to work.

It works with 3.6.0.b11 now!

So far lua_autobuild, lua_nonlinear examples work.

I do get a lua_view3d to build mesh, but don’t know how to proceed with that. The Applyenvelope generates no sound.

And lua_pitched3dBell freezes my system.

Thank you Emiddio for your testing. That helps a lot! :sparkles:

So we’re making progress (kind of!..)
I am currently completing the lua implementation and soon we’ll have all objects, controllers, access and connections available. I will definitely look into the broken examples you mentioned.


1 Like

Amazing - this is an immense update making 2021 a very exciting year in the midst of it all…Looking forward.

Thank you!

Yes, I expect it to be an important release, and mlys.lua is but a little revolution… That said there is still work to be done, so again every effort from beta testers is much appreciated!

1 Like