mMm is an all-in-one audio framework and composer. It is host of a large amount of plug-able abstractions, that are collected in the 4m library. One of the goals is a clean, dynamic interface for fast interaction.
The framework
Consists of arranger and sequencer controlling up to 64 modules. All parameter are automated with a pattern sequencer. A pattern is a parameter-sequence of all the modules of a channel. The pattern can be arranged to compose whole songs.
Each channel has parameter such as level or panorama and 8 chained modules. Modules can be dynamically created in one of the 64 slots. A module can be used in multiple instances at the same time.
Signal flow
A channel is designed for the signal to flow down through a chain of modules. A module can add, modify or bypass the incoming signal. Some modules are designed to break this system and send data across different channels. If they send up the chain it might result in a feedback and there will be a 1 block delay.
A set of mmm-abstractions for the modules is provided to plug onto the mother-patch.
4m library
4m stands for "modules for mMm", that is the whole collection of usable instruments and tools for mMm. Most of them are ports from pd-help-browser, the pd-list, the pd-forum, netpd and different websites. Every module has its own individual set of parameter.
Categories: Synths, Drums, Effects, Gem, Tools, Sampling, Netpd, Sequencers, Envelopes and Generator(should be Waveforms).
Development
There is an ongoing development to enhance the usability of the interface. Improvements for the framework and new modules are in planing. Especially in the mmm-abstractions provided for the modules to plug on mMm.
The dsp part can be optimized in a few aspects. Empty slot are still using 4 dsp-objects that could be reduced. mMm could turn off dsp objects while creating new modules, which possibly reduce some clicks.
The scrolling system is unsatisfying and might change to a click-able solution. The parameters might still need to be scrollable, but could be extended with a MIDI/pc-keyboard. The interface will gain a whole new row in the sequencer to replace the pattern field.
next: First Steps