Anda di halaman 1dari 33

MuBu for Max

Max Reference Pages


11/2012
mubu mubu
MuBu container
Description Description
Multi-buffer container for sound description and motion capture data.
The MuBu multi-buffer can contain multiple temporally aligned tracks with an individual time representation
(periodically sampled or time-tagged data). Essentially, a track is a contiguous array of track elements each
including a 2-dimensional matrix of numeric values (representing scalars, vectors or matrices using 32-bit floating-
point values), and an item of extra data . Currently, label is the only supported type of extra data, allowing to
associate a symbol to each track element. As an option, the matrix of each track element can have a variable
number of rows.
The following options define the configuration of a track when it is created:
- time representation (timetagged)
- extra data type (extradata)
In order to keep the implementation of the MuBu track simple, the a track is preallocated to a given maximum size
(maxSize). The maxium size and the configuration options of a track can not be changed. Nevertheless, the
modifytrack message as well as messages sent to a given track allow for replacing a track with a track of another
configuration copying the original track's content.
Many MuBu externals such as the imubu editor and the synthesis externals (such as mubu.concat~), can interpret
the data stored in the different tracks of a container as being temporally aligned to a sound stored in a buffer~ or
polybuffer~.
By default a container has a single buffer . A container with multiple buffers repeats the same structure of tracks
multiple times. Each buffer of a MuBu conatiner may be associated (by its index) to a buffer of a polybuffer~.
While the content, the size, and the maximum size as well as other parameters (e.g. the sample rate) can be
different for the same track in different buffers, corresponding tracks of different buffers have to be of the same
configuration (time-tagged or not, extra data type). Consequently, when adding a track to a container with multiple
buffers, an empty track is also added to the other buffers of the given container. When a track in one buffer is
replaced by a new track of a different configuration (time-tagged/sampled, or extra data type), the corresponding
tracks in the other buffers are modified to fit the configuration of the new track.
Most of the messages sent to a MuBu container or (using the track message) to a particular track of the container,
concern only the current buffer of the container. The current buffer and the number of buffers can be changed by
attributes or messages (bufferindex and numbuffers).
Each track (of each buffer) has a track info table storing associated (meta) data as name/value pairs.
Arguments Arguments
Name Type Opt Description
MuBu name symbol opt Name of MuBu container
Messages Messages
refer MuBu container
name [symbol]
Refers to the MuBu container of the given name.
If a
mubu
object is the only reference to its current container, the
current container is saved as garbage before the new reference is set.
MuBu containers that have been saved as garbage can be restored via a
refer message. A warning message is posted into the Max window each
time a container is collected as or restored from garbage.
namebuffers Set buffer names from a list.
nametracks Set tracks from a list.
getname Outputs the name of the MuBu container (prefixed by 'name').
getbuffers Get buffer names/indices as list (prefixed by 'buffers').
gettracks Get track names/indices as a list (prefixed by 'tracks').
getnumbuffers Outputs the current number of buffers (prefixed by 'numbuffers').
getnumtracks Outputs the current number of tracks (prefixed by 'numtracks').
hasbuffer buffer index or
name [atom]
Outputs whether the given buffer exists (prefixed by 'hasbuffer').
hastrack track index or
name [atom]
Outputs whether the given track exists (prefixed by 'hastrack').
getbufferindex Outputs current buffer index (prefixed by 'bufferindex').
addbuffer buffer name
(optional)
[symbol]
Creates a new buffer.
insertbuffer Inserts buffer at given index.
movebuffer Move buffer at given index.
copybuffer Copies the given buffer.
removebuffer Removes the given buffer.
addtrack track name
(optional)
[symbol]
max size [int]
matrix cols [int]
matrix rows [int]
attributes [list]
Adds an empty track to the MuBu container or replaces an existing
named track by an empty track.
In addition to the arguments, the message allows for using an attribute
syntax to determine the configuration options and additional parameters
of the created track.
The following attributes are implemented:
@name [symbol]
track name (def: unnamed)
@maxsize [int]
maximum size (def: 256)
@matrixcols [int]
number of matrix columns (def: 1)
@matrixrows [int]
number of matrix rows (def: 1)
@matrixcolnames [list]
list of matrix column names
@matrixrowsvar [atom: 0 | 'no' | 1 | 'yes']
number of matrix rows
is variable or not (def: 'no')
@timetagged [atom: 0 | 'no' | 1 | 'yes']
track is time-tagged or not
(def: 'no')
@samplerate [float]
sample rate and sample period (def: 1)
@sampleperiod [float]
sample period and sample rate (def: 1000)
@sampleoffset [float]
sample offset time (def: 0)
@extradata [symbol: 'none' | 'label']
track extra data type (def:
'none')
@info [list]
list of track info keys and values
Note that when a track in one buffer is replaced by a new track of a
different configuration (time-tagged/sampled, matrix column names, or
extra data type), the corresponding tracks in the other buffers are
modified to fit the configuration of the new track.
inserttrack track index [int]
track name
(optional)
[symbol]
max size [int]
matrix cols [int]
matrix rows [int]
Inserts an empty track to the MuBu container or moves an existing
named to the given track index.
The track attributes are identical to those of the
addtrack
message.
attributes [list]
movetrack track index or
name [atom]
target track
index [int]
Moves the given track.
removetrack track index or
name [atom]
Removes the given track.
replacetrack track index or
name [atom]
max size [int]
matrix cols [int]
matrix rows [int]
attributes [list]
Replaces the given track with an empty track.
The track attributes are identical to those of the
addtrack
message.
copytrack track index or
name [atom]
new track name
[symbol]
attributes [list]
Creates a new track by copying the given existing track optionally
modifying the track attributes. The track attributes are identical to those
of the
addtrack
message.
modifytrack track index or
name [atom]
max size [int]
matrix cols [int]
matrix rows [int]
attributes [list]
Replaces the given track by a track with the given attributes copying the
content of the original track.
The track attributes are identical to those of the
addtrack
message.
croptrack track index or
name [atom]
maximum size
factor [float]
Crops a given tracks maximum size regarding the current size.
readall file path
[symbol]
Replaces the current content of the container by data read from a file. If
no file path is given, a file open dialog allows for chosing a file in the file
system.
Similar to
addtrack
, the read message allows for the definition of
attributes (depending on the file format).
If the
@name
attribute is specified in the message, a single track is
created with the given name. Multiple tracks are created with the given
name as prefix, followed by additional suffixes depending on the file
format and content.
The MuBu container supports the following import file formats:
- MuBu files (using custom SDIF types and a .mubu suffix)
- Multiple sound file formats
- SDIF, sound description interchange format
- MIDI standard files
- MusicXML
readappend file path
[symbol]
Appends one or more buffers to the container with data read from a file.
If no file path is given, a file open dialog allows for chosing a file in the
file system.
Depending on the file format, track attributes can be defined.
read file path
[symbol]
Inserts data from a file into the current buffer.
One or multiple tracks may be added to the container or replace existing
tracks. If no file path is given, a file open dialog allows for chosing a file
in the file system.
Depending on the file format, track attributes can be defined.
readtrack track index or
name [atom]
file path
[symbol]
Replaces the given track by data read from a file. If no file path is given, a
file open dialog allows for chosing a file in the file system.
Depending on the file format, track attributes can be defined.
readtrackappend track index or
name [atom]
file path
[symbol]
Appends data read from a file to the given track. One or multiple tracks
may be added to the container or replace existing tracks. If no file path is
given, a file open dialog allows for chosing a file in the file system.
Depending on the file format, track attributes can be defined.
writeall file path
[symbol]
Saves the content of the entire container (all buffer and tracks) into a file.
The files, suffixed with .mubu , are encoded in an SDIF compatible file
format using custom SDIF types for each track.
write file path
[symbol]
attributes [list]
Exports the data of one or multiple tracks of the currrent buffer into a
file. Currently only writing of SDIF files is supported.
SDIF Files
The Mubu container supports the import and export of SDIF files
containing name value tables, labels ('1LAB' signature) and numeric
matrix data (32-bit floating-point format only). Most SDIF files imported
by the container can be exported as identical files.
A track of the current buffer is only exported when its track info defines
at least a value for SDIF.FrameSigature . Additionally the values
SDIF.StreamId and SDIF.MatrixSigature can be defined to create more
complex SDIF files. When the track info value SDIF.FrameSigature is set
to 1NVT only the track info is exported, otherwise the track info is
ignored.
writetrack track index or
name [atom]
file path
[symbol]
Saves the content of a given track into a file.
clearall Removes all buffers and tracks from the container.
clear Removes all tracks from the container (leaving empty buffers).
cleartrack
printall Prints a summary of the container into the Max window.
print buffer index or
name [atom]
Prints a summary of the current buffer into the Max window.
printtrack track index or
name [atom]
Prints a summary of the given track (in the current container) into the
Max window.
buffer buffer index or
name [int]
message
[symbol]
arguments [list]
Sets the current buffer and optionally sends a message.
If 0 is given instead of a valid buffer id, the current buffer remains
unchanged and the message is send to all buffers of the container.
list Same as message
buffer
with a buffer index as first argument.
track track index or
name [atom]
message
[symbol]
arguments [list]
Calls a method of the given track.
If 0 is given instead of a valid track id, the message is applied to all tracks
of the container. All track messages are also messages of the
mubu.track
object.
Valid track messages are:
maxsize
[int: size] sets maximum track size *
maxsize
[int: size] sets maximum track size *
maxduration
[float: duration] sets maximum track size in ms (using
current samplerate) *
size
[int: size] sets current track size
duration
[float: duration] sets track current size in ms (using current
samplerate)
matrixdims
[int: cols] [int: rows] set number of matrix columns *
matrixcols
[int: cols] set number of matrix columns *
matrixrows
[int: rows] set number of matrix rows *
matrixrows
[int: index] [int: rows] set number of matrix rows at the
given index (requires
matrixvarrows
enabled)
matrixcolnames
[list: names] sets matrix column names
matrixvarrows
[int: switch] enables/disables individual variable
matrix rows for each track element *
extradata
['none' | 'label'] sets extra data type *
timetagged
[int: switch] sets whether track elements have time-tags
samplerate
[float: rate] sets sample rate (estimated worst case
average sample rate for time-tagged tracks)
sampleperiod
[float: period] sets sample period (estimated worst
case average sample period for time-tagged tracks)
sampleoffset
[float: offset] sets sample offset (0 for time-tagged
tracks)
silent
[int: switch] enables or disables updates to track listeners
getmaxsize
outputs maximum track size
getmaxduration
outputs maximum track size in ms (using current
samplerate)
getsize
outputs track size
getduration
outputs track size in ms (using current samplerate)
getmatrixcols
outputs number of matrix columns
getmatrixrows
outputs number of matrix rows
getmatrixcolnames
outputs matrix column names
getmatrixvarrows
outputs whether track allows track elements for
having a variable number of matrix rows
getextradata
outputs track extra data type
gettimetagged
outputs whether track has time-tagged data
getsamplerate
outputs sample rate
getsampleperiod
outputs sample period
getsampleoffset
outputs sample offset
getsilent
outputs whether track updates of track listeners are enabled
set
[int: index] [list: values] sets track element(s) at given index
insert
[int: index] [list: values] inserts track element(s) at given index
append
[list: values] appends element(s) to track
remove
[int: index] [int: num (opt)] removes element(s) from track
insertpoints
[list: time and values] inserts time-tagged element(s)
into track
appendpoints
[list: time interval and values] appends time-tagged
element(s) to track
removepoints
[float: time] [float: end time (opt)] removes time-
tagged element(s) from track
clear
clears track (removing all elements)
getinfo
[sym: key (opt)] outputs track info (all or for a given key)
info
[list: key and value pairs] sets track info from a list of key and
value pairs
write
[sym: file path] saves track data to a file
read
[sym: file path]
reads track data from a file
The messages marked with * will actually replace the existing track with
a new track copying the data.
Attributes Attributes
Name Type g/s Description
numbuffers int Sets the number of buffers of the container.
If new buffers are created, the additional tracks are created with the
same maximum size (maxSize) as the tracks of the last buffer.
bufferindex int Sets the current buffer.
trackindex int Sets the current track index.
embed int Enables/disables the conservation of the container data in copy/paste
and when saving the patcher.
Attention: This option should only be used for containers with a
relatively small amout of data. Larger amounts of data should be saved to
a file (see
write
).
Information for box attributes common to all objects Information for box attributes common to all objects
Examples Examples
See Also See Also
Name Description
imubu MuBu container with a graphical user interface
mubu.track Access MuBu track
imubu imubu
MuBu container with a graphical user interface
Description Description
MuBu container with a graphical user interface.
The object integrates a set of editors and viewers to visualize and graphically manipulate the data stored in a MuBu
container. Apart from the graphical interface all functionalities of the imubu object are identical with the mubu object.
The object displays each track of the current buffer of a MuBu container in a separate view.
providing a set of interfaces fitting different kinds of data. Most tracks can be viewed and editted with multiple interfaces
providing different points of view on the same data.
An additional wave or multiwave view is added when the MuBu container is associated to a buffer~ or polybuffer~ of the
same name.
________________________________________________________________________________________
Editor and Viewer Interfaces
The following view interfaces are available for different kinds of tracks:
- wave equally sampled scalars (or single element of matrices)
- multiwave equally sampled vectors (matrices are unrolled row by row)
- bpf time-tagged scalars (or single element of matrices)
- multibpf time-tagged vectors (matrices are unrolled row by row)
- traces time-tagged vectors defining a vertical value , color , and thickness
- sonogram equally sampled or time-tagged vectors (matrices are unrolled row by row)
- markers time-tagged matrix data and/or labels
- score time-tagged vectors defining pitch and duration
- matrix any data (time-tags and labels are displayed in extra columns)
Wave and Multiwave Editor (wav wav and mwav mwav)
The wave and multiwave editors display tracks with regulary sampled data (i.e. without time-tags) as waveforms. While
wave displays mono-dimensional data (scalars), multiwave can display multi-dimensional data (vectors and matrices) as
multiple superposed or juxtaposed waveforms. In the case that a track contains matrices with multiple columns and rows,
one the editor displays one waveform for each matrix element.
Tracks that allow the track elements (matrixvarrows enabled) for having a variable number of rows can not be displayed
with these editors.
Mouse interaction (with edit tool)
- command-click-drag draws wave (in multiwave also highlights corresponding wave)
- click-drag defines selection
- shift-click-drag extends selection
Arrow keys (with edit tool)
- left/right extends selection
- control-left/right reduce selection
- alt-left/right moves selection
- command-up/down increments/decrements values in selected range
- up/down switches highlighting to next wave (in multiwave)
Bpf and Multibpf Editor (bpf bpf and mbpf mbpf)
The bpf and multibpf editors display tracks with time-tagged data as break-point functions. While bpf displays mono-
dimensional data (scalars), multibpf can display multi-dimensional data (vectors and matrices) as multiple superposed or
juxtaposed break-point functions. In the case that a track contains matrices with multiple columns and rows, one the editor
displays one break-point function for each matrix element.
Tracks that allow the track elements (matrixvarrows enabled) for having a variable number of rows can not be displayed
with these editors.
Mouse interaction (with edit tool)
- command-click on background adds point
- click-drag on background selects points with rubber band
- click on point selects point (in multibpf also highlights corresponding bpf)
- shift-click on point extends selection of multiple points
- click-drag on selected points moves selected points
- backspace or cancel deletes selected points
The position of points is clipped to the position of the previous and next unselected points. The vertical value of an edited
point is clipped to the range (bounds) of the view.
Arrow keys (with edit tool)
- left/right switches selection to next point
- shift-left/right extends selection of multiple points
- command-left/right/up/down moves selected points
- up/down switches highlighting to next bpf (in multibpf)
Traces Editor (trc trc)
Mouse interaction (with edit tool)
- click-drag on background selects segment with rubber band
- shift-click on segment extends selection of multiple segments
- click-drag on segment changes value or moves segment horizontally (time-tags tracks only)
- command-click on background adds traces (time-tags tracks only)
- command-alt-click-drag on segment changes thickness
- command-alt-shift-click-drag on segment changes color
Sonogram Viewer (sono sono)
(no user interaction for editting)
Markers Editor (mrk mrk)
Mouse interaction (with edit tool)
- command-click adds marker
- click-drag on background selects markers with rubber band
- click on marker selects marker
- shift-click on marker extends selection of multiple markers
- click-drag on selected markers moves selected markers
- backspace or cancel deletes selected markers
- command-alt-click-drag on marker changes marker duration (if defined)
- command-alt-shift-click-drag on marker changes marker offset (if defined)
Arrow keys (with edit tool)
- left/right switches selection to next marker
- shift-left/right extends selection of multiple markers
For editting the value and the label of a selected marker:
1. press spacebar to edit label,
2. press spacebar again to edit cue,
3. press enter to exit
Score Editor (sco sco)
Mouse interaction (with edit tool)
- command-click on background adds note
- click-drag on background selects notes with rubber band
- click on note selects note
- shift-click on note extends selection of multiple notes
- click-drag on selected notes moves selected notes vertically (pitch) or horizontally (time)
- command-alt-click-drag on note changes duration
- backspace or cancel deletes selected notes
Arrow keys (with edit tool)
- left/right switches selection to next note
- shift-left/right extends selection of multiple notes
- command-left/right moves selected notes horizontally (time)
- command-up/down moves selected notes vertically (pitch)
- alt-command-left/right increments/decrements duration
Matrix Editor (mx mx)
Mouse interaction (with edit tool)
- doubleclick on unselected cell enters edit mode
- click on selected cell enters edit mode
- click off editted cell exits from edit mode
Arrow keys (with edit tool)
- left/right switches selection to previous/next column
- up/down switches selection to previous/next row
The enter key allows for toggling the selected cell between selection and editting.
________________________________________________________________________________________
Interface Components
The object provides a set of configurable interface components that can be displayed in addition to the views:
- Toolbar sets active tool or view interface
- Tabs organizes, shows/hides layered views
- BufferChooser sets current buffer
- DomainScrollbar scrolls and zooms horizontally (time) common to all views
- DomainRuler displays horizontal grid of (time) positions common to all views
- RangeRuler displays view dependent vertical grid of values
- Cursor displays horizontally moving cursor common to all views
- Region displays horizontal selection common to all views
BufferChooser
Mouse interaction
- click on buffer index sets current buffer
Domain Scrollbar
Mouse interaction
- click-horizontal drag scrolls
- control-click-horizontal drag zooms while keeping start position unchanged
- control-click-vertical drag zooms while keeping mouse down position unchanged
- with shift accelerated zoom and scroll
- control-double click sets zoom to show whole data duration in editor
Tabs
Mouse interaction
- click on tab brings corresponding view to front
- control-click on tab hides/shows corresponding view (foremost view stays visible)
- alt-click on tab shows corresponding view and hides all others
Toolbar
Mouse interaction
- click on tool buttons (on the left) sets active tool
- click on interface buttons (on the right) sets interface of the current view
________________________________________________________________________________________
Tools
The following tools are available:
- edit general tool allowing for most of the possible editing interactions
- draw adds new points/draws data (as edit tool but without command key)
- scrollzoom allows zoom ( command-click-drag vertically or horizzontally) and drag (click and drag horizzontally)
- cursor changes cursor position to mouse click/mouse move position
- region sets region selection (as edit tool but without alt key pressed)
Edit Tool
The edit tool is the default tool allowing for most of the possible editing interactions.
- select, move and delete data
- add new points or draw data (with command key pressed)
- change of region selection (with alt key pressed)
- move cursor (click and drag cursor component)
For a complete description of possible interactions, please refer to the list of editors above.
Arguments Arguments
None.
Messages Messages
refer MuBu container
name [symbol]
Refers to the MuBu container of the given name.
If a
mubu
object is the only reference to its current container, the current
container is saved as garbage before the new reference is set. MuBu containers
that have been saved as garbage can be restored via a refer message. A warning
message is posted into the Max window each time a container is collected as or
restored from garbage.
namebuffers Set buffer names from a list.
nametracks Set tracks from a list.
getname Outputs the name of the MuBu container (prefixed by 'name').
getbuffers Get buffer names/indices as list (prefixed by 'buffers').
gettracks Get track names/indices as a list (prefixed by 'tracks').
getnumbuffers Outputs the current number of buffers (prefixed by 'numbuffers').
getnumtracks Outputs the current number of tracks (prefixed by 'numtracks').
hasbuffer buffer index or
name [atom]
Outputs whether the given buffer exists (prefixed by 'hasbuffer').
hastrack track index or
name [atom]
Outputs whether the given track exists (prefixed by 'hastrack').
getbufferindex Outputs current buffer index (prefixed by 'bufferindex').
addbuffer buffer name
(optional)
[symbol]
Creates a new buffer.
insertbuffer Inserts buffer at given index.
movebuffer Move buffer at given index.
copybuffer Copies the given buffer.
removebuffer Removes the given buffer.
addtrack track name
(optional)
[symbol]
max size [int]
matrix cols [int]
matrix rows [int]
attributes [list]
Adds an empty track to the MuBu container or replaces an existing named
track by an empty track.
In addition to the arguments, the message allows for using an attribute syntax
to determine the configuration options and additional parameters of the
created track.
The following attributes are implemented:
@name [symbol]
track name (def: unnamed)
@maxsize [int]
maximum size (def: 256)
@matrixcols [int]
number of matrix columns (def: 1)
@matrixrows [int]
number of matrix rows (def: 1)
@matrixcolnames [list]
list of matrix column names
@matrixrowsvar [atom: 0 | 'no' | 1 | 'yes']
number of matrix rows is
variable or not (def: 'no')
@timetagged [atom: 0 | 'no' | 1 | 'yes']
track is time-tagged or not (def:
'no')
@samplerate [float]
sample rate and sample period (def: 1)
@sampleperiod [float]
sample period and sample rate (def: 1000)
@sampleoffset [float]
sample offset time (def: 0)
@extradata [symbol: 'none' | 'label']
track extra data type (def: 'none')
@info [list]
list of track info keys and values
Note that when a track in one buffer is replaced by a new track of a different
configuration (time-tagged/sampled, matrix column names, or extra data
type), the corresponding tracks in the other buffers are modified to fit the
configuration of the new track.
inserttrack track index [int]
track name
(optional)
[symbol]
max size [int]
matrix cols [int]
matrix rows [int]
attributes [list]
Inserts an empty track to the MuBu container or moves an existing named to
the given track index.
The track attributes are identical to those of the
addtrack
message.
movetrack track index or
name [atom]
target track
index [int]
Moves the given track.
removetrack track index or
name [atom]
Removes the given track.
replacetrack track index or
name [atom]
max size [int]
matrix cols [int]
matrix rows [int]
attributes [list]
Replaces the given track with an empty track.
The track attributes are identical to those of the
addtrack
message.
copytrack track index or
name [atom]
new track name
[symbol]
attributes [list]
Creates a new track by copying the given existing track optionally modifying
the track attributes. The track attributes are identical to those of the
addtrack
message.
modifytrack track index or
name [atom]
max size [int]
matrix cols [int]
matrix rows [int]
attributes [list]
Replaces the given track by a track with the given attributes copying the
content of the original track.
The track attributes are identical to those of the
addtrack
message.
croptrack track index or
name [atom]
maximum size
factor [float]
Crops a given tracks maximum size regarding the current size.
readall file path
[symbol]
Replaces the current content of the container by data read from a file. If no file
path is given, a file open dialog allows for chosing a file in the file system.
Similar to
addtrack
, the read message allows for the definition of attributes
(depending on the file format).
If the
@name
attribute is specified in the message, a single track is created
with the given name. Multiple tracks are created with the given name as prefix,
followed by additional suffixes depending on the file format and content.
The MuBu container supports the following import file formats:
- MuBu files (using custom SDIF types and a .mubu suffix)
- Multiple sound file formats
- SDIF, sound description interchange format
- MIDI standard files
- MusicXML
readappend file path
[symbol]
Appends one or more buffers to the container with data read from a file. If no
file path is given, a file open dialog allows for chosing a file in the file system.
Depending on the file format, track attributes can be defined.
read file path
[symbol]
Inserts data from a file into the current buffer.
One or multiple tracks may be added to the container or replace existing tracks.
If no file path is given, a file open dialog allows for chosing a file in the file
system.
Depending on the file format, track attributes can be defined.
readtrack track index or
name [atom]
file path
[symbol]
Replaces the given track by data read from a file. If no file path is given, a file
open dialog allows for chosing a file in the file system.
Depending on the file format, track attributes can be defined.
readtrackappend track index or
name [atom]
file path
[symbol]
Appends data read from a file to the given track. One or multiple tracks may be
added to the container or replace existing tracks. If no file path is given, a file
open dialog allows for chosing a file in the file system.
Depending on the file format, track attributes can be defined.
writeall file path
[symbol]
Saves the content of the entire container (all buffer and tracks) into a file. The
files, suffixed with .mubu , are encoded in an SDIF compatible file format using
custom SDIF types for each track.
write file path
[symbol]
attributes [list]
Exports the data of one or multiple tracks of the currrent buffer into a file.
Currently only writing of SDIF files is supported.
SDIF Files
The Mubu container supports the import and export of SDIF files containing
name value tables, labels ('1LAB' signature) and numeric matrix data (32-bit
floating-point format only). Most SDIF files imported by the container can be
exported as identical files.
A track of the current buffer is only exported when its track info defines at least
a value for SDIF.FrameSigature . Additionally the values SDIF.StreamId and
SDIF.MatrixSigature can be defined to create more complex SDIF files. When
the track info value SDIF.FrameSigature is set to 1NVT only the track info is
exported, otherwise the track info is ignored.
writetrack track index or
name [atom]
file path
[symbol]
Saves the content of a given track into a file.
clearall Removes all buffers and tracks from the container.
clear Removes all tracks from the container (leaving empty buffers).
cleartrack
printall Prints a summary of the container into the Max window.
print buffer index or
name [atom]
Prints a summary of the current buffer into the Max window.
printtrack track index or
name [atom]
Prints a summary of the given track (in the current container) into the Max
window.
buffer buffer index or
name [int]
message
[symbol]
arguments [list]
Sets the current buffer and optionally sends a message.
If 0 is given instead of a valid buffer id, the current buffer remains unchanged
and the message is send to all buffers of the container.
list Same as message
buffer
with a buffer index as first argument.
track track index or
name [atom]
message
[symbol]
Calls a method of the given track.
If 0 is given instead of a valid track id, the message is applied to all tracks of the
container. All track messages are also messages of the
mubu.track
object.
Valid track messages are:
arguments [list]
maxsize
[int: size] sets maximum track size *
maxduration
[float: duration] sets maximum track size in ms (using current
samplerate) *
size
[int: size] sets current track size
duration
[float: duration] sets track current size in ms (using current
samplerate)
matrixdims
[int: cols] [int: rows] set number of matrix columns *
matrixcols
[int: cols] set number of matrix columns *
matrixrows
[int: rows] set number of matrix rows *
matrixrows
[int: index] [int: rows] set number of matrix rows at the given
index (requires
matrixvarrows
enabled)
matrixcolnames
[list: names] sets matrix column names
matrixvarrows
[int: switch] enables/disables individual variable matrix
rows for each track element *
extradata
['none' | 'label'] sets extra data type *
timetagged
[int: switch] sets whether track elements have time-tags
samplerate
[float: rate] sets sample rate (estimated worst case average
sample rate for time-tagged tracks)
sampleperiod
[float: period] sets sample period (estimated worst case
average sample period for time-tagged tracks)
sampleoffset
[float: offset] sets sample offset (0 for time-tagged tracks)
silent
[int: switch] enables or disables updates to track listeners
getmaxsize
outputs maximum track size
getmaxduration
outputs maximum track size in ms (using current
samplerate)
getsize
outputs track size
getduration
outputs track size in ms (using current samplerate)
getmatrixcols
outputs number of matrix columns
getmatrixrows
outputs number of matrix rows
getmatrixcolnames
outputs matrix column names
getmatrixvarrows
outputs whether track allows track elements for having a
variable number of matrix rows
getextradata
outputs track extra data type
gettimetagged
outputs whether track has time-tagged data
getsamplerate
outputs sample rate
getsampleperiod
outputs sample period
getsampleoffset
outputs sample offset
getsilent
outputs whether track updates of track listeners are enabled
set
[int: index] [list: values] sets track element(s) at given index
insert
[int: index] [list: values] inserts track element(s) at given index
append
[list: values] appends element(s) to track
remove
[int: index] [int: num (opt)] removes element(s) from track
insertpoints
[list: time and values] inserts time-tagged element(s) into track
appendpoints
[list: time interval and values] appends time-tagged
element(s) to track
removepoints
[float: time] [float: end time (opt)] removes time-tagged
element(s) from track
clear
clears track (removing all elements)
getinfo
[sym: key (opt)] outputs track info (all or for a given key)
info
[list: key and value pairs] sets track info from a list of key and value
pairs
write
[sym: file path] saves track data to a file
read
[sym: file path] reads
track data from a file
The messages marked with * will actually replace the existing track with a new
track copying the data.
getbgcolor Outputs background color.
getdomain Outputs
domain
bounds.
getforemost Outputs index of foremost view.
getlayout Outputs layout [symbol: 'superposed' | 'juxtaposed'].
getopacity Outputs opacity value.
getorientation Outputs orientation [symbol: 'vertical' | 'horizontal'].
getcursor attribute name
[symbol]
Outputs
cursor
position or attribute values.
Valid messages are:
-
getcursor
outputs position of cursor
-
getcursor color
outputs color
-
getcursor size
outputs size
-
getcursor visible
outputs 1 if cursor is visible, 0 otherwise
getview view index or
corresponding
track name
[atom]
attribute name
[symbol]
Outputs attribute values of the given view (index or track name).
Valid messages are:
-
getview [atom] bgcolor
outputs background color for given view (
all
)
-
getview [atom] fgcolor
outputs foreground color for given view (
all
)
-
getview [atom] shape
outputs shape for given view (
bpf
,
mbpf
,
wav
,
mwav
,
sco
,
trc
)
-
getview [atom] bounds
outputs vertical bounds for given view (
bpf
,
mbpf
,
wav
,
mwav
,
sgrm
,
trc
,
sco
)
-
getview [atom] min
outputs vertical min for given view (
bpf
,
mbpf
,
wav
,
mwav
,
sgrm
,
trc
,
sco
)
-
getview [atom] max
outputs vertical max for given view (
bpf
,
mbpf
,
wav
,
mwav
,
sgrm
,
trc
,
sco
)
-
getview [atom] interface
outputs interface for given view (
all
)
-
getview [atom] visible
outputs 1 if given view is visible, 0 otherwise (
all
)
-
getview [atom] thickness
outputs thickness for given view (
wav
,
mwav
,
bpf
,
mbpf
,
mrk
)
-
getview [atom] foremost
outputs internal foremost index for given view
(
mbpf
and
mwav
)
-
getview [atom] opacity
outputs internal opacity for given view (
mbpf
and
mwav
)
-
getview [atom] layout
outputs internal layout for given view (
mbpf
and
mwav
)
-
getview [atom] visibleindexes
outputs list of visible indexes for given
view (
mbpf
and
mwav
)
-
getview [atom] drawmean
outputs 1 if drawmean attribute is 'on' for
given view (
wav
and
mwav
)
-
getview [atom] showcolnames
outputs 1 if column names are drawn for
given view (
mbpf
and
mwav
)
-
getview [atom] colormode
outputs color pattern used for given view
(
sgrm
,
trc
,
mwav
)
-
getview [atom] depth
outputs color depth for given view (
sgrm
,
trc
)
-
getview [atom] fgcolorgradient
outputs 1 if a color gradient is used for
given view (
trc
)
-
getview [atom] grid visible
outputs 1 if the internal grid is shown for
given view (
mx
)
-
getview [atom] grid color
outputs color of the internal grid for given view
(
mx
)
-
getview [atom] header visible
outputs 1 if the internal header is visible
for given view (
mx
)
-
getview [atom] header fgcolor
outputs foreground color of the internal
header for given view (
mx
)
-
getview [atom] header bgcolor
outputs background color of the internal
header for given view (
mx
)
-
getview [atom] header bordercolor
outputs border color of the internal
header for given view (
mx
)
getinfopanel (deprecated see
getrangeruler
)
getrangeruler attribute name
[symbol]
Outputs
rangeruler
attribute values.
Valid messages are:
-
getrangeruler grid
outputs 1 if grid is shown in views, 0 otherwise
-
getrangeruler visible
outputs 1 if ruler is visible, 0 otherwise
getruler (alias for
getdomainruler
)
getdomainruler attribute name
[symbol]
Outputs
domainruler
attribute values.
Valid messages are:
-
getdomainruler fgcolor
outputs foreground color
-
getdomainruler bgcolor
outputs background color
-
getdomainruler size
outputs size
-
getdomainruler position
outputs position
-
getdomainruler grid
outputs 1 if grid is shown in views, 0 otherwise
-
getdomainruler visible
outputs 1 if ruler is visible, 0 otherwise
getscrollbar (alias for
getdomainscrollbar
)
getdomainscrollbar attribute name
[symbol]
Outputs
domainscrollbar
attribute values.
Valid messages are:
-
getdomainscrollbar color
outputs color
-
getdomainscrollbar size
outputs size
-
getdomainscrollbar visible
outputs 1 if scrollbar is visible, 0 otherwise
gettabs attribute name
[symbol]
Outputs
tabs
attribute values.
Valid messages are:
-
gettabs size
outputs size
-
gettabs position
outputs display position [symbol: 'top' | 'left')
-
gettabs visible
outputs 1 if tabs are visible, 0 otherwise
getregion attribute name
[symbol]
Outputs
region
selection bounds or attribute values.
Valid messages are:
-
getregion
outputs bounds
-
getregion color
outputs color
-
getregion visible
outputs 1 if region is visible, 0 otherwise
gettoolbar attribute name
[symbol]
Outputs
toolbar
attribute values.
Valid messages are:
-
gettoolbar size
outputs size
-
gettoolbar position
outputs display position [symbol: 'top' | 'bottom' |
'left' | 'right')
-
gettoolbar bgcolor
outputs background color
-
gettoolbar visible
outputs 1 if toolbar is visible, 0 otherwise
infopanel (deprecated see
rangeruler
)
rangeruler attribute name
and arguments
Messages for
rangeruler
configuration.
[list]
Valid messages are:
-
rangeruler visible [int: 1 | 0]
shows/hides the ruler (def: 0)
-
rangeruler size [int]
sets the ruler size (def: 35)
-
rangeruler grid [int: 1 | 0]
shows/hides the grid in views (def: 0)
ruler (alias for
domainruler
)
domainruler attribute name
and arguments
[list]
Sets
domainruler
attributes.
Valid messages are:
-
domainruler visible [int: 1 | 0]
shows/hides the ruler (def: 0)
-
domainruler size [int]
sets size (def: 15)
-
domainruler position [symbol: 'top' | 'bottom']
sets display position
(def: 'bottom')
-
domainruler bgcolor [list: r, g, b]
sets background color (def: 'white')
-
domainruler fgcolor [list: r, g, b]
sets foreground color (def: 'black')
-
domainruler unit [symbol: 'milliseconds' | 'seconds' | 'minutes']
sets
time unit (def: 'milliseconds')
-
domainruler grid [int: 1 | 0]
shows/hides the grid in views (def: 0)
bufferchooser attribute name
and arguments
[list]
Sets
bufferchooser
attributes.
Valid messages are:
-
bufferchooser visible [int: 1 | 0]
shows/hides the component (def: 0)
-
bufferchooser size [int]
sets size (def: 12)
-
bufferchooser position [symbol: 'top' | 'left' | 'bottom' | 'right']
sets
display position (def: 'bottom')
-
bufferchooser bgcolor [list: r, g, b]
sets background color (def: 'white')
-
bufferchooser fgcolor [list: r, g, b]
sets foreground color (def: 'black')
split attribute name
and arguments
[list]
Sets
split
bar attribute for juxtaposed layout.
Valid messages are:
-
split [float list]
sets relative size of views in juxtaposed layout
-
split visible [int: 1 | 0]
shows/hides split bars (def: 1)
-
split size [int]
sets size (def: 2)
-
split color [list: r, g, b]
sets split bars color (def: 'white')
foremost Sets the foremost view.
view attribute name
and arguments
[list]
Sets attributes for given view (by index or by name) if defined.
Valid messages are:
-
view [atom] bgcolor [list: r, g, b]
sets background color for given view
(
all
)
-
view [atom] fgcolor [list: r, g, b]
sets foreground color for given view
(
all
)
-
view [atom] highlight_color [list: r, g, b]
sets highlight color for given
view (
all
)
-
view [atom] shape [symbol]
sets shape for given view (
bpf
,
mbpf
,
wav
,
mwav
,
sco
,
trc
)
-
view [atom] bounds [float, float]
sets vertical bounds for given view (
bpf
,
mbpf
,
wav
,
mwav
,
sgrm
,
trc
,
sco
)
-
view [atom] min [float]
sets vertical min for given view (
bpf
,
mbpf
,
wav
,
mwav
,
sgrm
,
trc
,
sco
)
-
view [atom] max [float]
sets vertical max for given view (
bpf
,
mbpf
,
wav
,
mwav
,
sgrm
,
trc
,
sco
)
-
view [atom] autobounds [int: 1 | 0]
forces view bounds to be aligned
with content (
all
)
-
view [atom] interface [symbol]
sets interface for given view (
all
)
-
view [atom] visible [int: 1 | 0]
with 1 sets given view visible, with 0
invisible (
all
)
-
view [atom] hidenotforemost [int: 1 | 0]
with 1 sets given view visible
only when foremost (
all
)
-
view [atom] thickness [int]
sets thickness for given view (
wav
,
mwav
,
bpf
,
mbpf
,
mrk
)
-
view [atom] foremost [int]
sets internal foremost index for given view
(
mbpf
and
mwav
)
-
view [atom] opacity [float]
sets internal opacity for given view (
mbpf
and
mwav
)
-
view [atom] layout [symbol: 'superposed' | 'juxtaposed']
sets internal
layout for given view (
mbpf
and
mwav
)
-
view [atom] visibleindices [int-list]
sets names or indexes of columns
containing graphic parameters for given view (
mrk
,
sct
,
trc
)
-
view [atom] paramcols [symbol/int list]
sets list of visible indices for
given view (
mbpf
and
mwav
)
-
view [atom] showmean [int: 1 | 0]
sets showmean attribute is 'on/off' for
given view (
wave
and
mwav
)
-
view [atom] showcolnames [int: 1 | 0]
with 1 column names are drawn
for given view (
mbpf
and
mwav
)
-
view [atom] fontsize [int]
Sets font size for given view (
mbf
,
mwav
),
mrk
,
mx
,
inf
,
sum
)
-
view [atom] fontstyle [symbol: plain, bold, italic, underlined]
Sets font
style for given view (
mbf
,
mwav
),
mrk
,
mx
,
inf
,
sum
)
-
view [atom] colormode [symbol]
sets color pattern used for given view
(
sgrm
,
trc
,
mwav
)
-
view [atom] colorpattern [symbol-list]
sets colors used by patetrn
colormode for given view (
mbpf
,
mwav
)
-
view [atom] depth [float, float]
sets color depth for given view (
sgrm
,
trc
)
-
view [atom] fgcolorgradient [int: 1 | 0]
with 1 a color gradient is used for
given view (
trc
)
-
view [atom] grid visible [int: 1 | 0]
sets internal grid visible for given
view (
mx
)
-
view [atom] grid color [list: r, g, b]
sets color of the internal grid for
given view (
mx
)
-
view [atom] header visible [int: 1 | 0]
sets internal header visible for
given view (
mx
)
-
view [atom] header fontstyle [symbol: plain | bold | italic]
sets
internal header fontstyle for given view (
mx
)
-
view [atom] header fgcolor [list: r, g, b]
sets foreground color of the
internal header for given view (
mx
)
-
view [atom] header bgcolor [list: r, g, b]
sets background color of the
internal header for given view (
mx
)
-
view [atom] header bordercolor [list: r, g, b]
sets border color of the
internal header for given view (
mx
)
-
view [atom] scrollbar visible [int: 1 | 0]
sets internal scrollbar visible for
given view (
mx
)
-
view [atom] toolbar visible [int: 1 | 0]
sets internal toolbar visible for
given view (
mx
)
domain attribute name
and arguments
Sets (time)
domain
attributes.
[list]
Valid messages are:
-
domain bounds [float, float]
sets bounds to given minimum and
maximum
-
domain min [float]
sets minimum of bounds
-
domain max [float]
sets maximum of bounds
-
domain center [float, float]
sets center and range of bounds
-
domain range [float]
sets range keeping the center
-
domain reset
resets bounds
cursor attribute name
and arguments
[list]
Sets
cursor
attributes and position.
Valid messages are:
-
cursor [float]
moves cursor to given time position in msec
-
cursor visible [int: 1 | 0]
shows/hides cursor (def: 0)
-
cursor size [int]
sets size (def: 3)
-
cursor color [list: r, g, b]
sets color (def: 'red')
toolbar attribute name
and arguments
[list]
Sets
toolbar
attributes.
Valid messages are:
-
toolbar visible [symbol: 'visible' | 'invisible' | 'retractable']

