next up previous
Next: Repeats Up: Reference Manaul Previous: Tempo and Timing

Subsections


Volume and Dynamics

MMA is very versatile when it comes to the volumes or dynamics used in your song.

Each generated note goes though 4 volume adjustments:

  1. The initial volume is set in the pattern definition, see chapter 4,

  2. the initial volume is adjusted with the track volume,

  3. this volume is further adjusted with the master volume,

  4. if certain notes are to be accented, the volume is further adjusted,

  5. and, finally, if the random volume is set, this is applied,

For the most part MMA uses conventional musical score notation for volumes. Internally, the dynamic name is converted to a percentage value. The note volume is adjusted by the percentage.

The following table shows the available volume settings and the adjustment values.

Symbolic Name Ratio Adjustment
off 0
pppp 20
ppp 30
pp 45
p 55
mp 75
mf 90
f 100
ff 110
fff 120
ffff 150

The setting Off is useful for generating fades at the end of a piece. For example:

Volume ff
Decresc Off 5
G / Gm / * 5

will cause the last 5 bars of your music to fade from a ``ff'' to silence.

The initial volume (or velocity) is set in the pattern definition (see chapter 4). The following commands set the master volume, track volume and random volume adjustments.

In addition to the volumes (velocities) generated by MMA your MIDI device can also change the mix between channels. See the discussion for ChannelVolume (prefchannelvol).


Accent

``Real'' musicians, in an almost automatic manner, emphasize notes on certain beats. In popular Western music written in 4/4 time this is usually beats one and three. This emphasis sets the pulse or beat in a piece.

In MMA you can set the volumes in a pattern so that this emphasis is done. For example, when setting a walking bass line pattern you could use a pattern definition like:

Define Walk W1234 1 4 100; 2 4 70; 3 4 80; 4 4 70

However, it is much easier to use a definition which has all the volumes the same:

Define Walk W1234 1 1 90 * 4

and use the Accent command to increase or decrease the volume of notes on certain beats:

Walk Accent 1 20 2 -10 4 -10

The above command will increase the volume for walking bass notes on beat 1 by 20%, and decrease the volumes of notes on beats 2 and 4 by 10%.

You can use this command for all tracks.

When specifying the accents, you must have matching pairs of data. The first item in the pair is the beat (which can be fractional), the second is the volume adjustment. This is a percentage of the current note volume that is added (or subtracted) to the volume. Adjustment factors must be in the range -100 to 100.

The Accents apply to all bars in a track. You cannot set different accents for different bars. If you need to do this it's a simple matter to create duplicate tracks (which can even share the same MIDI channel). For example, you might want even bars to have beats 1 and 3 accented and odd bars to have only beat 1 accented. An abbreviated attempt might look like:

Begin Chord-1
   Sequence C1234 z
   Voice Piano1
   Accent 1 20 3 30
End
Begin Chord-2
   Sequence z C1234
   Voice Piano1
   ChShare Chord-1
   Accent 1 20
End

AdjustVolume

The ratios used to adjust the volume can be changed from the above table. For example, to change the percentage used for the ``mf'' setting:

AdjustVolume MF 95

If you want to adjust a number of settings:

Begin AdjustVolume
    PP 47
    ppp 50
End

All values must be positive integers. Any value over 180 will be reported as a warning.

You might want to do these adjustment in your MMArc file(s).


Volume

The volume for a track, or all tracks, is given the ``Volume'' command. Volumes can be specified much like standard sheet music with the conventional dynamic names. These volumes can be applied to a track or to the entire song. For example:

Arpeggio1 Volume p

sets the volume for Arpeggio1 track to something approximating piano.

Volume f

sets the master volume to forte.

In most cases the volume for a track will be set with the sequence definition; the master volume is used in the music file to adjust the overall feel of the piece.

Cresc and Decresc

If you wish to adjust over a series of bars use the Cresc or Decresc commands. These commands are only valid in the master context; they can not be applied to individual tracks.

For all practical purposes, the two commands are equivalent, expect for the warning. If the new volume in less than the current volume in a Cresc a warning will be displayed; the converse applies to a Decresc.

The command requires two arguments. The first is the new volume, the second is the number of bars to adjust it over.

For example:

Cresc fff 5

will gradually vary the master volume from its current setting to a triple forte over the next 5 bars.

Similarly:

Decresc mp 2

will decrease the master volume to mezzo piano over the next 2 bars.

A SeqClear command will reset all track volumes to the default mf (ie. no adjustment).

When using Volume for a specific track, you can use a different value for each bar in a sequence:

Drum Volume mp ff / ppp

A ``/'' can be used to repeat values.


RVolume

Not even the best musician can play each note at the same volume. Nor would he or she want to--the result would be quite unmusical. The note volumes can be randomly adjusted with the Rvolume command.

The command can be applied to a specific track or (if you're brave) to all tracks.13.1 Examples:

Chord RVolume 10
RVolume 5

The RVolume argument is a percentage value by which a volume is adjusted. A setting of 0 disables the adjustment for a track (this is the default).

When set, the note velocity (after the track and master volume adjustments) is randomized up or down by the value. Again, using the above example, let us assume that a note in the current pattern gets a MIDI velocity of 88. The random factor of 10 will adjust this by 10% up or down--the new value can be from 78 to 98.

The idea behind this is to give the track a more human sounding effect. You can use large values, but it's not recommended. Usually, values in the 5 to 10 range work well. You might want slightly larger values for drum tracks. Using a value greater than 30 will generate a warning message.

Notes:

Saving and Restoring Volumes

Dynamics can get quite complicated, especially when you are adjusting the volumes of a track inside a repeat or other complicated sections of music. In this section we will attempt to give some general guidelines and hints.

For the most part, the supplied groove files will have balanced volumes between the different instruments. In a future version of MMA a volumeAdjust command will let you fine tune differences between your synth and the standards in the library. This will be done before verison 1.0.

Remember that Grooves save all the current volume settings. This includes the master setting as well as individual track settings. So, if you are using the mythical groove ``Wonderful'' and think that the Chord-Piano volume should be louder in a particular song it's easy to do something like:

Groove Wonderful
Chord-Piano Volume ff
DefGroove Wonderful

Now, when you call this groove the new volume will be used. Note that you'll have to do this for each variation of the groove that you use in the song.

In most songs you will not need to do major changes. But, it is nice to use the same volume each time though a section. In most cases you'll want to do a explict setting at the start of a section. For example:

Repeat
Volume mf
....
Cresc ff 5
...
EndRepeat

Another useful technique is the use of the $_LastVolume macro. For example:

Volume pp
...
Cresc f 5
...
$_LastVolume // restores to pp



Footnotes

... tracks.13.1
The best use of using RVolume for all tracks is with a ``0'' argument to (temporarily) disable the setting for all tracks.

next up previous
Next: Repeats Up: Reference Manaul Previous: Tempo and Timing
Bob 2004-12-02