Adding some MIDI operations

This commit is contained in:
Ed Ward 2017-01-03 10:01:45 +01:00
parent 2781be7683
commit 03226099fe
6 changed files with 81 additions and 0 deletions

View File

@ -0,0 +1,11 @@
---
layout: default
title: Transposing MIDI
menu_title: Transposing MIDI
---
<p><img src="/source/images/transpose_midi.png" alt="transpose dialog" /></p>
<p>To transpose a whole region at once, you can access the "transpose" dialog, by right clicking a region > <i>name_of_the_midi_region</i> > MIDI > Transpose...</p>
<p>This very simple dialog allows to choose either a number of semitones to add or substract to all the notes inside the region, and/or for more significant changes, octaves (12 semitones).</p>

View File

@ -0,0 +1,18 @@
---
layout: default
title: Automating MIDI : Pitch bending and aftertouch
menu_title: Automating MIDI
---
<p>Adding pitch bending or aftertouch can add a lot of subtlety to an otherwise plain sounding midi region and help humanize it.</p>
<p><img src="/source/images/MIDI_pitch_bending.png" alt="Automation : pitch bending" /></p>
<p>Pitch bending and aftertouch both work the same way, through automation. Right click the MIDI track's header > Automation > Bender <i>(or Pressure)</i> > <i>choose the channel you want to bend</i>.</p>
<p>Using the Draw tool, as for all the automation, allows to create a gradual change from one drawn point to another. A line in the center produces no change to the pitch, while a line above the center will bend the pitch to a higher note (up to 4 semitones) and a line going under the middle will bend the pitch to a lower note.
The values can be anything between 0 (-4 semitones) to 16383 (+4 semitones). No automation or a value of 8192 means no pitch shifting.</p>
<p>Aftertouch works very similarly, though the values are between 0 and 127. It should be noted that aftertouch differs from velocity, as aftertouch allows to slightly change the timbre or create a vibrato, while the velocity sets the power with which the note is played (e.g. on a keyboard, the key is hit).</p>

View File

@ -0,0 +1,52 @@
---
layout: default
title: Transforming MIDI : Mathematical operations
menu_title: Transforming MIDI
---
<p>Considering the numerical nature of MIDI events, it can be tempting to apply mathematical transformations to our MIDI regions by using mathematical operations. Ardour makes it very easy and powerfull with the Transform tool.</p>
<p><img src="/source/images/MIDI_transform.png" alt="MIDI transformation" /></p>
<p>To access the Transform tool, right click the MIDI region > <i>name_of_the_region</i> > MIDI > Transform...</p>
<p>First, select the property you want to modify in the 'Set' field, then change the target value using the 2 following fields. If you want to add more operands, click the "+" sign to create new lines. You can remove a superfluous line using the "-" sign on the right of the newly created line.</p>
<p>In the picture above, we've used the Transform tool to add a bit of humanisation, by slightly changing the velocity of each note of the region, by a random number between -19 and +19 from it's original velocity. So we've used 3 operations :
<ul>
<li>Set velocity to this note's velocity</li>
<li>+ a random number from 1 to 20</li>
<li>- a random number from 1 to 20</li>
</ul>
Each note will trigger a calculation of its own, so its velocity will be increased by a random number between 1 and 20, then decreased by a random number between 1 and 20.</p>
<p>The properties that can be computed are :
<ul>
<li>note number (eg C2 is note number 24, C#2 is 25 and so on)</li>
<li>velocity (the global intensity of the note, between 0 and 127)</li>
<li>start time (in beats)</li>
<li>length (in beats)</li>
<li>channel</li>
</ul>
and the calculation may be based on the following properties :
<ul>
<li>this note's</li>
<li>the previous note's</li>
<li>this note's index (number of the note, i.e. the first one is 0, the second is 1, etc.)</li>
<li>exactly (for a constant value, between 1 and 127)</li>
<li>a random number from <i>lower</i> to <i>higher</i> (<i>lower</i> and <i>higher</i> beeing constant values between 1 and 127)</li>
<li>equal steps from <i>lower</i> to <i>higher</i> (<i>lower</i> and <i>higher</i> beeing constant values between 1 and 127)</li>
</ul>
The mathematical operators can be :
<ul>
<li>+ (addition)</li>
<li>- (substration)</li>
<li>* (multiplication)</li>
<li>/ (euclidian division)</li>
<li>mod (rest of the euclidian division)</li>
</ul>
</p>
<p>All this operations can be very handy, as long as you find a mathematical way to achieve your goal. Beware though of odd "border cases" : division by zero (which does nothing), using the note's index and forgetting it starts at 0 and not 1, etc.<p>
<p>You can nevertheless create very interesting results, like humanizing (randomizing the velocity, start time and duration of all the notes), creating arpeggios, automating tedious tasks, transposing, etc.</p>

Binary file not shown.

After

Width:  |  Height:  |  Size: 30 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 14 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 8.5 KiB