Difference between revisions of "Main Page"

From ModWiki
Jump to: navigation, search
(Installation)
(First pass at a general overhaul for readability, organization, and clarity. tl;dr wall of text at the top of the page needs the most work - much of it should probably go to a How It Works page)
Line 1: Line 1:
'''MediaWiki has been successfully installed.'''
+
== Monomodular ==
  
Consult the [http://meta.wikimedia.org/wiki/Help:Contents User's Guide] for information on using the wiki software.
+
'''Monomodular''' is a modular environment for using grid-style controllers with Max For Live plugins, as well as a framework for M4L plugin development. It began as a multi-color monome experiment over two years ago. It was designed with live musical performance as its most important goal. It is still under active development, and is being offered as beta, but is being used for both production and performance by its author and many others (you should, too!).
  
  
== '''Monomodular''' ==
+
Monomodular is roughly based on a server/client principle, with Monomodular acting as an intermediary between different plugins and grid controllers.
  
Monomodular as a whole is a modular environment for plugin control and development for use with grid-based controllers in Max for Live. It began as a multi-color Monome experiment over two years ago. It was designed with live musical performance as its most important goal. It is currently still in development, and is being offered as beta, but is being used for both production and performance by its author and many others (so you should, too!).
+
[This should probably be simplified, with the bulk being moved to a more technical page] The basic idea is that Monomodular offers multiple simultaneous controllers access to multiple simultaneous plugins, and does so in a seamless and transparent fashion. Monomodular stores the states of all its clients, and is capable of interpreting a library of standard functions which are called from each individual control surface type in such a manner so that it does not need to be aware of what kind of control surface is connected to it in order to interpret its calls or correctly format its returns to the receiving component. The type of data its stores is fairly generic and conforms to the monome standard in some ways, but is also fairly arbitrary in that the core can be easily modified to store different types of data to suit the situation (for instance, it has been easily adapted to handle data types and addresses for both the Livid Code and CNTRL:R hardware devices).
  
  
Monomodular is roughly based on a server/client principle, where Monomodular is an intermediary between different plugins and controllers.  The basic idea is that Monomodular offers multiple simultaneous controllers access to multiple simultaneous plugins, and does so in a seamless and transparent fashion.  Monomodular stores the states of all its clients, and is capable of interpreting a library of standard functions that are called from each individual control surface type in such a manner so that it does not need to be aware of what kind of control surface is connected to it in order to interpret its calls or correctly format its returns to the receiving component. The type of data its stores is fairly generic and conforms to the monome standard in some ways, but is also fairly arbitrary in that the core can be easily modified to store different types of data to suit the situation (for instance, it has been easily adapted to handle data types and addresses for both the Livid Code and CNTRL:R hardware devices).
+
As of version b99, the core of Monomodular is a Python control surface plugin which runs in Ableton Live's proprietary Python environment, contains a basic framework for communicating with [[#Supported devices|several types of hardware]]. It allows communication between up to 5 grid controllers with up to 16 client patches directly from the surface of the controller. It gives basic functionality of navigating and displaying a Monome256 workspace, and provides the base functionality for quickly writing or converting new plugins to work with its format.
  
  
As of version b99, the core of Monomodular is a Python control surface plugin that runs in Ableton Live's proprietary Python environment, containing a basic framework for communicating with several types of hardware (currently Launchpad, APC20, APC40, Livid's Ohm64, Block, Code, and iPad via a custom interface built both TouchOSC and Lemur). It allows communication between up to 5 grid controllers with up to 16 client patches directly from the surface of the controller. It gives basic functionality of navigating and displaying a Monome256 workspace, and provides the base functionality for quickly writing or converting new plugins to work with its format.
+
As of version b993, the Monomodular Python script also contains socket functionality which allows it to natively communicate with devices designed to work with monome hardware without any further component needs. It publishes via Bonjour its address and ports, and communicates directly from the Python workings within Live.
  
  
As of version b993, the Monomodular Python script also contains socket functionality that allows it to natively communicate with devices designed to work with monome hardware without any further component needs. It publishes via  Bonjour its address and ports, and communicates directly from the Python workings within Live.
+
There are many client patches included with the suite. Most of the early patches were ports of popular monome patches, but now the release includes many of amounra's own creations. The majority are for MIDI generation and generative processes, but the capabilities for using Monomodular are only limited by the imagination of the scripter.
  
  
There are many client patches included with the suite. Most of the early patches were ports of popular monome patches, but now the release includes many of amounra's own creations.  The majority are for MIDI generation and generative processes, but the capabilities for using Monomodular are only limited by the imagination of the scripter.
+
On the MaxMSP side of things, the Monomodular format is largely dependent upon a single javascript object, which can be manipulated in many different ways. In addition to using the prebuilt mods, it offers the capability of creating one's own custom patches easily in MaxforLive and using them within the framework of Monomodular, or adapting patches which you've already built to be used with a grid controller.
  
  
On the MaxMSP side of things, the Monomodular format is largely dependent upon a single javascript object, which can be manipulated in many different ways.  In addition to using the prebuilt mods, it offers the capability of creating one's own custom patches easily in MaxforLive and using them within the framework of Monomodular, or adapting patches that you've already built to be used with a grid controller.
+
== Installation ==
  
