Non-Mixer: Tweak MIDI mapping section of doc and render MUP to HTML.

This commit is contained in:
Jonathan Moore Liles 2017-07-08 10:11:23 -07:00
parent 9fdf3a6ae3
commit 1904aba516
2 changed files with 52 additions and 29 deletions

View File

@ -48,21 +48,23 @@ Jonathan Moore Liles <a href="mailto:male@tuxfamily.org">&lt;male@tuxfamily.org&
<ul><li><a href="#n:1.2.3.1.1.">1.2.3.1.1. OSC Control</a> <ul><li><a href="#n:1.2.3.1.1.">1.2.3.1.1. OSC Control</a>
<li><a href="#n:1.2.3.1.2.">1.2.3.1.2. Manipulation</a> <li><a href="#n:1.2.3.1.2.">1.2.3.1.2. MIDI Control</a>
<li><a href="#n:1.2.3.1.3.">1.2.3.1.3. Module Parameter Editor</a> <li><a href="#n:1.2.3.1.3.">1.2.3.1.3. Manipulation</a>
<li><a href="#n:1.2.3.1.4.">1.2.3.1.4. Controls</a> <li><a href="#n:1.2.3.1.4.">1.2.3.1.4. Module Parameter Editor</a>
<ul><li><a href="#n:1.2.3.1.4.1.">1.2.3.1.4.1. Control Voltages</a> <li><a href="#n:1.2.3.1.5.">1.2.3.1.5. Controls</a>
</ul><li><a href="#n:1.2.3.1.5.">1.2.3.1.5. Spatialization </a> <ul><li><a href="#n:1.2.3.1.5.1.">1.2.3.1.5.1. Control Voltages</a>
<ul><li><a href="#n:1.2.3.1.5.1.">1.2.3.1.5.1. Spatializer Module</a> </ul><li><a href="#n:1.2.3.1.6.">1.2.3.1.6. Spatialization </a>
<ul><li><a href="#n:1.2.3.1.5.1.1.">1.2.3.1.5.1.1. Reverb Routing</a> <ul><li><a href="#n:1.2.3.1.6.1.">1.2.3.1.6.1. Spatializer Module</a>
</ul><li><a href="#n:1.2.3.1.5.2.">1.2.3.1.5.2. LADSPA Plugins</a> <ul><li><a href="#n:1.2.3.1.6.1.1.">1.2.3.1.6.1.1. Reverb Routing</a>
</ul><li><a href="#n:1.2.3.1.6.2.">1.2.3.1.6.2. LADSPA Plugins</a>
</ul></ul></ul></ul><li><a href="#n:1.3.">1.3. Spatialization Console</a> </ul></ul></ul></ul><li><a href="#n:1.3.">1.3. Spatialization Console</a>
@ -225,7 +227,7 @@ A strip is focused when you click on it. Focus can be moved among strips with th
</p> </p>
<h3 id="n:1.2.2.">1.2.2. Control</h3> <h3 id="n:1.2.2.">1.2.2. Control</h3>
<p> <p>
The focused strip can be moved in the display order via the <tt>[</tt> and <tt>]</tt> keys. <tt>Delete</tt> removes a strip (with confirmation dialog). <tt>n</tt> and <tt>w</tt> set the focused strip's width to <i>narrow</i> or <i>wide</i>, respectively, and <tt>f</tt> and <tt>s</tt> switch between <i>fader</i> and <i>signal</i> views. The strip's context menu can be invoked without the mouse by hitting the <tt>Menu</tt> key (assuming your keyboard has one). The focused strip can be moved in the display order via the <tt>[</tt> and <tt>]</tt> keys. <tt>Delete</tt> removes a strip (with confirmation dialog). <tt>n</tt> and <tt>w</tt> set the focused strip's width to <i>narrow</i> or <i>wide</i>, respectively, and <tt>f</tt> and <tt>s</tt> switch between <i>fader</i> and <i>signal</i> views. The strip's context menu can be invoked without the mouse by hitting the <tt>Menu</tt> key (assuming your keyboard has one).
</p> </p>
<h3 id="n:1.2.3.">1.2.3. Signal Chain</h3> <h3 id="n:1.2.3.">1.2.3. Signal Chain</h3>
<p> <p>
@ -305,9 +307,25 @@ If same module/plugin is used twice in a signal chain (e.g. multiple Gain stages
For the second instance of the Gain module on the strip named 'Foo'. For the second instance of the Gain module on the strip named 'Foo'.
</p> </p>
<p> <p>
There's a possibility to get exact OSC path for module controls. For this you need to switch strip mode to 'Signl', right click a module, for example 'Gain', and open 'Edit parameters' dialog. OSC path will be shown in a statusbar of the main window when you hover a parameter.
</p>
<p>
Non-DAW accesses these same signals via a more advanced signal routing layer on top of OSC. Any module parameter is easily controlled via Control Sequences in Non-DAW without the need to specify an OSC URL. Non-DAW accesses these same signals via a more advanced signal routing layer on top of OSC. Any module parameter is easily controlled via Control Sequences in Non-DAW without the need to specify an OSC URL.
</p> </p>
<h5 id="n:1.2.3.1.2.">1.2.3.1.2. Manipulation</h5> <h5 id="n:1.2.3.1.2.">1.2.3.1.2. MIDI Control</h5>
<p>
Automatic translation between MIDI and Non's OSC Signals can be achieved by adding the headless program <tt>non-midi-mapper</tt> (included in the Non-Mixer distribution) to an NSM session.
</p>
<p>
Non-MIDI-Mapper provides JACK MIDI input and output ports that can be connected to a suitable controller device.
</p>
<p>
In Non-Mixer, the <tt>Remote Control/Start Learning</tt> menu item enters learning mode in which Non Mixer can be taught which controls to associated with which MIDI messages by clicking a control in Non-Mixer and moving the desired control on the MIDI device. <tt>Remote Control/End Learning</tt> ends the learning session.
</p>
<p>
The mapping will be saved with the NSM session.
</p>
<h5 id="n:1.2.3.1.3.">1.2.3.1.3. Manipulation</h5>
<p> <p>
Left-clicking on a module brings up a Module Parameter Editor window for the selected module. Left-clicking on a module brings up a Module Parameter Editor window for the selected module.
</p> </p>
@ -323,7 +341,7 @@ Control+Right-clicking on a module causes it to be removed from the chain (modul
<p> <p>
The focused module may also be controlled via the keyboard. <tt>Menu</tt> brings up the context menu for the focused module. <tt>Space</tt> opens the module parameter editor, <tt>b</tt> toggles the bypassed state, and <tt>Delete</tt> removes the module from the chain (without confirmation!). <tt>Control-X</tt>, <tt>Control-C</tt> and <tt>Control-V</tt>, cut, copy, and paste modules, respectively. Modules may be copied within or across chain boundaries. The normal module I/O constraints also apply to pasted modules. The focused module may also be controlled via the keyboard. <tt>Menu</tt> brings up the context menu for the focused module. <tt>Space</tt> opens the module parameter editor, <tt>b</tt> toggles the bypassed state, and <tt>Delete</tt> removes the module from the chain (without confirmation!). <tt>Control-X</tt>, <tt>Control-C</tt> and <tt>Control-V</tt>, cut, copy, and paste modules, respectively. Modules may be copied within or across chain boundaries. The normal module I/O constraints also apply to pasted modules.
</p> </p>
<h5 id="n:1.2.3.1.3.">1.2.3.1.3. Module Parameter Editor</h5> <h5 id="n:1.2.3.1.4.">1.2.3.1.4. Module Parameter Editor</h5>
<center><div class="fig image"><table id="Fig.1.5" border=1> <center><div class="fig image"><table id="Fig.1.5" border=1>
<caption> <caption>
<strong>Fig. 1.5.</strong> Module Parameter Editor <strong>Fig. 1.5.</strong> Module Parameter Editor
@ -337,7 +355,7 @@ The Module Parameter Editor is used to alter the values of a module's parameters
<p> <p>
Underneath each control is a bind button. Clicking adds a new control to the chain's <i>Controls</i> view and binds it to the parameter in question. For simplicity, only one control at a time may be bound to a given parameter. Underneath each control is a bind button. Clicking adds a new control to the chain's <i>Controls</i> view and binds it to the parameter in question. For simplicity, only one control at a time may be bound to a given parameter.
</p> </p>
<h5 id="n:1.2.3.1.4.">1.2.3.1.4. Controls</h5> <h5 id="n:1.2.3.1.5.">1.2.3.1.5. Controls</h5>
<center><div class="fig image"><table id="Fig.1.6" border=1> <center><div class="fig image"><table id="Fig.1.6" border=1>
<caption> <caption>
<strong>Fig. 1.6.</strong> Control View <strong>Fig. 1.6.</strong> Control View
@ -356,7 +374,7 @@ events. Hold down the `Ctrl` key while scrolling the mousewheel to
achieve finer resolution. achieve finer resolution.
</td></table> </td></table>
</div> </div>
<h6 id="n:1.2.3.1.4.1.">1.2.3.1.4.1. Control Voltages</h6> <h6 id="n:1.2.3.1.5.1.">1.2.3.1.5.1. Control Voltages</h6>
<p> <p>
The control voltage concept should be familiar to anyone who has experience with analog modular synthesizers. MIDI, while having definite advantages in many respects, multiplexes control data in such a way as to make connecting one MIDI control to a parameter involve a significant inconvenience, usually requiring the adjustment of settings on both ends of the connection in order to separate the control data streams. The control voltage concept should be familiar to anyone who has experience with analog modular synthesizers. MIDI, while having definite advantages in many respects, multiplexes control data in such a way as to make connecting one MIDI control to a parameter involve a significant inconvenience, usually requiring the adjustment of settings on both ends of the connection in order to separate the control data streams.
</p> </p>
@ -375,8 +393,8 @@ of parameter automation, as LADSPA plugins are incapable of
processing Control Voltage signals at full audio resolution anyway. processing Control Voltage signals at full audio resolution anyway.
</td></table> </td></table>
</div> </div>
<h5 id="n:1.2.3.1.5.">1.2.3.1.5. Spatialization </h5> <h5 id="n:1.2.3.1.6.">1.2.3.1.6. Spatialization </h5>
<h6 id="n:1.2.3.1.5.1.">1.2.3.1.5.1. Spatializer Module</h6> <h6 id="n:1.2.3.1.6.1.">1.2.3.1.6.1. Spatializer Module</h6>
<center><div class="fig image"><table border=1> <center><div class="fig image"><table border=1>
<tr><td><img src="spatializer-module.png" alt="fig. "></td></tr> <tr><td><img src="spatializer-module.png" alt="fig. "></td></tr>
</table></div></center> </table></div></center>
@ -404,7 +422,7 @@ All Spatializer Module instances will present controls and aziumuth, elevation,
<p> <p>
A Spatializer Module fed stereo input will perform stereo encoding and will present a <i>Width</i> control. A Spatializer Module fed stereo input will perform stereo encoding and will present a <i>Width</i> control.
</p> </p>
<h7 id="n:1.2.3.1.5.1.1.">1.2.3.1.5.1.1. Reverb Routing</h7> <h7 id="n:1.2.3.1.6.1.1.">1.2.3.1.6.1.1. Reverb Routing</h7>
<p> <p>
The Spatializer module is intended to work with an external reverb engine having Ambisonics B-Format inputs for early reflections and a Mono input for reverb tail (and, of course, B-Format outputs). The Spatializer module is intended to work with an external reverb engine having Ambisonics B-Format inputs for early reflections and a Mono input for reverb tail (and, of course, B-Format outputs).
</p> </p>
@ -420,7 +438,7 @@ I have crafted several jconvolver config files that meet these specifications. T
<p> <p>
The main outputs of the strip should go to a master bus, into which the output of the reverb engine is also fed. The main outputs of the strip should go to a master bus, into which the output of the reverb engine is also fed.
</p> </p>
<h6 id="n:1.2.3.1.5.2.">1.2.3.1.5.2. LADSPA Plugins</h6> <h6 id="n:1.2.3.1.6.2.">1.2.3.1.6.2. LADSPA Plugins</h6>
<p> <p>
There are several Ambisonics panners/encoders released as LADSPA plugins. When one of these plugins is added to a strip, Non Mixer will detect its parameter signature and create a Spatialization Control for it just as with the Spatializer Module. There are several Ambisonics panners/encoders released as LADSPA plugins. When one of these plugins is added to a strip, Non Mixer will detect its parameter signature and create a Spatialization Control for it just as with the Spatializer Module.
</p> </p>

View File

@ -216,18 +216,6 @@
views. The strip's context menu can be invoked without the mouse by views. The strip's context menu can be invoked without the mouse by
hitting the `Menu` key (assuming your keyboard has one). hitting the `Menu` key (assuming your keyboard has one).
::: MIDI Controllers
Usual Midi bindings can be achieved by launching both non-mixer
and non-midi-mapper through non-session-manager.
non-midi mapper is usually included in non-mixer package.
After launching them through non-session-manager connect JACK-Midi
output to Non-MIDI-Mapper input.
Then you can use 'Start learning', which is accesible through Remote
Control menu of the Mixer. Select desirable control and use MIDI device.
::: Signal Chain ::: Signal Chain
The signal chain view of a mixer strip provides a way to view and The signal chain view of a mixer strip provides a way to view and
@ -317,6 +305,23 @@
controlled via Control Sequences in Non-DAW without the need to controlled via Control Sequences in Non-DAW without the need to
specify an OSC URL. specify an OSC URL.
::::: MIDI Control
Automatic translation between MIDI and Non's OSC Signals can be
achieved by adding the headless program `non-midi-mapper` (included in the
Non-Mixer distribution) to an NSM session.
Non-MIDI-Mapper provides JACK MIDI input and output ports that can be
connected to a suitable controller device.
In Non-Mixer, the `Remote Control\/Start Learning` menu item enters learning
mode in which Non Mixer can be taught which controls to associated with which
MIDI messages by clicking a control in Non-Mixer and moving the desired control
on the MIDI device. `Remote Control\/End Learning` ends the learning session.
The mapping will be saved with the NSM session.
::::: Manipulation ::::: Manipulation
Left-clicking on a module brings up a Module Parameter Editor window Left-clicking on a module brings up a Module Parameter Editor window