Previous page    Harmony Assistant    Next page 

What's new ?
Microtonal adjustment
Alternate tuning
Digital Effects processor
Parameter curves
User instruments
Digital audio tracks
Playing Karaoke
Fretted fingering
Virtual Singer
Software license
Technical support
Printable manual

symbol marks changed chapters.


Parameter curves

What is a parameter curve?

Parameter curves are a fast and accurate way to change the sound of an instrument while music is playing.
As you may have read in previous chapters, general digital effect settings, in the "Play tools" palette, let you change the global volume of a document, as well as apply a bass boost, noise reduction, etc.
These settings apply to all the instruments in the document. If you change the volume, for example, it affects the whole piece.

Then on each staff, digital effect processors can be inserted in order to add specific effects: Distortion, Flanger, Chorus, Reverb, etc. These are "Effect processors" objects.

Starting in Harmony Assistant version 8.0 (Melody Assistant 6.0), several curves can be related to each staff. Each curve defines the way a parameter evolves during time. You can use both curves and effect processors on the same staff.  If they conflict, the parameter curves will take priority over the effects processors.
A curve lets you control the variation of a parameter more precisely than an effect processor does.
You can set the parameter value exactly for each time position in the written music, or you can make the parameter vary smoothly between two time positions.

Here are some samples of use:

  • Varying volume while a note is played
  • Fading out of a piece
  • Performing a complex bend (frequency variation)
  • Sending specific commands to a MIDI synthesizer

A parameter curve can operate under two different modes:

  • Discontinuous values: the parameter will take the required value, and keep it until a new value is encountered
  • Continuous valuers: the parameter will take the required value, and evolve continuously to the next value, taking all the values inbetween.

How do I add a curve?

We have seen that in scroll mode (the only display mode available in Melody Assistant) or in page mode with control handles enabled (Harmony Assistant only), little icons are displayed at the left of the staff. The fourth icon from the top is a green arrow. Clicking this icon opens a pop-up menu. You can select the curve to be edited. While a curve is being edited, the staff is grayed out to make the various parameter curves easier to see and adjust.

The first menu item resets the standard display and editing mode for notes on the staff.
The next one allows you edit note velocities (power). A red curve joins the notes. The higher the point on the curve, the larger the value for note velocity. By clicking in "Editing" (pencil) mode, you can change the velocity value of each note graphically.

Then, with Harmony Assistant only, you can adjust the delay and pressure time for each note. A blue horizontal line shows the delay (offset from the note head) and the pressure time (line length). Just as for velocity, you can can change these values graphically in "Editing" (pencil) mode.

A second section in the menu grants you the access to other parameters, like volume, panning position, frequency, chorus level,... You can also define parameters that are related to MIDI output management.

In contrast to velocity, delay and pressure time, parameters in this second section are not related to the individual notes, but to the staff itself. Deleting or moving a note won't change the curve for a parameter in this section. It is therefore preferable to adjust the curves after having input all the notes.

When a curve exists for a parameter, the curve name is displayed in bold in the pop-up menu.

The third section of the menu allows you to configure the curves, or to apply changes to existing curves.

How do I edit a curve?

A curve is made of segments (colored lines) between control handles (little squares). On the left side of the staff, the minimum and maximum value of the parameter appears, as well as its name. You can configure the parameter's curve to change its minimum and maximum value, as well as its display color.

To add a control handle, click the staff in "Editing" (pencil) mode.
To move a control handle, drag it in "Editing" (pencil) or "Select" (lasso) mode.
To move a curve, drag its first control handle while holding down the Shift key.
To change several values at a time, include the group of control handles to change in the selection range, then drag one of those control handles.
To split a curve into two parts, click a segment with the delete tool (lightning bolt)
To delete a control handle, click it with the delete tool (lightning bolt)
To delete a curve completely or partially, select the range to be deleted, then Edit>Erase
You can copy/paste parts of a curve on the same staff, or from one parameter to another.
You can add or subtract a value to a selected range using the apply option in the pop-up menu.
You can fill the selection range (or the whole staff if nothing is selected) with a triangle or square curve using the apply option in the pop-up menu.

