A graphical interface for managing supervised machine learning on libmapper connections.
ImplicitMapper is a reimplementation in Qt/C++ of the logic from the implicitmap MaxMSP external object and its MaxMSP graphical interface.
One of the design philosophies of the libmapper project is avoid reinventing or reimplementing existing tools for mapping – instead we endeavour to make it easy to link disparate tools together with a low overhead for compatibility. As an example, we linked several tools for using supervised machine learning for creating implicit mapping between gesture and sound synthesis, such as the MnM tools from IRCAM (Bevilacqua et al., NIME 2006) with libmapper through a custom external object for MaxMSP. This object – implicitmap – takes the place of the regular MaxMSP binding objects for libmapper, adding support for querying destination devices for their states (which we already supported through libmapper) and for dynamically adjusting the number of local inputs and outputs as necessary.
In addition, we created a new graphical interface in MaxMSP for supporting the needs of implicit mapping, with a live display of mapped input and output and curved lines to indicate sampling of the source and destination parameter spaces. Each time a snapshot is requested, libmapper handles retrieving the current destination state over the network, so parameters of the (e.g.) synthesizer can be adjusted using its own interface or manipulated using a 3rd souce of control data. A “randomize” button was also added to allow quick exploration of the destination parameter space without leaving the implicit mapping GUI.
This software is copyright those found in the AUTHORS file, and is licensed under the GNU Lesser Public General License version 2.1 or later. Please see COPYING for details.
In accordance with the LGPL, you are allowed to use it in commercial products provided it remains dynamically linked, such that this software always remains free to modify. If you'd like to use it in an outstanding context, please contact the AUTHORS to seek an agreement.