Max wrapper for Omni.
Compile omni code into Max objects
.
1) nim
2) git
3) cmake
4) gcc (Windows
) / clang (MacOS
)
Note that omni only supports nim version 1.6.0. It is recommended to install it via choosenim.
To install omnimax
, simply use the nimble
package manager (it comes bundled with the nim
installation).The command will also take care of installing omni
:
nimble install omnimax -y
omnimax ~/.nimble/pkgs/omni-0.4.2/examples/OmniSaw.omni
ins
and outs
represent audio inlets / outlets.params
and buffers
can be set via messages and attributes. Consider this example:
MyOmniObject.omni
params:
freq
amp
buffers:
buf1
buf2
... implementation ...
These params
and buffers
can be initialized on object instantiation. All numeric values will initialize params
, and all symbol values will initialize buffers
:
[ myomniobject~ 440 foo 0.5 bar ]
In the previous example, freq == 440
/ amp == 0.5
/ buf1 == foo
/ buf2 == bar
.
Another option is to use the attribute syntax:
One can also use name $1
and set name $1
messages to set the values of params
and buffers
at runtime:
( set freq 440 ) == ( freq 440 )
( set amp 0.5 ) == ( amp 0.5 )
( set buf1 foo ) == ( buf1 foo )
( set buf2 bar ) == ( buf1 bar )
Finally, all params
and buffers
support the attrui
object.
Check omni’s website.