How are the parameters applied?

Values of parameters that are displayed as a curve are applied in real-time while the music is playing, 200 times each second. The value is read at the required time position in the written score, and adjusted to produce smooth changes between each pair of control handles. If there is no segment at a given position (which can occur if you split a curve by deleting a segment, for example), the parameter is not applied.

Some parameters are specific to digital output, others to Midi only, and some to both digital and Midi output. The array below shows each possible parameter curve as well as its field of action.
Parameter name
Maximum range
Digital output MIDI output
Virtual Singer
Digital tracks
Volume Output level from 0 (quiet) to 100 (loud) Yes Yes Yes Yes
Panning Right - left panning position from -100 (extreme left) to 100 (extreme right) Yes Yes Yes Yes
Frequency Pitch variation (pitch bend) from -2400 (-2 octaves) to 2400 (+2 octaves) Yes Yes Yes No
Flanger/chorus power Flanger/chorus power from 0 (no effect) to 100 (maximum effect) Yes Yes Yes Yes
Reverb power Reverb power from 0 (no reverb) to 100 (maximum reverb) Yes Yes Yes Yes
Resonator resonance Resonator (filter) resonance from 0 to 100 Yes No Yes Yes
Resonator frequency Resonator cutoff frequency from 50 Hz to 4000 Hz Yes No Yes Yes
Distortion power Distortion power from 0 to 100 Yes No Yes Yes
Distortion color Distortion color (bass/treble) from 0 (bass) to 100 (bright) Yes No Yes Yes
Treble Equalization: treble from 0 (regular) to 100 (treble) Yes No Yes Yes
Bass Equalization: bass from 0 (regular) to 100 (bass) Yes No Yes Yes
MIDI-specific from a to f User-defined MIDI command from 0 to 16383 (14-bit MIDI parameter range) No Yes No No

If you define your parameter curve to be applied to all staves in the document, it will be applied to every staff, EXCEPT staves in which a separate curve also exists for this parameter.
This lets you define global curves for an entire song, which are overridden by specific curves in some portions of some staves. For best readability, it is recommended (but not required) to attach all global curves to the first staff of the document.

MIDI parameter curves

These parameters are specific to your MIDI device and let you control the non-standard features of your synthesizer.
You can define up to 5 MIDI parameter curves in each staff.

Note: Because these parameters are specific to your synthesizer, they can have different effects on other hardware devices.

To define this kind of parameter, open the parameter setting window and select the parameter in the list. Then enter command text that describes what is to be sent to your synthesizer. The manual provided with your MIDI hardware should describe these specific items.

Command input is made in hexadecimal (base-16 digits, each digit being a value between 0..9 or a letter A..F). The value read on the curve will be used to replace sequences of the characters 'm' and 'l' in your command line: 'l' is replaced by the least significant bits (LSB) of the curve value, and 'm' is replaced by the most significant bits (MSB), as explained in the table below. The 'n' character will be replaced by the MIDI channel number.
All other characters, such as spaces or commas, are ignored and can be used as separators.

MIDI value
 Number of bits
Written as

Let's take an example:
In my Roland JV-30 synthesizer manual, I read that a specific command, part of the NRPN (Non-registered parameter number) section, can be used to manage the internal filter cutoff frequency. Values for this command can be in the range from 0 to 127.

I open the setup dialog from the curve pop-up menu, and select the first MIDI parameter curve. I enter the minimum (0) and maximum (127) values. Since I need the range 0-127, using 7 bits, the value from my curve will therefore be represented in the command text by 'll'.
I enter the command text "Bn 63 01 Bn 62 20 Bn 06 ll" (referring to my synthesizer manual for the details of the command). Now I simply have to draw a curve shape to send internal filter cutoff frequency commands to my synthesizer. The character 'n' will be replaced by the channel number used for that staff, and 'll' by the value that has been read from my curve.

Note: Harmony-Melody does not check coherence of the MIDI command string.
You are therefore responsible for ensuring that it matches the description in your synthesizer manual.

(c) Myriad - All rights reserved