2009-05-17 22:34:44 +00:00
|
|
|
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
|
2006-11-10 08:07:56 +00:00
|
|
|
|
2011-07-26 22:49:39 +00:00
|
|
|
<!--Converted with LaTeX2HTML 2008 (1.71)
|
2006-11-10 08:07:56 +00:00
|
|
|
original version by: Nikos Drakos, CBLU, University of Leeds
|
|
|
|
* revised and updated by: Marcus Hennecke, Ross Moore, Herb Swan
|
|
|
|
* with significant contributions from:
|
|
|
|
Jens Lippmann, Marek Rouchal, Martin Wilck and others -->
|
|
|
|
<HTML>
|
|
|
|
<HEAD>
|
|
|
|
<TITLE>Solo and Melody Tracks</TITLE>
|
|
|
|
<META NAME="description" CONTENT="Solo and Melody Tracks">
|
|
|
|
<META NAME="keywords" CONTENT="mma">
|
|
|
|
<META NAME="resource-type" CONTENT="document">
|
|
|
|
<META NAME="distribution" CONTENT="global">
|
|
|
|
|
2011-07-26 22:49:39 +00:00
|
|
|
<META HTTP-EQUIV="Content-Type" CONTENT="text/html; charset=utf-8">
|
|
|
|
<META NAME="Generator" CONTENT="LaTeX2HTML v2008">
|
2006-11-10 08:07:56 +00:00
|
|
|
<META HTTP-EQUIV="Content-Style-Type" CONTENT="text/css">
|
|
|
|
|
|
|
|
<LINK REL="STYLESHEET" HREF="mma.css">
|
|
|
|
|
|
|
|
<LINK REL="next" HREF="node11.html">
|
|
|
|
<LINK REL="previous" HREF="node9.html">
|
|
|
|
<LINK REL="up" HREF="mma.html">
|
|
|
|
<LINK REL="next" HREF="node11.html">
|
|
|
|
</HEAD>
|
|
|
|
|
|
|
|
<BODY bgcolor="#ffffff">
|
2009-05-17 22:34:44 +00:00
|
|
|
|
|
|
|
<DIV CLASS="navigation"><!--Navigation Panel-->
|
2011-07-26 22:49:39 +00:00
|
|
|
<A NAME="tex2html549"
|
2006-11-10 08:07:56 +00:00
|
|
|
HREF="node11.html">
|
|
|
|
<IMG WIDTH="37" HEIGHT="24" ALIGN="BOTTOM" BORDER="0" ALT="next" SRC="next.png"></A>
|
2011-07-26 22:49:39 +00:00
|
|
|
<A NAME="tex2html547"
|
2006-11-10 08:07:56 +00:00
|
|
|
HREF="mma.html">
|
|
|
|
<IMG WIDTH="26" HEIGHT="24" ALIGN="BOTTOM" BORDER="0" ALT="up" SRC="up.png"></A>
|
2011-07-26 22:49:39 +00:00
|
|
|
<A NAME="tex2html541"
|
2006-11-10 08:07:56 +00:00
|
|
|
HREF="node9.html">
|
|
|
|
<IMG WIDTH="63" HEIGHT="24" ALIGN="BOTTOM" BORDER="0" ALT="previous" SRC="prev.png"></A>
|
|
|
|
<BR>
|
2011-07-26 22:49:39 +00:00
|
|
|
<B> Next:</B> <A NAME="tex2html550"
|
|
|
|
HREF="node11.html">Emulating plucked instruments: Plectrum</A>
|
|
|
|
<B> Up:</B> <A NAME="tex2html548"
|
2006-11-10 08:07:56 +00:00
|
|
|
HREF="mma.html">Reference Manual</A>
|
2011-07-26 22:49:39 +00:00
|
|
|
<B> Previous:</B> <A NAME="tex2html542"
|
2006-11-10 08:07:56 +00:00
|
|
|
HREF="node9.html">Lyrics</A>
|
|
|
|
<BR>
|
2009-05-17 22:34:44 +00:00
|
|
|
<BR></DIV>
|
2006-11-10 08:07:56 +00:00
|
|
|
<!--End of Navigation Panel-->
|
|
|
|
<!--Table of Child-Links-->
|
|
|
|
<A NAME="CHILD_LINKS"><STRONG>Subsections</STRONG></A>
|
|
|
|
|
2009-05-17 22:34:44 +00:00
|
|
|
<UL CLASS="ChildLinks">
|
2011-07-26 22:49:39 +00:00
|
|
|
<LI><A NAME="tex2html551"
|
2006-11-10 08:07:56 +00:00
|
|
|
HREF="node10.html#SECTION001010000000000000000">Note Data Format</A>
|
|
|
|
<UL>
|
2011-07-26 22:49:39 +00:00
|
|
|
<LI><A NAME="tex2html552"
|
|
|
|
HREF="node10.html#SECTION001011000000000000000">Chord Extensions</A>
|
|
|
|
<LI><A NAME="tex2html553"
|
|
|
|
HREF="node10.html#SECTION001012000000000000000">Accents</A>
|
|
|
|
<LI><A NAME="tex2html554"
|
|
|
|
HREF="node10.html#SECTION001013000000000000000">Long Notes</A>
|
|
|
|
<LI><A NAME="tex2html555"
|
|
|
|
HREF="node10.html#SECTION001014000000000000000">Using Defaults</A>
|
|
|
|
<LI><A NAME="tex2html556"
|
|
|
|
HREF="node10.html#SECTION001015000000000000000">Other Commands</A>
|
2006-11-10 08:07:56 +00:00
|
|
|
</UL>
|
|
|
|
<BR>
|
2011-07-26 22:49:39 +00:00
|
|
|
<LI><A NAME="tex2html557"
|
|
|
|
HREF="node10.html#SECTION001020000000000000000">AutoSoloTracks</A>
|
|
|
|
<LI><A NAME="tex2html558"
|
|
|
|
HREF="node10.html#SECTION001030000000000000000">Drum Solo Tracks</A>
|
|
|
|
<LI><A NAME="tex2html559"
|
|
|
|
HREF="node10.html#SECTION001040000000000000000">Arpeggiation</A>
|
2006-11-10 08:07:56 +00:00
|
|
|
</UL>
|
|
|
|
<!--End of Table of Child-Links-->
|
|
|
|
<HR>
|
|
|
|
|
|
|
|
<H1><A NAME="SECTION001000000000000000000"></A>
|
|
|
|
<A NAME="chap-solo"></A>
|
|
|
|
<BR>
|
|
|
|
Solo and Melody Tracks
|
|
|
|
</H1>
|
|
|
|
|
|
|
|
<P>
|
|
|
|
So far the creation of accompaniment tracks using drum and chord
|
|
|
|
patterns has been discussed. However, there are times when chording
|
|
|
|
(and chord variations such as arpeggios) are not sufficient.
|
|
|
|
Sometimes you might want a real melody line!
|
|
|
|
|
2011-07-26 22:49:39 +00:00
|
|
|
<P>
|
|
|
|
While reading this chapter, don't forget that you can easily add
|
|
|
|
H<SMALL>ARMONY</SMALL> to your S<SMALL>OLO</SMALL> tracks (see
|
|
|
|
<A HREF="node15.html#sec-harmony">here</A> for details). You can even
|
|
|
|
import (see M<SMALL>IDI</SMALL>I<SMALL>NC</SMALL> <A HREF="node21.html#midi-inc">here</A>)
|
|
|
|
an existing MIDI track (maybe a melody you've plunked out on a
|
|
|
|
keyboard) and have
|
|
|
|
<FONT Face="Serif" Color="Navy"><I>MMA</I></FONT> insert that into your song as a S<SMALL>OLO</SMALL>
|
|
|
|
and apply A<SMALL>RTICULATION</SMALL> and H<SMALL>ARMONY</SMALL> to it ... imagine
|
|
|
|
how good you may sound!
|
|
|
|
|
2006-11-10 08:07:56 +00:00
|
|
|
<P>
|
|
|
|
|
|
|
|
<FONT Face="Serif" Color="Navy"><I>MMA</I></FONT> has two internal track types reserved for melodic lines. They
|
|
|
|
are the S<SMALL>OLO</SMALL> and M<SMALL>ELODY</SMALL> tracks. These two track types
|
|
|
|
are identical with two major exceptions:
|
|
|
|
|
|
|
|
<P>
|
|
|
|
|
|
|
|
<UL>
|
|
|
|
<LI>S<SMALL>OLO</SMALL> tracks are only initialized once, at start up.
|
|
|
|
Commands like S<SMALL>EQ</SMALL>C<SMALL>LEAR</SMALL> are ignored by S<SMALL>OLO</SMALL> tracks.
|
|
|
|
|
|
|
|
<P>
|
|
|
|
</LI>
|
|
|
|
<LI>No settings in S<SMALL>OLO</SMALL> tracks are saved or restored with
|
|
|
|
G<SMALL>ROOVE</SMALL> commands.
|
|
|
|
|
|
|
|
<P>
|
|
|
|
</LI>
|
|
|
|
</UL>
|
|
|
|
|
|
|
|
<P>
|
|
|
|
These differences mean that you can set parameters for a S<SMALL>OLO</SMALL>
|
|
|
|
track in a preamble in your music file and have those settings valid
|
|
|
|
for the entire song. For example, you may want to set an instrument at
|
|
|
|
the top of a song:
|
|
|
|
|
|
|
|
<P>
|
|
|
|
|
2007-04-29 06:47:40 +00:00
|
|
|
<Table Hspace="40%" CellSpacing=0 CellPadding=10 BGColor="OldLace" Border=3>
|
|
|
|
<tr><td>
|
|
|
|
<B>Solo Voice TenorSax </B>
|
2006-11-10 08:07:56 +00:00
|
|
|
|
2007-04-29 06:47:40 +00:00
|
|
|
</td></tr>
|
|
|
|
</Table>
|
2006-11-10 08:07:56 +00:00
|
|
|
|
|
|
|
<P>
|
|
|
|
On the other hand, M<SMALL>ELODY</SMALL> tracks save and restore grooves just
|
2011-07-26 22:49:39 +00:00
|
|
|
like all the other available tracks. If you have the following
|
|
|
|
sequence in a song file:
|
2006-11-10 08:07:56 +00:00
|
|
|
|
|
|
|
<P>
|
|
|
|
|
2007-04-29 06:47:40 +00:00
|
|
|
<Table Hspace="40%" CellSpacing=0 CellPadding=10 BGColor="OldLace" Border=3>
|
|
|
|
<tr><td>
|
|
|
|
<B>Melody Voice TenorSax
|
2006-11-10 08:07:56 +00:00
|
|
|
<BR>
|
|
|
|
Groove Blues
|
2009-05-17 22:34:44 +00:00
|
|
|
<BR> ...musical data </B>
|
2006-11-10 08:07:56 +00:00
|
|
|
|
2007-04-29 06:47:40 +00:00
|
|
|
</td></tr>
|
|
|
|
</Table>
|
2006-11-10 08:07:56 +00:00
|
|
|
|
|
|
|
<P>
|
2011-07-26 22:49:39 +00:00
|
|
|
no one will be surprised to find that the M<SMALL>ELODY</SMALL> track playing
|
|
|
|
with the default voice (Piano).
|
2006-11-10 08:07:56 +00:00
|
|
|
|
|
|
|
<P>
|
2011-07-26 22:49:39 +00:00
|
|
|
As a general rule, M<SMALL>ELODY</SMALL> tracks have been designed as a
|
|
|
|
“voice” to accompany a predefined form defined in a
|
2006-11-10 08:07:56 +00:00
|
|
|
G<SMALL>ROOVE</SMALL>--it is a good idea to define M<SMALL>ELODY</SMALL> parameters
|
|
|
|
as part of a G<SMALL>ROOVE</SMALL>. S<SMALL>OLO</SMALL> tracks are thought to be
|
|
|
|
specific to a certain song file, with their parameters defined in the
|
|
|
|
song file.
|
|
|
|
|
|
|
|
<P>
|
|
|
|
Apart from the exceptions noted above, S<SMALL>OLO</SMALL> and M<SMALL>ELODY</SMALL>
|
|
|
|
tracks are identical.
|
|
|
|
|
2011-07-26 22:49:39 +00:00
|
|
|
<P>
|
|
|
|
Before you create any S<SMALL>OLO</SMALL> or M<SMALL>ELODY</SMALL> tracks you should
|
|
|
|
set the key signature. See
|
|
|
|
<A HREF="node24.html#keysignature">here</A> for details on this
|
|
|
|
important setting.
|
|
|
|
|
2006-11-10 08:07:56 +00:00
|
|
|
<P>
|
|
|
|
Unlike the other available tracks, you do not define a sequence or
|
|
|
|
pattern for a S<SMALL>OLO</SMALL> or M<SMALL>ELODY</SMALL> track. Instead, you specify
|
|
|
|
a series of notes as a R<SMALL>IFF</SMALL> pattern. For example, consider the
|
2011-07-26 22:49:39 +00:00
|
|
|
first two bars of “Bill Bailey” (the details of melody notation will
|
2006-11-10 08:07:56 +00:00
|
|
|
be covered later in this chapter):
|
|
|
|
|
|
|
|
<P>
|
|
|
|
|
2007-04-29 06:47:40 +00:00
|
|
|
<Table Hspace="40%" CellSpacing=0 CellPadding=10 BGColor="OldLace" Border=3>
|
|
|
|
<tr><td>
|
|
|
|
<B>Solo Riff 4c;2d;4f;
|
2006-11-10 08:07:56 +00:00
|
|
|
<BR>
|
|
|
|
F
|
|
|
|
<BR>
|
|
|
|
Solo Riff 4.a;8g#;4a;4c+;
|
|
|
|
<BR>
|
2007-04-29 06:47:40 +00:00
|
|
|
F </B>
|
2006-11-10 08:07:56 +00:00
|
|
|
|
2007-04-29 06:47:40 +00:00
|
|
|
</td></tr>
|
|
|
|
</Table>
|
2006-11-10 08:07:56 +00:00
|
|
|
|
|
|
|
<P>
|
2011-07-26 22:49:39 +00:00
|
|
|
In the above example the melody has been inserted into the song with a
|
|
|
|
series of R<SMALL>IFF</SMALL> lines. Specifying a R<SMALL>IFF</SMALL> for each bar of
|
|
|
|
your song can get tedious, so there is a shortcut ... any data
|
|
|
|
surrounded by curly brackets “{ }” is interpreted as a R<SMALL>IFF</SMALL>
|
|
|
|
for a S<SMALL>OLO</SMALL> or M<SMALL>ELODY</SMALL> track. This means that the above
|
|
|
|
example could be rewritten as:
|
2006-11-10 08:07:56 +00:00
|
|
|
|
|
|
|
<P>
|
|
|
|
|
2007-04-29 06:47:40 +00:00
|
|
|
<Table Hspace="40%" CellSpacing=0 CellPadding=10 BGColor="OldLace" Border=3>
|
|
|
|
<tr><td>
|
|
|
|
<B>F {4c;2d;4f;}
|
2006-11-10 08:07:56 +00:00
|
|
|
<BR>
|
2007-04-29 06:47:40 +00:00
|
|
|
F {4.a;8g#;4a;4c+;} </B>
|
2006-11-10 08:07:56 +00:00
|
|
|
|
2007-04-29 06:47:40 +00:00
|
|
|
</td></tr>
|
|
|
|
</Table>
|
2006-11-10 08:07:56 +00:00
|
|
|
|
|
|
|
<P>
|
|
|
|
By default the note data is inserted into the S<SMALL>OLO</SMALL> track. If
|
|
|
|
more than one set of note data is present, it will be inserted into
|
|
|
|
the next track set by the A<SMALL>UTO</SMALL>S<SMALL>OLO</SMALL>T<SMALL>RACKS</SMALL> command
|
|
|
|
(<A HREF="#autosolotracks">here</A>).
|
|
|
|
|
2011-07-26 22:49:39 +00:00
|
|
|
<P>
|
|
|
|
Another method is to use a number of R<SMALL>IFF</SMALL> commands inside a
|
|
|
|
B<SMALL>EGIN</SMALL>/E<SMALL>ND</SMALL> section. For example:
|
|
|
|
|
|
|
|
<P>
|
|
|
|
|
|
|
|
<Table Hspace="40%" CellSpacing=0 CellPadding=10 BGColor="OldLace" Border=3>
|
|
|
|
<tr><td>
|
|
|
|
<B>Begin Solo Riff
|
|
|
|
<BR> 4c;2d;4f;
|
|
|
|
<BR> 4.a;8g#;4a;4c+
|
|
|
|
<BR>
|
|
|
|
End
|
|
|
|
<BR>
|
|
|
|
F
|
|
|
|
<BR>
|
|
|
|
F
|
|
|
|
<BR></B>
|
|
|
|
|
|
|
|
</td></tr>
|
|
|
|
</Table>
|
|
|
|
|
|
|
|
<P>
|
|
|
|
If you look at the sample songs from our website
|
|
|
|
<TT><A NAME="tex2html44"
|
|
|
|
HREF="http://www.mellowood.ca/mma/examples.html">http://www.mellowood.ca/mma/examples.html</A></TT> you will see this used
|
|
|
|
in many songs to create short introductions.
|
|
|
|
|
2006-11-10 08:07:56 +00:00
|
|
|
<P>
|
|
|
|
|
|
|
|
<H1><A NAME="SECTION001010000000000000000">
|
|
|
|
Note Data Format</A>
|
|
|
|
</H1>
|
|
|
|
|
|
|
|
<P>
|
|
|
|
The notes in a S<SMALL>OLO</SMALL> or M<SMALL>ELODY</SMALL> track are specified as a
|
2011-07-26 22:49:39 +00:00
|
|
|
series of “chords”. Each chord can be a single note, or several
|
2006-11-10 08:07:56 +00:00
|
|
|
notes (all with the same duration). Each chord in the bar is delimited
|
2011-07-26 22:49:39 +00:00
|
|
|
with a single semicolon.<A NAME="tex2html45"
|
|
|
|
HREF="#foot4720"><SUP><SPAN CLASS="arabic">10</SPAN>.<SPAN CLASS="arabic">1</SPAN></SUP></A> Please note
|
|
|
|
the terminology used here! When we refer to a “chord” we are
|
|
|
|
referring to the data a one point in the bar. It might be a single
|
|
|
|
note, a number of notes, or a rest.
|
|
|
|
|
2006-11-10 08:07:56 +00:00
|
|
|
<P>
|
|
|
|
Each chord can have several parts. All missing parts will default to
|
2011-07-26 22:49:39 +00:00
|
|
|
the value in the previous chord. The order of the items is important:
|
|
|
|
follow the order below.
|
2006-11-10 08:07:56 +00:00
|
|
|
|
|
|
|
<P>
|
|
|
|
<DL>
|
|
|
|
<DT><STRONG>Duration</STRONG></DT>
|
|
|
|
<DD>The duration of the note. This is specified in the
|
2011-07-26 22:49:39 +00:00
|
|
|
same manner as chord patterns; see <A HREF="node4.html#notelength">here</A> for details on how to specify a note duration. By
|
|
|
|
default, a quarter note duration is used.
|
2006-11-10 08:07:56 +00:00
|
|
|
|
2011-07-26 22:49:39 +00:00
|
|
|
<P>
|
|
|
|
The duration can also be set in MIDI ticks (192 ticks equals a
|
|
|
|
quarter note) by appending a “t” or “T” to an integer value. As
|
|
|
|
an example, you could set a quarter note “c” as “4c” or
|
|
|
|
“192tc”. You'll probably never use this option directly, but other
|
|
|
|
parts of
|
|
|
|
<FONT Face="Serif" Color="Navy"><I>MMA</I></FONT> can use it to generate solo note data.
|
|
|
|
|
|
|
|
<P>
|
|
|
|
<A NAME="solo-pitch"></A>
|
2006-11-10 08:07:56 +00:00
|
|
|
<P>
|
|
|
|
</DD>
|
|
|
|
<DT><STRONG>Pitch</STRONG></DT>
|
2011-07-26 22:49:39 +00:00
|
|
|
<DD>Each note or pitch in the chord can be specified in a
|
|
|
|
number of ways. Firstly, you can use standard musical notation: the
|
|
|
|
lowercase letters “a” to “g” are recognized as well as “r” to
|
|
|
|
specify a rest. Secondly, you can specify a note via its MIDI
|
|
|
|
value. A MIDI value of 60 is the same as a “middle c”. Important:
|
|
|
|
if you specify a note using a MIDI value that note will not be
|
|
|
|
adjusted for the O<SMALL>CTAVE</SMALL> setting in the track
|
|
|
|
(T<SMALL>RANSPOSE</SMALL> will be applied). Thirdly, in the case of <SPAN CLASS="textit">Drum Solo
|
|
|
|
Tracks</SPAN>, <A HREF="#drumtype">here</A>, you can use
|
|
|
|
MIDI values or mnemonic values like “SnareDrum1”.
|
2006-11-10 08:07:56 +00:00
|
|
|
|
|
|
|
<P>
|
2011-07-26 22:49:39 +00:00
|
|
|
For notes in standard notation (“a” to “g”) the following
|
|
|
|
modifiers are permitted directly after the pitch:
|
|
|
|
|
|
|
|
<P>
|
|
|
|
<DL>
|
2006-11-10 08:07:56 +00:00
|
|
|
<DT><STRONG>Accidental</STRONG></DT>
|
2011-07-26 22:49:39 +00:00
|
|
|
<DD>A pitch modifier consisting of a single “#”
|
|
|
|
(sharp), “&” (flat) or “n” (natural). Please note that an
|
|
|
|
accidental will override the current K<SMALL>EYSIG</SMALL> for the current
|
|
|
|
bar (just like in real musical notation). Unlike standard musical
|
|
|
|
notation the accidental <SPAN CLASS="textit">will</SPAN> apply to similarly named notes
|
|
|
|
in different octaves.
|
2006-11-10 08:07:56 +00:00
|
|
|
|
|
|
|
<P>
|
|
|
|
Please note that when you specify a chord in
|
|
|
|
<FONT Face="Serif" Color="Navy"><I>MMA</I></FONT> you can use
|
2011-07-26 22:49:39 +00:00
|
|
|
either a “b” or a “&” to represent a flat sign; however,
|
|
|
|
when specifying notes for a S<SMALL>OLO</SMALL> you can only use the
|
|
|
|
“&” character.
|
|
|
|
|
|
|
|
<P>
|
|
|
|
Double sharps and flats are not supported.
|
2006-11-10 08:07:56 +00:00
|
|
|
|
|
|
|
<P>
|
|
|
|
</DD>
|
|
|
|
<DT><STRONG>Octave</STRONG></DT>
|
2011-07-26 22:49:39 +00:00
|
|
|
<DD>Without an octave modifier, the current octave
|
|
|
|
specified by the O<SMALL>CTAVE</SMALL> directive is used for the
|
|
|
|
pitch(es). Any number of “-” or “+” signs can be appended to a
|
|
|
|
note. Each “-” drops the note by an octave and each “+” will
|
|
|
|
increase it. The base octave begins with “c” below the treble
|
|
|
|
clef staff. The underlying track O<SMALL>CTAVE</SMALL> setting is applied
|
|
|
|
to the modified pitch.
|
2006-11-10 08:07:56 +00:00
|
|
|
|
|
|
|
<P>
|
|
|
|
</DD>
|
2011-07-26 22:49:39 +00:00
|
|
|
</DL>
|
|
|
|
|
|
|
|
<P>
|
|
|
|
<A NAME="pitch-velocity"></A></DD>
|
|
|
|
<DT><STRONG>Velocity</STRONG></DT>
|
|
|
|
<DD>You can override the default MIDI velocity (
|
|
|
|
<FONT Face="Serif" Color="Navy"><I>MMA</I></FONT> uses
|
|
|
|
a value of 90) by appending a “/” and a value between “0” and
|
|
|
|
“127” after a pitch. This includes pitches in standard notation,
|
|
|
|
drum mnemonics and MIDI values. The velocity setting is applied to
|
|
|
|
one note only. If you have a grouping of notes like “abc/50” the
|
|
|
|
changed velocity will apply to the entire group; however, for groups
|
|
|
|
with space or comma delimiters the modifier will apply to only one
|
|
|
|
note ...in the case of “a,b,c/40” or “a b c/40” only the
|
|
|
|
“c” will have a modified velocity.
|
2006-11-10 08:07:56 +00:00
|
|
|
|
|
|
|
<P>
|
|
|
|
</DD>
|
|
|
|
<DT><STRONG>Tilde</STRONG></DT>
|
|
|
|
<DD>The tilde character, ~, can appear as the
|
|
|
|
first or last item in a note sequence. As the last character it
|
2011-07-26 22:49:39 +00:00
|
|
|
signals that the final note duration extend past the end of the bar
|
|
|
|
(note, when we say “last” we mean just that ... if you have a
|
|
|
|
< > modifier in the last chord of a bar
|
|
|
|
place the tilde after that). As the first character it signals to
|
|
|
|
use the duration extending past the end of the previous bar as an
|
|
|
|
initial offset. For details, see below.
|
2006-11-10 08:07:56 +00:00
|
|
|
|
|
|
|
<P>
|
|
|
|
</DD>
|
|
|
|
</DL>
|
|
|
|
|
|
|
|
<P>
|
|
|
|
To make your note data more readable, you can include any number of
|
|
|
|
space and tab characters (which are ignored by
|
2011-07-26 22:49:39 +00:00
|
|
|
<FONT Face="Serif" Color="Navy"><I>MMA</I></FONT> ). Individual
|
|
|
|
notes in a chord can be separated by spaces or commas.
|
2006-11-10 08:07:56 +00:00
|
|
|
|
|
|
|
<P>
|
|
|
|
|
2007-04-29 06:47:40 +00:00
|
|
|
<Table Hspace="40%" CellSpacing=0 CellPadding=10 BGColor="#efefef" Border=3>
|
|
|
|
<tr><td Align="CENTER" BGColor="White">
|
2009-05-17 22:34:44 +00:00
|
|
|
<SPAN CLASS="textbf"><BIG CLASS="XLARGE">Solo Notation</BIG></SPAN> <A NAME="eg:solo"></A>
|
2007-04-29 06:47:40 +00:00
|
|
|
</tr> </td>
|
|
|
|
<tr> <td >
|
|
|
|
|
2006-11-10 08:07:56 +00:00
|
|
|
<IMG WIDTH="90%" SRC="mupex/soloeg.png" ALT="Lost Image">
|
|
|
|
|
|
|
|
<P>
|
|
|
|
<BR>
|
|
|
|
<BR>
|
|
|
|
|
|
|
|
<P>
|
|
|
|
|
2007-04-29 06:47:40 +00:00
|
|
|
<Table Hspace="40%" CellSpacing=0 CellPadding=10 BGColor="OldLace" Border=3>
|
|
|
|
<tr><td>
|
|
|
|
<B>KeySig 1b
|
2006-11-10 08:07:56 +00:00
|
|
|
<BR>
|
2011-07-26 22:49:39 +00:00
|
|
|
F { 4c a-; 2d a-; 4f d; }
|
2006-11-10 08:07:56 +00:00
|
|
|
<BR>
|
2011-07-26 22:49:39 +00:00
|
|
|
F { 4.a , f; 8g#f; 4a,f; c+f; }
|
2006-11-10 08:07:56 +00:00
|
|
|
<BR>
|
2011-07-26 22:49:39 +00:00
|
|
|
F { 4c , a-; 2d,a-; 4fc; }
|
2006-11-10 08:07:56 +00:00
|
|
|
<BR>
|
2007-04-29 06:47:40 +00:00
|
|
|
F { 1af; } </B>
|
2006-11-10 08:07:56 +00:00
|
|
|
|
2007-04-29 06:47:40 +00:00
|
|
|
</td></tr>
|
|
|
|
</Table>
|
2006-11-10 08:07:56 +00:00
|
|
|
|
|
|
|
<P>
|
|
|
|
|
|
|
|
|
2007-04-29 06:47:40 +00:00
|
|
|
</td> </tr>
|
|
|
|
</Table>
|
2006-11-10 08:07:56 +00:00
|
|
|
|
|
|
|
<P>
|
|
|
|
|
|
|
|
<P>
|
|
|
|
<A HREF="#eg:solo">This example</A> shows a few bars of
|
2011-07-26 22:49:39 +00:00
|
|
|
“Bill Bailey” with the
|
|
|
|
<FONT Face="Serif" Color="Navy"><I>MMA</I></FONT> equivalent. We've put in commas and
|
|
|
|
spaces to show where they can be, optionally, used.
|
2006-11-10 08:07:56 +00:00
|
|
|
|
|
|
|
<P>
|
|
|
|
|
|
|
|
<H2><A NAME="SECTION001011000000000000000">
|
2011-07-26 22:49:39 +00:00
|
|
|
Chord Extensions</A>
|
|
|
|
</H2>
|
|
|
|
|
|
|
|
<P>
|
|
|
|
In order to make S<SMALL>OLO</SMALL>s more versatile, you may extend the
|
|
|
|
notation with options in < >
|
|
|
|
delimiters. Only one set of < >s is
|
|
|
|
permitted for each chord; however, it can be anywhere in the chord (we
|
|
|
|
suggest you place it at the end). If you have more than one pair of
|
|
|
|
commands, separate them with a single comma.
|
|
|
|
|
|
|
|
<P>
|
|
|
|
<DL>
|
|
|
|
<DT><STRONG>Null</STRONG></DT>
|
|
|
|
<DD>You can set a “ignore” or “do nothing” chord with the
|
|
|
|
simple notation <> (no spaces are
|
|
|
|
permitted here). If this is the only item in the chord then that
|
|
|
|
chord will be ignored This means that no tones will be generated,
|
|
|
|
and the offset into the bar will not be changed. The use of the
|
|
|
|
notation is mainly for tilde notation with notes held over multiple
|
|
|
|
bars.
|
|
|
|
|
|
|
|
<P>
|
|
|
|
</DD>
|
|
|
|
<DT><STRONG>Volume</STRONG></DT>
|
|
|
|
<DD>A volume can be specified. The volume is set as a
|
|
|
|
command=value pair. For example: “Volume=ff” would set the volume
|
|
|
|
of a chord to “very loud”. See the permitted volumes
|
|
|
|
(<A HREF="node18.html#sec-volume">here</A>). It is probably
|
|
|
|
easier to set accented beats with the A<SMALL>CCENT</SMALL> directive
|
|
|
|
(<A HREF="node18.html#accent">here</A>) or directly modify the MIDI
|
|
|
|
velocity by appending it to the end of the pitch with a “/”
|
|
|
|
(<A HREF="#pitch-velocity">here</A>). The keyword
|
|
|
|
“Volume” is optional: < V<SMALL>OLUME=FF </SMALL>>
|
|
|
|
and < <SMALL>FF </SMALL>> will generate identical
|
|
|
|
results. This optional setting is in addition to the current
|
|
|
|
V<SMALL>OLUME</SMALL> track setting and is in effect for the duration of the
|
|
|
|
current bar. It is not possible to set different volumes for
|
|
|
|
individual notes in the chord with this option.
|
|
|
|
|
|
|
|
<P>
|
|
|
|
</DD>
|
|
|
|
<DT><STRONG>Articulate</STRONG></DT>
|
|
|
|
<DD>In addition to the A<SMALL>RTICULATE</SMALL> setting for the
|
|
|
|
track and the note duration (see above), you can set an articulation
|
|
|
|
value for each chord. This can be useful in creating staccato or
|
|
|
|
tenuto notes without resorting to complicated note/rest values. By
|
|
|
|
default the articulation is set to 100%. It can be changed with an
|
|
|
|
integer value from 1 (creating a very short note) to 200 (a long
|
|
|
|
note). This option is set with the A<SMALL>RTICULATE=</SMALL> command. For
|
|
|
|
example, to set the articulation of a chord to “staccato”, you
|
|
|
|
could use the string < A<SMALL>RTICULATE=50 </SMALL>>
|
|
|
|
in the chord specification. This value is in effect for the duration
|
|
|
|
of the current bar.
|
|
|
|
|
|
|
|
<P>
|
|
|
|
For those who “need to know”, here's how the note duration is
|
|
|
|
determined:
|
|
|
|
|
|
|
|
<OL>
|
|
|
|
<LI>The note duration (ie, 4, 8, 16) is parsed and converted to
|
|
|
|
MIDI ticks. A quarter note will receive 192 MIDI ticks, a half
|
|
|
|
note 384, etc.
|
|
|
|
|
|
|
|
<P>
|
|
|
|
</LI>
|
|
|
|
<LI>The duration is adjusted by the articulation setting. Assuming
|
|
|
|
the articulation is 80% the quarter note will be converted from
|
|
|
|
192 MIDI ticks to 154.
|
|
|
|
|
|
|
|
<P>
|
|
|
|
</LI>
|
|
|
|
<LI>Finally, the duration is adjusted again by the track
|
|
|
|
A<SMALL>RTICULATE</SMALL> setting. Assuming the default setting of 90(%)
|
|
|
|
this will result in the 154 ticks adjusting to 138.
|
|
|
|
|
|
|
|
<P>
|
|
|
|
</LI>
|
|
|
|
<LI>In addition, a R<SMALL>TIME</SMALL> setting can add or subtract
|
|
|
|
additional ticks to the note.
|
|
|
|
|
|
|
|
</LI>
|
|
|
|
</OL>
|
|
|
|
|
|
|
|
<P>
|
|
|
|
</DD>
|
|
|
|
<DT></DT>
|
|
|
|
<DD>The following example
|
|
|
|
|
|
|
|
<P>
|
|
|
|
|
|
|
|
<Table Hspace="40%" CellSpacing=0 CellPadding=10 BGColor="OldLace" Border=3>
|
|
|
|
<tr><td>
|
|
|
|
<B>F {4c; d<ff>; e<Volume=mp,Articulate=80>; f<Articulate=120>;} </B>
|
|
|
|
|
|
|
|
</td></tr>
|
|
|
|
</Table>
|
|
|
|
|
|
|
|
<P>
|
|
|
|
will create a solo line (using an F chord) with the following notes,
|
|
|
|
volumes and articulations:
|
|
|
|
|
|
|
|
<P>
|
|
|
|
<TABLE CELLPADDING=3 BORDER="1">
|
|
|
|
<TR><TD ALIGN="LEFT"><SPAN CLASS="textit">Note</SPAN></TD>
|
|
|
|
<TD ALIGN="LEFT"><SPAN CLASS="textit">Volume</SPAN></TD>
|
|
|
|
<TD ALIGN="LEFT"><SPAN CLASS="textit">Articulation</SPAN></TD>
|
|
|
|
</TR>
|
|
|
|
<TR><TD ALIGN="LEFT">c</TD>
|
|
|
|
<TD ALIGN="LEFT">default “mf”</TD>
|
|
|
|
<TD ALIGN="LEFT">default “100”</TD>
|
|
|
|
</TR>
|
|
|
|
<TR><TD ALIGN="LEFT">d</TD>
|
|
|
|
<TD ALIGN="LEFT">set to “ff”</TD>
|
|
|
|
<TD ALIGN="LEFT">continues as “100”</TD>
|
|
|
|
</TR>
|
|
|
|
<TR><TD ALIGN="LEFT">e</TD>
|
|
|
|
<TD ALIGN="LEFT">set to “mp”</TD>
|
|
|
|
<TD ALIGN="LEFT">set to “80”</TD>
|
|
|
|
</TR>
|
|
|
|
<TR><TD ALIGN="LEFT">f</TD>
|
|
|
|
<TD ALIGN="LEFT">continues “mp”</TD>
|
|
|
|
<TD ALIGN="LEFT">set to “120”</TD>
|
|
|
|
</TR>
|
|
|
|
</TABLE>
|
|
|
|
|
|
|
|
<P>
|
|
|
|
</DD>
|
|
|
|
<DT><STRONG>Offset</STRONG></DT>
|
|
|
|
<DD>When a S<SMALL>OLO</SMALL> line is parsed the notes and rests
|
|
|
|
are placed into the bar at the logical sequence derived from their
|
|
|
|
durations. So, if you have two half note chords the first would be
|
|
|
|
placed at the start of the bar (offset 0) and the second in the
|
|
|
|
middle (offset 384). You can override this with the O<SMALL>FFSET=</SMALL>
|
|
|
|
option. The value used adjusts the pointer, overriding logical
|
|
|
|
placement. You can use this feature to place a note anywhere in a
|
|
|
|
bar, or even to overlap notes. The value used must be within the
|
|
|
|
bar; values less than 0 or past the end of the bar (in the case of 4
|
|
|
|
beats to the bar this would be 768). As an example:
|
|
|
|
|
|
|
|
<P>
|
|
|
|
|
|
|
|
<Table Hspace="40%" CellSpacing=0 CellPadding=10 BGColor="OldLace" Border=3>
|
|
|
|
<tr><td>
|
|
|
|
<B>1 F {2f; 2c <offset=198>; } </B>
|
|
|
|
|
|
|
|
</td></tr>
|
|
|
|
</Table>
|
|
|
|
|
|
|
|
<P>
|
|
|
|
would place a half note at beats 1 and 2 of the bar. The second note
|
|
|
|
would overlap the first.
|
|
|
|
|
|
|
|
<P>
|
|
|
|
</DD>
|
|
|
|
</DL>
|
|
|
|
|
|
|
|
<P>
|
|
|
|
|
|
|
|
<H2><A NAME="SECTION001012000000000000000">
|
|
|
|
Accents</A>
|
|
|
|
</H2>
|
|
|
|
|
|
|
|
<P>
|
|
|
|
Individual notes or chords can have accents. Unfortunately, in
|
|
|
|
<FONT Face="Serif" Color="Navy"><I>MMA</I></FONT> 's
|
|
|
|
text format, we can't use a notation which places the accent
|
|
|
|
over the note, like sheet music does ... so we need a slightly
|
|
|
|
different method. In a S<SMALL>OLO</SMALL> or M<SMALL>ELODY</SMALL> line you can have
|
|
|
|
any of the characters “!”, “-”, “ˆ” or “&” between the
|
|
|
|
duration and pitch. All the accents much be in one chunk, without
|
|
|
|
additional characters or spaces.
|
|
|
|
|
|
|
|
<P>
|
|
|
|
The following table shows the supported single character accents and
|
|
|
|
their effect:
|
|
|
|
|
|
|
|
<P><DL>
|
|
|
|
<DT><STRONG>!</STRONG></DT>
|
|
|
|
<DD>Staccato: Make the following note's duration shorter.
|
|
|
|
|
|
|
|
</DD>
|
|
|
|
<DT><STRONG>-</STRONG></DT>
|
|
|
|
<DD>Tenuto: Lengthen the following note's duration.
|
|
|
|
|
|
|
|
<P>
|
|
|
|
</DD>
|
|
|
|
<DT><STRONG>ˆ</STRONG></DT>
|
|
|
|
<DD>Accent: Make the following note louder.
|
|
|
|
|
|
|
|
</DD>
|
|
|
|
<DT><STRONG>&</STRONG></DT>
|
|
|
|
<DD>Soft: Make the following note softer.
|
|
|
|
|
|
|
|
<P>
|
|
|
|
</DD>
|
|
|
|
</DL>
|
|
|
|
|
|
|
|
<P>
|
|
|
|
You can use any number of these accents in a set (however, more than 5
|
|
|
|
becomes useless). Their effects are cummulative.<A NAME="tex2html47"
|
|
|
|
HREF="#foot4624"><SUP><SPAN CLASS="arabic">10</SPAN>.<SPAN CLASS="arabic">2</SPAN></SUP></A>
|
|
|
|
<P>
|
|
|
|
And example of the usage might be:
|
|
|
|
|
|
|
|
<P>
|
|
|
|
|
|
|
|
<Table Hspace="40%" CellSpacing=0 CellPadding=10 BGColor="OldLace" Border=3>
|
|
|
|
<tr><td>
|
|
|
|
<B>Solo Riff 4a; !ˆ c; !!d; e; </B>
|
|
|
|
|
|
|
|
</td></tr>
|
|
|
|
</Table>
|
|
|
|
|
|
|
|
<P>
|
|
|
|
In this example the second note will have a shorter duration and be
|
|
|
|
louder; the third note will have normal volume, but be quite a bit shorter.
|
|
|
|
|
|
|
|
<P>
|
|
|
|
An accent effects only the current note/chord.
|
|
|
|
|
|
|
|
<P>
|
|
|
|
|
|
|
|
<H2><A NAME="SECTION001013000000000000000">
|
2006-11-10 08:07:56 +00:00
|
|
|
Long Notes</A>
|
|
|
|
</H2>
|
|
|
|
|
|
|
|
<P>
|
|
|
|
Notes tied across bar lines can be easily handled in
|
|
|
|
<FONT Face="Serif" Color="Navy"><I>MMA</I></FONT> scores.
|
|
|
|
Consider the following:
|
|
|
|
|
|
|
|
<P>
|
|
|
|
<DIV ALIGN="CENTER">
|
|
|
|
<IMG WIDTH="90%" SRC="mupex/tilde.png" ALT="Lost Image">
|
|
|
|
|
|
|
|
</DIV>
|
|
|
|
|
|
|
|
<P>
|
|
|
|
It can be handled in three different ways in your score:
|
|
|
|
|
|
|
|
<P>
|
|
|
|
|
|
|
|
<UL>
|
|
|
|
<LI>
|
2007-04-29 06:47:40 +00:00
|
|
|
<Table Hspace="40%" CellSpacing=0 CellPadding=10 BGColor="OldLace" Border=3>
|
|
|
|
<tr><td>
|
|
|
|
<B>F {4c;d;e;4+2f;}
|
2006-11-10 08:07:56 +00:00
|
|
|
<BR>
|
2007-04-29 06:47:40 +00:00
|
|
|
F {2r;2c;} </B>
|
2006-11-10 08:07:56 +00:00
|
|
|
|
2007-04-29 06:47:40 +00:00
|
|
|
</td></tr>
|
|
|
|
</Table>
|
2006-11-10 08:07:56 +00:00
|
|
|
|
|
|
|
<P>
|
|
|
|
In this case you
|
|
|
|
<FONT Face="Serif" Color="Navy"><I>MMA</I></FONT> will generate a warning message since the
|
|
|
|
last note of the first bar ends past the end of that bar. The rest
|
|
|
|
in the second bar is used to position the half note correctly.
|
|
|
|
|
|
|
|
<P>
|
|
|
|
</LI>
|
|
|
|
<LI>
|
2007-04-29 06:47:40 +00:00
|
|
|
<Table Hspace="40%" CellSpacing=0 CellPadding=10 BGColor="OldLace" Border=3>
|
|
|
|
<tr><td>
|
|
|
|
<B>F {4c;d;e;4+2f~};
|
2006-11-10 08:07:56 +00:00
|
|
|
<BR>
|
2007-04-29 06:47:40 +00:00
|
|
|
F {2r;2c;} </B>
|
2006-11-10 08:07:56 +00:00
|
|
|
|
2007-04-29 06:47:40 +00:00
|
|
|
</td></tr>
|
|
|
|
</Table>
|
2006-11-10 08:07:56 +00:00
|
|
|
|
|
|
|
<P>
|
2011-07-26 22:49:39 +00:00
|
|
|
This time a ~ character has been added to the end of
|
|
|
|
the first line. In this case it just signals that you “know” that
|
2006-11-10 08:07:56 +00:00
|
|
|
the note is too long, so no warning is printed.
|
|
|
|
|
|
|
|
<P>
|
|
|
|
</LI>
|
|
|
|
<LI>
|
2007-04-29 06:47:40 +00:00
|
|
|
<Table Hspace="40%" CellSpacing=0 CellPadding=10 BGColor="OldLace" Border=3>
|
|
|
|
<tr><td>
|
|
|
|
<B>F {4c;d;e;4+2f~;}
|
2006-11-10 08:07:56 +00:00
|
|
|
<BR>
|
2007-04-29 06:47:40 +00:00
|
|
|
F {~2c;} </B>
|
2006-11-10 08:07:56 +00:00
|
|
|
|
2007-04-29 06:47:40 +00:00
|
|
|
</td></tr>
|
|
|
|
</Table>
|
2006-11-10 08:07:56 +00:00
|
|
|
|
|
|
|
<P>
|
|
|
|
The cleanest method is shown here. The ~forces the
|
|
|
|
insertion of the extra 2 beats from the previous bar into the start
|
|
|
|
of the bar.
|
|
|
|
|
|
|
|
<P>
|
|
|
|
</LI>
|
|
|
|
</UL>
|
|
|
|
|
|
|
|
<P>
|
|
|
|
If you have a very long note, as in this example:
|
|
|
|
|
|
|
|
<P>
|
|
|
|
<DIV ALIGN="CENTER">
|
|
|
|
<IMG WIDTH="80%" SRC="mupex/tilde2.png" ALT="Lost Image">
|
|
|
|
|
|
|
|
</DIV>
|
|
|
|
|
|
|
|
<P>
|
|
|
|
you can have both leading and ending tildes in the same chord;
|
|
|
|
however, to force
|
|
|
|
<FONT Face="Serif" Color="Navy"><I>MMA</I></FONT> to ignore the chord you need to include an
|
|
|
|
empty chord marker:
|
|
|
|
|
|
|
|
<P>
|
|
|
|
|
2007-04-29 06:47:40 +00:00
|
|
|
<Table Hspace="40%" CellSpacing=0 CellPadding=10 BGColor="OldLace" Border=3>
|
|
|
|
<tr><td>
|
|
|
|
<B>C {4c;d;e;4+2f~;}
|
2006-11-10 08:07:56 +00:00
|
|
|
<BR>
|
|
|
|
C {~<>~;}
|
|
|
|
<BR>
|
2007-04-29 06:47:40 +00:00
|
|
|
C {~2c;} </B>
|
2006-11-10 08:07:56 +00:00
|
|
|
|
2007-04-29 06:47:40 +00:00
|
|
|
</td></tr>
|
|
|
|
</Table>
|
2006-11-10 08:07:56 +00:00
|
|
|
|
|
|
|
<P>
|
|
|
|
|
|
|
|
<FONT Face="Serif" Color="Navy"><I>MMA</I></FONT> has some built-in error detection which will signal problems if
|
|
|
|
you use a tilde at the end of a line which doesn't have a note held
|
|
|
|
past the end of the current bar or if you use a tilde to start a bar
|
|
|
|
which doesn't have one at the end of the previous bar.
|
|
|
|
|
|
|
|
<P>
|
|
|
|
|
2011-07-26 22:49:39 +00:00
|
|
|
<H2><A NAME="SECTION001014000000000000000">
|
2006-11-10 08:07:56 +00:00
|
|
|
Using Defaults</A>
|
|
|
|
</H2>
|
|
|
|
The use of default values can be a great time-saver, and lead to
|
|
|
|
confusion! For example, the following all generate four quarter note
|
2011-07-26 22:49:39 +00:00
|
|
|
“f”s:
|
2006-11-10 08:07:56 +00:00
|
|
|
|
|
|
|
<P>
|
|
|
|
|
2007-04-29 06:47:40 +00:00
|
|
|
<Table Hspace="40%" CellSpacing=0 CellPadding=10 BGColor="OldLace" Border=3>
|
|
|
|
<tr><td>
|
|
|
|
<B>Solo Riff 4f; 4f; 4f; 4f;
|
2006-11-10 08:07:56 +00:00
|
|
|
<BR>
|
|
|
|
Solo Riff 4f; f; f; f;
|
|
|
|
<BR>
|
|
|
|
Solo Riff 4f; 4; 4; 4;
|
|
|
|
<BR>
|
2011-07-26 22:49:39 +00:00
|
|
|
Solo Riff f; ; ; ;
|
|
|
|
<BR>
|
2007-04-29 06:47:40 +00:00
|
|
|
Solo Riff 4f; ; ; ; </B>
|
2006-11-10 08:07:56 +00:00
|
|
|
|
2007-04-29 06:47:40 +00:00
|
|
|
</td></tr>
|
|
|
|
</Table>
|
2006-11-10 08:07:56 +00:00
|
|
|
|
|
|
|
<P>
|
2011-07-26 22:49:39 +00:00
|
|
|
One problem which can turn around and bite you when least expected is
|
|
|
|
the use of a default duration with notes specified as MIDI pitch
|
|
|
|
values. This will <SPAN CLASS="textit">not</SPAN> work:
|
2006-11-10 08:07:56 +00:00
|
|
|
|
|
|
|
<P>
|
|
|
|
|
2007-04-29 06:47:40 +00:00
|
|
|
<Table Hspace="40%" CellSpacing=0 CellPadding=10 BGColor="OldLace" Border=3>
|
|
|
|
<tr><td>
|
2011-07-26 22:49:39 +00:00
|
|
|
<B>Solo Riff 4 100; 110 <IMG
|
|
|
|
WIDTH="28" HEIGHT="28" ALIGN="BOTTOM" BORDER="0"
|
|
|
|
SRC="img2.png"
|
|
|
|
ALT="\includegraphics[height=3ex]{stop.eps}"> </B>
|
2006-11-10 08:07:56 +00:00
|
|
|
|
2007-04-29 06:47:40 +00:00
|
|
|
</td></tr>
|
|
|
|
</Table>
|
2006-11-10 08:07:56 +00:00
|
|
|
|
|
|
|
<P>
|
2011-07-26 22:49:39 +00:00
|
|
|
The problem is that for the second chord
|
|
|
|
<FONT Face="Serif" Color="Navy"><I>MMA</I></FONT> assumes the value 110
|
|
|
|
to be a duration. Simple fix is to insert a comma before the second pitch:
|
2006-11-10 08:07:56 +00:00
|
|
|
|
|
|
|
<P>
|
|
|
|
|
2007-04-29 06:47:40 +00:00
|
|
|
<Table Hspace="40%" CellSpacing=0 CellPadding=10 BGColor="OldLace" Border=3>
|
|
|
|
<tr><td>
|
2011-07-26 22:49:39 +00:00
|
|
|
<B>Solo Riff 4 100; ,110 </B>
|
2006-11-10 08:07:56 +00:00
|
|
|
|
2007-04-29 06:47:40 +00:00
|
|
|
</td></tr>
|
|
|
|
</Table>
|
2006-11-10 08:07:56 +00:00
|
|
|
|
|
|
|
<P>
|
|
|
|
|
2011-07-26 22:49:39 +00:00
|
|
|
<H2><A NAME="SECTION001015000000000000000">
|
|
|
|
Other Commands</A>
|
|
|
|
</H2>
|
|
|
|
|
|
|
|
<P>
|
|
|
|
Most of the timing and volume commands available in other tracks also
|
|
|
|
apply to S<SMALL>OLO</SMALL> and M<SMALL>ELODY</SMALL> tracks. Important commands to
|
|
|
|
consider include A<SMALL>RTICULATE</SMALL>, V<SMALL>OICE</SMALL> and O<SMALL>CTAVE</SMALL>.
|
|
|
|
Also note that T<SMALL>RANSPOSE</SMALL> is applied to your note data.
|
|
|
|
|
|
|
|
<P>
|
|
|
|
|
|
|
|
<H1><A NAME="SECTION001020000000000000000"></A> <A NAME="autosolotracks"></A>
|
2006-11-10 08:07:56 +00:00
|
|
|
<BR>
|
|
|
|
AutoSoloTracks
|
|
|
|
</H1>
|
|
|
|
|
|
|
|
<P>
|
2011-07-26 22:49:39 +00:00
|
|
|
When a “{ }” expression is found in a chord line, it is assumed to
|
2006-11-10 08:07:56 +00:00
|
|
|
be note data and is treated as a R<SMALL>IFF</SMALL>. You can have any number
|
2011-07-26 22:49:39 +00:00
|
|
|
of “{ }” expressions in a chord line. They will be assigned to the
|
2006-11-10 08:07:56 +00:00
|
|
|
tracks specified in the A<SMALL>UTO</SMALL>S<SMALL>OLO</SMALL>T<SMALL>RACKS</SMALL> directive.
|
|
|
|
|
|
|
|
<P>
|
2009-05-17 22:34:44 +00:00
|
|
|
By default, four tracks are assigned: <SPAN CLASS="textit">Solo</SPAN>, <SPAN CLASS="textit">Solo-1</SPAN>,
|
|
|
|
<SPAN CLASS="textit">Solo-2</SPAN>, and <SPAN CLASS="textit">Solo-3</SPAN>. This order can be changed:
|
2006-11-10 08:07:56 +00:00
|
|
|
|
|
|
|
<P>
|
|
|
|
|
2007-04-29 06:47:40 +00:00
|
|
|
<Table Hspace="40%" CellSpacing=0 CellPadding=10 BGColor="OldLace" Border=3>
|
|
|
|
<tr><td>
|
|
|
|
<B>AutoSoloTracks Melody-Oboe Melody-Trumpet Melody-Horn </B>
|
2006-11-10 08:07:56 +00:00
|
|
|
|
2007-04-29 06:47:40 +00:00
|
|
|
</td></tr>
|
|
|
|
</Table>
|
2006-11-10 08:07:56 +00:00
|
|
|
|
|
|
|
<P>
|
|
|
|
Any number of tracks can be specified in this command, but they must
|
|
|
|
all be S<SMALL>OLO</SMALL> or M<SMALL>ELODY</SMALL> tracks. You can reissue this
|
|
|
|
command at any time to change the assignments.
|
|
|
|
|
|
|
|
<P>
|
2011-07-26 22:49:39 +00:00
|
|
|
The list set in this command is also used to “fill out” melody lines
|
2006-11-10 08:07:56 +00:00
|
|
|
for tracks set as H<SMALL>ARMONY</SMALL>O<SMALL>NLY</SMALL>. Again, an example:
|
|
|
|
|
|
|
|
<P>
|
|
|
|
|
2007-04-29 06:47:40 +00:00
|
|
|
<Table Hspace="40%" CellSpacing=0 CellPadding=10 BGColor="OldLace" Border=3>
|
|
|
|
<tr><td>
|
|
|
|
<B>AutoSoloTracks Solo-1 Solo-2 Solo-3 Solo-4
|
2006-11-10 08:07:56 +00:00
|
|
|
<BR>
|
|
|
|
Solo-2 HarmonyOnly 3Above
|
|
|
|
<BR>
|
2007-04-29 06:47:40 +00:00
|
|
|
Solo-3 HarmonyOnly 8Above </B>
|
2006-11-10 08:07:56 +00:00
|
|
|
|
2007-04-29 06:47:40 +00:00
|
|
|
</td></tr>
|
|
|
|
</Table>
|
2006-11-10 08:07:56 +00:00
|
|
|
|
|
|
|
<P>
|
2011-07-26 22:49:39 +00:00
|
|
|
Of course, some voicing is also set ... and a chord line:
|
2006-11-10 08:07:56 +00:00
|
|
|
|
|
|
|
<P>
|
|
|
|
|
2007-04-29 06:47:40 +00:00
|
|
|
<Table Hspace="40%" CellSpacing=0 CellPadding=10 BGColor="OldLace" Border=3>
|
|
|
|
<tr><td>
|
|
|
|
<B>C {4a;b;c;d;} </B>
|
2006-11-10 08:07:56 +00:00
|
|
|
|
2007-04-29 06:47:40 +00:00
|
|
|
</td></tr>
|
|
|
|
</Table>
|
2006-11-10 08:07:56 +00:00
|
|
|
|
|
|
|
<P>
|
2009-05-17 22:34:44 +00:00
|
|
|
The note data <SPAN CLASS="textit">{4a;b;c;d;} </SPAN> will be set to the <SPAN CLASS="textit">Solo-1</SPAN>
|
2006-11-10 08:07:56 +00:00
|
|
|
track. But, if you've not set any other note data by way of
|
2009-05-17 22:34:44 +00:00
|
|
|
R<SMALL>IFF</SMALL> commands to <SPAN CLASS="textit">Solo-2</SPAN> and <SPAN CLASS="textit">Solo-3</SPAN>, the note data
|
2006-11-10 08:07:56 +00:00
|
|
|
will also be copied to these two tracks. Note that the track
|
2009-05-17 22:34:44 +00:00
|
|
|
<SPAN CLASS="textit">Solo-4</SPAN> is unaffected since it is <SPAN CLASS="textit">not</SPAN> a
|
2006-11-10 08:07:56 +00:00
|
|
|
H<SMALL>ARMONY</SMALL>O<SMALL>NLY</SMALL> track. This feature can be very useful in creating
|
|
|
|
harmony lines with the harmonies going to different instruments. The
|
2009-05-17 22:34:44 +00:00
|
|
|
supplied file <TT><SPAN CLASS="textbf">egs/harmony.mma</SPAN></TT> shows an example.
|
2006-11-10 08:07:56 +00:00
|
|
|
|
2011-07-26 22:49:39 +00:00
|
|
|
<P>
|
|
|
|
To save some typing, you can have empty sets of {} as
|
|
|
|
placeholders. For example, assume you have three S<SMALL>OLO</SMALL> tracks:
|
|
|
|
|
|
|
|
<P>
|
|
|
|
|
|
|
|
<Table Hspace="40%" CellSpacing=0 CellPadding=10 BGColor="OldLace" Border=3>
|
|
|
|
<tr><td>
|
|
|
|
<B>AutoSoloTracks Solo-Violin Solo-Viola Solo-Cello </B>
|
|
|
|
|
|
|
|
</td></tr>
|
|
|
|
</Table>
|
|
|
|
|
|
|
|
<P>
|
|
|
|
and you don't use the Viola in a section. Doing something like:
|
|
|
|
|
2006-11-10 08:07:56 +00:00
|
|
|
<P>
|
|
|
|
|
2011-07-26 22:49:39 +00:00
|
|
|
<Table Hspace="40%" CellSpacing=0 CellPadding=10 BGColor="OldLace" Border=3>
|
|
|
|
<tr><td>
|
|
|
|
<B>C {4a;b;c;d;} {} {1+1g }
|
|
|
|
<BR>
|
|
|
|
G {4g;b;} {} {} </B>
|
|
|
|
|
|
|
|
</td></tr>
|
|
|
|
</Table>
|
|
|
|
|
|
|
|
<P>
|
|
|
|
is fine. Note how the Cello has a long note over two bars and the
|
|
|
|
Viola has no notes at all.
|
|
|
|
|
|
|
|
<P>
|
|
|
|
|
|
|
|
<H1><A NAME="SECTION001030000000000000000"></A> <A NAME="drumtype"></A>
|
2006-11-10 08:07:56 +00:00
|
|
|
<BR>
|
|
|
|
Drum Solo Tracks
|
2011-07-26 22:49:39 +00:00
|
|
|
</H1>
|
2006-11-10 08:07:56 +00:00
|
|
|
|
|
|
|
<P>
|
|
|
|
A solo or melody track can also be used to create drum solos. The
|
|
|
|
first thing to do is to set a track as a drum solo type:
|
|
|
|
|
|
|
|
<P>
|
|
|
|
|
2007-04-29 06:47:40 +00:00
|
|
|
<Table Hspace="40%" CellSpacing=0 CellPadding=10 BGColor="OldLace" Border=3>
|
|
|
|
<tr><td>
|
|
|
|
<B>Solo-MyDrums DrumType </B>
|
2006-11-10 08:07:56 +00:00
|
|
|
|
2007-04-29 06:47:40 +00:00
|
|
|
</td></tr>
|
|
|
|
</Table>
|
2006-11-10 08:07:56 +00:00
|
|
|
|
|
|
|
<P>
|
|
|
|
This will create a new S<SMALL>OLO</SMALL> track with the name
|
2011-07-26 22:49:39 +00:00
|
|
|
<SPAN CLASS="textit">Solo-MyDrums</SPAN> and set its “Drum” flag. If the track already
|
2006-11-10 08:07:56 +00:00
|
|
|
exists and has data in it, the command will fail. The MIDI channel 10
|
|
|
|
is automatically assigned to all tracks created in this manner. You
|
2011-07-26 22:49:39 +00:00
|
|
|
cannot change a “drum” track back to a normal track.
|
2006-11-10 08:07:56 +00:00
|
|
|
|
|
|
|
<P>
|
|
|
|
These is no limit to the number of S<SMALL>OLO</SMALL> or M<SMALL>ELODY</SMALL> tracks
|
2011-07-26 22:49:39 +00:00
|
|
|
you can create ... and it probably makes sense to have several
|
2006-11-10 08:07:56 +00:00
|
|
|
different tracks if you are creating anything beyond a simple drum
|
|
|
|
pattern.
|
|
|
|
|
|
|
|
<P>
|
2011-07-26 22:49:39 +00:00
|
|
|
Tracks with the “drum” setting ignore T<SMALL>RANSPOSE</SMALL> and
|
2006-11-10 08:07:56 +00:00
|
|
|
H<SMALL>ARMONY</SMALL> settings.
|
|
|
|
|
|
|
|
<P>
|
|
|
|
The specification for pitches is different in these tracks. Instead of
|
|
|
|
standard notation pitches, you must specify a series of drum tone
|
|
|
|
names or MIDI values. If you want more than one tone to be sounded
|
|
|
|
simultaneously, create a list of tones separated by commas.
|
|
|
|
|
|
|
|
<P>
|
|
|
|
Some examples:
|
|
|
|
|
|
|
|
<P>
|
|
|
|
|
2007-04-29 06:47:40 +00:00
|
|
|
<Table Hspace="40%" CellSpacing=0 CellPadding=10 BGColor="OldLace" Border=3>
|
|
|
|
<tr><td>
|
|
|
|
<B>Solo-MyDrums Riff 4 SnareDrum1; ; r ; SnareDrum1; </B>
|
2006-11-10 08:07:56 +00:00
|
|
|
|
2007-04-29 06:47:40 +00:00
|
|
|
</td></tr>
|
|
|
|
</Table>
|
2006-11-10 08:07:56 +00:00
|
|
|
|
|
|
|
<P>
|
|
|
|
would create a snare hit on beats 1, 2 and 4 of a bar. Note how the
|
|
|
|
second hit uses the default tone set in the first beat.
|
|
|
|
|
|
|
|
<P>
|
|
|
|
|
2007-04-29 06:47:40 +00:00
|
|
|
<Table Hspace="40%" CellSpacing=0 CellPadding=10 BGColor="OldLace" Border=3>
|
|
|
|
<tr><td>
|
|
|
|
<B>Solo-MyDrums Riff 8,38;;;; </B>
|
2006-11-10 08:07:56 +00:00
|
|
|
|
2007-04-29 06:47:40 +00:00
|
|
|
</td></tr>
|
|
|
|
</Table>
|
2006-11-10 08:07:56 +00:00
|
|
|
|
|
|
|
<P>
|
2011-07-26 22:49:39 +00:00
|
|
|
creates 4 hits, starting on beat 1. Instead of “names” MIDI values
|
|
|
|
have been used (“38” and “SnareDrum1” are identical). Note how
|
|
|
|
“,” is used to separate the initial length from the first tone.
|
2006-11-10 08:07:56 +00:00
|
|
|
|
|
|
|
<P>
|
|
|
|
|
2007-04-29 06:47:40 +00:00
|
|
|
<Table Hspace="40%" CellSpacing=0 CellPadding=10 BGColor="OldLace" Border=3>
|
|
|
|
<tr><td>
|
|
|
|
<B>Solo-MyDrums Riff 4 SnareDrum1,53,81; r; 4 SideKick ; </B>
|
2006-11-10 08:07:56 +00:00
|
|
|
|
2007-04-29 06:47:40 +00:00
|
|
|
</td></tr>
|
|
|
|
</Table>
|
2006-11-10 08:07:56 +00:00
|
|
|
|
|
|
|
<P>
|
2011-07-26 22:49:39 +00:00
|
|
|
creates a “chord” of 3 tones on beat 1, a rest on beat 2, and a
|
|
|
|
“SideKick” on beat 3.
|
2006-11-10 08:07:56 +00:00
|
|
|
|
|
|
|
<P>
|
|
|
|
Using MIDI values instead of names lets you use the full range of note
|
|
|
|
values from 0 to 127. Not all will produce valid tones on all synths.
|
|
|
|
|
|
|
|
<P>
|
2011-07-26 22:49:39 +00:00
|
|
|
<A NAME="solo-default-tone"></A>To make the use of solo drum tracks a bit easier, you can use the the
|
2006-11-10 08:07:56 +00:00
|
|
|
T<SMALL>ONE</SMALL> command to set the default drum tone to use (by default
|
|
|
|
this is a SnareDrum. If you do not specify a tone to use in a solo the
|
|
|
|
default will be used.
|
|
|
|
|
|
|
|
<P>
|
2011-07-26 22:49:39 +00:00
|
|
|
You can access the default tone by using the special Tone “*”. In
|
2006-11-10 08:07:56 +00:00
|
|
|
the following example:
|
|
|
|
|
|
|
|
<P>
|
|
|
|
|
2007-04-29 06:47:40 +00:00
|
|
|
<Table Hspace="40%" CellSpacing=0 CellPadding=10 BGColor="OldLace" Border=3>
|
|
|
|
<tr><td>
|
|
|
|
<B>Begin Solo-Block
|
2006-11-10 08:07:56 +00:00
|
|
|
<BR> DrumType
|
|
|
|
<BR> Tone LowWoodBlock
|
|
|
|
<BR>
|
|
|
|
End
|
2009-05-17 22:34:44 +00:00
|
|
|
<BR> ...
|
2006-11-10 08:07:56 +00:00
|
|
|
<BR>
|
|
|
|
Solo-Block Riff 4r; SnareDrum; * ; ;
|
2009-05-17 22:34:44 +00:00
|
|
|
<BR> ...
|
2006-11-10 08:07:56 +00:00
|
|
|
<BR>
|
2007-04-29 06:47:40 +00:00
|
|
|
Solo-Block Riff 4;;;; </B>
|
2006-11-10 08:07:56 +00:00
|
|
|
|
2007-04-29 06:47:40 +00:00
|
|
|
</td></tr>
|
|
|
|
</Table>
|
2006-11-10 08:07:56 +00:00
|
|
|
|
|
|
|
<P>
|
|
|
|
The first solo created will have a rest on beat 1, a SnareDrum on beat
|
|
|
|
2 and LowWoodBlock on beats 3 and 4. The second will have LowWoodBlock
|
|
|
|
on each beat.
|
|
|
|
|
2011-07-26 22:49:39 +00:00
|
|
|
<P>
|
|
|
|
|
|
|
|
<H1><A NAME="SECTION001040000000000000000"></A> <A NAME="solo-arpeggiate"></A>
|
|
|
|
<BR>
|
|
|
|
Arpeggiation
|
|
|
|
</H1>
|
|
|
|
|
|
|
|
<P>
|
|
|
|
It is fun and simple to arpeggiate notes in a S<SMALL>OLO</SMALL> or
|
|
|
|
M<SMALL>ELODY</SMALL> track. For example:
|
|
|
|
|
|
|
|
<P>
|
|
|
|
|
|
|
|
<Table Hspace="40%" CellSpacing=0 CellPadding=10 BGColor="OldLace" Border=3>
|
|
|
|
<tr><td>
|
|
|
|
<B>Solo-Guitar Arpeggiate Direction=Up Rate=32 Decay=-4 </B>
|
|
|
|
|
|
|
|
</td></tr>
|
|
|
|
</Table>
|
|
|
|
|
|
|
|
<P>
|
|
|
|
will take the notes in the S<SMALL>OLO-</SMALL>G<SMALL>UITAR</SMALL> track and arpeggiate
|
|
|
|
them as a series of 32nd notes. Each successive note's velocity will
|
|
|
|
be decremented by 4
|
|
|
|
Enabling a H<SMALL>ARMONY</SMALL> (or the entry of multiple notes by the user)
|
|
|
|
is needed for meaningful effects ...arpeggiating over a single note
|
|
|
|
isn't the nicest sound (but it works). For this to sound musical, you
|
|
|
|
will have to experiment with the various options and the track
|
|
|
|
A<SMALL>RTICULATE</SMALL> setting. For an interesting (weird) effect try a long
|
|
|
|
R<SMALL>ATE</SMALL> combined with M<SMALL>ALLET</SMALL>.
|
|
|
|
|
|
|
|
<P>
|
|
|
|
Each option for this command must be entered in the OPTION=VALUE
|
|
|
|
format.
|
|
|
|
|
|
|
|
<P>
|
|
|
|
<DL>
|
|
|
|
<DT><STRONG>Rate</STRONG></DT>
|
|
|
|
<DD>The duration of each generated note. For example, “16”
|
|
|
|
will use 16th notes; “20t” will use 20 MIDI ticks. If R<SMALL>ATE</SMALL>
|
|
|
|
is set to “0” or “None” the arpeggiator will be disabled.
|
|
|
|
|
|
|
|
<P>
|
|
|
|
</DD>
|
|
|
|
<DT><STRONG>Decay</STRONG></DT>
|
|
|
|
<DD>A value to decrement each successive note. This is a
|
|
|
|
percentage. To reduce (ie, make quieter) use negative values;
|
|
|
|
positive values will increase the volume. Default is “0”.
|
|
|
|
|
|
|
|
<P>
|
|
|
|
</DD>
|
|
|
|
<DT><STRONG>Direction</STRONG></DT>
|
|
|
|
<DD>The direction of the “strum”. Valid values are
|
|
|
|
“Up”, “Down”, “Both” and “Random”. Default is “Up”.
|
|
|
|
|
|
|
|
<P>
|
|
|
|
</DD>
|
|
|
|
</DL>
|
|
|
|
|
|
|
|
<P>
|
|
|
|
This command generates an error if the
|
|
|
|
D<SMALL>RUM</SMALL>T<SMALL>YPE</SMALL> option has been set.
|
|
|
|
|
2006-11-10 08:07:56 +00:00
|
|
|
<P>
|
|
|
|
<BR><HR><H4>Footnotes</H4>
|
|
|
|
<DL>
|
2011-07-26 22:49:39 +00:00
|
|
|
<DT><A NAME="foot4720">... semicolon.</A><A
|
|
|
|
HREF="node10.html#tex2html45"><SUP><SPAN CLASS="arabic">10</SPAN>.<SPAN CLASS="arabic">1</SPAN></SUP></A></DT>
|
2006-11-10 08:07:56 +00:00
|
|
|
<DD>I have borrowed heavily from the
|
|
|
|
notation program MUP for the syntax used here. For notation I highly
|
|
|
|
recommend MUP and use it for most of my notation tasks, including
|
|
|
|
the creation of the score snippets in this manual. MUP is available
|
2011-07-26 22:49:39 +00:00
|
|
|
from Arkkra Enterprises, <TT><A NAME="tex2html46"
|
2006-11-10 08:07:56 +00:00
|
|
|
HREF="http://www.Arkkra.com/">http://www.Arkkra.com/</A></TT>.
|
|
|
|
|
|
|
|
</DD>
|
2011-07-26 22:49:39 +00:00
|
|
|
<DT><A NAME="foot4624">... cummulative.</A><A
|
|
|
|
HREF="node10.html#tex2html47"><SUP><SPAN CLASS="arabic">10</SPAN>.<SPAN CLASS="arabic">2</SPAN></SUP></A></DT>
|
|
|
|
<DD>Each accent
|
|
|
|
character changes the note articulation or volume by 20%.
|
2006-11-10 08:07:56 +00:00
|
|
|
|
|
|
|
</DD>
|
2009-05-17 22:34:44 +00:00
|
|
|
</DL>
|
|
|
|
<DIV CLASS="navigation"><HR>
|
2006-11-10 08:07:56 +00:00
|
|
|
<!--Navigation Panel-->
|
2011-07-26 22:49:39 +00:00
|
|
|
<A NAME="tex2html549"
|
2006-11-10 08:07:56 +00:00
|
|
|
HREF="node11.html">
|
|
|
|
<IMG WIDTH="37" HEIGHT="24" ALIGN="BOTTOM" BORDER="0" ALT="next" SRC="next.png"></A>
|
2011-07-26 22:49:39 +00:00
|
|
|
<A NAME="tex2html547"
|
2006-11-10 08:07:56 +00:00
|
|
|
HREF="mma.html">
|
|
|
|
<IMG WIDTH="26" HEIGHT="24" ALIGN="BOTTOM" BORDER="0" ALT="up" SRC="up.png"></A>
|
2011-07-26 22:49:39 +00:00
|
|
|
<A NAME="tex2html541"
|
2006-11-10 08:07:56 +00:00
|
|
|
HREF="node9.html">
|
|
|
|
<IMG WIDTH="63" HEIGHT="24" ALIGN="BOTTOM" BORDER="0" ALT="previous" SRC="prev.png"></A>
|
|
|
|
<BR>
|
2011-07-26 22:49:39 +00:00
|
|
|
<B> Next:</B> <A NAME="tex2html550"
|
|
|
|
HREF="node11.html">Emulating plucked instruments: Plectrum</A>
|
|
|
|
<B> Up:</B> <A NAME="tex2html548"
|
2006-11-10 08:07:56 +00:00
|
|
|
HREF="mma.html">Reference Manual</A>
|
2011-07-26 22:49:39 +00:00
|
|
|
<B> Previous:</B> <A NAME="tex2html542"
|
2009-05-17 22:34:44 +00:00
|
|
|
HREF="node9.html">Lyrics</A></DIV>
|
2006-11-10 08:07:56 +00:00
|
|
|
<!--End of Navigation Panel-->
|
|
|
|
<ADDRESS>
|
2007-04-29 06:47:40 +00:00
|
|
|
bob
|
2011-07-26 22:49:39 +00:00
|
|
|
2010-11-07
|
2006-11-10 08:07:56 +00:00
|
|
|
</ADDRESS>
|
|
|
|
</BODY>
|
|
|
|
</HTML>
|