== '''Installation''' ==
+
==== How? ====
  
You can view a more detailed explanation of how the installer works by visiting the [[Installation]] page.
+
<strike>
 +
Download the installer and use its "Subversion" button to install the most recent version (recommended):
  
==== How? ====
+
[http://www.aumhaa.com/Monomodular/Monomodular_Installer_OSX.amxd OSX Installer]
--------
 
  
Download the installer only, and use its "Subversion" button to download the most current version (recommended):
+
[http://www.aumhaa.com/Monomodular/Monomodular_Installer_Win.amxd Windows Installer]
  
[http://www.aumhaa.com/Monomodular/Monomodular_Installer_OSX.amxd  OSX Installer]
+
If you are using Windows, you will need to install the command-line subversion tool, [http://www.sliksvn.com/en/download SlikSVN] (or something else which takes svn commands).
 +
</strike>
  
[http://www.aumhaa.com/Monomodular/Monomodular_Installer_Win.amxd Windows Installer]
+
SVN installation is not yet available in b993, so just download the complete [http://www.aumhaa.com/Monomodular/Monomodular_b993.zip Monomodular b993 Content] package (which contains installers for Win and OSX), unpack it somewhere convenient, then either double-click the appropriate .amxd for your platform, or drop same into an open Live set.
  
If you are using Windows, you will need to install the command-line subversion tool, [http://www.sliksvn.com/en/download SlikSVN] (or something else that takes compatible commands).
+
If you run into trouble, the [[Installation]] page contains a few tips and gotchas, as well as a more detailed explanation of how the installer works, for the curious.
  
or
+
==== What? ====
  
Download the last major build, with all dependent files frozen, here:  [http://www.aumhaa.com/Monomodular/Monomodular_b993.zip Monomodular b993 Content]
+
The Installer patch is a fairly simple M4L utility which reads information about your Live and Max installations and tries to determine where files should be put on your system. Because Monomodular is not an application in itself, but is instead a collection of scripts and Max patches, it needs to be installed a bit differently than most things. The installer patch gets some information from Ableton's log and the currently running instance of Live. This process is not perfect, however, and under certain circumstances you'll have to locate the correct installation paths manually. The installer will alert you if it is unable to locate something it needs.
  
 +
If you have a persistent problem with installation, please contact amounra with the specifics, and a copy of Ableton's '''log.txt''' file [location?], so that the installer can be improved.
  
==== Where? ====
+
The installer installs three main categories of files:
---------
 
  
If you need to know where certain files are located, or would like to change some things with the installation, please refer to the [[Manual Installation]] page.
+
* '''Mods'''
  
 +
:M4L patches which "do stuff" in conjunction with a grid controller. The list is growing, but you can go to the [[Mods]] page to learn a little bit about what's currently available. You can also access an information page on this wiki from within the plugin itself by hitting the Help button.
  
==== What? ====
 
----------
 
  
The Installer patch is a fairly simple utility that parses information about your Live and Max installations and tries to determine where files should be located on your system.  Because Monomodular is not an application in itself, but instead a collection of scripts and Max patches, it is somewhat exempt from the normal routines of the average installer.  The installer patch gets what information it can from Ableton's log.txt file in its preferences folder and parses the locations from your currently running instance of Live.  This process is, however, not perfect, and under certain circumstances you will have to locate the correct installation paths manually.
+
* '''Framework Scripts'''
  
If this is a persistent problem, please contact amounra with the specifics, and a copy of your log.txt file, so that the installer can be improved.
+
:These are the Python scripts which
 +
::* Allow your grid controller to interact with Live and link to the main Monomodular script.
 +
::* Set up the main Monomodular script, the "hub" which controls interactions among the grid controller, Live, and Mods.
  
The installer installs three main categories of files:
 
  
'''Mods'''
+
* '''Other Stuff'''
  
MaxforLive patches that do 'something' in conjunction with a grid controller.  The list is growing, but you can go to the [[Mods]] page to see what they are about.  You can also access their information page from within the plugin itself by hitting the help button and linking to this wiki.
+
:Miscellaneous files which need to be here or there in order for things to work correctly.
  
'''_Framework Scripts'''
+
==== Where? ====
  
These are the Python scripts that allow your controller to make things happen in live and link to the Monomodular hub (also a Python script).
+
If you need to know where certain files are located, or would like to change some things with the installation, please refer to the [[Manual Installation]] page.
  
'''Other Stuff'''
 
  
Miscellaneous files that need to be here or there in order for things to work right.
+
== How Monomodular Works ==
  
=='''How Monomodular Works'''==
+
You can read a description of the basic functionality of every Monomodular-enabled control script on the [[How Monomodular Works]] page.
 +
More detailed information is available at each controller's page.
  
You can read a description of the basic functionality of every Monomodular enabled control script on the [[How Monomodular Works]] page.  For a detailed description of the rest of a control scripts functionality, please refer to the links below:
+
====== Supported devices ======
  
[[How Monomodular Works|A Basic description of how Monomodular works]]
+
*[[How to use the AumPC scripts|Akai's APC 20 and APC 40]]
  
[[How to use the Ohm64 script]]
+
*[[How to use the BlockMod script|Livid's Block]]
  
[[How to use the BlockMod script]]
+
*[[How to use the Codec script|Livid's Code]]
  
[[How to use the LaunchMod script]]
+
*[[How to use the iOs scripts|Apple's iPad, using either TouchOSC or Lemur]]
  
[[How to use the Codec script]]
+
*[[How to use the LaunchMod script|Novation's Launchpad]]
  
[[How to use the AumPC scripts]]
+
*[[How to use the Ohm64 script|Livid's Ohm64]]
  
[[How to use the iOs scripts]]
 
  
 
[[Help|Building your own Mods]]
 
[[Help|Building your own Mods]]
  
=='''What Comes with Monomodular'''==
 
  
There is a listing of all the current content with an explanation of how they work on the [[Mods]] page.  This is an evolving instruction and commentary on each plugin, so its a good idea to check back from time to time to find new information.
+
== What Comes with Monomodular ==
  
[[Mods|The Mods Listing Page]]
+
The [[Mods|Mods page]] lists all current mods. It's an evolving work-in-progress instruction and commentary on each plugin, so it's a good idea to check back from time to time for new information.

Revision as of 16:12, 28 June 2012

Monomodular

Monomodular is a modular environment for using grid-style controllers with Max For Live plugins, as well as a framework for M4L plugin development. It began as a multi-color monome experiment over two years ago. It was designed with live musical performance as its most important goal. It is still under active development, and is being offered as beta, but is being used for both production and performance by its author and many others (you should, too!).


Monomodular is roughly based on a server/client principle, with Monomodular acting as an intermediary between different plugins and grid controllers.

[This should probably be simplified, with the bulk being moved to a more technical page] The basic idea is that Monomodular offers multiple simultaneous controllers access to multiple simultaneous plugins, and does so in a seamless and transparent fashion. Monomodular stores the states of all its clients, and is capable of interpreting a library of standard functions which are called from each individual control surface type in such a manner so that it does not need to be aware of what kind of control surface is connected to it in order to interpret its calls or correctly format its returns to the receiving component. The type of data its stores is fairly generic and conforms to the monome standard in some ways, but is also fairly arbitrary in that the core can be easily modified to store different types of data to suit the situation (for instance, it has been easily adapted to handle data types and addresses for both the Livid Code and CNTRL:R hardware devices).


As of version b99, the core of Monomodular is a Python control surface plugin which runs in Ableton Live's proprietary Python environment, contains a basic framework for communicating with several types of hardware. It allows communication between up to 5 grid controllers with up to 16 client patches directly from the surface of the controller. It gives basic functionality of navigating and displaying a Monome256 workspace, and provides the base functionality for quickly writing or converting new plugins to work with its format.


As of version b993, the Monomodular Python script also contains socket functionality which allows it to natively communicate with devices designed to work with monome hardware without any further component needs. It publishes via Bonjour its address and ports, and communicates directly from the Python workings within Live.


There are many client patches included with the suite. Most of the early patches were ports of popular monome patches, but now the release includes many of amounra's own creations. The majority are for MIDI generation and generative processes, but the capabilities for using Monomodular are only limited by the imagination of the scripter.


On the MaxMSP side of things, the Monomodular format is largely dependent upon a single javascript object, which can be manipulated in many different ways. In addition to using the prebuilt mods, it offers the capability of creating one's own custom patches easily in MaxforLive and using them within the framework of Monomodular, or adapting patches which you've already built to be used with a grid controller.


Installation

How?

Download the installer and use its "Subversion" button to install the most recent version (recommended):

OSX Installer

Windows Installer

If you are using Windows, you will need to install the command-line subversion tool, SlikSVN (or something else which takes svn commands).

SVN installation is not yet available in b993, so just download the complete Monomodular b993 Content package (which contains installers for Win and OSX), unpack it somewhere convenient, then either double-click the appropriate .amxd for your platform, or drop same into an open Live set.

If you run into trouble, the Installation page contains a few tips and gotchas, as well as a more detailed explanation of how the installer works, for the curious.

What?

The Installer patch is a fairly simple M4L utility which reads information about your Live and Max installations and tries to determine where files should be put on your system. Because Monomodular is not an application in itself, but is instead a collection of scripts and Max patches, it needs to be installed a bit differently than most things. The installer patch gets some information from Ableton's log and the currently running instance of Live. This process is not perfect, however, and under certain circumstances you'll have to locate the correct installation paths manually. The installer will alert you if it is unable to locate something it needs.

If you have a persistent problem with installation, please contact amounra with the specifics, and a copy of Ableton's log.txt file [location?], so that the installer can be improved.

The installer installs three main categories of files:

  • Mods
M4L patches which "do stuff" in conjunction with a grid controller. The list is growing, but you can go to the Mods page to learn a little bit about what's currently available. You can also access an information page on this wiki from within the plugin itself by hitting the Help button.


  • Framework Scripts
These are the Python scripts which
  • Allow your grid controller to interact with Live and link to the main Monomodular script.
  • Set up the main Monomodular script, the "hub" which controls interactions among the grid controller, Live, and Mods.


  • Other Stuff
Miscellaneous files which need to be here or there in order for things to work correctly.

Where?

If you need to know where certain files are located, or would like to change some things with the installation, please refer to the Manual Installation page.


How Monomodular Works

You can read a description of the basic functionality of every Monomodular-enabled control script on the How Monomodular Works page. More detailed information is available at each controller's page.

Supported devices


Building your own Mods


What Comes with Monomodular

The Mods page lists all current mods. It's an evolving work-in-progress instruction and commentary on each plugin, so it's a good idea to check back from time to time for new information.