shows/hides the toolbar (def: visible)
-
toolbar size [int]
sets size (def: 30)
-
toolbar position [symbol: 'top' | 'left' | 'bottom' | 'right']
sets display
position (def: 'bottom')
-
toolbar bgcolor [list: r, g, b, a]
sets background color (def: 'white')
region attribute name
and arguments
[list]
Sets
region
selection bounds or attribute values.
Valid messages are:
-
region [float, float]
sets bounds
-
region color [list: r, g, b]
sets regions color (def: color contrasting with
background color)
-
region visible [int: 1 | 0]
shows/hides the selection (def: 1)
dscroll (alias for
domainscrollbar
)
domainscrollbar Sets
domainscrollbar
attributes.
Valid messages are:
-
domainscrollbar visible [int: 1 | 0]
shows/hides the scrollbar (def: 0)
-
domainscrollbar size [int]
sets size (def: 15)
-
domainscrollbar color [list: r, g, b]
sets background color (def: 'white')
tabs attribute name
and arguments
[list]
Sets
tabs
attributes.
Valid messages are:
-
tabs visible [int: 1 | 0]
shows/hides the component (def: 1)
-
tabs size [int]
sets size (def: 20)
-
tabs position [symbol: 'top' | 'left']
sets display position (def: 'top')
tool attribute name
and arguments
[list]
Sets active tool [symbol: 'edit' | 'draw' | 'scrollzoom' | 'region' | 'cursor' | 'lock']
(def: 'edit').
resizewithwindow Enable/disable automatic resize with window.
1: display keeps bounds offset when patcher window is resized
0: do not resize automatically
forceredraw Forces redrawing of visible views.
Attributes Attributes
Name Type g/s Description
numbuffers int
Sets the number of buffers of the container.
If new buffers are created, the additional tracks are created with the same
maximum size (maxSize) as the tracks of the last buffer.
bufferindex int Sets the current buffer.
trackindex int Sets the current track index.
embed int Enables/disables the conservation of the container data in copy/paste and
when saving the patcher.
Attention: This option should only be used for containers with a relatively
small amout of data. Larger amounts of data should be saved to a file (see
write
).
orientation int Editor orientation [symbol: 'horizontal' | 'vertical'].
layout int Editor layout [symbol: 'superposed' | 'juxtaposed'].
opacity unknown Sets opacity in superposed layout [float: 0 to 1] (def: 1).
domain_bounds float Domain bounds minimum and maximum.
bgcolor float Container background color [r g b a] (def: white)
alignviewbounds int Aligns bounds of editors to the global min max
autobounds int If ON forces all views bounds to be aligned with content
autoupdate unknown Sets the display refresh rate in milliseconds (0: no automatic refresh) (def:
120 ms)
windresize int Enables resize of container with window
outputvalues int Enables output of modified values
outputmouse int Enables output of mouse position/interaction
outputkeys int Enables output of keybord interaction
view_track int Selects current/foremost view
view_visible int Changes view visibility
view_hidenotforemost int Sets view visible only when foremost
view_interface symbol Sets gui interface for view
view_bounds unknown View vertical bounds [min max]
view_autobounds int Forces view bounds to be aligned with content
view_shape symbol Sets shape for view (
wav
,
mwav
,
bpf
,
mbpf
,
sco
,
trc
)
view_thickness int Sets line thickness for view (
wav
,
mwav
,
bpf
,
mbpf
,
mrk
)
view_fgcolor float Sets view foreground color [r, g, b, a]
view_bgcolor float Sets view background color [r, g, b, a]
view_stavecolor float View Staves Color
toolbar_size int Sets toolbar size (def: 30)
view_colormode symbol Sets color pattern for view (
sgrm
,
mwav
,
mbpf
,
trc
)
view_fgcolorgradient int On/off use of color gradient (
trc
)
view_depth unknown Sets color depths for given view (
sgrm
,
trc
)
view_showmean int Sets show mean on/off for given view (
mwav
,
mbpf
)
view_layout symbol Sets internal layout for given view [symbol: 'superposed' | 'juxtaposed'] (
mbpf
and
mwav
)
view_opacity unknown Sets internal opacity for given view [float] (
mbpf
and
mwav
)
view_foremost int Sets internal foremost index for given view (
mbpf
and
mwav
)
view_linkedtrackid unknown Sets id (name or index) of linked track (
scat
)
view_showcolnames int With 1 column names are drawn for given view (
mbpf
and
mwav
)
view_header_visible int Sets internal headers visibility for given view [symbol: all, columns, rows,
none] (
mx
)
view_header_fgcolor float Sets foreground color of the internal header for given view (
mx
)
view_header_bgcolor float Sets background color of the internal header for given view (
mx
)
view_header_bordercolor float
Sets border color of the internal header for given view (
mx
)
view_header_fontstyle int Sets header fontstyle of the internal header for given view [symbol: plain,
bold, italic] (
mx
)
view_grid_visible int Sets internal grid visible for given view (
mx
)
view_grid_color float (Sets internal grid color for given view [r, g, b, a] (
mx
))
view_scrollbars_visible int Sets internal scrollbars visibility for given view (
mx
)
view_toolbar_visible int Sets internal toolbar visibility for given view [symbol: visible | invisible |
retractable] (
mx
)
view_fontsize int Sets font size for given view (
mbf
,
mwav
),
mrk
,
mx
,
inf
,
sum
)
view_fontstyle int Sets view font style for given view [symbol: plain, bold, italic, underlined]
(
mbf
,
mwav
),
mrk
,
mx
,
inf
,
sum
view_highlight_color float Sets highlight colot fot given view [r, g, b, a] (
sct
)
toolbar_visible int Shows/hides the toolbar [symbol: 'visible' | 'invisible' | 'retractable'] (def:
visible)
toolbar_position int Sets toolbar position [symbol: 'top' | 'left' | 'bottom' | 'right'] (def: 'bottom')
toolbar_bgcolor float Sets background color [list: r, g, b, a] (def: 'white')
tabs_visible int Shows/hides tabs [int: 1 | 0] (def: 1)
tabs_position int Sets tabs position [symbol: 'top' | 'left'] (def: 'top')
tabs_size int Sets tabs size (def: 20)
bufferchooser_visible int Shows/hides the bufferchooser [int: 1 | 0] (def: 0)
bufferchooser_position int Sets display position [symbol: 'top' | 'left' | 'bottom' | 'right'] (def: 'bottom')
bufferchooser_size int Sets bufferchooser size (def: 12)
bufferchooser_shape symbol Sets bufferchooser shape (def: buttons)
bufferchooser_fgcolor float Sets bufferchooser foreground color [list: r, g, b] (def: 'black')
bufferchooser_bgcolor float Sets bufferchooser background color [list: r, g, b] (def: 'white')
domainscrollbar_visible int Shows/hides the domain scrollbar [int: 1 | 0] (def: 1)
domainscrollbar_size int Sets domain scrollbar size (def: 15)
domainscrollbar_color float Sets domain scrollbar background color [list: r, g, b] (def: 'white')
domainruler_visible int Shows/hides the ruler [int: 1 | 0] (def: 0)
domainruler_position int Sets domainruler position [symbol: 'top' | 'bottom'] (def: 'bottom')
domainruler_size int Sets domainruler size (def: 15)
domainruler_grid int Shows/hides the domainruler grid in views [int: 1 | 0] (def: 0)
domainruler_bgcolor float Sets domainruler background color [list: r, g, b] (def: 'white')
domainruler_fgcolor float Sets domainruler foreground color [list: r, g, b] (def: 'black')
domainruler_unit int Sets domainruler time unit [symbol: 'milliseconds' | 'seconds' | 'minutes']
(def: 'milliseconds')
rangeruler_visible int (to be documented)
rangeruler_size int Sets the rangeruler size (def: 35)
rangeruler_grid int Shows/hides the rangeruler grid in views [int: 1 | 0] (def: 0)
region_bounds unknown Sets region bounds [float, float]
split_size int Sets splitbars size (def: 2)
region_color float Sets regions color [list: r, g, b] (def: color contrasting with background color)
cursor_position unknown Sets cursor position in msec [float]
cursor_color float Sets cursor color [list: r, g, b] (def: 'red')
split_visible int Shows/hides split bars [int: 1 | 0] (def: 1)
cursor_visible int Hide/Show cursor
cursor_size int Sets cursor size (def: 3)
split_color float Sets split bars color [list: r, g, b] (def: 'white')
Information for box attributes common to all objects Information for box attributes common to all objects
Examples Examples
See Also See Also
Name Description
mubu MuBu container
mubu.track Access MuBu track
mubu.track mubu.track
Access MuBu track
Description Description
Reference to a track of a MuBu container allowing for optimized access to the track data. The reference is defined
by the name of a MuBu container, a track id (index or name), and a buffer index. Ones a mubu.track object is
connected to a track, the access to the data is lock-free. The object is informed of all changes in the container's lists
of tracks and buffers and reconnects the reference if necessary.
Arguments Arguments
Name Type Opt Description
MuBu name symbol opt Name of MuBu container
Track id atom opt Track index or name
Messages Messages
Attributes Attributes
Name Type g/s Description
mubuname symbol MuBu Container Name
trackid unknown Track Id
bufferindex int Buffer Index
matrixrow unknown Matrix Row
matrixcol unknown Matrix Column
connected int Connected
predef int Predefine Track
Information for box attributes common to all objects Information for box attributes common to all objects
Examples Examples
See Also See Also
Name Description
mubu MuBu container
imubu MuBu container with a graphical user interface
mubu.record mubu.record
Record data
Description Description
Record data into a track of a MuBu container.
Arguments Arguments
Name Type Opt Description
MuBu name symbol opt Name of MuBu container
Track id atom opt Track index or name
Messages Messages
Attributes Attributes
Name Type g/s Description
mubuname symbol MuBu Container Name
trackid unknown Track Id
bufferindex int Buffer Index
record int Enable/Disable Recording
progressoutput int Progress Output Mode
defer float Defer Recording
predef int Predefine Track
Information for box attributes common to all objects Information for box attributes common to all objects
Examples Examples
See Also See Also
Name Description
mubu.record~
mubu.record~ mubu.record~
Record data
Description Description
Record data into a track of a MuBu container.
Arguments Arguments
Name Type Opt Description
MuBu name symbol opt Name of MuBu container
Track id atom opt Track index or name
Messages Messages
Attributes Attributes
Name Type g/s Description
mubuname symbol MuBu Container Name
trackid unknown Track Id
bufferindex int Buffer Index
record int Enable/Disable Recording
progressoutput int Progress Output Mode
defer float Defer Recording
matrixcols int Matrix Columns
matrixrows int Matrix Rows
samplerate float Sample Rate
sampleperiod float Sample Period
predef int Predefine Track
Information for box attributes common to all objects Information for box attributes common to all objects
Examples Examples
See Also See Also
Name Description
mubu.record
mubu.process mubu.process
Process MuBu tracks
Description Description
The external streams the data of a given MuBu track through PiPo modules or patches directly recording the output
data into a target track. The iteration on the input stream can be scheduled synchronously or asynchronously with
different priorities. For asynchronous processing an independent thread is created for each MuBu buffer.
Processing is automatically triggered when data is recorded to the input track as well as for any other modification.
Arguments Arguments
Name Type Opt Description
MuBu name symbol opt Name of MuBu container
Track id atom opt Track index or name
PiPo definition symbol opt PiPo module or series of PiPo modules
Messages Messages
Attributes Attributes
Name Type g/s Description
mubuname symbol MuBu Container Name
bufferindex unknown Buffer Index
trackid unknown Input Track Id
process int Enable Processing
priority int Process Thread Priority
dataoutput int Output Data
progressoutput int Progress Report Format
name symbol Output Track Name
Information for box attributes common to all objects Information for box attributes common to all objects
Examples Examples
See Also See Also
Name Description
mubu.knn mubu.knn
K-NN unit selection
Description Description
K-nearest neighbor search on matrix data of a MuBu container's track using a kD-tree. The search can include
matrix data of a given track over multiple buffers of a referred MuBu container. The buffers of the referred
container that are included into kD-tree can be selected by the include and exclude messages. The object internally
constructs a kD-tree from the included data.
The selection data is given as a float or list representing a scalar, vector or matrix corresponing to the matrix
dimensions of the referred track. The kd-Tree search uses an Euklidian distance between the given selection data
and the matrix data normalized by its standard deviation. Additionally, a weight can be defined for each matrix
element (message weights) in order to scale their importance in the search.
As an option, the object can scale incoming selection data to the mean and standard deviation or to the minimum
and maximum of the data included into the KNN search using the scaling attribute (typically applied to normalized
input data). The minimum, maximum, mean and standard deviation calculated over the included data at the
construction of the kD-tree can be output using the messages getmin, getmax, getmean, and getstddev.
By default, the kD-tree is not updated automatically when the track content changes, but can be updated using the
update message. Initializing and changing the referred a MuBu container and/or track (messages and attributes
mubuname, trackid, and refer) as well as setting the buffers included into the KNN search (messages include and
exclude) automatically will cause the (re-)construction of the kD-tree. Since the constructing the kD-tree may
represent a considerable amout of calcultaion, it is recommend to carefully choose the moment when the kD-tree is
constructed.
Arguments Arguments
Name Type Opt Description
MuBu name symbol opt Name of MuBu container
Messages Messages
int Search neighbors of given values.
float Select neighbors of given values.
list Select neighbors of given values.
select Select neighbors of given values.
update Update kD-tree with current track values.
include indices of included
buffers [list]
Sets buffers (by index) that are included in the k-NN search and
reconstructs the kD-tree (all other buffers of the referred MuBu
container are excluded).
exclude indices of excluded
buffers [list]
Sets buffers (by index) that are excluded from the k-NN search and
reconstructs the kD-tree (all other buffers of the referred MuBu
container are included).
getincluded Outputs list of indices of buffers that are included in the k-NN search.
getexcluded Outputs list of indices of buffers that are excluded from the k-NN search.
getmin Outputs the minima of the matrix data included in the k-NN search.
getmax Outputs the maxima of the matrix data included in the k-NN search.
getmean Outputs the mean values of the matrix data included in the k-NN search.
getstddev Outputs the standard deviation of the matrix data included in the k-NN
search
Attributes Attributes
Name Type g/s Description
mubuname symbol MuBu Container Name
trackid unknown Track Id
k int Maximum Number of Returned Neighbors
radius unknown
Maximum Distance
weights unknown Selection Weights
scaling int Scaling Mode
Information for box attributes common to all objects Information for box attributes common to all objects
Examples Examples
See Also See Also
Name Description
mubu.granular~ mubu.granular~
MuBu granular synthesis engine
Description Description
This externals performs asynchronous and synchronous granular synthesis.
For granular synthesis in synchronous mode, a marker track is required that marks the elementary waveforms of
the audio stream.
Arguments Arguments
Name Type Opt Description
MuBu name symbol opt Name of MuBu container
Marker track id atom opt marker track index or name (for synchronous mode)
Messages Messages
refer MuBu container
name [symbol]
track index or name
[atom]
set MuBu container and track id
resetoutputs clear internal output buffers
bang trigger grain/segement or synchronize periodic playing
position position [float]
transition time
(optional) [float]
set grain/segement position
list position [float]
transition time
(optional) [float]
play until position and stop at end
int set position
float set position
stop stop playing
Attributes Attributes
Name Type g/s Description
mubuname symbol MuBu Container Name
markers unknown Marker Track Id
audio unknown Audio Track Id
bufferindex int Buffer Index
cyclic int Cyclic Audio
microtiming int Micro timing
minmaxperiod float Minimum Maximum Period
maxduration float Maximum Duration
maxdelay float Maximum Duration
maxresampling float Maximum Resampling
advance float Scheduling Advance
delay float Scheduling Delay
play int Enable Periodic Playing
period float Period (Abs/Rel)
periodvar float
Period Random Variation (Abs/Rel)
positionvar float Position Random Variation
centered int Position Refers to Grain Center
duration float Duration (Abs/Rel)
durationvar float Duration Random Variation (Abs/Rel)
attack float Attack Time (Abs/Rel)
release float Release Time (Abs/Rel)
window symbol Window Function
level float Level
levelvar float Level Random Variation
resampling float Resampling
resamplingvar float Resampling Random Variation
filtermode int Filter Mode
filterfreq float Filter Cutoff/Center Frequency
filterfreqvar float Filter Frequency Random Variation (Abs/Rel)
filterq float Filter Q-Factor
filterqvar float Filter Q-Factor Random Variation (Abs/Rel)
filtergain float Filter Gain
duplicatechannels int Duplicate Grain Channels
channeloffset int Output Channel Offset
outputgains float Output Gains
outputdelays float Output Delays
voicedcol unknown Voiced Coeff Marker Column
voicedminmax float Voiced Coeff Min/Max
vuoverlap float Voiced/Unvoiced Waveform Overlap
unvoicedlevel float Unvoiced Level
minsourcefreq int Minimum Source Frequency
tdi int Time Domain Waveform Interpolation
Information for box attributes common to all objects Information for box attributes common to all objects
Examples Examples
See Also See Also
Name Description
mubu.concat~ MuBu concatenative synthesis engine
mubu.concat~ mubu.concat~
MuBu concatenative synthesis engine
Description Description
This external synthesizes entire segments of a given audio track. The segments are defined by a given marker track.
In addition to the segment onset times, the marker track can define a duration and offset for each segment.
Arguments Arguments
Name Type Opt Description
MuBu name symbol opt Name of MuBu container
Marker track id atom opt marker track index or name
Messages Messages
refer MuBu container
name [symbol]
track index or name
[atom]
set MuBu container and track id
resetoutputs clear internal output buffers
bang trigger grain/segement or synchronize periodic playing
position position [float]
transition time
(optional) [float]
set grain/segement position
list position [float]
transition time
(optional) [float]
play until position and stop at end
int set position
float set position
stop stop playing
markerindex merker index [int] set marker index
Attributes Attributes
Name Type g/s Description
mubuname symbol MuBu Container Name
audio unknown Audio Track Id
markers unknown Marker Track Id
bufferindex int Buffer Index
markerchange int Don't Repeat Marker Index
outputmarkers int Output Markers
aligned int Aligned Playing
cyclic int Cyclic Audio
microtiming int Micro timing
minmaxperiod float Minimum Maximum Period
maxduration float Maximum Duration
maxdelay float Maximum Duration
maxresampling float Maximum Resampling
advance float Scheduling Advance
delay float
Scheduling Delay
play int Enable Periodic Playing
period float Period (Abs/Rel)
periodvar float Period Random Variation (Abs/Rel)
positionvar float Position Random Variation
duration float Duration (Abs/Rel)
durationcol unknown Duration Marker Column
durationvar float Duration Random Variation (Abs/Rel)
offset float Offset
offsetcol unknown Offset Marker Column
attack float Attack Time (Abs/Rel)
release float Release Time (Abs/Rel)
window symbol Window Function
level float Level
levelvar float Level Random Variation
resampling float Resampling
resamplingvar float Resampling Random Variation
filterqvar float Filter Q-Factor Random Variation (Abs/Rel)
outputdelays float Output Delays
filtermode int Filter Mode
filterfreq float Filter Cutoff/Center Frequency
filterfreqvar float Filter Frequency Random Variation (Abs/Rel)
filterq float Filter Q-Factor
filtergain float Filter Gain
duplicatechannels int Duplicate Grain Channels
channeloffset int Output Channel Offset
outputgains float Output Gains
Information for box attributes common to all objects Information for box attributes common to all objects
Examples Examples
See Also See Also
Name Description
MuBu concatenative synthesis engine

Anda mungkin juga menyukai